Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I had a terrible experience with Home Assistant. Slow, buggy, unreasonably difficult to implement non-trivial automations.

My heuristic since then has been to minimize the amount of node.js in my home automation codebase and this has worked wonders for its reliability and usability; currently the only component I still have that's node-based is zigbee2mqtt, which (possibly not) incidentally gives me more issues than any other component.

The best approach I've found has been to have (in isolated jails/containers) zigbee2mqtt dealing with zigbee network stuff (you must use CC2652 based coordinators and routers for any kind of reliability), mosquitto acting as an MQTT broker, and a custom program (write it in whatever you like) talking to mosquitto, with Pushover for push notifications.



I'm not understanding how node.js relates to Home Assistant (written in python)?


I don't speak for the op, but the current recommended z-wave integration is via a sidecar javascript service: https://www.home-assistant.io/integrations/zwave_js/

One of HA's selling points for me originally was that everything was written in Python. It's frustrating that I am now faced with pulling a javascript service into the mix. Most of my devices are z-wave and I'm still running on the legacy integration and dreading this migration.


I've had mixed experiences with python (mosquitto is fine for example) but more uniformly bad experiences with node stuff.

I would vastly prefer all of this crap to be written in Rust or Haskell or OCaml or anything oriented towards correctness. It's relatively very important that the code which runs your home works correctly.


I do the same for the automation part (mosquitto+zigbee2mqtt+custom scripts), but I do have Home Assistant for GUI and logging. For example I have a card in Home Assistant that shows whether any system at home doesn't ping.

Here is an example of an automation script, turning a zigbee plug on/off depending on solar roof output: https://gist.githubusercontent.com/bonzini/c705bdd47fd5cd16a...




Consider applying for YC's Winter 2026 batch! Applications are open till Nov 10

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: