Other Parts Discussed in Thread: BQSTUDIO,
We have an embedded system that works on a battery pack consisting of 4 cells (IFR26650, 3200 mAh, 3.2V), similar to these cells.
Our custom PCB contains a BQ34Z100PWR-G1 on a shared I2C bus, that can be accessed with the STM32 CPU we are using,
or directly by connecting an external connector to the I2C bus. The system must be turned on for this to work.
Circuit connection diagram
With Q1 an IRLML6402 and Q2 an IRLML6246.
We have an EV2300 and are trying to configure and calibrate the gauge with bqStudio so we can later flash an image directly to the
gauge or have the CPU configure it with the same settings through I2C (optional).
However, it's a bit unclear how some of the registry values must be configured to do a successful calibration.
Also, it seems that bqStudio is quite unreliable, since it often reports CRC check errors on read or write, or other 'unknown errors'
when trying to calibrate. If it auto-detects the gauge in the first place... Selecting the gauge from the list claims that it's not compatible'.
I am using the most recent stable build from the website (v1.3.54.1 from July 2017).
Current register values:
Design capacity: | 6400 mAh |
Design energy: | 81920 mWh ? |
Cell charge voltage: | 3.475 V |
LED_Comm/Alert: | / |
Number of series Cells: | 4 |
Pack Configuration: | VOLSEL is set |
Voltage Divider: | 17100 mV (Max BATT+) |
CC Gain/CC Delta: | 100 Ohms? |
Load Select: | 1 ? |
Load Mode: | 0 ? |
Cell Terminate Voltage: | 2.5 V |
Quit Current: | 50 mA ? |
Qmax Cell 0: | 1 ? |
The chemical id seems to be 0x0444, but bqStudio fails to write this to the gauge with an unknown error code when trying to update.
Nominal system draw current is about 48 mA (this is drawn when the PCB is on and the EV2300 is connected).
The draw in use ranges from 200 mA to spikes of ~2000 A.
Calibrating current always fails, saying I need to apply a discharge current of at least 1A (I don't currently have something that can provide this available).
However after entering -48 mA and clicking away the error message, the gauge on the left indicates the correct value of -48mA...
Calibrating the offsets seems to be working.
Calibrating voltage always fails saying that the value must be in the mV range, but the entered value of 10000mV is somehow not correct...
Temperature calibration (like the others) often fails, but then appears to be correctly set.
Any help would be greatly appreciated. Thanks in advance.
PS It's possible that I bricked a test gauge, since it cannot be detected anymore on the I2C bus. Is it possible to recover it somehow?