ComPort+ Update

As per the last Texecom post I had installed the new ComPort+ PCB into the spare header on the alarm main board. This in conjunction with the new v3.01 firmware gives another serial port. There is obviously a demand for this for Texecom to do it, although I would have thought for most people two would be enough! Still I am very grateful for it, because I have found a need for just this.

As described in previous posts, I have the GSM board installed on one port, and I have been using a second for configuration and monitoring using Texecom’s Wintex software. This is probably worth a post of its own, but it is an extremely useful and comprehensive software package which Texecom have as a free download and makes configuring the panels very easy.

I have also been experimenting with home automation integration. I have a Vera Lite which I bought a couple of years ago and I use it in conjunction with a number of Fibaro  devices (mostly the in-wall dimmer units). I haven’t really made the most of these yet although they have been handy for dimming some lights and linking together table / wall lights. Someone on the Vera forums gave me a copy of a plugin he had written to integrate the alarm, so that you can read the status of the various sensors in real time and also trigger events based on whether the alarm is set or unset. This uses another serial port, so now I can have the GSM dialler, the Wintex connection and the Vera connection all at once.

I must say that overall I’m not hugely impressed with the Vera – it is rather out of date now and quite slow in use. In particular the response to the events from the alarm is rather delayed. The UI is rather old fashioned and although they have done a newer one it is not reported to be working brilliantly and in particular does not work with the plugin. I have been in contact with someone lately who is using Homegenie which I haven’t come across before and which looks very interesting. So I’m going to look further at this although I’ll need a USB Z-Wave stick to test it out.

The other change which I’d recommend is that I have changed from using the small USB converter board to a simple cable terminated in header connectors to the pins. I probably should have done this the first time, but it means that there is more space inside the casing now. I used these but there are numerous other examples on ebay. However it’s worth noting that these are not FTDI based and so can’t be used with the flasher board.

USB serial

For reference the colour coding is:

Red – VCC
Green – TXD
White – RXD
Black – Ground

So when connecting to the Texecom the order is:

Pin 3 – Black
Pin 4- Green
Pin 5 – White


	

Using Fhem for Heating Control

Having discussed in previous posts my hardware approach to heating control I’ll now talk about the software.

The key to the whole system is FHEM which is a real discovery. As I’ve found before with the hardware, the Germans seem to have really got to grips with home automation. This system is open source and very mature, having been around for quite a long time and now being up to version 5.7. The problem is that at least initially it doesn’t appear particularly accessible or easy to use, but this is rather misleading. With a bit of effort invested you can get the system working well and it is incredibly flexible.

There is a good community supporting it, although it is predominately German speaking. Most of the documentation is too, but Google Translate has proved very helpful in navigating the forums and the wiki .

I won’t go into the basic setup, but you will need some kind of server (I am using a fairly old but extremely useful HP Proliant Microserver) and a suitable operating system. There are various ways to install Fhem which are detailed on the website and elsewhere.

So once you have a working Fhem system you can access it via a local URL and then the fun begins!

The basics are to get the interface installed and working. Fhem does have automatic mechanism for detecting and installing devices, which is based around a set of configuration files, they key one being fhem.cfg. In my case I am using a CUL device (as in previous posts) but there are various other ways of doing it. Some people have used the official MAX controller although it’s not much cheaper than the CUL and some difficulties have been reported. There are some other ways of getting CUL firmware onto cheaper devices but I haven’t explored these as yet.

What I really like about Fhem is that its basic structure supports a whole range of different devices (see the documentation for details) but it has a common approach to dealing with them. Also, whilst it is mostly based on configuration files the standard front end UI whilst basic is very effective.

So once you have a basic Fhem system up and running and your CUL or equivalent device has been detected – what next?

First thing to do is register all the MAX devices and pair them with your system. You will need to do this using the ‘learn’ mode on the devices and also by setting the CUL device to listen out for new devices.

