9e5fd0bf8caad47af36b5e66fa9bf1dd12e636de
Aquamaniac Home Control System (AqHCS)
Overview
Home automation/control system consists of multiple parts:
-
nodes
- decentralized, nodes just broadcast measured data over a two-wire communication network (clock/data), addresses are auto-assigned, no prior setup necessary, no central bottleneck or single point of failure
- node types
- environmental measuring (temperature, humidty, CO2 and others)
- motion detection, door/window sensors
- LED strip controllers
- small PCBs based on AVR microcontrollers
- AtTiny84
- AtTiny85
- AtTiny841
- AtMega644
- modular operating system written in AVR assembler
- event-driven GUI
- driver modules for busses:
- one-wire bus
- two-wire-bus
- SPI bus
- UART
- driver modules for devices/sensors:
- DS18b20 sensors for temperature measurement
- SI7021 sensors for temperature and humidity measurement
- SGP_30 sensors for air quality measurement
- ccs811 sensors for air quality measurement
- SK6812 LED driver
- I2C displays (work-in-progress)
- SPI displays (work-in-progress)
-
applications
- aqhome-data
- TCP data service receiving sensor data
- aqhome-nodes
- service receiving sensor data via inter-node bus from nodes and forwarding that data to aqhome-data
- aqhome-mqttlog
- service exchanging data between aqhome-data service and a mqtt server
- aqhome-react
- service reacting to data received by aqhome-data (home automation service)
- aqhome-tool
- tool to manipulate aqhome-data (e.g. edit devices and values, add data points, create graphs from aqhome-data)
- tool to flash firmware for nodes, list nodes
- aqhome-cgi
- HTTP service for user interaction with aqhome-data
- aqhome-data
Description
Languages
Pascal
70%
Assembly
14.1%
C
9.9%
C++
5.6%
OpenSCAD
0.2%
Other
0.2%