2016. április 11., hétfő

AutomaTales - Connecting the Heating

As I mentioned earlier I've several Conrad (ELV) FHT80B thermostats, with radio controlled valves, and I've a CUL v3.2 device. Now I'm try to connect these devices to my OpenHAB.
Before I started to work on this project I updated the firmware in the CUL to the one suggested for OpenHAB from here:
http://culfw.de/culfw.html
The references for the connection can be find here:
https://github.com/openhab/openhab/wiki/FS20-Binding
https://github.com/openhab/openhab/wiki/CUL-Binding

Setting up the binding:
1. Copy the required addons into the /opt/openhab/addons folder:
org.openhab.io.transport.cul-1.8.1.jar
org.openhab.binding.fht-1.8.1.jar
If you have other devices than the heating from the FS20 family you may need the
org.openhab.binding.fs20-1.8.1.jar
also.

2. Edit the configuration file /opt/openhab/configurations/openhab.cfg. Add the following to the end:
fht:device=serial:/dev/ttyACM0
fht:baudrate=38400
fht:parity=0
fht:housecode=XXXX
The housecode is your choice. It is a four digit hexadecimal code. And it is absolutely necessary. If you don't provide it here, your system will not start without even a sign of the problem. You can just see the error message when you switch on the debug logging.
This code will be the code of your CUL device and has no connection with the codes of the FHT80b devices. In addition if you want to get readings from your devices, you have to be sure, that the "CEnt" setting in each of FHT80B devices is set to "nA".

3. You have to create some items in your items file for your FHT80B device. Something like this:
Number fhtRoom1Desired "Desired-Temp. [%.1f °C]" { fht="housecode=552D;datapoint=DESIRED_TEMP" }
Number fhtRoom1Measured "Measured Temp. [%.1f °C]" { fht="housecode=552D;datapoint=MEASURED_TEMP" }
Number fhtRoom1Valve "Valve [%.1f %%]" { fht="housecode=552D;address=00;datapoint=VALVE" }
Switch fhtRoom1Battery "Battery [%s]" { fht="housecode=552D;datapoint=BATTERY" }
Contact fhtRoom1Window "Window [MAP(en.map):%s]" { fht="housecode=52FB;address=7B;datapoint=WINDOW" }
The housecode in the example is the code of the FHT80B device itself. You can read it from the device, the code1 is the first part, the code2 is the second part, and you must convert your readings to hexadecimal.

4. Now you have to insert the read values into your sitemap:
Frame label="Heating"
{
 Setpoint item=fhtRoom1Desired minValue=6 maxValue=30 step=0.5 
 Text item=fhtRoom1Measured
 Text item=fhtRoom1Valve 
 Text item=fhtRoom1Battery
 Text item=fhtRoom1Window
}
The result is something like this:

Sorry for the Hungarian text, as this is a real data from my house, I'll translate the whole frontend to Hungarian to my family.

One thing to add: Be patient. Getting the data is a time consuming task. Some of the data will just arrive when changed. So it can take several minutes, or even hours, to get your data.

Nincsenek megjegyzések:

Megjegyzés küldése