- Core software
- Smart house
- Other software
When I started thinking about software in the house, the list was simple:
- HomeAssistant and
Since then, I have been collecting information about other useful bits of software. I thought to compose a list of commercial and open source software I would like to install in the house.
Before I start with the actual list, I'd like to mention the states I have defined for the software:
|Initial||I have found it exists|
|Investigating||Try to configure/run it on my local machine|
|Test||Installed on a machine, see if it's useful|
|Acceptance||Run with real data, accessible to users|
|Production||Definitive installation on the infrastructure|
I'm using the following core/infrastructure software:
|VmWare ESXi||Virtualization software||I need virtualization to separate the concerns||Production||6.7.0|
|TrueNAS||NAS||Use this to store data (documents etc.)||Acceptance||TrueNAS-12.0-RC|
|CentOS||Base OS||Multiple installs for different things||Production||8|
|UniFi||UniFi controller||To manage the Ubiquiti infrastructure||Production||Docker|
When I established the initial needs, I figured I needed some processing power for the smart house stuff and another storage-intensive thing for the data I have. Rather than buying multiple machines, I chose to get a second hand server + some RAM and fill it up with SSDs and HDDs.
After that, I had a choice to run a monster linux machine on bare metal or to virtualise things. Since the more popular NAS is on BSD (FreeNAS), I had do virtualise things.
When investigating choices, I discovered a Synology rip, FreeNas and OpenMediaVault. Given this has to be somewhat stable (multimedia, backups etc.), I went for FreeNAS (with the footnotes of running FreeNAS on a VM).
I investigated some linux distributions: Ubuntu, ClearLinux and CentOS. I've started first with ClearLinux, but I've ran into a wall for a potential thing with the Nvidia support. So, I had to choose another distro. CentOS seemed interesting :)
UniFi Controller (networking)
I have bought a few UniFi hardware for the internal infrastructure of the house. UniFi has this nice unified (d'oh!) configuration mechanism. Now, I could have shelled more for a Dream Pro machine but, given the hardware I already have, I chose to install the UniFi controller in a Docker environment (with external volumes for saving the important data)
For the smarts of the house I (want to) use the following:
|HomeAssistant||Smart house control||To improve the KNX logic||Acceptance||0.110|
|ESPHome||Program ESP-based sensors||Measure temperature, humidity etc.||Testing||Part of HA|
|MQTT||Messaging for IoT||Allow IoT devices to connect to e.g. HA||Investigating||Docker|
|NodeRed||Workflows||Automate actions based on events||Initial||Docker|
|ETS||KNX programming||Program the KNX devices||Investigating||Windows|
|Grafana||Data visualisation||House state||Investigating||Docker|
For the time being I'm able to control a light bulb, to view some sensors and record their data in a DB. I can also see my Sonos' status.
I have a couple of ESP-based sensors. I use ESPHome to program them and connect them to my HomeAssistant instance. For the time being, I don't have any smarts behind these sensors, just logging their data in a DB.
MQTT is a messaging system, where various entities can subscribe to an event. When the event happens, those said entities can react to it. Pretty useful for IoT (and the reason for which I placed it in this category)
Node-RED in an event-driven flow automation tool. I'm thinking to use it in order to program more complex actions and complement the KNX infrastructure and HomeAssistant.
ETS is a commercial piece of software used by professionals to program their KNX devices. As the house will be with KNX, these devices will need to be programmed and likely adapted to needs. This runs off a Windows machine and is designed to program KNX devices (and inspect their statuses).
This is an expensive commercial program, and it's really recommended if you want to seriously mess around with your KNX installation. If not, then buy the 'Inside' variant or call a professional.
Grafana is a cute piece of software to visualize things. You can tell it to monitor various sources and can give you nice graphs in real time. I've worked a bit professionally and I think it'll be useful to add it to get a bird's eye view of the house state. I am a data hoarder, after all :)
There's a number of items which don't have (yet) a dedicated category:
|Firefly III||Financial management||It'd be nice to know where money actually goes||Initial|
|NextCloud||Remote drive||Save/synchronise documents on the NAS||Initial|
Firefly III seems a nice-to-have tool to help with finances. I will install it and try to monitor my accounts. Who knows?
NextCloud seems a good local alternative to e.g. google drive, although one would need to set up a very complex infrastructure to access files remotely. I will try to install the new version (20.0.0 at the time of writing this article) to make automatic backups from the personal machines easier.