I'm working on a BMS project for an electric car. I'm using LTC6804-2 for Voltage and temperature measurement in each cells. As a first step of development, I would like to establish a successful communication with the monitoring IC (LTC6804-2). So, I'm sending set config register command and trying to read back the config register values that I have written. If I receive configuration register values without CRC error, I consider my communication is successful.
In my case, I do not receive expected register values with proper CRC when I read back. Let me break down my situation into small segments.
- I'm working on a custom BMS board for this project(LTC6804-2 and STM32F072). I will attach the schematics below. To test my code, I tested my program with DC1942C demo board and arduino UNO. And it is working fine. I can read back the config register and I can calculate the cell voltage and Auxiliary values.
When I try to impliment the same program in my custom BMS boart, I'm not getting the correct values. I always get CRC error in the recived data.
Following the guidelines from the Analog Devices forum enter link description here, I tested the Vref2 value after sending the config register command, and the voltage goes up to ~3V as expected. So the IC is receiving the message properly. But Why it is not transmitting back?
Below are the captures from the demo board and BMS custom board.
Register read capture from Arduino Uno and demo board DC1942C
Register read capture from the custom board
- In fact I tested the program with STM32 development board and DC1942 demo board, I get the correct values.
Thank you for your help. If you want any additional details, please let me know.
LTC6810-2 datasheet enter link description here