Benefit of your experience? What have you learned that you wish you had known at the start?

As the title says - what do you now know about hardware / wiring / sensors / suppliers / services / platforms / technologies etc etc etc - that you wish you had known at the beginning?

TIA, Alan

I’ve been doing “smart home” since X10/BSR (only the oldest here will remember BSR)

Costly bad decisions.

  • Wink was a bad decision.
  • Wifi Smart devices. They are cheaper, but I have 4 dozen door stops over the years. Companies that went away, went bankrupt, shut down their cloud servers, etc. I only use Zwave and Zigbee these days. No cloud servers to go away and leave me with door stops.
  • 1st Gen Phillips Hue. I jumped on this, and most of my 1st gen devices were sunset and not supported by Hue anymore.

Making things harder for myself.

  • I originally got WAY to granular with my groups and categories. I had hundreds of nested groups in OH. Updates murdered my performance replicating across all the groups.
  • Created my thing/item files by room. This seamed like a good idea, but I found grouping my things/items by binding worked much better for tracking changes.
  • Pick 1, 100% config files, or 100% GUI. I prefer files myself. But mixing them is asking for headaches.
  • Never sleep in a rule (lots of posts about why this is bad, it’s bad, very bad but you don’t have to take my word on it)

Things I’ve learned from experience.

  • Good Zwave
  • Inovelli, Homeseer switches/modules, Zooz, GE Relay switches, Monoprice relay switches
  • Bad Zwave
  • Ge dimmers, Homeseer Leaksensors (I hate these sooo much), Levitron anything (I’m pretty sure i’m at 90%+ failure rate after 2 years)

The more Zwave or zigbee things you have, the better things work. They are a mesh and like being as meshy as you can make them.

Zigbee battery sensors are much more reliable and last longer than zwave battery sensors. (I have tons of both now)

Don’t mount your raspberry pi on the wall directly UNDER the dryer in basement, vibrations down the wall will cause your USB zigbee stick to jump out now and them, confusing the hell out of you for months.

If you have a ton of Amazon Echo devices, and you use the echo binding heavily for all of them, contact amazon support, you may need to register as a developer or you might have your AMAZON account rate limited for API calls. This will translate into your Echo devices going dumb, and the echo binding cycling online/uninitialized.

Wear sun screen, when outside mounting cameras.

Don’t rely on Amazon/Google for voice access. When these services are down, or internet is not available, have local only options for controlling house as well. I have habpanel tablets throughout the house that will switch to an offline display with all common tasks we need when Alexa/internet go away.

And finally the MOST important. Keep your SO in mind when doing smarthome stuff. Nothing will get me yelled at more than the house not working for SO.


Limit the number of technologies or it all becomes very hard to maintain.

Spend time make it reliable or it is more annoying than using the switch on the wall was.

Occupancy in a room is not as easy as you might think for automation. One sensor may not give you what you want.

If you are going to run z-wave, spend time to flash a zniffer before you start.

Research devices carefully. Many that claim to conform to a standard do not fully and will cause trouble.


Limit the number of technologies or it all becomes very hard to maintain.

Very Very true. a year a go I had 35-40 bindings, because I wanted all the things recorded and monitored. But things got too messy, and tracking down problems became a very tedious process. I now have 17 bindings.

Occupancy in a room is not as easy as you might think for automation. One sensor may not give you what you want.

Make an easy over ride, to keep the peace in the house.

If you are going to run z-wave, spend time to flash a zniffer before you start.

I have a SD card imaged with Z-Way taped to my OpenHab Pi. This makes it easy for me to reboot and swap out if I need to do any weird repairs to the zwave mesh.

Great suggestions.

I forgot the most obvious.

Use OpenHAB because the team values stability over masses of features that you have no need for.

