mirror of
https://github.com/mbirth/cm2010.git
synced 2024-11-10 00:16:45 +00:00
205 lines
6.0 KiB
Plaintext
205 lines
6.0 KiB
Plaintext
Conrad Charge Manager 2010
|
|
|
|
Protocol overview
|
|
|
|
|
|
Transfer settings: 9600 baud, 8 Data bits, no parity, 1 Stopbit
|
|
Connection via Null modem cable.
|
|
|
|
The CM2010 always sends info about the condition of each slot. The delay between 2 infos about the same slot is 1 second.
|
|
|
|
It seems you can't send commands to the CM2010 because the circuit plan from www.conrad.de (512265-in-01-de-charge_manager_2010_schnittstellenb.pdf) shows no input for the charging controller.
|
|
|
|
All values about a slot are sent in 34 Bytes. There are 4 Packets of 34 Bytes each.
|
|
|
|
All values are in Big-Endian (Big-End-First; 65536 = 01 00 00; 256 = 01 00)
|
|
|
|
|
|
Bytes Meaning
|
|
----- ----------------------
|
|
01 Slot (1-4)
|
|
|
|
02 ??? Chosen Program; Lo: Display state (Details: see below)
|
|
03 Hi: manually chosen capacity; Lo: current step in program (Details: see below)
|
|
|
|
04 ???
|
|
|
|
05 Internal counter/timer, counts back the 3 seconds after insertion of battery, where you have time to change settings. Otherwise it counts back from 60d and increases minute when 00.
|
|
06 Hours
|
|
07 Minutes
|
|
|
|
08 ???
|
|
|
|
09-10 Voltage (U) - only when charging, otherwise 00 00. Perhaps max. current for Delta-U-shut-off.
|
|
|
|
11 ??? (perhaps approx. charge of battery?)
|
|
12 ???
|
|
13 ???
|
|
|
|
14-15 Current (I)
|
|
16-17 Voltage (U)
|
|
18-20 Charged capacity (CCap)
|
|
21-23 Discharged capacity (DCap)
|
|
|
|
24 0Bh, if not charging, otherwise something else
|
|
|
|
25-26 Fourth last voltage
|
|
27-28 Third last voltage
|
|
29-30 Second last voltage
|
|
31-32 Last voltage
|
|
33-34 Resistance in slot (5MOhm = 01 F4; no battery: FF FF)
|
|
|
|
|
|
Bytes 02 and 03:
|
|
|
|
02 03 04
|
|
-- -- --
|
|
00 00 00 No program, Slot empty
|
|
|
|
01 00 00 Choice: Auto/Man: Auto
|
|
02 00 00 Choice: Auto/Man: Manual
|
|
(Counter in Byte 5 counts from 03 to 00 and then switches to next choice)
|
|
|
|
02 10 00 Choice: Man: 100-200
|
|
02 20 00 Choice: Man: 200-350
|
|
02 30 00 Choice: Man: 350-600
|
|
02 40 00 Choice: Man: 600-900
|
|
02 50 00 Choice: Man: 900-1200
|
|
02 60 00 Choice: Man: 1200-1500
|
|
02 70 00 Choice: Man: 1500-2200
|
|
02 80 00 Choice: Man: 2200-...
|
|
(Counter in Byte 5 counts from 03 to 00 and then switches to next choice/runs program)
|
|
|
|
03 xx 00 Choice: Auto: CHARGE
|
|
04 xx 00 Choice: Auto: DISCHARGE
|
|
05 xx 00 Choice: Auto: CHECK
|
|
06 xx 00 Choice: Auto: CYCLE
|
|
07 xx 00 Choice: Auto: ALIVE
|
|
(xx - 00:Auto, 10-80:Man)
|
|
(Counter in Byte 5 counts from 03 to 00 and then runs the program)
|
|
|
|
08 05 01 Auto: CHA (Charges)
|
|
|
|
09 06 00 Auto: DIS (Discharges)
|
|
09 26 08 Man: 200-350: DIS (Discharges)
|
|
|
|
0a 04 01 Auto: CHK (Discharges)
|
|
0a 24 08 Man: 200-350: CHK (Discharges)
|
|
|
|
0b 03 01 Auto: CYC (Charges)
|
|
0b 04 01 Auto: CYC (Discharges)
|
|
0b 05 04 Auto: CYC (Charges after Discharging)
|
|
|
|
0c 01 01 Auto: ALV (Charges)
|
|
0c 02 01 Auto: ALV (Discharges)
|
|
0c 02 03 Auto: ALV (still Discharges)
|
|
0c 02 04 Auto: ALV (still still Discharges)
|
|
0c 02 08 Auto: ALV (Discharges after Charging)
|
|
0c 03 01 Auto: ALV (Charges after Discharging)
|
|
0c 03 02 Auto: ALV (Charges after Discharging immer immer noch)
|
|
0c 03 03 Auto: ALV (Charges after Discharging immer noch)
|
|
0c 04 01 Auto: ALV (Discharges after Charging)
|
|
0c 04 03 Auto: ALV (Discharges after Charging after Discharging)
|
|
0c 04 08 Auto: ALV (Discharges after Charging after Discharging)
|
|
0c 05 01 Auto: ALV (Charges after Discharging after Charging after Discharging)
|
|
0c 05 02 Auto: ALV (Charges after Discharging after Charging after Discharging)
|
|
0c 05 04 Auto: ALV (Charges after Discharging)
|
|
0c 42 06 Man: 600-900: ALV (Discharges after Charging)
|
|
0c 44 06 Man: 600-900: ALV (Discharges after Charging after Discharging after Charging)
|
|
|
|
0d 08 01 Auto: CYC (RDY/Fertig)
|
|
0d 08 02 Auto: CHA (RDY/Fertig)
|
|
0d 08 03 Auto: ALV (RDY/Fertig)
|
|
0d 08 04 Auto: ALV (RDY/Fertig)
|
|
0d 48 04 Man: 600-900: ALV (RDY/Fertig)
|
|
|
|
0e 0c xx ERR
|
|
|
|
1b 03 01 Auto: CYC (Charges immer noch)
|
|
|
|
4c 03 03 Auto: ALV (Charges immer immer noch)
|
|
4c 05 04 Auto: ALV (Charges after Discharging after Charging after Discharging after Charging)
|
|
|
|
58 25 02 Man: 200-350: CHA (Charges)
|
|
|
|
5b 23 02 Man: 200-350: CYC (Charges)
|
|
|
|
5c 21 02 Man: 200-350: ALV (Charges)
|
|
5c 41 04 Man: 600-900: ALV (Charges)
|
|
5c 43 04 Man: 600-900: ALV (Charges after Discharging)
|
|
5c 45 04 Man: 600-900: ALV (Charges (last phase))
|
|
|
|
6b 03 03 Auto: CYC (still still still still Charges)
|
|
|
|
6c 03 03 Auto: ALV (Charges after Discharging)
|
|
6c 05 04 Auto: ALV (Charges after Discharging after Charging after Discharging after Charging)
|
|
|
|
cb 03 04 Auto: CYC (still Charges)
|
|
|
|
db 03 03 Auto: CYC (Charges ... for now)
|
|
db 03 04 Auto: CYC (still still still Charges)
|
|
|
|
dc 03 02 Auto: ALV (Charges after Discharging)
|
|
dc 05 03 Auto: ALV (Charges ... for now)
|
|
|
|
fb 03 03 Auto: CYC (still still Charges)
|
|
|
|
|
|
|
|
The Lo-Part of Byte 2 reflects the current display:
|
|
H bbbb Description
|
|
- ---- -----------
|
|
0 0000 ---
|
|
1 0001 Choice: Auto/Man: Auto
|
|
2 0010 Choice: Auto/Man: Manuell
|
|
3 0011 Choice: Auto: CHARGE
|
|
4 0100 Choice: Auto: DISCHARGE
|
|
5 0101 Choice: Auto: CHECK
|
|
6 0110 Choice: Auto: CYCLE
|
|
7 0111 Choice: Auto: ALIVE
|
|
8 1000 CHA
|
|
9 1001 DIS
|
|
a 1010 CHK
|
|
b 1011 CYC
|
|
c 1100 ALV
|
|
d 1101 RDY
|
|
e 1110 ERR
|
|
f 1111 TRI
|
|
|
|
|
|
|
|
The Lo-Part of Byte 3 reflects the program flow:
|
|
H bbbb Description
|
|
- ---- -----------
|
|
0 0000 No program active
|
|
1 0001 Charging <--- ALV starts here
|
|
2 0010 Discharging
|
|
3 0011 Charging <--- CYC starts here
|
|
4 0100 Discharging <--- CHK starts here
|
|
5 0101 Charging <--- CHA starts here
|
|
6 0110 Discharging (is being skipped, only when DIS, the program starts here)
|
|
7 0111 Trickle charge
|
|
8 1000 RDY/Ready
|
|
|
|
|
|
|
|
The Hi-Part of Byte 3 reflects the chosen battery capacity:
|
|
H bbbb Description
|
|
- ---- -----------
|
|
0 0000 Automatic
|
|
1 0001 100- 200 mAh
|
|
2 0010 200- 350 mAh
|
|
3 0011 350- 600 mAh
|
|
4 0100 600- 900 mAh
|
|
5 0101 900-1200 mAh
|
|
6 0110 1200-1500 mAh
|
|
7 0111 1500-2200 mAh
|
|
8 1000 2200-... mAh
|
|
|
|
|
|
Byte 4 seems to reflect, if the capacity is being measured or not: 01 or 02 = Measuring, if 00, updating the battery symbol, 03/04 occurs during CYC.
|
|
|
|
|
|
|
|
More informations of corrections via eMail to Markus Birth <mbirth@webwriters.de>.
|