Software
Brineomatic firmware is fully open source and licensed under the GPLv3 license.
View the source on github.
Firmware Structure
The firmware uses the YarrboardFramework under the hood:
- Shared channel classes (RelayChannel, ServoChannel, StepperChannel)
- High-level state machine
- Real-time FreeRTOS task for automation
- JSON configuration/validation system
- Multiple API options
State Machine
Brineomatic transitions through well-defined states:
- STARTUP – Initialize hardware, restore state
- IDLE – Waiting, autoflush scheduling
- MANUAL – Direct hardware control
- RUNNING – Production cycle
- STOPPING – Shutdown sequence
- FLUSHING – Freshwater flushing
- PICKLING – Chemical preservation
- DEPICKLING – Re-entry into service
- PICKLED – Long-term storage
Every stage includes structured safety checks, timeouts, and error recovery.