This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

SMBus communication and EV2300

Other Parts Discussed in Thread: BQEVSW, BQ20Z70

Hi,

I'm looking for a SMBus communication tool that could possibly be used with any SMBus enabled battery provided the connections are correct. I know that this might not be possible always because communication between batteries and systems depend on manufacturer and model, and might be protected. Is the bqEVSW the only software tool for communicating with the GasGauge chips, or is there some other more generic tools available?

In some technical documents (mainly in "Data flash programming and calibrating" for bq20z70) I've seen example codes for communicating with the bq20zXX chips, but not much information on how they should be used. I'm interested in experimenting with communication through the SMBus protocol with the GasGauge chips in this way. Is there any full guide on how to e.g. make your own test programs like this? The only mention in the document I see is that "the code can be duplicated in any system with SMBus communication capabilities". I'm assuming having the EV2300 qualifies as such, but how should I proceed from there?

Thank you.

 

  • You can use a SMBus controller or build the SMBus engine using a mirco. The commands to communicate our device is available in the technical reference manual of the device web page. The sample code in our application note give you an overview on what the flow should be to develop your own software for data program image read/write and calibration. 

    If you're interested in using TI's EV2300, we provide a customer kit with sample code and help file for your development. Attached is the EV2300 customer kit.

    EV2300 Customer Kit.zip
  • Is there a map that shows where all of the flash values are located? I need to read back every value in the configuration, Gas Gauging, Chg Control and SBS config tabs of the flash page in the BQeasy software, but I can't find the SMBus commands that give me those numbers. I know that 1C is serial number, for example, but very few of the other ones.
  • Refer to the device's TRM, under "Data Flash Values" section. The TRM can be found in the product webpage.

  • Hey,

    I am currently interested to communicate with the bq20z40EVM through the SMBus using an STM3210E-Eval processor. Usually this processor is programmed using C++.

    Is there any libraries to map the bq20z40EVM commands into C++ code??  is there an way to read a .DFI file using a C++ program and send it later to the bq20zxxxx over the SMBus ??

  • For DFI programming, you can refer to application note: SLUA379. The document has code example in VB6.

    We don't have C++ library for the processor.

  • Thank you for your feedback.

    SLUA379 explains how to implement the function; However, there is a part I am unable to understand. It would be useful if you can give me  a reference where I found details of the implementation of the SMBus in the bq20z40xx.

    For example, If I am to read an integer value from the bq20z40EVM, should send the command number (without sending some specific register address) then wait for the response?? what are the time delays here??