Dolphin data decoding Packets are 25 bytes long begin with 10 10 10. 10 10 10 00 00 00 00 00 00 A7 02 9e 88 00 00 01 00 00 00 35 03 88 ec 01 00 | | | +--+--+--- Start of frame 10 10 10 Fl Fm 00 00 00 00 A7 02 9e 88 00 00 01 00 00 00 35 03 88 ec 01 00 | | Fault LSB+ | Fault MSB---+ 10 10 10 00 00 Cl Cm 00 00 A7 02 9e 88 00 00 01 00 00 00 35 03 88 ec 01 00 | | Current Cmd % -+ | LSB Current Cmd % ----+ MSB Signed number ff7f..0080 100..-100.01 10 10 10 00 00 00 00 Rl Rm A7 02 9e 88 00 00 01 00 00 00 35 03 88 ec 01 00 | | RPM LSB -------------+ | RPM MSB ----------------+ Signed RPM FF 7F -> 36620.4RPM 1.030544 RPM/Bit 00 23 -> 10013.70 1.1176 RPM/Bit 00 dd -> -10013.70 1.1176 RPM/Bit 10 10 10 00 00 00 00 00 00 Vl Vm 9e 88 00 00 01 00 00 00 35 03 88 ec 01 00 | | Voltage LSB ---------------+ | Volatge MSB ------------------+ 10 00 -> 7.5V 0.4687692 V/bit 20 00 -> 15V 0.4687692 V/bit ff 00 -> 119.54V 0.4687692 V/bit 00 01 -> 120.01V 0.4687692 V/bit 0f ff -> 1919.61V 0.4687692 V/bit 7f ff -> 7679.86V ? ff ff -> 11520.02V ? 10 10 10 00 00 00 00 00 00 A7 02 Sl Sm 00 00 01 00 00 00 35 03 88 ec 01 00 | | STATUS LSB ----------------------+ | STATUS MSB -------------------------+ 10 10 10 00 00 00 00 00 00 ff 7f 9e 88 Il Im 01 00 00 00 35 03 88 ec 01 00 | | Vehicle Info LSB ----------------------+ | Vehicle Info MSB -------------------------+ 10 10 10 00 00 00 00 00 00 ff 7f 9e 88 01 02 Ul Um 01 01 35 03 88 ec 01 00 | | User Data LSB -------------------------------+ | User Data MSB ----------------------------------+ (address of data defined below) 10 10 10 00 00 00 00 00 00 ff 7f 9e 88 01 02 01 00 Cl Cm 35 03 88 ec 01 00 | | Battery Current LSB -------------------------------+ | Battery Current MSB ----------------------------------+ Signed 0.4894993 A/bit 10 10 10 00 00 00 00 00 00 ff 7f 9e 88 01 02 01 00 01 01 Bl Bm 88 ec 01 00 | | 12V Bias LSB --------------------------------------------+ | 12V Bias MSB -----------------------------------------------+ .0144361 V/Bit 10 10 10 00 00 00 00 00 00 ff 7f 9e 88 01 02 01 00 01 01 35 03 TC ec 01 00 | Temperature C -------------------------------------------------+ 00 -> -1000 ff -> -322 fd -> -113 fb -> -70 f8 -> -47 f2 -> -29 f1 -> -28 f0 -> -27 e0 -> -14 d0 -> -5 c0 -> 2 b0 -> 8 a0 -> 14 90 -> 20 80 -> 25 7f -> 25 7e -> 26 7d -> 26 7c -> 27 7b -> 27 7a -> 26 79 -> 28 78 -> 28 77 -> 28 76 -> 29 75 -> 29 74 -> 29 73 -> 30 72 -> 30 71 -> 31 70 -> 31 60 -> 38 50 -> 45 40 -> 52 30 -> 62 28 -> 69 20 -> 77 18 -> 87 10 -> 101 0f -> 103 0e -> 106 0d -> 109 0c..00 -> -1000 10 10 10 00 00 00 00 00 00 ff 7f 9e 88 01 02 01 00 01 01 35 03 88 UD 01 00 | User Data Address ------------------------------------------------+ ***************** Commands to Dolphin Commands are 6 bytes long starting with FE...ending in 00 FE EC FF 00 00 00 | User data Address to read (returned in next packet) FE 01 01 04 57 00 | | | | Address of Variable to write -+ | | | Variable? -----------------------+ | | Value MSB---------------------------+ | Value LSB------------------------------+ FE 26 F7 20 21 00 | | | Value to write to EPROM ------+ | | ? -------------------------------+ | Address to write -------------------+ ****** Variable definitions ********* C - Valid in charge mode M - Valid in motoring mode CM 0 = Fault CM 1 = Status CM 2 = Battery V CM 3 = Battery I M 4 = Accel 0 M 5 = Accel 1 M 6 = Accel 2 M 7 = Brake M 8 = Regen CM 9 = Isolation M 10 = P12V CM 11 = Line Vac Peak CM 12 = Line Iac peak M 13 = Encoder Counts C 14 = IOP(dsp in) CM 15 = Regen Scale 16 = Internal 17 = Internal 18 = internal M 19 = Position 20 = PWM ia 21 = PWM ib CM 22 = Fault Delay 23 = Zero M 24 = Velocity 25 = Internal 26 = Internal 27 = Internal CM 28 = Batt I offset CM 29 = vmul M 30 = Brake M 31 = Accell M 32 = Accell1 M 33 = Vregen M 34 = id M 35 = iq 36 = enccnt 37 = Internal 38 = Internal 39 = ia 40 = ib 47 = Internal 47 = Internal 47 = Internal 47 = Internal 47 = Internal 47 = Internal 47 = Internal CM 48 = BatI 49 = RS232 LatchData 50 = T encoder 51 = velcmd CM 52 = Power 53 = Internal C 54 = Chrg Scale C 55 = vacmax C 56 = iref 57 = Chrg Delay C 58 = iacmax 59 = pkdelay 60 = internal 61 = offcnt 62 = internal 63 = accout M 64 = Vel Cmd 65 = Internal 66 = Internal 67 = Internal 68 = Internal 69 = Internal 70 = Internal 71 = Internal 72 = Internal 73 = Internal 74 = Internal 75 = diq 76 = Internal 76 = Internal 78 = Internal 79 = Internal 80 = hcsertmp 81 = task 82 = 3000h 83 = ffffh 84 = 0001h: set0 85 = 0002h: set1 86 = 0004h: set2 87 = 0008h: set3 88 = 0010h: set4 89 = 0020h: set5 90 = 0040h: set6 91 = 0080h: set7 92 = 0100h: set8 93 = 0200h: set9 94 = 0400h: setA 95 = 0800h: setB 96 = 1000h: setC 97 = 2000h: setD 98 = 4000h: setE 99 = 8000h: setF 100 = fffeh: msk0 101 = fffdh: msk1 102 = fffbh: msk2 103 = fff7h: msk3 104 = ffefh: msk4 105 = ffdfh: msk5 106 = ffbfh: msk6 107 = ff7fh: msk7 108 = feffh: msk8 109 = fdffh: msk9 110 = fbffh: mskA 111 = f7ffh: mskB 112 = efffh: mskC 113 = dfffh: mskD 114 = bfffh: mskE 115 = 7fffh: mskF 116 = dog1 117 = dog2 118 = SBRG 119 = TCON 120 = timer2per 121 = CCON 122 = 90û 123 = io 124 = SQRT 125 = SCON 126 = coef0 127 = coef1 129 = acc0 130 = acc1 131 = correl 137 = vmin M 132 = Anminflt M 133 = Anmaxflt M 134 = Anmin Offset CM 135 = Isov 136 = T from PRE-P12V M 137 = Vmin C 138 = Bat Off Min 139 = vminsl 140 = vmax 141 = batoff 142 = vmaxsl 143 = offseta 144 = offsetb M 145 = Drv Pwr Lim ifedlim 146 = irevlim CM 147 = Bat On Min 148 = rgnscldiq 149 = idmax 150 = spdlmt 151 = slips1 152 = slips2 153 = slipoff2 154 = slipcut 155 = brkgain 156 = brkmax 157 = T Pre to Main 158 = tslope 159 = tbreak C 160 = Vchrgslop C 161 = Vchrgoff C 162 = Vchrgstart C 163 = VmulImax C 164 = Vchrgmx C 165 = IREF offset chrgoff C 166 = VAC min off C 167 = Bat min on C 168 = Max Current Regen SOC Limit C 169 = VAC Min C 170 = VBAT Mx LtchOff - ACOff C 171 = IAC Min LtchOff - IACMin 172 = VAC129 C 173 = Trickle Ref C 174 = 120VAC Ref - ich120 C 175 = 220VAC Ref - ich220 C 176 = chrsclmx C 177 = Vmode Delay C 178 = Imode Delay 179 = VEL out scale 180 = p12vh 181 = p12vl M 182 = Regen Drive M 183 = Regen Low M 184 = Regen Two 185 = ampscale 186 = SOC out high lm 187 = SOC out low lm 188 = TBD 189 = TBD 190 = acoffset 191 = TBD 192 = diqthr 193 = chks0 194 = chks1 195 = diqmx 196 = diqmn 197 = velout 198 = schtime 199 = chtmax 200 = TBD 201 = tlow 202 = thigh 203 = chkadd 204 = chk0 M 205 = Brake Max Cnt - chk1 M 206 = Slip 207 = internal 208 = internal 209 = internal 210 = internal 211 = vac 212 = internal 213 = chofft 214 = cogt 215 = veltmp 216 = vmddelay 217 = imddelay 218 = dach0 219 = dach1 220 = schedule 221 = vbat0 222 = battime 223 = acaddress M 224 = SOC Out - dac2 225 = rgnscl0 226 = rgnscl01 227 = sts2 228 = time 229 = amphrl 230 = hcinp 231 = dac3 232 = TBD 233 = TBD 234 = TBD 235 = hcserout 236 = amphr 237 = hc11usr0 238 = mottmp 239 = cold 240 = dirfil 241 = rs232sts 242 = vacmax0 243 = tchscl 244 = ichmax 245 = seradd 246 = offdel 247 = controll 248 = dac4 249 = dac5 250 = internal 251 = internal 252 = vel0 253 = sr1 254 = maind 255 = Software Rev 256 = Int Flt 1 257 = Int Flt 0 258 = STSH 1 259 = STSH 0 260 = A/D 0 Inv t 261 = A/D 1 Mot t 262 = A/D 2 263 = A/D 3 264 = A/D 4 - temp2 265 = A/D 5 266 = A/D 6 P12V 267 = A/D 7 268 = rxdadd 269 = s0 270 = s1 271 = s2 272 = temp0 273 = temp1 274 = ???? 275 = txdadd 276 = txdb1 277 = txdb2 278 = txdb3 279 = txdb4 280 = txdb5 281 = txaddr 282 = hcinput1 283 = hcinput0 284 = serflt1 285 = serflt0 286 = seriq1 287 = seriq0 288 = servel1 289 = servel0 290 = servtv1 291 = servtv0 292 = sersts1 293 = sersts0 294 = serinp1 295 = serinp0 296 = serusr1 297 = serusr0 298 = serbti1 299 = serbti0 300 = serbd1 301 = serbd0 302 = seraddr 303 = serhc1 304 = serhc0 305 = COM_CNFG 306 = BLNK 307 = blnktmr 308 = CHBLNK 309 = CHTMR 310..319