I am in the process of getting an extension done on our house (UK, 240 V), with the plan being the existing part of the house will get renovated at some point in the future. I’ve had openhab 2.4 up and running on a Pi3 for about 6 months now, testing a few different temperature sensors and bindings. It’s been a steep learning curve, but I really like what I have been able to do so far, and there is really good support from the community.
I would welcome any advice from people who have used openhab in their homes and, at the end, wished they had know / done something differently! At the moment, there are 3 areas I plan to automate:
I plan on using temperature sensors around the house, and have seen some interesting tutorials on heating control (including the heating boilerplate example).
The UFH zones will be controlled using relays to mimic the thermostats (call for heat signal to the control board). These relays will be controlled by the Pi GPIO pins.
Power Sockets & Lighting
What hardware do people recommend? I am leaning towards z-wave, but I’m not against zigbee or wifi. I imagine that only a few sockets will be smart to begin with, and can always upgrade in the future as appropriate.
Roller Blinds & Garage Door
What hardware have people successfully used that can be controlled via openhab and hardwired switches (I’ve seen discussions about controllers not reporting positions when hardwired switches have been used to move the roller). I looked at Fibaro Roller Shutter 3, do they still need the Home Centre hub for firmware updates? The Shelly 2.5 also caught my eye (wifi, can flash myself).
I realise that this is quite a broad subject and there will be a variety of opinions, but are there any lessons learned that people are willing to share? Any manufactures that support OH or ones to avoid?
Finally, my background is mechanical engineering, with minimal software skills. I have done a bit of python, and currently run a couple of scripts (using exec binding) as needed. What would be best practice for software (especially as OH3 is on the horizon and I read something about a new rules engine)? Should I continue calling external scripts? Should I try and learn a language that enables more to be done in ‘rules’, and if so, which language?
Do you intend to make the powersocket itself controlled via a built in device or would you prefer a plug that can be controlled?
For the former I like the Shelly devices more than the Fibaro devices. I have both, but the Fibaro ones every now and then do not react to the switch connected to it. With Shelly, I never have had that issue.
When we changed our heating system a year or so ago, I spent quite a bit of time on evaluating going down the DIY route (with as you say temperature sensors around the house and directly controlling zone valves/actuators via GPIO etc). I came to the conclusion that is very much do-able if you are prepared to put in the time and effort. In the end, I opted for a commercial product (Honeywell’s evohome system in my case, which has an openHAB binding), as I didn’t want to end up constantly maintaining a DIY solution. As I was also looking to have separate independent heating zones throughout the house, I needed something that controlled the TRVs in the rooms with radiators (and that looked nice!). Finally, the machine learning based ‘AI’ logic that learnt when to turn on the heating given a particular room temperature was a definite bonus. Again, I could have built something do all the above myself, but for me it was not worth it.
I have a z-wave module on every fixed light inside/outsde the house (some 75 odd nodes), various z-wave socket controllers (some switching, some dimming) and some z-wave motion sensors.
I also have a some zigbee socket controllers and, xiaomi (zigbee) motion sensors.
Practically I’ve found in my case (and bearing in mind different people will have different experiences based on their home layout etc):
Z-wave devices appear to have a noticably longer range than Zigbee. With my zigbee devices, I am having to put them closer, so as to get better signal strength/‘mesh’
If going zwave, I recommend getting a battery powered stick (such as the Aeotec gen 5) - it makes life so much easier to pair a distant module by taking the stick to it, rather than putting a stick on a laptop, and then taking the laptop to the device!
My zwave network works well most of the time. However, every so often (maybe once a week), it does start lagging, where say sending a command to zwave devices may take 4 or 5 seconds to respond (as compared to its usual almost instant response). I have not had the time to sit down trawl through the logs to figure why this is, but normally it resolves itself after a ‘heal’ (note this happens without any of the zwave devices having been moved).
Zigbee network feels faster. I can’t quantify this in any meaningful way, but e.g. motion sensors on zigbee feel very snappy, as compared to the zwave ones, where there feels a very small lag (but enough to be noticeable), even if placed in the same location. This is the reason I have been gradually replacing some of my Fibaro zwave motion sensors with Zigbee. Zigbee devices are also much cheaper! I recall reading something from Chris (the author of both the zwave and zigbee bindings for openHAB that the zigbee protocol was fixed at a higher speed than zwave, which dropped down to the slowest device on the network).
The variety of zigbee modules is (or was when I looked) far fewer than z-wave, in the UK. e.g. I was not able to find a zigbee dimmer socket anywhere.
I ended up with Somfy rollers as I already had some Somfy blinds. These do not give position (at least the ones I have don’t) nor do they send confirmation back that a command has been executed. Thus there are times (not very often - say once every few weeks) when openHAB sends a command to open a blind but the blind stays closed. A second command normally sorts it, and so in my rules I have a second repeat command being sent after 10 seconds. Bit of a fudge and not ideal.
If I was going down this route again, I probably would look for alternative solutions, and particularly one that gives reasonably accurate feedback of position.
I would certainly recommend the new rule engine, and using jython (a variation of python) for your rules. As you have done a python before, you should find it straightforward.