= Robitronic Overview = The Robitronic lap counter is an IR based lap counter that communicates using a serial protocol. = Connection Information = To connect to the Robitronic lap counter you must open the COM port with the following settings: * 38400 Baud * 1 Stop Bit * Parity None * Length 8 bits = Initialization = After you have connected to the Robitronic lap counter you must initialize it for communications. This is done with a simple command. {{{03 B9 01}}} After this has been sent the lap counter will respond with a 00 and then beginning transmitting lap information. There are two know packet types that the lap counter will return, a packet when a car is detected and a periodic time packet. There appears to be no delimiter character, packets begin with a byte representing the length of the packet. = Car Detected Packet = If a car is detected the lap counter will return a packet like the following: {{{ 0D BD 84 1E 08 00 00 E7 36 00 00 55 F9 }}} The breakdown of this packet is the following: {{{ Byte 1 is the length of the packet including this byte 0D for car detected packets Byte 2 is the checksum Byte 3 is the type of packet, 84 if this has car information Byte 4-5 represent the UID of the car in reverse byte order Byte 6-7 unknown, 00 in examples given Byte 8-9 are the seconds in thousandths of a second Byte 10 is the minutes Byet 11 may be continuation of minutes or hours was 00 in our example so this is uncertain Byte 12 is the number of hits the lap counter detected Byte 13 is the signal strength }}} There is no specific character used to represent the beginning or end of a packet, instead the protocol has the first byte of the packet set to the length of the packet including that byte. = Time stamp packet = Approximately every second the lap counter will send a packet with just the time stamp. This pack can look like this: {{{ 0B 5C 83 9B 3A 00 00 14 D0 01 02 }}} The breakdown of this packet is the following: {{{ Byte 1 is the length of the packet 0B in the case of just a time stamp Byte 2 is a checksum Byte 3 is the packet type, 83 in the case of time stamp only Byte 4-5 is the seconds in reverse byte order in thousandths of a second Byte 6 is the minutes Byte 7 is unknown, may be hours or continuation of minutes Bytes 8-11 are unknown but in example were always 14 D0 01 02 }}}