1 Like
  • does that mean no proprietary gateways and/or cloud services at all?


  1. A smarthome is convenient, not necessarily fancy. It’s not really a “smart” home if you have to dig your phone out of your pocket open up an app and try three times to get the correct voice command when there’s a wall switch within reach that can be set to activate the same command. It’s not really a “smart” home when the lights go off in the room because you’ve been standing still for too long while transferring your batch of homebrew to a secondary fermenter (see: issues with room presence above).
  2. Small steps! Incrementally adding new devices and technology over the course of a week or two is way faster than two months of troubleshooting just to find the one small problem with the massive upgrade you just tried.
  3. 99% of the time you get what you pay for. Cheap devices are cheap for a reason.
  4. Don’t rely on a “smart” solution for anything critical, always have a safe, easy secondary option on important systems.
  5. Don’t be afraid to ask questions. Someone else out there has had the same problem and you can spend weeks on something or tap into a vast knowledge base that gets you back on your feet in hours or days.

:beer: :beer: :beer: :beer: :beer: :beer: :beer: :beer: :beer:

  • does that mean no proprietary gateways and/or cloud services at all?

This is my long term goal, I’m slowly killing/replacing what I can in stages.

I have ~130 zwave and zigbee devices now. Switches, plugs, sensors, etc. I use the native Zwave and Zigbee bindings in OH for them. No gateways besides the Pi itself.

Bindings I use that don’t use cloud.
Exec (lots of python stuff I wrote)
Harmony hub (cloud product, but API is direct no cloud)
iRobot (local api mode)
OpenHab Zigbee
Openhab Zwave

Things I want to get away from that I use
Amazon/Echo This is a big one unfortunately as it handles all my voice commands
Ring Their API sucks, and it’s all cloud. I’ve been replacing my ring devices slowly.
Ranchio Spinklers (I’ll be replacing with Opensprinklers in spring)

I do use the cloud weather binding for temp/airquality/sunset/sunrise.

My OH experience reflects the fact that I live alone. So when something doesn’t work, I’m the only one who’s inconvenienced and that’s no big deal. That said, I’ve learned from other experiences to design for what the people around me need, not for what I want:

  1. Just because something can be automated doesn’t mean that it should be automated. Even for myself, I only automate things that I know I want to happen more than 95% of the time.
  2. Don’t ask people to remember that there are three steps to make something happen, or that there’s one step that will make two other things happen. Everything should be intuitive.

If I didn’t live alone, I would likely need to reduce some of the complexity in my rules so that there’s more flexibility to accommodate others.

Personally, I’m okay with cloud services, but that’s because I’ve already accepted that they may not always be there. I have some Tuya devices flashed with Tasmota, but it’s getting harder and harder to flash new ones over the air, and setting up MQTT is not easy. I mostly use TP-Link Kasas, which are reliable, controlled locally by OH, and inexpensive. Once they’re set up, they don’t even need cloud access.

Something I knew before I got into OH is to avoid Belkin Wemo devices. Great hardware, crap firmware. That may have changed since I largely abandoned them 2-3 years ago, but I doubt it based on the previous 5-6 years of incompetence.

From a maintenance perspective, what I would say to others is to always expect that things will go wrong, and be pleased/satisfied when they go right. There are too many cases of people not backing up before upgrading their systems, then struggling to recover when OH breaks.


I agree with a lot of what has been said:

  • only use groups when they do something useful
  • I like file configuration. Sure it can be a pain until you get the syntax just right but it makes upgrading or rebuilding an absolute breeze. If you create things and items in the UI first, you can get good pointers as to how they should look in files (e.g. channel names and parameters)


  • the community is fantastic. Ask well structured questions and you can often get a solution in a matter of hours.


  • only have the automation system as an overlay. Everything I have (blinds, lights, heating, alarm, roof windows) can all be controlled through native controllers (thermostat, light switch etc.) when the automation system goes down (and it does) I can still do everything, just none of it happens automatically.
  • if you are going with radio controlled devices, avoid bespoke gateways. Zigbee and Zwave are good for this; RFXCom is good but check compatibility before buying new devices.
  • do your research before buying. I bought LightwaveRF heating controls because I already had a hub. They were rubbish; now replaced with Drayton (proper heating controls company) Wiser. And the LightwaveRF devices now controlled by RFXCom.

