You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+50-30Lines changed: 50 additions & 30 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -26,6 +26,12 @@ Based on the unmaintained [PackProbe program](https://github.com/PowerCartel/Pac
26
26
27
27
<br/>
28
28
29
+
# Features
30
+
- Incudes a combined volt / resistance meter, to determine the function of unknown SBM connections.
31
+
- Starts with I2C address scanning.
32
+
- Computing of pack ESR (Equivalent Series Resistor) if current changes from 0 to != 0 e.g. at start to charge or discharge.
33
+
- Activating a discharge MOsFet, as long as voltages are above 3.3 volt per cell.
34
+
- Reconnecting after I2C failure.
29
35
30
36
# Disclaimer
31
37
**I do not know how to enter full access mode, clear permanent failure or unlock any controller IC.** Unfortunately according to most datasheets, you need an unlock key.
@@ -140,36 +146,37 @@ Sample outputs can be found in folder [extras](https://github.com/ArminJo/Smart-
140
146
141
147
```
142
148
START ../src/SBMInfo.cpp
143
-
Version 4.3 from Nov 23 2023
149
+
Version 4.4 from Oct 4 2025
144
150
Configured to set charge control pin 9 to low above 95 %
145
-
Configured to stop discharge control pin 10 to low below 5 % or 3300 mV
146
-
Found attached I2C device at 0xB
151
+
Configured to set discharge control pin 10 to low below 5 % or 3300 mV
152
+
Found attached I2C device at address 0xB
147
153
148
154
Battery mode 0x6081 | 0b110000010000001
149
155
- Internal Charge Controller Supported
150
156
- Battery OK
151
157
- Disable AlarmWarning broadcast to Host and Smart Battery Charger
152
158
- Disable broadcasts of ChargingVoltage and ChargingCurrent to Smart Battery Charger
153
159
154
-
Manufacturer Name DP-SDI51
155
-
Chemistry LION
156
-
Manufacturer Data 0x6 7D B B1 67 14 96 D 0 C8 0 A9 2A
157
-
Device Name DAVOS
158
-
Serial number 55982 | 0xDAAE
160
+
Value1=3687, Value2=3667 - Non standard info is supported
161
+
Manufacturer Name SANYO | 0x53 41 4E 59 4F
162
+
Chemistry LION | 0x4C 49 4F 4E
163
+
Manufacturer Data W'4=5 | 0x57 7 27 3 34 E 3D E 1F E 35 E
164
+
Device Name M10B1 | 0x4D 31 30 42 31
165
+
Serial number 11444 | 0x2CB4
159
166
Manufacture date (YYYY-MM-DD) 2008-5-25
160
-
Design voltage 10.800 V
161
-
Design capacity 5100 mAh
162
-
Charging current 3570 mA
163
-
Charging voltage 12.600 V
167
+
Design voltage 14.400 V | 4 cells
168
+
Design capacity 4400 mAh
169
+
Charging current 3080 mA
170
+
Charging voltage 16.800 V
164
171
SBM protocol (Version / Revision) 1.1 with optional PEC support / 1
165
-
Cycle count 277
172
+
Cycle count 331
166
173
167
174
Max error of charge calculation 100%
168
175
Remaining time alarm 10 min
169
176
Remaining capacity alarm 510 mAh
170
177
171
178
*** MANUFACTURER INFO ***
172
-
Device Type 0 | 0x0
179
+
Device Type 1794 | 0x702
173
180
174
181
*** RATE TEST INFO ***
175
182
Setting AT rate to 100 mA
@@ -201,31 +208,39 @@ Pack config and status 0x8230 | 0b1000001000110000
201
208
- Discharge is qualified for capacity learning
202
209
203
210
204
-
*** DYNAMIC NON STANDARD INFO ***
211
+
*** DYNAMIC NON STANDARD INFO / Cell Voltages + SOH ***
205
212
Cell 1 Voltage 3.826 V
206
213
Cell 2 Voltage 3.823 V
207
214
Cell 3 Voltage 3.819 V
208
215
Cell 4 Voltage 0x0
216
+
State of Health 5911 | 0x1717
209
217
210
218
*** CHANGED VALUES ***
211
219
212
-
--- Next values are from another Pack! I connected 22 ohm Resistor -> 699 mA discharging
220
+
--- After onnecting the 100 ohm discharge resistor, ESR is computed!
213
221
214
-
Voltage 15.788 V
215
-
Average current of last minute -187 mA
216
-
Average minutes remaining until empty: 15 h 24 min
217
-
Cell 4 Voltage: 3.935 V
218
-
Voltage 15.807 V
222
+
Current -147 mA
223
+
Voltage 14.653 V
224
+
Average current of last minute -31 mA
225
+
Minutes remaining until empty 1 min
226
+
Average minutes remaining until empty 1 min
227
+
Battery status (BIN) 0x3C0 | 0b1111000000
228
+
- REMAINING_CAPACITY_ALARM
229
+
- REMAINING_TIME_ALARM_FLAG
230
+
80 Initialized
231
+
40 Discharging
232
+
233
+
Cell 1 Voltage 3.666 V
234
+
Cell 2 Voltage 3.646 V
235
+
Cell 3 Voltage 3.674 V
236
+
Cell 4 Voltage 3.666 V
237
+
Voltage 14.650 V | ESR = 0.578 ohm
238
+
Average current of last minute -78 mA
239
+
Cell 2 Voltage 3.645 V
240
+
Cell 3 Voltage 3.673 V
241
+
Average current of last minute -104 mA
242
+
Voltage 14.648 V
219
243
Average current of last minute -120 mA
220
-
Average minutes remaining until empty: 24 h 1 min
221
-
Cell 4 Voltage: 3.949 V
222
-
Average current of last minute -77 mA
223
-
Average minutes remaining until empty: 37 h 25 min
224
-
Voltage 15.714 V
225
-
Current -699 mA
226
-
Average current of last minute -178 mA
227
-
Minutes remaining until empty 4 h 7 min
228
-
Average minutes remaining until empty: 16 h 11 min
229
244
```
230
245
231
246
<br/>
@@ -236,6 +251,11 @@ Average minutes remaining until empty: 16 h 11 min
// External Reference Current is 150 uA for 5 V and 100 uA for 3.5 V
33
+
#defineREADING_FOR_AREF 1024L // Datasheet 24.2: The minimum value represents GND and the maximum value represents the voltage on the AREF pin minus 1 LSB
34
+
32
35
// PRESCALE4 => 13 * 4 = 52 microseconds per ADC conversion at 1 MHz Clock => 19,2 kHz
33
36
#defineADC_PRESCALE2 1 // 26 microseconds per ADC conversion at 1 MHz
34
37
#defineADC_PRESCALE4 2 // 52 microseconds per ADC conversion at 1 MHz
0 commit comments