You can do this by selecting ‘pairmode’ on the Fhem screen for the CUL device:

pairmode

This then sets it to listen for a short period of time, and you then need to set the devices to pair. What exactly you do depends on which device you have, and you’ll need to check the instructions. However, for most of the thermostats I think you have to hold down the ‘boost’ button for a few seconds and then it begins a countdown, which stops again once the pairing is complete.

You will then see the MAX devices appearing in your Fhem screens. The screen for each looks something like this:

maxscreen1maxscreen2maxscreen3

This screen demonstrates the strengths and weaknesses of Fhem, depending on who you are. For me this is great – lots of details, loads of options to play with etc. On the other hand you might think it looks overcomplicated and intimidating… in which case this probably isn’t for you.

All Fhem devices have settings (via the ‘set’ button at the top) and the pick list shows you what variables you can set. The ‘readings’ section shows the enormous amount of data you can extract from what is in reality quite a simple device. This includes the weekly ‘profile’ for each device – ie the combination of settings and times throughout the week. This is different for each individual thermostat which is good from a flexibility point of view, but not so good for consistency and ease of programming. There are solutions to this which I will come to in future.

So you should now be able to pair up all your thermostats, and the Fhem screens will allow you to see the measured temperature and make some changes. However, this isn’t much of a control system on its own and I’ll come to what I’ve done to tie it all together in future posts.

I know I’ve kept this quite general but please post comments or questions and I’ll try my best to answer them. There is a lot of info on the Fhem forums / wiki which are a good place to start if you are stuck.

Firmware flash – success!

After having some very useful discussions with a few people (special thanks to ComTexeStarter) I came to the conclusion that there was nothing fundamentally wrong with my initial approach – ie using the FTDI board – and that the reason it hadn’t worked was down to software problems.

So I tried again today, the main difference being I was using a new laptop with a clean install of Windows 10. The driver for the serial port was automatically installed, and the Texecom firmware flasher picked it up as a ‘USB-COM’ cable as before. I took a deep breath, pressed ‘Flash’ and…

IMG_20160319_173540 - Copy

Success! Everything worked perfectly and the process was complete in about 3 minutes. Following this (as per the manual) I factory reset the panel by removing all power and then powering on whilst holding down the ‘Reset defaults’ button on the main panel PCB.

This caused a bit of a racket with the tamper alarms going off and you then have to enter the default code (1234). Once it settled down, I used Wintex to restore a backup of the configuration data taken a few days ago and the panel is back to normal. You also need to change the firmware version in the configuration screen so that it resets all the new settings to sensible defaults. If you don’t do this you can get some odd behaviour.

ComTexeStarter has been doing some great work on understanding what the programmer PCB does – and the answer seems to be, ‘not much’. Here is my (rather blurry) photo with their annotations (NB this is the correct version, I had previously posted an earlier one with different resistor numbering):

1000-HDC-back

Most of the components and the chip seem to be concerned with feeding 12V to JP2 pin 1 which we think is used to power one of the older Texecom (non-USB) serial interfaces and so is redundant for the USB ones. This means that it should be possible to do the firmware flash with just the UART plus a few resistors to set the panel to programming mode.

ComTexeStarter has worked hard on this and has come up with this schematic which separates off the chip and the 12V supply (in the red box) from what is actually needed to do the programming:

1000-HDC-schematic

Given that this is now a reverse engineered CDH-0001 this has been christened the 1000-HDC!

It’s quite obvious that Texecom have been churning these out for years (certainly since 2005 – date on the board) at a time when USB cables were rare or unavailable. They could almost certainly redesign their panel PCBs to support programming just from a USB cable which would be a lot cheaper and easier. Maybe they will do so in future.

The other thing I did whilst I had the panel open was install one of the new ComPort+ boards into the header pin sockets.

IMG_20160319_172615

You can see it just under mains supply cable, plugged into the header with the (old) firmware version of LS1 v.211.09 on it. It is dead simple in construction:

