Differences
This shows you the differences between two versions of the page.
Next revision | Previous revision |
lapcounters:protocols:open [2020/06/24 22:17] – created zround | lapcounters:protocols:open [2023/06/18 08:22] (current) – [Protocol description] zround |
---|
====== Free LapCounter Communication Protocol ====== | ====== Free LapCounter Communication Protocol ====== |
| |
| It can be used over Serial Ports or TCP/IP. |
| |
| ======= Serial Settings ======= |
| |
^Port settings | 19200,8,N,1| | ^Port settings | 19200,8,N,1| |
^Definitions | All commands start with symbol %%“%” and has a “&”%% symbol at the end \\ Transponder number is a two digits hexadecimal code (00 to FF) \\ Time uses hexadecimal notation and it is expressed in milliseconds | | ^Definitions | All commands start with symbol %%“%” and has a “&”%% symbol at the end \\ Transponder number is a two digits hexadecimal code (00 to FF) \\ Time uses hexadecimal notation and it is expressed in milliseconds | |
| |
| ======= TCP Settings ======= |
| |
| Decoder IP address and port used can be configured on ZRound Lapcounter settings page. |
| |
| ======= Protocol description ======= |
^Sender^Command^Code^Description| | ^Sender^Command^Code^Description| |
^ZRound|Startup|%**C**&|ZRound tries to initialize the connection. It is used to verify the decoder is ready. The decoder must answer with an ACK within 500ms otherwise a timeout is fired and connection is discarded | | ^ZRound|Startup|%**C**&|ZRound tries to initialize the connection. It is used to verify the decoder is ready. The decoder must answer with an ACK within 500ms otherwise a timeout is fired and connection is discarded\\ //On TCP version ACK is not needed// | |
^LapCounter|Startup ACK|%**A**&|Acknowledge the %C& startup command within 500ms | | ^LapCounter|Startup ACK|%**A**&|Acknowledge the %C& startup command within 500ms | |
^ZRound|Race start|%**I**&|ZRound ask to start the race (clock must be set to zero) | | ^ZRound|Race start|%**I**&|ZRound ask to start the race (clock must be set to zero) | |
^ZRound|Race stopped|%**F**&|ZRound ask the bridge for stopping the race. No further detection should be sent | | ^ZRound|Race stopped|%**F**&|ZRound ask the bridge for stopping the race. No further detection should be sent | |
^LapCounter|Clock|%**T**hhhhhh&|Clock signal used for sync PC and Decoder clocks. hhhhhh is time in milliseconds hexadecimal coded. Variable code length is allowed. All numbers from T to & is assumed to be the time info | | ^LapCounter|Clock|%**T**hhhhhh&|Clock signal used for syncing PC and Decoder clocks. hhhhhh is the time in milliseconds (hexadecimal coded). Variable code length is allowed. All numbers from T to & are assumed to be the time info | |
^LapCounter|Lap|%**L**TX[,]hhhhhh&|Lap detected \\ **TX**=transponder number in hexadecimal \\ * Two digits if "," si ommited \\ * Variable digit length if used "," as separator symbol \\ **hhhhhh**=race time in milliseconds (hexadecimal). \\ Variable time length is valid, time info is coded after TX and before the finish symbol "&" | | ^LapCounter|Lap|%**L**TX[,]hhhhhh&|Lap detected \\ **TX**=transponder number in hexadecimal \\ * Two digits if "," si ommited \\ * Variable digit length if used "," as separator symbol \\ **hhhhhh**=race time in milliseconds (hexadecimal). \\ Variable time length is valid, time info is coded after TX and before the finish symbol "&" | |
| |
| |