- Latest available (Revised)
- Original (As adopted by EU)
Commission Implementing Regulation (EU) 2016/799 of 18 March 2016 implementing Regulation (EU) No 165/2014 of the European Parliament and of the Council laying down the requirements for the construction, testing, installation, operation and repair of tachographs and their components (Text with EEA relevance)
When the UK left the EU, legislation.gov.uk published EU legislation that had been published by the EU up to IP completion day (31 December 2020 11.00 p.m.). On legislation.gov.uk, these items of legislation are kept up-to-date with any amendments made by the UK since then.
Legislation.gov.uk publishes the UK version. EUR-Lex publishes the EU version. The EU Exit Web Archive holds a snapshot of EUR-Lex’s version from IP completion day (31 December 2020 11.00 p.m.).
This is the original version as it was originally adopted in the EU.
This legislation may since have been updated - see the latest available (revised) version
In order to carry on a VU data download, the operator must perform the following operations:
Insert his tachograph card inside a card slot of the VU(1);
Connect the IDE to the VU download connector;
Establish the connection between the IDE and the VU;
Select on the IDE the data to download and send the request to the VU;
Close the download session.
The protocol is structured on a master-slave basis, with the IDE playing the master role and the VU playing the slave role.
The message structure, types and flow are principally based on the Keyword Protocol 2000 (KWP) (ISO 14230-2 Road vehicles — Diagnostic systems — Keyword protocol 2000 — Part2: Data link layer).
The application layer is principally based on the current draft to date of ISO 14229-1 (Road vehicles — Diagnostic systems — Part 1: Diagnostic services, version 6 of 22 February 2001).
Header composed by a Format byte (FMT), a Target byte (TGT), a Source byte (SRC) and possibly a Length byte (LEN),
Data field composed by a Service Identifier byte (SID) and a variable number of data bytes, which can include an optional diagnostic session byte (DS_) or an optional transfer parameter byte (TRTP or TREP).
Checksum composed by a Checksum byte (CS).
Header | Data field | Checksum | |||||||
---|---|---|---|---|---|---|---|---|---|
FMT | TGT | SRC | LEN | SID | DATA | … | … | … | CS |
4 bytes | Max 255 bytes | 1 byte |
The TGT and SRC byte represent the physical address of the recipient and originator of the message. Values are F0 Hex for the IDE and EE Hex for the VU.
The LEN byte is the length of the Data field part.
The Checksum byte is the 8 bit sum series modulo 256 of all the bytes of the message excluding the CS itself.
FMT, SID, DS_, TRTP and TREP bytes are defined later in this document.
Example:
Header | SID | TREP | Message | CS |
---|---|---|---|---|
4 Bytes | Longer than 255 Bytes |
Will be transmitted as:
Header | SID | TREP | 00 | 01 | Sub message 1 | CS |
---|---|---|---|---|---|---|
4 Bytes | 255 Bytes |
Header | SID | TREP | 00 | 02 | Sub message 2 | CS |
---|---|---|---|---|---|---|
4 Bytes | 255 Bytes |
…
Header | SID | TREP | xx | yy | Sub message n | CS |
---|---|---|---|---|---|---|
4 Bytes | Less than 255 Bytes |
or as:
Header | SID | TREP | 00 | 01 | Sub message 1 | CS |
---|---|---|---|---|---|---|
4 Bytes | 255 Bytes |
Header | SID | TREP | 00 | 02 | Sub message 2 | CS |
---|---|---|---|---|---|---|
4 Bytes | 255 Bytes |
…
Header | SID | TREP | xx | yy | Sub message n | CS |
---|---|---|---|---|---|---|
4 Bytes | 255 Bytes |
Header | SID | TREP | xx | yy + 1 | CS |
---|---|---|---|---|---|
4 Bytes | 4 bytes |
The communication protocol for data download between the VU and the IDE requires the exchange of 8 different message types.
The following table summarises these messages.
Message Structure | Max 4 BytesHeader | Max 255 BytesData | 1 ByteCheckSum | ||||||
---|---|---|---|---|---|---|---|---|---|
IDE -> | <- VU | FMT | TGT | SRC | LEN | SID | DS_/TRTP | DATA | CS |
Start Communication Request | 81 | EE | F0 | 81 | E0 | ||||
Positive Response Start Communication | 80 | F0 | EE | 03 | C1 | EA, 8F | 9B | ||
Start Diagnostic Session Request | 80 | EE | F0 | 02 | 10 | 81 | F1 | ||
Positive Response Start Diagnostic | 80 | F0 | EE | 02 | 50 | 81 | 31 | ||
Link Control Service | |||||||||
Verify Baud Rate (stage 1) | |||||||||
9 600 Bd | 80 | EE | F0 | 04 | 87 | 01,01,01 | EC | ||
19 200 Bd | 80 | EE | F0 | 04 | 87 | 01,01,02 | ED | ||
38 400 Bd | 80 | EE | F0 | 04 | 87 | 01,01,03 | EE | ||
57 600 Bd | 80 | EE | F0 | 04 | 87 | 01,01,04 | EF | ||
115 200 Bd | 80 | EE | F0 | 04 | 87 | 01,01,05 | F0 | ||
Positive Response Verify Baud Rate | 80 | F0 | EE | 02 | C7 | 01 | 28 | ||
Transition Baud Rate (stage 2) | 80 | EE | F0 | 03 | 87 | 02,03 | ED | ||
Request Upload | 80 | EE | F0 | 0A | 35 | 00,00,00,00,00,FF,FF,FF,FF | 99 | ||
Positive Response Request Upload | 80 | F0 | EE | 03 | 75 | 00,FF | D5 | ||
Transfer Data Request | |||||||||
Overview | 80 | EE | F0 | 02 | 36 | 01 | 97 | ||
Activities | 80 | EE | F0 | 06 | 36 | 02 | Date | CS | |
Events & Faults | 80 | EE | F0 | 02 | 36 | 03 | 99 | ||
Detailed Speed | 80 | EE | F0 | 02 | 36 | 04 | 9A | ||
Technical Data | 80 | EE | F0 | 02 | 36 | 05 | 9B | ||
Card download | 80 | EE | F0 | 02 | 36 | 06 | Slot | CS | |
Positive Response Transfer Data | 80 | F0 | EE | Len | 76 | TREP | Data | CS | |
Request Transfer Exit | 80 | EE | F0 | 01 | 37 | 96 | |||
Positive Response Request Transfer Exit | 80 | F0 | EE | 01 | 77 | D6 | |||
Stop Communication Request | 80 | EE | F0 | 01 | 82 | E1 | |||
Positive Response Stop Communication | 80 | F0 | EE | 01 | C2 | 21 | |||
Acknowledge sub message | 80 | EE | F0 | Len | 83 | Data | CS | ||
Negative responses | |||||||||
General reject | 80 | F0 | EE | 03 | 7F | Sid Req | 10 | CS | |
Service not supported | 80 | F0 | EE | 03 | 7F | Sid Req | 11 | CS | |
Sub function not supported | 80 | F0 | EE | 03 | 7F | Sid Req | 12 | CS | |
Incorrect Message Length | 80 | F0 | EE | 03 | 7F | Sid Req | 13 | CS | |
Conditions not correct or Request sequence error | 80 | F0 | EE | 03 | 7F | Sid Req | 22 | CS | |
Request out of range | 80 | F0 | EE | 03 | 7F | Sid Req | 31 | CS | |
Upload not accepted | 80 | F0 | EE | 03 | 7F | Sid Req | 50 | CS | |
Response pending | 80 | F0 | EE | 03 | 7F | Sid Req | 78 | CS | |
Data not available | 80 | F0 | EE | 03 | 7F | Sid Req | FA | CS |
Sid Req = the Sid of the corresponding request.
TREP = the TRTP of the corresponding request.
Dark cells denote that nothing is transmitted.
The term upload (as seen from the IDE) is used for compatibility with ISO 14229. It means the same as download (as seen from the VU).
Potential 2-byte sub message counters are not shown in this table.
Slot is the slot number, either “1” (card on driver slot) or “2” (card on co-driver slot)
In case the slot is not specified, the VU shall select slot 1 if a card is inserted in this slot and it shall select slot 2 only in case it is specifically selected by the user.
There are six types of data transfer:
Overview (TRTP 01),
Activities of a specified date (TRTP 02),
Events and faults (TRTP 03),
Detailed speed (TRTP 04),
Technical data (TRTP 05),
Card download (TRTP 06).
In the second case (TRTP 02) the Transfer Data Request message includes the indication of the calendar day ( format) to be downloaded.
Security certificates,
Vehicle identification,
VU current date and time,
Min and Max downloadable date (VU data),
Indication of cards presence in the VU,
Previous download to a company,
Company locks,
Previous controls.
MsgC+1 Acknowledges correct receipt of sub message number MsgC.
Request from the IDE to the VU to send next sub message
MsgC indicates a problem with the receipt of sub message number MsgC.
Request from the IDE to the VU to send the sub message again.
FFFF requests termination of the message.
This can be used by the IDE to end the transmission of the VU message for any reason.
The last sub message of a message (LEN byte < 255) may be acknowledged using any of these codes or not acknowledged.
The VU responses that will consist of several sub messages are:
Positive Response Transfer Data (SID 76)
10 general reject
The action cannot be performed for a reason not covered below.
11 service not supported
The SID of the request is not understood.
12 sub function not supported
The DS_ or TRTP of the request is not understood, or there are no further sub messages to be transmitted.
13 incorrect message length
The length of the received message is wrong.
22 conditions not correct or request sequence error
The required service is not active or the sequence of request messages is not correct.
31 Request out of range
The request parameter record (data field) is not valid.
50 upload not accepted
The request cannot be performed (VU in a non appropriate mode of operation or internal fault of the VU).
78 response pending
The action requested cannot be completed in time and the VU is not ready to accept another request.
FA data not available
The data object of a data transfer request are not available in the VU (e.g. no card is inserted, …).
A typical message flow during a normal data download procedure is the following:
IDE | VU | |
---|---|---|
Start Communication Request | ⇨ | |
⇦ | Positive Response | |
Start Diagnostic Service Request | ⇨ | |
⇦ | Positive Response | |
Request Upload | ⇨ | |
⇦ | Positive Response | |
Transfer Data Request Overview | ⇨ | |
⇦ | Positive Response | |
Transfer Data Request #2 | ⇨ | |
⇦ | Positive Response #1 | |
Acknowledge Sub Message #1 | ⇨ | |
⇦ | Positive Response #2 | |
Acknowledge Sub Message #2 | ⇨ | |
⇦ | Positive Response #m | |
Acknowledge Sub Message #m | ⇨ | |
⇦ | Positive Response (Data Field < 255 Bytes) | |
Acknowledge Sub Message (optional) | ⇨ | |
… | ||
Transfer Data Request #n | ⇨ | |
⇦ | Positive Response | |
Request Transfer Exit | ⇨ | |
⇦ | Positive Response | |
Stop Communication Request | ⇨ | |
⇦ | Positive Response |
Where:
=
Inter byte time for VU response.
=
Time between end of IDE request and start of VU response, or between end of IDE acknowledge and start of next VU response.
=
Time between end of VU response and start of new IDE request, or between end of VU response and start of IDE acknowledge, or between end of IDE request and start of new IDE request if VU fails to respond.
=
Inter byte time for IDE request.
=
Extended value of P3 for card downloading.
The allowed values for the timing parameters are showed in the following table (KWP extended timing parameters set, used in case of physical addressing for faster communication).
a If the VU responds with a Negative Response containing a code meaning ‘request correctly received, response pending’, this value is extended to the same upper limit value of P3. | ||
Timing Parameter | Lower limitValue (ms) | Upper limitValue (ms) |
---|---|---|
P1 | 0 | 20 |
P2 | 20 | 1 000a |
P3 | 10 | 5 000 |
P4 | 5 | 20 |
P5 | 10 | 20 minutes |
If an error occurs during the message exchange, the message flow scheme is modified depending on which equipment has detected the error and on the message generating the error.
In figure 2 and figure 3 the error handling procedures for the VU and the IDE are respectively shown.
Two different error handling areas can be defined:
The VU detects an IDE transmission error.
For every received message the VU shall detect timing errors, byte format errors (e.g. start and stop bit violations) and frame errors (wrong number of bytes received, wrong checksum byte).
If the VU detects one of the above errors, then it sends no response and ignores the message received.
The VU may detect other errors in the format or content of the received message (e.g. message not supported) even if the message satisfies the length and checksum requirements; in such a case, the VU shall respond to the IDE with a Negative Response message specifying the nature of the error.
The IDE detects a VU transmission error.
For every received message the IDE shall detect timing errors, byte format errors (e.g. start and stop bit violations) and frame errors (wrong number of bytes received, wrong checksum byte).
The IDE shall detect sequence errors, e.g. incorrect sub message counter increments in successive received messages.
If the IDE detects an error or there was no response from the VU within a P2 max period, the request message will be sent again for a maximum of three transmissions in total. For the purposes of this error detection a sub message acknowledge will be considered as a request to the VU.
The IDE shall wait at least for a period of P3 min before beginning each transmission; the wait period shall be measured from the last calculated occurrence of a stop bit after the error was detected.
This paragraph specifies the content of the data fields of the various positive response messages.
Data elements are defined in Appendix 1 data dictionary.
Remark: For generation 2 downloads, each top-level data element is represented by a record array, even if it contains only one record. A record array starts with a header; this header contains the record type, the record size and the number of records. Record arrays are named by ‘…RecordArray’ (with header) in the following tables.
The card inserted will trigger the appropriate access rights to the downloading function and to the data. It shall, however, be possible to download data from a driver card inserted into one of the VU slots when no other card type is inserted in the other slot.
The Whole Regulation you have selected contains over 200 provisions and might take some time to download. You may also experience some issues with your browser, such as an alert box that a script is taking a long time to run.
Would you like to continue?
The Schedules you have selected contains over 200 provisions and might take some time to download. You may also experience some issues with your browser, such as an alert box that a script is taking a long time to run.
Would you like to continue?
Latest Available (revised):The latest available updated version of the legislation incorporating changes made by subsequent legislation and applied by our editorial team. Changes we have not yet applied to the text, can be found in the ‘Changes to Legislation’ area.
Original (As adopted by EU): The original version of the legislation as it stood when it was first adopted in the EU. No changes have been applied to the text.
Access essential accompanying documents and information for this legislation item from this tab. Dependent on the legislation item being viewed this may include:
Use this menu to access essential accompanying documents and information for this legislation item. Dependent on the legislation item being viewed this may include:
Click 'View More' or select 'More Resources' tab for additional information including: