How I wrote my own Smart Home software

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
  • zigbee2mqtt

    Zigbee 🐝 to MQTT bridge 🌉, get rid of your proprietary Zigbee bridges 🔨

  • If looking for lightweight solution with zigbee (usb dongle) one can also take a look at Zigbee2MQTT [0]. This library is used by HomeAssistant under the hood, but it can be used independently as a standalone app and let one interact with zigbee devices using MQTT json messages. And it supports a lot of devices : "Currently 2971 devices are supported from 379 different vendors"

    [0] https://www.zigbee2mqtt.io

  • openai-kiss

    Simple shell scripts to access OpenAI API

  • The "framework effect" seems to be a thing these days, not only with SPAs using the newest JS framework.

    When I stumbled across an HN article describing a CLI app for the OpenAI API, I thought that is just what I was waiting for. Unfortunately, when I tried it, it didn't work for me. After a debugging session, I found a bug in the openai python package which led to my key not being used if I have ~/.netrc exists. Pretty much a demonstration of the "framework effect". The simplest things, read CLI tools, become buggy in subtle ways because you inherit every bug deep down in the dependency chain. I ended up implementing my own OpenAI API CLI client in just a few lines of shell. Much easier to review, and almost impossible to have subtle hidden bugs.

    https://github.com/mlang/openai-kiss

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • homegui

    A simple web GUI + automation to work with zigbee2mqtt

  • I started with a similar path a few years ago - IKEA smart home gear. The controller went away fairly quickly. I stayed for a long time on raspberry pi + Zigbee stick from DeConz + Apple home integration using homebridge.io.

    Deconz felt a bit bloated/buggy, so I switched to using a cheap USB stick from aliexpress, and using zigbee2mqtt, which turned out to be a pretty good combination.

    Unfortunately Apple decided (while I was on a business trip) that Apple TV 3 was no longer good enough as a home hub, so all of my soft switches stopped working...

    As a result in a couple of days I wrote a quick MVP replacement in Rust, which has been working very nice for me, and the "user" (significant other) feedback was that it is now much more reliable and responsive.

    Putting it here in case anyone finds it useful.

    https://github.com/ayourtch/homegui

  • sbts-install

    Discontinued Installs StalkedByTheState over the sbts-base system to build a home and business security appliance on NVIDIA Jetson series computers.

  • Nice that you should say that :) I also wrote a home automation system.

    Well... actually, it's a kinda burglar alarm except it's focus is alerting way ahead of actually getting inside. I added home automation bits (minimal) just so one can elicit a real world response, but I do use it for minimal home automation (Lights, heating control and letting the chickens in and out).

    I have yet to announce on on hacker news and so because I still have to write a bunch of documentation. It uses the latest state of the art computer vision triggering, currently yolov7 and I'm about to release support for yolov6. It's multimodel, so you can double check it's result with more than one model, even for specific parts of an image.

    The architecture diagam and installation instructions are here:

    https://github.com/hcfman/sbts-install

    I actually, started writing this in 2008 and most of the current state in terms of the user interface were finished in 2012 but I only released it into open source last year really. In 2019 I add support for yolov3 and have been adding models even since.

    It's written in Java and installs in just two commands on nvidia jetsons at the moment (Not in containers). The inference framework is a simple websocket based wrapper around other models so it's easy to add new models and that's written in python.

    Well I finish the new release to introduce yolov6 and support for the seeed studios platforms I'll make an announcement on hacker news, note I still have a lot of work to do on documentation.

  • iot_devices

    Minimal generic API and data model for an IOT device

  • My HA platform project started in 2013. Every few months or so I check back to see if HA has progressed far enough that I can ditch one of the last custom apps in my life.

    It's getting there. But it's not quite there yet. Last I checked the logging still saves every change, it's not easy to set up so that it will only save average/min/max over time to save SD wear.

    Creating new integrations is easy but still not quite a five minute job like it is with my extension API(https://github.com/EternityForest/iot_devices)

    But yet, having custom software in one's life is generally IMHO far more of a liability than an asset.

    So what I actually do is just use YoLink and Google assistant for everything I possibly can, and use custom software for video recording and unusual stuff YoLink doesn't do.

    I'd love to have a one size fits all "If it need automating, use this" platform, and HA seems like it's got the potential.... but just using the YoLink proprietary platform is the lazy, trouble free, super cheap way.

  • SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts

  • How to Create an Interactive Terminal-Based Portfolio

    1 project | dev.to | 3 May 2024
  • Carapace: A multi-shell completion library and binary

    8 projects | news.ycombinator.com | 22 Apr 2024
  • GitHub - python-cmd2/cmd2: cmd2 - quickly build feature-rich and user-friendly interactive command line applications in Python

    1 project | /r/Python | 27 Aug 2023
  • Alternative Shells

    2 projects | news.ycombinator.com | 23 Aug 2023
  • no-my-zsh Killed My History

    3 projects | /r/zsh | 16 May 2023