I would say much of what has already been said here already:

  • keep it simple
  • limit the technology choices where possible
  • don’t automate stuff just because you can, have a reason for doing so; make sure your automations solve an actual problem
  • don’t leave stuff no longer used hanging around; periodically revisit your requirements and if something you’ve implement no longer fits the bill, ruthlessly eliminate it.

The new things I would add include the following.

  • Don’t try to make openHAB be something it’s not. openHAB is not an industrial automation server. It’s not suitable to automate things in that sort of environment where large amounts of money or loss of life may occur if a couple of operations occur out of order. openHAB is not an IT monitoring service. Don’t try to turn it into Zabbix, Prometheus, or ELK or something like that. If you want to monitor if a computer is online from openHAB, do so because it’s meaningful to your home automation. (e.g. issue an alert when you try to open the garage but the garage door controller is offline).

  • Revisit your configuration and especially your rules from time to time. Over time you will learn better ways to do things or better ways to do things will be added to openHAB. Your overall system will become better if you continue to refactor.

  • In relation to don’t automate everything just because you can, always consider whether a not-so-smart solution will service your needs. For example, my garage light is controlled by a dumb motion sensing light switch. It’s not connected to anything at all except the light bulb. And it works perfectly. Sometimes you can get just as good automation with point solutions as you can with everything being integrated.


One more thing: have fun. Like all coding/making, it can be frustrating but there’s also a real sense of achievement when a project comes together.


Backup your config religiously. especially if you are playing and learning. I like using text configs, and store them on github. This way I can commit revisions for every tiny change, and revert at any point in time. Just take care to not publicly publish anything you have that contains secrets and passwords.


I totally thought Rich would mention his ‘build escalators not elevators’ axiom. In other words, if an escalator breaks, it still can be used as stairs. If an elevator breaks, you need a ladder. Build automation to fail ‘gracefully’. Set things up so the automation is a convenience, but if it fails, you can still operate the system the ‘old fashion way’. (like flicking a light switch)

other stuff people have said I agree with:

right on Justin

occupancy is actually no small task, and this from a guy like Russ who lives alone, in a third floor flat, with only one door in or out. More then one human makes things infinitely more complex, add a cat and all bets are off!

And finally, don’t worry about a user interface… this is automation! Make is so stuff just works without intervention. Good automation is like magic. You walk in a room, the lights turn on. You leave the house, everything turns off. If you are building a fancy interface, you are missing the point


This is me (apart from the X10/BSR) :joy:
Everything in and about this post.
Plus I also have 8 Amazon echo’s :stuck_out_tongue_closed_eyes:
Don’t use anything that In dependant on cloud (although I do have to for my sockets in uk - lightwaverf as nothing else on market).

I’ll add to that my oldest Fibaro Zwave modules have been up for 5+ years with no issues

1 Like

OK understand - no cats :slight_smile:


Great to see so many people contributing here. I can’t add much more to what’s already been said above.

For me though, I’ve learnt a great deal about the way we code the rules used in OH. If only I’d kept up leaning how to code after leaving school all those years ago, I’d be in a way better position.

Also, when you come up with an idea or find a problem you want to automate. Make sure you document your plans so you understand all of the expected out comes. I’ve lost count the amount of times I’ve created a rule quickly and found it only partly works as I expected because I’ve forgotten something. An example being, a rule I created to switch on my Decking lights in the evening using a Lux level value. Only to forget that you get a low Lux value early in the mornings as well as in the evening. So needed to update the rule so that the Decking lights only switch on if the Lux level is low and it’s after 12 noon.

I wish I had even had the chance to learn at school, we got the ‘this is how to open word and write a letter’. Even at college it wasn’t much more in depth so had to learn from google and forums :grimacing:

The uk is so far behind with I.T in education

Yeah My HS was teaching Apple II Basic and Pascal on the Mac Classics. This was in 1994. I had already taught myself C,C++, and Z80 ASM by then. My councilor didn’t understand why I didn’t want to take the class. To her all programing classes were the same. I couldn’t make her understand that the school was teaching one VERY dead useless language and one almost dead language. Tho OpenHab gives you so many options for writing code, and even the gui rule engine. So it’s pretty easy to get started.