Other Parts Discussed in Thread: BQ76920, , BQ78350, BQ769200
Tool/software:
Hello,
I have designed a BMS using the BQ78350-R1A Controller and the BQ76920 AFE. I already asked a question, that is in some ways related to this topic:
As was stated there, it should have been no problem to connect the BQ78350's SMBus- and I2C-Pins together with the I2C-Pins of the BQ76920 all on 1 single bus, since we want to have the option to leave out the BQ78350 for simpler applications and talk to the BQ76920 directly.
No own code was active during the following tests and recordings.
The BQ769200 version was used that has no CRC function. The BQ78350 is still "SEALED", could this be a problem? What changes if I "unseal" the device?
1) I can communicate with the BQ78350 using the EVM2400 that has just arrived today. The device is recognized automatically and I also receive values, but there are frequent "packet sum mismatches" and NACKs, Timeouts and "Unexpected Response Communicating" (I guess the latter would be due to the BQ76920 communication happening on the same bus?)
Please also see following picture for that. The BQ78350 (Address 0x0B) is always addressed (from the EVM2400) in these short segments:
2) Is it correct that these transactions end with a NACK? Is this a normal behaviour?
3) I dont think the described problems are caused due to all the connections lying on 1 Bus, though. It does not look like any of the BQ78350 operations are "interrupted" by the communication starting with the BQ76920 or the EVM. There are always multiple milliseconds in between. For example here:
4) I would like to know if I should try to break up the Bus on the BQ78350 and connect the I2C-pins only to the BQ76920 and just communicate using the SMBus pins from the BQ78350.
5) Problems maybe related to the BQ76920:
- The AFE may be related to the occuring problems. The cell voltages are only transmitted for the first 3 Cells, not all 5. In TI documents it is stated that the BQ78350 has a default of 5 Cells, so it does not like the BQ76920 was configured incorrectly. I also have this problem if I use my own driver code to communicate with the BQ76920 directly. I cannot tell if the AFE may be damaged or if the communication is the problem. Please have a look at the following BQ76920 I2C communication:
The AFE should read all cell voltages (in BLOCK_READ), so the register address is incremented automatically. But as can be seen in the picture, after registers 0x0C and 0x0E are read, it directly jumps to 0x14?
What could be the problem here? Again, are these "NACKs" correct here?
Thank you very much in advance!
Niklas