...

  • Kill Switch flipped (?)
  • AFE Under/Over volt
    • Disconnect relay

Revised Block Diagram

Image RemovedImage Added

Design Notes

  • Main initializes killswitch, current_sense, battery_heartbeat, cell_sense, and fan_control. 
  • Killswitch, current_sense, and cell_sense need direct access to battery_heartbeat in order to quickly raise or clear faults.

...

  • Initializes other modules, initializes CAN and other modules
  • Stores the most updated measurements
    • Current
    • Cell voltages
    • Cell temps
    • Relay state
    • Fan speed

Data_tx

  • periodically transmits over CAN the current, cell voltages, cell temps, and relay states
  • Note: may be switched to an alternate form of communication, pending raspberry pi integration

Killswitch

  • Initializes a debounced GPIO pin to handle killswitch presses
  • Exposes init

...