...
Connect the BMS carrier to the AFE isoSPI port A.
Power the BMS carrier board with 12 V.
Connect the AFE to 12 cells in series, OR connect a power supply between VBAT+ and VBAT-. The power supply can be set to about 30 V with a current limit of about 100 mA. Connect resistors of known values for comparison.
Wakeup the LTC6811 by toggling the CS pin from the BMS carrier. To keep the LTC6811 awake, keep toggling the CS pin every second.
Write GPIO bits to 1 so they are not pulled low internally
Connect the P8 header junction to either oscilloscope or logic analyzer. Confirm that the SCLK signal is inverted compared to SCLK IN.
Send the WRCOMM command to initiate writing to the communication registers (0x07_21), followed by the PEC. This command expects 6 bytes to be written to the COMM registers. The 6 bytes are divided into 3 groups of 2 bytes, where the first 4 bits sent are the ICOMn[3:0] bits, followed by Dn[7:0], and finally the FCOMn[3:0] bits, where n=0, 1, 2.
The ICOM0[3:0] bits should be 0xA. This sets the GPIOs as a SPI master that toggles the CS high then low at the beginning of communications.
The D0[7:0] is the command to send to the multiplexer, which is 0b000AAAAA where AAAAA is the thermistor to measure (AAAAA can be any value from 0b00000 to 0b11111). Note that switches 17 and 18 of the MUX (address 0x10 and 0x11) correspond to PCB mounted thermistors as of version 2.0, so testing these require soldering SMD resistors to RT1 and RT2.
The FCOM[3:0] bits should be 0x9. This sets the CS high after the data is sent.
The ICOM1[3:0] bits should be set to 0xF. This ends the transmission so that the value from the ADC can be read before the next thermistor is selected. All data in the COMM registers after this nibble will be ignored so the rest of the bits can be 0.
After all the data is sent, another PEC must be sent.
Now that the data has been written to the COMM registers, it can be sent to the multiplexer using the STCOMM command, followed by the appropriate number of clock cycles.
Read the ADC value.
Receive data from the COMM registers. Compare the values with the measured values.
RDCOMM command.