Control application
The main control application of Aquarium control implements the following features:
- Data acquisition of water temperature, pH and conductivity
- Data acquisition of ambient temperature and humidity
- Refill control for fresh water
- Feed control
- Water temperature control using air ventilation and heater
- Balling mineral dosing
Additionally, the main control application implements the following supporting features:
- Configuration using a Rust .toml configuration file
- Logging
- Command interface to receive instructions from outside of the application via a POSIX message queue
- Storage of recorded data in SQL database
- File-based communication to RAM-disk
- Usage of simulator is run with simulated sensor data for development purposes
- Schedule checks to limit the hour of day of operating certain actuators
The application is written in Rust and is automatically started using systemd.