Code snips, and programming examples.
Function FindCRC(Value) Dim val(5) As Byte value1 = Left(Value, 2) value2 = Mid(Value, 4, 2) value3 = Mid(Value, 7, 2) value4 = Mid(Value, 10, 2) value5 = Right(Value, 2) val(1) = "&H" & value1 val(2) = "&H" & value2 val(3) = "&H" & value3 val(4) = "&H" & value4 val(5) = "&H" & value5 FindCRC = Hex(CalcCRC(val)) End Function
Function for VB6, (place it in a module) to find the CRC of incoming data on the BR-3 OBDII module.
Function CalcCRC(s() As Byte) As Byte checksum = 0 crcreg = 255 length = UBound(s) - LBound(s) For i = 1 To length bitpoint = 128 x = s(i) For k = 0 To 7 If bitpoint And x Then If crcreg And 128 Then poly = 1 Else poly = 28 End If crcreg = (((crcreg * 2) Or 1) Xor poly) And 255 Else If crcreg And 128 Then poly = 29 Else poly = 0 End If crcreg = ((crcreg * 2) Xor poly) And 255 End If bitpoint = bitpoint \ 2 Next k Next CalcCRC = (Not crcreg) And 255 End Function
VB6 function, (place it in a module) that will calculate the crc hex packet to use with the BR-3 OBDII unit.
Simple Windows program I created really quick in VB6 that will accept simple messages from the Android running the ‘android-notifier‘ application.
Since the author has not written a Windows application yet, I made this small ghetto client to hold off some at the office, and use the code in the CarputerGTP project.
On the android, connect to the wireless network, and choose a custom IP. Key in the IP of the machine running this program. Done.
At the moment I only have it displaying tooltip popups for PING (Testing connection packets), SMS (Test Messages), and RING (Incoming calls).