This branch updates the auto brew library with changes meant to facilitate a future app based GUI.
The use of malloc has been removed from the library.
Triggers have leg-dependent values instead of values being hard coded into callbacks. This allows different legs to e.g. end when the scale reaches different values.
Mappings have been improved and simplified. 1-to-1 logic has been replaced with a NULL mapping. Other mappings are defined as callbacks that take a set point and return a pump power. They can wrap calls to e.g. pid_ticks, providing some abstraction.
I still need to expand the settings local UI to allow for greater control with more legs configurable. This will need to be done before I can merge this branch. In the future, I will write a function that maps a few bytes of packed data to a specific leg of the routine. This will be used to transmit auto brew routines from a mobile UI to the local settings.
This branch updates the auto brew library with changes meant to facilitate a future app based GUI.