From 90e334402a61f769b9876d9c6743b69c3b3d0343 Mon Sep 17 00:00:00 2001 From: Antonio Ospite Date: Wed, 13 Mar 2013 12:37:14 +0100 Subject: [PATCH] Add more info about the communication protocol --- README | 24 +++++++++++++++++++----- 1 file changed, 19 insertions(+), 5 deletions(-) diff --git a/README b/README index 2e14271..07c9332 100644 --- a/README +++ b/README @@ -19,14 +19,28 @@ This could be fixed adding a quirk to the cdc_acm driver in linux, but there is not much of a point for this as the data is downloaded using USB bulk communication anyways. -A data packet starts with the STX control character, and ends with ETX. +Each data packet starts with the STX control character, and ends with ETX. -The payload is something like this: +There are at least two kind of packets: requests and responses. - M106100101120211511021201001011208115610711610010112030103065073440601132001130680661001011311012708406610010112030106068066M20710010112031155111116100101120201170700764406011312012807107244060113170126050065440601131901140630661001011400011407007113031211450121080072 +A request can be used to send command codes to the device. -The structure can be better visualized when split it in fields: +EEPROM data request: + R00 + +Date and time request: + + R02 + +A response can be read after a request has been sent. + +The payload of a response to a "R00" request is something like this: + + M106100101120211511021201001011208115610711610010112030103065073440601132001130680661001011311012708406610010112030106068066M20710010112031155111116100101120201170700764406011312012807107244060113170126050065440601131901140630661001011400011407007113031211450121080072 + +The structure can be better visualized when split in fields: + M # start of a Memory block 1 # memory block index, corresponding to a "User ID" 06 # number of records in this memory block @@ -42,7 +56,7 @@ The structure can be better visualized when split it in fields: 100101 1203 0106 068 066 # Same structure for the other memory block - M + M 2 07 100101 1203 1155 111 116 -- 2.1.4