...

  • To be ported from MSXII firmware.

  • measures voltages through the AFEs

  • measures temperatures through the auxiliary GPIO pins on the AFEs through the ADG731 multiplexer

  • Raises / lowers faults similar to current_sense, including overcharge, over temperature, under charge

  • General structure is an FSM that usually remains in idle state, but moves to a “voltage reading” state or “temp reading” state whenever reading.

    • will likely use this approach for passive balancing as well

Fan_control

  • Periodically updates the fan speed based on the temperature

  • Uses an offset linear fan control curve based on the desired operating temperature of the battery (refer to datasheet)

  • Exposes init

...