Can anyone better describe the Simprop Lipo-control data format to me. I get the following in hex at 9600 baud every second: 0A F5 0C 45 33 30 46 44 45 30 46 45 33 30 46 45 38 30 33 35 38 0D I understand this to be: 1 byte 4bytes 4bytes 4bytes 4bytes 4bytes 1byte Start Overall voltage %Balanced V Cell1 V Cell2 V Cell3 End I particular can anyone tell me what format the 4bytes take, are they floating point, fixed point, etc... ? And how you tell this to logview, is it in the Simprop Lipo-Control.ini file ? as I cant spot it in there. The reason for asking is I wish to use the balancer in a project of my own and I also would like to use logview with another project. So a better understanding how to configure it would help. Apologies for the English. Thanks, Cam.
Hi Cam, well the values are send in HEX. 1007 = 4103 You have to devide it by 1000 and you will get the voltage. You are wrong !! Byte 1-3 are starting bytes Byte 4 is the actual state of the balancer Byte 5 is the number of cells Byte 6..x are the voltages (everyone has 4 bytes as described above ...) last bytes ... xx yy zz xx yy -> checksum zz -> end sign <cr> The balanced value is calculated within the software (e.g. LogView).
Thank you for the quick reply but I still don't understand fully In my example: 0A F5 0C 45 33 30 46 44 45 30 46 45 33 30 46 45 38 30 33 35 38 0D We have start bytes = 0A F5 0C Balancer state = 45 Number of cell = 33 = 3 in Ascii Cell number 1 voltage = 30 46 44 45 Cell number 2 voltage = 30 46 45 33 Cell number 3 voltage = 30 46 45 38 Not sure (you described them as xx yy zz) = 30 33 35 Checksum = 38 End = 0D I still don't understand how I go from 30 46 45 33 to 4.067v or from 30 46 45 38 to 4.072v, can you help ? Also what is the purpose of the bytes xx yy zz ? Thanks Cam.
Hi Cam ... Well I can´t offer you the complete informations ... I´m sorry. But did you ever think about translating the HEX values into two times ... Example: Cell number 1 voltage = 30 46 44 45 30 hex = "0" ASCII 46 hex = "F" ASCII 44 hex = "D" ASCII 45 hex = "E" ASCII So 30 46 44 45 equals "0FDE". Now get the decimal value from 0FDE. This is 4062. Devided by 1000 .... Two steps ... 1) Translate from Hexvalues to ASCII values (use http://www.torsten-horn.de/techdocs/ascii.htm for example ...) 2) Translate ASCII Result from Hex to decimal. 0A F5 0C = Start 45 = State ... 33 = Cell numbers ... Kepp in mind the conversation from above 30 46 44 45 = Cell 1 30 46 45 33 = Cell 2 30 46 45 38 = Cell 3 30 33 No idea ... unimportant 35 38 = Checksum 0D = Endsign Hope that helps ...
Got it, thanks for taking the time to explain it. As you guessed I was missing the 0FDE to 4062 step. Can I ask is this decoding information hardcoded into logview ? and how did you guys figure out the various formats for all the devices logview supports. Did you contact manufactures or did you do it the hard way ? Cam.
Hi ! Yes. This is hard coded. In most cases we get the information from the manufactures. And if we don´t get it ... Well Holger and me have a lot of experience sniffing und decoding serial Ports ...
Ok, I am also making a model motor dynamometer and would like to use logview to display the results. Do I have to tell you guys the format so it can be hardcoded in, is this even the sort of thing you would do ? Or is that what "OpenFormat.ini" is for ? Apologies for all the questions but it's not easy when you don't speak German. Cam.
Hi Cam, do you have skype or is it possible that you install skype? Then I can help much faster and I think the first question about the balancer is answered My skype user is schmidom.