- Always provide a way to auto update and fallback if failed.
- never implement a buzzer or beeper.
- stay away from blue status leds. people really dislike them, especially in the bedroom.
- always design with sleep/low power mode functionality. If it's embedded uC: 1 watt is more than enough, even with RF. Pick bistable relays. If it's a Linux SoC aim for less than 3W. If there's wifi keep it under 21 dBm. Pick sps modules like 78SRxx from murata instead of linear 78xx.
- if it's a thing you plug in the wall socket make sure it doesn't obstruct other sockets.
- expect people to unplug it every moment every day.
- don't force people to provide an email to activate some functionality or feature.
- use open source standards for communication protocols and put yours in a public datasheet with detailed info on how to parse & process.