|
|
Subscribe / Log in / New account

Home Assistant, the Python IoT Hub

Home Assistant, the Python IoT Hub

Posted Jun 11, 2020 15:11 UTC (Thu) by gerdesj (subscriber, #5446)
Parent article: Home Assistant, the Python IoT hub

The Docker install linked to in the article is a bit involved. For a quick spin try the RPi option or if you have an old laptop lying around then why not try this:

Install Ubuntu minimal: http://archive.ubuntu.com/ubuntu/dists/bionic/main/instal...

Update it to the new LTS - 20.04 with # do-release-upgrade -d

# apt install docker.io apparmor-utils apt-transport-https avahi-daemon ca-certificates curl dbus jq socat software-properties-common

# curl -sL "https://raw.githubusercontent.com/home-assistant/supervis..." | bash -s

... wait, a fair bit is happening ...

Point browser at the system on port 8123 and watch journalctl -f at the commandline

That recipe gets you a "Home Assistant Supervised" which is the full toy box but with proper hardware. Go to the Supervisor menu and get some add ons. I suggest File Editor, Lets Encrypt, Mosquitto broker, NGINX SSL proxy, Node-RED, OpenZwave and Terminal & SSH

There are currently three ways to do Zwave. The built in one will be deprecated eventually and is based on Openzwave 1.4 which is a bit sad. Zwave2MQTT is pretty decent but for my money the new OpenZwave is the best and has recently (yesterday) had more device types added.

The pace of development is amazing on this project. You get proper changelogs nowadays and it all looks a lot more grown up than it used to.


to post comments

Home Assistant, the Python IoT Hub

Posted Jun 11, 2020 18:03 UTC (Thu) by Cyberax (✭ supporter ✭, #52523) [Link] (5 responses)

> the new OpenZwave is the best and has recently (yesterday) had more device types added.
Unfortunately, it's built on top of crap (OpenZWave library). And adding more abstraction layers on top of crap doesn't make it any better.

I guess it's a bit better now because crap is isolated in a separate process and won't crash/lock the main daemon.

OK, that does it. I'm going in and fixing OpenZWave the way I like it: no more singletons and an abstraction for the node cache.

Home Assistant, the Python IoT Hub

Posted Jun 12, 2020 12:05 UTC (Fri) by Fishwaldo (subscriber, #47595) [Link] (4 responses)

As the maintainer of OpenZWave It’s this type of “typical” comments from the home automation community that makes me want to delete the repo and walk away never looking back.

I’m a single developer on OZW, used in dozens of commercial and OSS home automation projects not to mention everyone’s pet Home Automation project. At last count in 2019 OZW was deployed in close to 100,000 installations. I’m spending most of my time debugging crappy $10 Chinese implementations that don’t adhere to specifications than I am working on features or refactoring legacy crap. I simply do not have the time!

And all people can do is complain. If you don’t like it, instead of being negative (is it really necessary to call it Crap?) why don’t you start putting up some PR’s and improve the situation? - in fact on second thought, dont. Not sure I want to work with someone with your kind of attitude.

And your cache corruption - that was back in OZW 1.4 - at least 4 years ago and fixed a long time ago. I can’t control if HA doesn’t have the will or manpower to stay current with OZW releases till now.

Home Assistant, the Python IoT Hub

Posted Jun 12, 2020 17:51 UTC (Fri) by Cyberax (✭ supporter ✭, #52523) [Link] (1 responses)

Sorry, but your library needs refactoring. This is the truth.

A well-behaved library just shouldn't do behind-the-scenes DNS lookups and unsecured HTTP downloads to update files in the filesystem. Neither should it manage its own volatile state using flat files.

I'll send patches to at least correct the config storage problems so customizable backends (like an SQLite database) could be used. I might not have enough energy to fix all other issues (like raw C++ pointers everywhere for no reason).

And if you feel that commercial products unfairly use your library then change its license to GPLv3 and offer alternative commercial licenses. It will help a lot.

Home Assistant, the Python IoT Hub

Posted Jun 14, 2020 12:14 UTC (Sun) by beagnach (guest, #32987) [Link]

Your overall intent may be good but the critical language and somewhat condescending attitude will just undermine any good you try to do. I'm not sure I'd accept patches from someone who introduced themselves in that manner.

In the end we're all human. We've all had that project where we learned some new language and made all the beginner mistakes. Some of us were lucky enough to do it in private, or with good mentors. Others had to do it in public and have their beginner mistakes visible to the world.

There's not need to be so harsh. There's probably code still living somewhere that you're probably not too proud of.

also
> I might not have enough energy to fix all other issues...

If you don't have the energy then why would you expect the maintainer to? Again, we're all only human, with limited time and energy.

So if you want to make a positive contribution, don't just snipe from the sidelines and make some drive-by pull request.
Loose the superior attitude and approach this as one fallible human being making a contribution to a project run by another fallible human being.

Home Assistant, the Python IoT Hub

Posted Jun 13, 2020 14:54 UTC (Sat) by meerdan (subscriber, #119439) [Link]

I don't use the OpenZWave library myself but I wanted to thank you for all your hard work!

There is a lot of work that goes into creating and maintaining such a library. And it must be hard to see that as long as everything works, nobody says anything, but if something doesn't work, people come at you with pitchforks.

I appreciate that you still take the time to show your viewpoint as a maintainer. This helps to remind people that maintainers are also just human and actually want the best for their projects.

Home Assistant, the Python IoT Hub

Posted Jun 14, 2020 0:51 UTC (Sun) by gerdesj (subscriber, #5446) [Link]

HA is now doing its best to get your current work into as many hands as possible. As end users we are getting daily updates now as point releases. Obviously' that is unsustainable long term but as integration bugs are squished why not release often.

I'm not qualified to comment on code quality but current end results for HA users look quite good to me and improving quite literally daily. I do know that Mr Ax can be quite forthright with his language and approach but he generally seems to know what he's on about.

To summarise: HA is making a serious attempt to do Zwave right and make the best of your work.

Please don't give up on us lot. Your work as upstream is very much appreciated.


Copyright © 2025, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds