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.
Development for the main control application requires the setup of the development environment.