I want to use TI's BQ35100 fuel gauge IC for my circuit. As per this instructional video, I would need an evaluation board and a communications interface adapter to configure the IC. Could I just use a simple USB-I2C converter (e.g. this Adafruit converter) to configure the IC instead?
-
I did a similar thing with BQ20Z40 with FT232H converter. It had the difficulty of having SMBus instead of plain-I2C interface, which required tuning the timings a bit. But BQ35100 looks like plain-I2C, so it should work if you write your own configuration scripts. – jpa May 18 '19 at 13:15
2 Answers
Yes, you certainly can configure the fuel gauge IC with your own I2C interface and, when the IC is embedded into a system, you will do it from your own code.
But the IC is conveniently supported by a system configuration applet called Battery Management Studio, BQSTUDIO, with all registers properly displayed and broken into individual control bits, with designations in accord with specification. Unfortunately this applet only understands the TI interface adapters like Ev2400. While it is pricey for DIY, but it will speed up your development.
The BQ35100 is a complex chip with elaborated control over several sophisticated algorithms, and uses SHA-1 hash encryption for some parts, see Programming Manual. The EV2400 and bqSTUDIO will help you to wade through all these intricacies, which will guide you with design of your own code. I would highly recommend getting the EV2400 box.

- 38,845
- 3
- 38
- 103
There may be another alternative to the Adafruit converter you mentioned: Bus-Pirate
As per their docs:
Bus Pirate v4 is a universal bus interface that talks to electronics from a computer serial terminal. Get to know a chip without writing code. Eliminates a ton of early prototyping effort with new or unknown chips.
It supports these Protocols : 1-Wire, I2C, SPI, JTAG, asynchronous serial (UART), MIDI, PC keyboard, HD44780 LCDs, and generic 2- and 3-wire libraries for custom protocols.
In principle, EV2400 must be nothing but a USB-I2C converter. However, as @Ale..chenski mentioned, it may be difficult to make BQStudio communicate using these custom USB-I2C converters. This could be because TI may have locked BQStudio so that it would communicate only when EV2400 is connected.
UPDATE: As per the TI forum:
The chem id is contained in private registers that you do not have access to. You can program the data flash or the entire firmware image of the device to the gauge but you can't just program the chem id using your host because the registers are private due to them being proprietary
So, it seems that using a custom USB-I2C converter, it will be difficult to program BQ35100.

- 186
- 1
- 12
-
1The TI forum info looks like a nonsense. EV2400 communicates with gauge IC over standard I2C protocol. So if there are any private undocumented registers, one should be able to get access to them anyway. However, the bq35100 does have some security built-in, "SHA-1 authentication to help prevent counterfeit battery use", so the access should be documented.See http://www.ti.com/lit/ug/sluubh1c/sluubh1c.pdf – Ale..chenski May 18 '19 at 16:11