IMG_20160319_211137

At a quick glance the pin assignments appear to be (reading the pins from left to right when the board is installed – so pin 1 would be rightmost pin on the above picture:

Pin 1 – NC
Pin 2 – 12V
Pin 3 – GND
Pin 4 – NC
Pin 5 – NC
Pin 6 – NC
Pin 7 – NC
Pin 8 – NC
Pin 9 – RXD
Pin 10 – TXD

So if you don’t want to pay £7 for 5 of these boards (like I did!) and you want an additional serial port, I think you could just connect up your UART to pins 3, 9 and 10 directly. There are a couple of other components – the three pin SMD device is marked Z2X and is I think a Zener diode which is connected between to RXD, and has one leg grounded and the other not connected. The same track feeds goes to an SMD resistor (47k) and then to the 12V line. I don’t really know enough electronics to understand why this might be. However given the RXD pin appears isolated from 12V and connects directly to the header I suspect you could connect directly up to them without a problem. I’d be interested to hear if anyone tries it… meanwhile I have 4 more of these boards to get rid of so let me know if you’d be interested in one.

I haven’t tested Com3 yet but I have another UART on order to test it.

Exciting times!

Programmer details

As promised I’ve taken some close-up pictures of the programmer PCB. The chip is a MAX662A and the capacitors are connected to it as per the datasheet. I’m afraid that these aren’t great quality pics because I couldn’t get the light right, I will get some better ones and upload them in due course.

I’ve not done anything to try and work out a schematic or pins assignments as yet. However I am pretty sure that I was barking up the wrong tree with pin 1 on the serial connector. Whilst it does have 12V applied to it via the output from the 662 I don’t think that this is needed for the flasher to work.

I’ve had a useful discussion with someone who makes these cables up and it appears that the key thing you need to make them work is the FTDI chipset on the serial controller – which is presumably what the official cable uses.

I’m going to have another go at flashing the firmware at the weekend so will post the results.

Texecom Firmware Flash – Progress

After a brief detour into heating control I’m back to talking about my Texecom adventures. I will as promised come to the more detailed software side of the heating project soon. However, with the Spring weather coming I’m feeling keen to start taking on some new projects so I’m back to thinking about upgrading my Premier Elite to v3.01 (it’s already gone up from v3.00).

As some commenters have pointed out, one can buy the firmware flash interface from www.cctvcentral.co.uk for a good price at the moment:

Capture

And they also are the only place anywhere that seems to be selling the ComPort+ accessory which gives you an additional serial port output using the on board communicator output.

comport

These need more discussion and I’ll come to this in another post. As you will see I had to buy 5 of them… so if anyone wants one of my 4 spares for a nominal fee to cover costs please let me know.

Anyway I took the plunge and ordered them all, and they arrived last week. The service from cctvcentral was pretty good, as the firmware flasher got damaged in transit and they sent me out another very quickly.

I spent a couple of hours this afternoon with the firmware flasher, but unfortunately so far have met with failure.

I connected everything up as per the instructions, and I have learned a few things. First of all, this is the first time I had tried powering the whole panel down and one of the problems doing this is that it sets off the tamper alarm on the external siren. I have a Texecom Odyssey 1 which  I installed some time ago. It is quite smart for a bell box, and one of things you can do is temporarily disable it if you are working on it. You can do this by using the engineer utilities to switch the strobe on 3 times in 30 seconds. This worked quite well, although it resets itself when you put the power back on. I’ve come to the conclusion that it’s impossible to do any kind of work on alarms without making a dreadful racket.

I’ve also learned that the Texecom firmware software only recognises FTDI serial ports – presumably because that’s what is in the genuine product.

However, on running the software and trying to flash the panel… nothing happens. It just gives an error message saying ‘board not responding correctly’.

I’m a bit stumped by this – I’m sure that the pinout is the same for the serial port and the software recognises it. I’m quite sure that I’ve connected the ribbon cable to the alarm board properly.

The only difference between my home made cable the real one is the first pin – which on the board gives 12V out. Looking at the flash interface, the corresponding pin is linked to a couple of pins on the flash board including a capacitor or two. So it must be doing something… but what? I’m really not sure what I should do about this, as unless I can get hold of a real Texecom flash cable I can’t know what that pin is for.

So all in all, not good news at the moment. I have the flash board… but I can’t use it. And I really do not want to be spending £40 on a genuine Texecom cable after getting this far! I have seen people on ebay selling third party copies which they say do work with the interface, so I might have to resort to getting one of these. It seems a shame though… I’m sure the solution is pretty simple but at the moment I have no way of finding it out!

Any comments or thoughts would be welcome. I will post some hi res pics of the board (including the all-important underside) shortly.

Boiler Control using MAX hardware

So now I’ve got a number of MAX radiator valves around the house which are linked up to FHEM which is providing some monitoring and control. I’ll go into some more detail on the software side in another post. However, I realised that the amount of value that you get out of this system is pretty limited unless you can find a way of controlling the boiler.

Most of the other systems like this which I have seen do have some form of relay or control (sometimes called a ‘boiler interlock’) so that the individual zones can ‘call for hear’ and similarly the boiler shuts off automatically when heat isn’t required. Without this all you have is some fancy valves but the boiler control is still only by a basic thermostat or timer.

Unfortunately, there is nothing available in the MAX range which does this. This seems to me a major omission as all the others do (FHT, HomeMatic, evoHome etc). I had a bit of a problem, as I needed to be able to address the relay via FHEM on the computer, but the CUL device can only be used in one mode at a time. So if I wanted to use a relay from a different system (eg HomeMatic) I would need to have a second device to do so which will obviously cost a lot more.

I thought about this a lot because I really didn’t want to spend a lot of money on this and I didn’t want to overcomplicate matters. After a bit of digging around I found this:

max-zwischenstecker-v-web-a528e9e5

This is one of the MAX products (details here ) although it is a little obscure. To be honest I’m struggling to work out when exactly anyone would use. It is basically a switched mains plug just like many which you find in home automation systems. However it is designed to work as part of a MAX system. So far as I can make out from the documentation it is supposed to be used with electric heaters or pumps that plug in to the wall. I’ve never seen anything quite like that… but maybe they have them in Germany.

The good news is that because it is a MAX device I can address it from FHEM without using any additional devices. However it wasn’t immediately obvious how I would use it to switch my boiler directly, which used a 240V switched circuit which normally goes to the thermostat. I had a few ideas, including stripping the whole unit down and somehow wiring the relay in directly and whilst I did get the board out to have a look there was no obvious way of doing this. The fact that it uses a European plug (aka Schuko) is another obstacle.

So I considered a few options, including buying a Schuko socket to plug it into. However as above I was trying to keep the costs down and keep it simple. My boiler already has main supply to the existing thermostat receiver so it’s fairly easy to wire things in. So what I have ended up with is starting with a UK socket, then an adaptor, then the switch unit, and then an older shaver plug with a flying lead.

The other end of the lead goes to a huge and rather OTT mains relay which I got for a few pounds from ebay:

1223200123

Luckily it fits quite nicely into a blanked off single switch box, with the wires poked in through a hole in the bottom and fixed to the screw terminals on the base. The output from the flying lead on the switch goes to energise the coil, and the output contacts are wired to the thermostat input. So I’m using a mains relay to switch a relay to switch the boiler on! It’s a bit convoluted… but it works!

The end result in the boiler cupboard looks like this:

IMG_20160104_220538

So a little inelegant perhaps… but I’m happy with the result.

In FHEM it can be configured as a MAX thermostat (so it appears exactly the same as one of the radiators) but it can be switched on and off by sending an ‘on’ or ‘off’ command to it.

I’ll cover the FHEM configuration in a bit more detail in the next post