Tool/software:
Wer developing a Board for 8s batterie balancing and charging.
We have the charging part working, but the balancing does not work in either autonomous or host-controlled mode.
All we want from this IC Is balancing, non of the protection features are of importance.
The chip doesn't start balancing by itself, and even if manual balancing is attempted with 0x0083 subcommand,
the values stay in the register for a maximum of 1s and then get dropped to 0.
After power on, we start by entering config update, double checking config update bit in 0x12,
then
Setting 0x9335 to 0b00001111 to enable balancing while not charging, enabling balancing while charging and disabling sleep while balancing.
Setting 0x9304 to 0x00FF cause were intending to use this in 8s configureation.
Sending 0x009A subcommand to disable sleep.
Exiting config update mode and rereading 0x12.
Then we print out all the cell voltages to make sure everything is working as expected, and enter a loop with goal to try balancing.
In this loop were reading 0x0083 and if it returns 0, we write a 0b00000100, With hopes to start balancing 3rd cell.
This bit stays high for about a second, and then gets zeroed out. this continues indefinitely.
Heres a log.
23:32:46.024 -> Starting
23:32:46.024 -> Battery Status 0x12: 1000000110000100
23:32:46.024 -> Entering config update
23:32:46.024 -> Battery Status 0x12: 110000101
23:32:46.024 -> Balancing Configuration 0x9335: 1111
23:32:46.024 -> Enabled Protections A 0x9261: 88
23:32:46.051 -> Enabled Protections B 0x9262: 0
23:32:46.051 -> Enabled Protections C 0x9263: 0
23:32:46.051 -> Exiting config update
23:32:46.051 -> Battery Status 0x12: 110000000
23:32:46.051 -> Cell voltages:
23:32:46.051 -> 0 : 4095mv
23:32:46.051 -> 1 : 4061mv
23:32:46.051 -> 2 : 4018mv
23:32:46.051 -> 3 : 3891mv
23:32:46.051 -> 4 : 3715mv
23:32:46.051 -> 5 : 3737mv
23:32:46.051 -> 6 : 3719mv
23:32:46.051 -> 7 : 3705mv
23:32:46.051 -> 8 : 0mv
23:32:46.051 -> 9 : 0mv
23:32:46.051 -> 10 : 0mv
23:32:46.051 -> 11 : 0mv
23:32:46.051 -> 12 : 0mv
23:32:46.051 -> 13 : 0mv
23:32:46.051 -> 14 : 0mv
23:32:46.051 -> 15 : 0mv
23:32:46.051 -> Connected cells 0x9304: 11111111
23:32:46.051 ->
23:32:46.092 -> cells currently balanced 0x0083: 0
23:32:46.092 -> Balancing Configuration: 0x9335: 1111
23:32:46.092 -> Battery Status 0x12: 110000100
23:32:46.092 -> latched alerts 0x62: 0
23:32:46.092 -> enabled alerts 0x66: 1111100000000000
23:32:46.092 -> PF Status D 0x11: 0
23:32:46.092 -> Safety Alert A() 0x02: 0
23:32:46.092 -> Safety Status A() 0x03: 0
23:32:46.092 -> Safety Alert B() 0x04: 0
23:32:46.092 -> Safety Status B() 0x05: 0
23:32:46.092 -> Safety Alert C() 0x06: 0
23:32:46.092 -> Safety Status C() 0x07: 0
23:32:46.092 ->
23:32:46.308 -> cells currently balanced 0x0083: 100
23:32:46.308 -> Balancing Configuration: 0x9335: 1111
23:32:46.308 -> Battery Status 0x12: 110000100
23:32:46.308 -> latched alerts 0x62: 0
23:32:46.308 -> enabled alerts 0x66: 1111100000000000
23:32:46.308 -> PF Status D 0x11: 0
23:32:46.308 -> Safety Alert A() 0x02: 0
23:32:46.308 -> Safety Status A() 0x03: 0
23:32:46.308 -> Safety Alert B() 0x04: 0
23:32:46.308 -> Safety Status B() 0x05: 0
23:32:46.308 -> Safety Alert C() 0x06: 0
23:32:46.308 -> Safety Status C() 0x07: 0
23:32:46.308 ->
23:32:46.493 -> cells currently balanced 0x0083: 0
23:32:46.493 -> Balancing Configuration: 0x9335: 1111
23:32:46.527 -> Battery Status 0x12: 110000100
23:32:46.527 -> latched alerts 0x62: 0
23:32:46.527 -> enabled alerts 0x66: 1111100000000000
23:32:46.527 -> PF Status D 0x11: 0
23:32:46.527 -> Safety Alert A() 0x02: 0
23:32:46.527 -> Safety Status A() 0x03: 0
23:32:46.527 -> Safety Alert B() 0x04: 0
23:32:46.527 -> Safety Status B() 0x05: 0
23:32:46.527 -> Safety Alert C() 0x06: 0
23:32:46.527 -> Safety Status C() 0x07: 0
23:32:46.527 ->
23:32:46.747 -> cells currently balanced 0x0083: 100
23:32:46.747 -> Balancing Configuration: 0x9335: 1111
23:32:46.747 -> Battery Status 0x12: 110000100
23:32:46.747 -> latched alerts 0x62: 0
23:32:46.747 -> enabled alerts 0x66: 1111100000000000
23:32:46.747 -> PF Status D 0x11: 0
23:32:46.747 -> Safety Alert A() 0x02: 0
23:32:46.747 -> Safety Status A() 0x03: 0
23:32:46.747 -> Safety Alert B() 0x04: 0
23:32:46.747 -> Safety Status B() 0x05: 0
23:32:46.747 -> Safety Alert C() 0x06: 0
23:32:46.747 -> Safety Status C() 0x07: 0
23:32:46.747 ->
23:32:46.953 -> cells currently balanced 0x0083: 100
23:32:46.953 -> Balancing Configuration: 0x9335: 1111
23:32:46.953 -> Battery Status 0x12: 110000100
23:32:46.953 -> latched alerts 0x62: 0
23:32:46.953 -> enabled alerts 0x66: 1111100000000000
23:32:46.953 -> PF Status D 0x11: 0
23:32:46.953 -> Safety Alert A() 0x02: 0
23:32:46.953 -> Safety Status A() 0x03: 0
23:32:46.953 -> Safety Alert B() 0x04: 0
23:32:46.953 -> Safety Status B() 0x05: 0
23:32:46.953 -> Safety Alert C() 0x06: 0
23:32:46.953 -> Safety Status C() 0x07: 0
23:32:46.953 ->
23:32:47.156 -> cells currently balanced 0x0083: 100
23:32:47.156 -> Balancing Configuration: 0x9335: 1111
23:32:47.156 -> Battery Status 0x12: 110000100
23:32:47.156 -> latched alerts 0x62: 0
23:32:47.156 -> enabled alerts 0x66: 1111100000000000
23:32:47.156 -> PF Status D 0x11: 0
23:32:47.156 -> Safety Alert A() 0x02: 0
23:32:47.156 -> Safety Status A() 0x03: 0
23:32:47.156 -> Safety Alert B() 0x04: 0
23:32:47.156 -> Safety Status B() 0x05: 0
23:32:47.156 -> Safety Alert C() 0x06: 0
23:32:47.156 -> Safety Status C() 0x07: 0
23:32:47.156 ->
3:32:47.361 -> cells currently balanced 0x0083: 0
23:32:47.361 -> Balancing Configuration: 0x9335: 1111
23:32:47.407 -> Battery Status 0x12: 110000100
23:32:47.407 -> latched alerts 0x62: 0
23:32:47.407 -> enabled alerts 0x66: 1111100000000000
23:32:47.407 -> PF Status D 0x11: 0
23:32:47.407 -> Safety Alert A() 0x02: 0
23:32:47.407 -> Safety Status A() 0x03: 0
23:32:47.407 -> Safety Alert B() 0x04: 0
23:32:47.407 -> Safety Status B() 0x05: 0
23:32:47.407 -> Safety Alert C() 0x06: 0
23:32:47.407 -> Safety Status C() 0x07: 0
This is our Schematic
As you can see there's no alerts nor status bits.
All we need is balancing, I have a feeling that some register is not set up somewhere, can you please assist.
These bords have to go in production in about a week, would like to use this ic and not have to switch.
Regards.