Home Automation programs for La Maison Vivante
Some programs used to automate our house. The house is entirely self-sufficient, which means it is out-of-grid for water and electricity. There is also no central heating system. And for the most curious of you, dear readers, the house is made of straw, wood, and earth, while being super modern! But this repository is about programs that are used for the home automation, monitoring etc.
Blinds are controlled by the blinds.ino
program, that lands in a
Controllino, along with its companion blinds
. Learn more.
Supplied air, extracted air, temperatures, CO2, Domestic
Hot Water (DHW), Storage Hot Water (SHW) etc. are monitored with the
nilan
program. Learn more.
Batteries, PV inverter, and house are monitored with the
victron-reader
program. Learn more.
Lights are controlled by the lights.ino
program, that lands in a
Controllino, along with its companion lights
. Learn more.
The house uses rain for everything. Rain is collected inside 2 water
tanks. The tanks
program runs in an ESP to calculate the remaining
water in the tanks. Learn more.
The transport is composed of two parts: The (electric) vehicle itself, and its charging station:
The electric vehicle is a Kia EV6, it has its own program to fetch vehicle data via Kia Connect. Learn more.
The charging station is an Alfen Eve Single S-line, it has its own program to fetch and to control it. Learn more.
Weather can be requested through the weather
program. It collects
and exposes a set of interesting weather data. Learn more.
Domestic Appliances are used for thiner monitoring. For the moment,
only the dishwasher is supported with the vzug-reader
program. Learn more.
The hub contains several programs:
The UI is a Web application that can be installed natively or run in a browser. It can be understood as a WebThing gateway. It provides a nice real-time overview of several WebThings, like the battery, the solar PV, the ventilation, the domestic hot water, the humidity etc. It also adds actions to control several things, like the lights and the blinds. Learn more.
Home | Realtime Metrics | Daily Metrics | |
---|---|---|---|
The Database is based on PostgreSQL + Timescale. It contains time-series of the data fetched by the WebThings. It provides metrics, and can be used to automate some parts of the house. Learn more.
The Database is filled by the Event Aggregator.
The Event Aggregator is a very simple program that fetches data from various WebThings, and saves them in the Database. That's it! Learn more.
The Event Automator is an attempt to automate certain actions in the house, by looking at the data in the Database to trigger some WebThing'actions. Learn more.
The services/
directory contains all service definitions ready to be
consumed by systemctl
. Learn more.
To compile all Rust programs (readers or controllers), run the following:
$ cargo build --release --workspace
The other .ino
programs must be installed manually for the
moment. Check respective README.md
s.
The license is WTFPL.
DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
Version 2, December 2004
Copyright (C) 2021- Ivan Enderlin <ivan@mnt.io>
Everyone is permitted to copy and distribute verbatim or modified
copies of this license document, and changing it is allowed as long
as the name is changed.
DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
0. You just DO WHAT THE FUCK YOU WANT TO.