# Board layout and overview



## kennybobby (Aug 10, 2012)

Here's how to interpret the non-CAN serial port data stream that we were seeing on a 3kW charger (master-slave):

Byte, value, comment
0, 0xFF, first init code
1, 0xFE, second init code
2, 0xC5, destination descriptor
3, 0x0A, number of data bytes, 0Ah = 10
4, Version, uint8 VER;// 14h ='20'
5, RELAY ON/OFF flag, '1=ON(charging)
6, CUR_LV, float (byte 1 of 4) Current in amps
7, CUR_LV, float (byte 2 of 4)
8, CUR_LV, float (byte 3 of 4)
9, CUR_LV, float (byte 4 of 4)
10, HD_VOL_SET, float (byte 1 of 4) Voltage
11, HD_VOL_SET, float (byte 2 of 4)
12, HD_VOL_SET, float (byte 3 of 4)
13, HD_VOL_SET, float (byte 4 of 4)
14, checksum


So before the relay came on:

FF FE C5 = header info
0A = 10 bytes to follow
14 = version
00 = relay open
[BC CC CC CD] = -0.025 amps
[00 00 00 00] means zero volts
AA is checksum

Just before end of charge with a full pack:
FF FE C5 
0A 
14 
01 means relay closed, charging
[3E 8C D9 39]= 0.275 amps
[43 31 DE B8] = 177.87 volts
9C is checksum

So it is now possible to use the serial port data to monitor the current and voltage during charging. Don't have the parameters to change voltage just yet, but it is coming soon...

you can use this calculator to get the float value from the 4 bytes: http://www.h-schmidt.net/FloatConverter/IEEE754.html


----------

