Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Board Overview (Firmware)

I/O 

  • CAN (inout)CAN 
  • Kill Switch (in) (?)Switch 
  • AFEs (iso-SPI) (inout)Fan Control (out)isoSPI) 
  • Fan Control 
  • Current Sense Board (out) (?isoSPI)
  • Relays (inout)

Stuff that happens (Internal / Synchronous) that board needs to deal with

  • CAN Message recieved
  • Monitor Temparature (AFE)
    • Too High→ increase fan speed
    • Too low → who cares (?)
  • Car powered on
    • validate battery health / status
    • turn on relays
    • turn on current sense board
  • Monitors state of charge
    • Voltage
    • Current

...

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

...

  • Three AFEs 
  • Temperatures measured via thermistors (AFEs)
  • gpio's control the mux (for AFEs)
  • adc: for reading measurements
  • we talk to this bish the AFEs and Current Sense using iso-spi
  • LTC6811 is the chip (Battery Monitor) (6811-1)
    • According to the datasheet, the 6811 is pin and software compatible with the 6804 used in MSXII. The changes seem to entirely affect electrical characteristics.
    • So we should be able to reuse the majority of AFE driver code

Questions

QuestionAnswer
What are the conditions under which we open the relays?

Over current, over temperature, over voltage, under voltage, upon request over CAN

How many ways are there to change the relay state? Is BMS Carrier the only one controlling them?Kill switch also controls the relay state externally.

What are the incoming CAN messages?

BMS Carrier CAN Messages
What are the outgoing CAN messages?BMS Carrier CAN Messages
What's the maximum rate we can have for voltage measurement?
What's the maximum rate we can have for current measurement?
What should it do when we power the car ON?Check relay states and ensure the batteries are within manufacturers specifications for over voltage, under voltage, over temperature, etc.
How are we computing the SOC? We will be using an OCV-SoC and coulomb counting method to start. (Ask Micah Black)
What are the temperature ranges for fan control?An offset linear fan control curve to start for easy implementation. This will make the fans run at full speed before the batteries reach maximum temperature.
Can fan status be monitored? Does it need to be? (rpm too high/too low)Yes, fans can and should be monitored to see any malfunctions. Specifications can be found here: https://noctua.at/media/wysiwyg/Noctua_PWM_specifications_white_paper.pdf

...