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)

Type Implementing Regulation
Publication 2016-05-26
Last updated 2023-08-21
State In force
Department European Commission
Source EUR-Lex
articles 6
Reform history JSON API

Oldest and latest dates for which a vehicle unit holds data related to drivers activities (Annex 1B requirements 081, 084 or 087 and Annex 1C requirements 102, 105, 108).

Image omitted; see official source

minDownloadableTime is the oldest card insertion or activity change or place entry date and time stored in the VU.

maxDownloadableTime is the latest card withdrawal or activity change or place entry date and time stored in the VU.

2.194.   VuDownloadablePeriodRecordArray

Generation 2:

The VUDownloadablePeriod plus metadata used in the download protocol.

Image omitted; see official source

recordType denotes the type of the record (VuDownloadablePeriod). Value Assignment: See RecordType

recordSize is the size of the VuDownloadablePeriod in bytes.

noOfRecords is the number of records in the set records.

records is the set of VuDownloadablePeriod records.

2.195.   VuDownloadActivityData

Information, stored in a vehicle unit, related to its last download (Annex 1B requirement 105 and Annex 1C requirement 129).

Generation 1:

Image omitted; see official source

downloadingTime is the date and time of downloading.

fullCardNumber identifies the card used to authorise the download.

companyOrWorkshopName is the company or workshop name.

Generation 2:

Image omitted; see official source

Instead of fullCardNumber the generation 2 data structure makes use of the following data element.

fullCardNumberAndGeneration identifies the card including its generation used to authorise the download.

2.196.   VuDownloadActivityDataRecordArray

Generation 2:

Information related to the last VU download (Annex 1C requirement 129).

Image omitted; see official source

recordType denotes the type of the record (VuDownloadActivityData). Value Assignment: See RecordType

recordSize is the size of the VuDownloadActivityData in bytes.

noOfRecords is the number of records in the set records.

records is the set of download activity data records.

2.197.   VuEventData

Generation 1:

Information, stored in a vehicle unit, related to events (Annex 1B requirement 094 except over speeding event).

Image omitted; see official source

noOfVuEvents is the number of events listed in the vuEventRecords set.

vuEventRecords is a set of events records.

2.198.   VuEventRecord

Information, stored in a vehicle unit, related to an event (Annex 1B requirement 094 and Annex 1C requirement 117 except over speeding event).

Generation 1:

Image omitted; see official source

eventType is the type of the event.

eventRecordPurpose is the purpose for which this event has been recorded.

eventBeginTime is the date and time of beginning of event.

eventEndTime is the date and time of end of event.

cardNumberDriverSlotBegin identifies the card inserted in the driver slot at the beginning of the event.

cardNumberCodriverSlotBegin identifies the card inserted in the co-driver slot at the beginning of the event.

cardNumberDriverSlotEnd identifies the card inserted in the driver slot at the end of the event.

cardNumberCodriverSlotEnd identifies the card inserted in the co-driver slot at the end of the event.

similarEventsNumber is the number of similar events that day.

This sequence can be used for all events other than over speeding events.

Generation 2:

Image omitted; see official source

In addition to generation 1 the following data elements are used:

manufacturerSpecificEventFaultData contains additional, manufacturer specific information about the event.

Instead of cardNumberDriverSlotBegin, cardNumberCodriverSlotBegin, cardNumberDriverSlotEnd, and cardNumberCodriverSlotEnd the generation 2 data structure makes use of the following data elements:

cardNumberAndGenDriverSlotBegin identifies the card including its generation which is inserted in the driver slot at the beginning of the event.

cardNumberAndGenCodriverSlotBegin identifies the card including its generation which is inserted in the co-driver slot at the beginning of the event.

cardNumberAndGenDriverSlotEnd identifies the card including its generation which is inserted in the driver slot at the end of the event.

cardNumberAndGenCodriverSlotEnd identifies the card including its generation which is inserted in the co-driver slot at the end of the event.

If the event is a time conflict the eventBeginTime and eventEndTime are to be interpreted as follows:

eventBeginTime is the recording equipment date and time.

eventEndTime is the GNSS date and time.

2.199.   VuEventRecordArray

Generation 2:

Information, stored in a vehicle unit, related to events (Annex 1C requirement 117 except over speeding event).

Image omitted; see official source

recordType denotes the type of the record (VuEventRecord). Value Assignment: See RecordType

recordSize is the size of the VuEventRecord in bytes.

noOfRecords is the number of records in the set records.

records is a set of events records.

2.200.   VuFaultData

Generation 1:

Information, stored in a vehicle unit, related to faults (Annex 1B requirement 096).

Image omitted; see official source

noOfVuFaults is the number of faults listed in the vuFaultRecords set.

vuFaultRecords is a set of faults records.

2.201.   VuFaultRecord

Information, stored in a vehicle unit, related to a fault (Annex 1B requirement 096 and Annex 1C requirement 118).

Generation 1:

Image omitted; see official source

faultType is the type of recording equipment fault.

faultRecordPurpose is the purpose for which this fault has been recorded.

faultBeginTime is the date and time of beginning of fault.

faultEndTime is the date and time of end of fault.

cardNumberDriverSlotBegin identifies the card inserted in the driver slot at the beginning of the fault.

cardNumberCodriverSlotBegin identifies the card inserted in the co-driver slot at the beginning of the fault.

cardNumberDriverSlotEnd identifies the card inserted in the driver slot at the end of the fault.

cardNumberCodriverSlotEnd identifies the card inserted in the co-driver slot at the end of the fault.

Generation 2:

Image omitted; see official source

In addition to generation 1 the following data element is used:

manufacturerSpecificEventFaultData contains additional, manufacturer specific information about the fault.

Instead of cardNumberDriverSlotBegin, cardNumberCodriverSlotBegin, cardNumberDriverSlotEnd, and cardNumberCodriverSlotEnd the generation 2 data structure makes use of the following data elements:

cardNumberAndGenDriverSlotBegin identifies the card including its generation which is inserted in the driver slot at the beginning of the fault.

cardNumberAndGenCodriverSlotBegin identifies the card including its generation which is inserted in the co-driver slot at the beginning of the fault.

cardNumberAndGenDriverSlotEnd identifies the card including its generation which is inserted in the driver slot at the end of the fault.

cardNumberAndGenCodriverSlotEnd identifies the card including its generation which is inserted in the co-driver slot at the end of the fault.

2.202.   VuFaultRecordArray

Generation 2:

Information, stored in a vehicle unit, related to faults (Annex 1C requirement 118).

Image omitted; see official source

recordType denotes the type of the record (VuFaultRecord). Value Assignment: See RecordType

recordSize is the size of the VuFaultRecord in bytes.

noOfRecords is the number of records in the set records.

records is a set of faults records.

2.203.   VuGNSSADRecord

Generation 2, version 1:

Information, stored in a vehicle unit, related to the GNSS position of the vehicle if the accumulated driving time reaches a multiple of three hours (Annex IC requirement 108, 110).

Image omitted; see official source

timeStamp is the date and time when the accumulated driving time reaches a multiple of three hours.

cardNumberAndGenDriverSlot identifies the card including its generation which is inserted in the driver slot.

cardNumberAndGenCodriverSlot identifies the card including its generation which is inserted in the co-driver slot.

gnssPlaceRecord contains information related to the position of the vehicle.

vehicleOdometerValue is the odometer value when the accumulated driving time reaches a multiple of three hours.

Generation 2, version 2:

Information, stored in a vehicle unit, related to the GNSS position of the vehicle if the accumulated driving time reaches a multiple of three hours (Annex IC requirement 108, 110).

Image omitted; see official source

In Generation 2 version 2, instead of gnssPlaceRecord, the gnssPlaceAuthRecord is used, which contains the GNSS authentication status in addition.

2.203a.   VuBorderCrossingRecord

Generation 2, version 2:

Information, stored in a vehicle unit, related to border crossings of the vehicle when the latter has crossed the border of a country (Annex IC requirement 133a and 133b).

Image omitted; see official source

cardNumberAndGenDriverSlot identifies the card including its generation which is inserted in the driver slot.

cardNumberAndGenCodriverSlot identifies the card including its generation which is inserted in the co-driver slot.

countryLeft is the country which was left by the vehicle, based on the last available position before the border crossing has been detected. ‘Rest of the World’ (NationNumeric code ‘FF’H) shall be used when the vehicle unit is not able to determine the country where the vehicle is located (e.g. the current country is not part of the stored digital maps).

countryEntered is the country into which the vehicle has entered. ‘Rest of the World’ (NationNumeric code ‘FF’H) shall be used when the vehicle unit is not able to determine the country where the vehicle is located (e.g. the current country is not part of the stored digital maps).

gnssPlaceAuthRecord contains information related to the position of the vehicle when the border crossing was detected, and its authentication status.

vehicleOdometerValue is the odometer value when the vehicle unit has detected that the vehicle has crossed the border of a country.

2.203b.   VuBorderCrossingRecordArray

Generation 2, version 2:

Information, stored in a vehicle unit, related to border crossings of the vehicle (Annex IC requirement 133c).

Image omitted; see official source

recordType denotes the type of the record (VuBorderCrossingRecord). Value assignment: see RecordType.

recordSize is the size of the VuBorderCrossingRecord in bytes.

noOfRecords is the number of records in the set records.

records is a set of border crossing records.

2.204.   VuGNSSADRecordArray

Generation 2:

Information, stored in a vehicle unit, related to the GNSS position of the vehicle if the accumulated driving time reaches a multiple of three hours (Annex IC requirement 108 and 110).

Image omitted; see official source

recordType denotes the type of the record (VuGNSSADRecord).

Value Assignment: See RecordType.

recordSize is the size of the VuGNSSADRecord in bytes.

noOfRecords is the number of records in the set records.

records is a set of GNSS accumulated driving records.

2.204a.   VuGnssMaximalTimeDifference

Generation 2, version 2:

The maximal difference between true time and the VU Real Time Clock time, based on the maximal time drift specified in Annex IC requirement 041, transmitted by the vehicle unit to an external GNSS Facility, see Appendix 12 requirement GNS_3g.

Image omitted; see official source

2.205.   VuIdentification

Information, stored in a vehicle unit, related to the identification of the vehicle unit (Annex 1B requirement 075 and Annex 1C requirement 93 and 121).

Generation 1:

Image omitted; see official source

vuManufacturerName is the name of the manufacturer of the vehicle unit.

vuManufacturerAddress is the address of the manufacturer of the vehicle unit.

vuPartNumber is the part number of the vehicle unit.

vuSerialNumber is the serial number of the vehicle unit.

vuSoftwareIdentification identifies the software implemented in the vehicle unit.

vuManufacturingDate is the manufacturing date of the vehicle unit.

vuApprovalNumber is the type approval number of the vehicle unit.

Generation 2:

Image omitted; see official source

In addition to generation 1 the following data elements are used:

vuGeneration identifies the generation of the vehicle unit.

vuAbility provides information whether the VU supports generation 1 tachograph cards or not.

vuDigitalMapVersion is the version of the digital map stored in the vehicle unit (only present in version 2).

2.206.   VuIdentificationRecordArray

Generation 2:

The VuIdentification plus metadata used in the download protocol.

Image omitted; see official source

recordType denotes the type of the record (VuIdentification). Value Assignment: See RecordType

recordSize is the size of the VuIdentification in bytes.

noOfRecords is the number of records in the set records.

records is a set of VuIdentification records.

2.207.   VuITSConsentRecord

Generation 2:

Information stored in a vehicle unit, related to the consent of a driver to use Intelligent Transport Systems.

Image omitted; see official source

cardNumberAndGen identifies the card including its generation. This must be a driver card or a workshop card.

consent is a flag which indicates whether the driver has given his consent on the usage of Intelligent Transport Systems with this vehicle / vehicle unit.

Value assignment:

  • TRUE indicates the driver's consent to use Intelligent Transport Systems
  • FALSE indicates the driver's denial to use Intelligent Transport Systems
2.208.   VuITSConsentRecordArray

Generation 2:

Information, stored in a vehicle unit, related to drivers' consent on the usage of Intelligent Transport Systems (Annex 1C requirement 200).

Image omitted; see official source

recordType denotes the type of the record (VuITSConsentRecord). Value Assignment: See RecordType

recordSize is the size of the VuITSConsentRecord in bytes.

noOfRecords is the number of records in the set records.

records is the set of ITS consent records.

2.208a.   VuLoadUnloadRecord

Generation 2, version 2:

Information, stored in the vehicle unit, related to a load/unload operation entered (Annex IC requirements 133e, 133f and 133g).

Image omitted; see official source

timeStamp is the date and time when the load/unload operation was entered.

operationType is the type of the operation entered (load, unload, or simultaneous load/unload).

cardNumberAndGenDriverSlot identifies the card including its generation which is inserted in the driver slot.

cardNumberAndGenCodriverSlot identifies the card including its generation which is inserted in the co-driver slot.

gnssPlaceAuthRecord contains information related to the position of the vehicle, and its authentication status.

vehicleOdometerValue is the odometer value related to the load/unload operation.

2.208b.   VuLoadUnloadRecordArray

Generation 2, version 2:

Information, stored in a vehicle unit, related to a load/unload operation vehicle entered (Annex IC requirement 133h).

Image omitted; see official source

recordType denotes the type of the record (VuLoadUnloadRecord).Value Assignment: See RecordType.

recordSize is the size of the VuLoadUnloadRecord in bytes.

noOfRecords is the number of records in the set records.

records is a set of load/unload operation records.

2.209.   VuManufacturerAddress

Address of the manufacturer of the vehicle unit.

Image omitted; see official source

Value assignment: Unspecified.

2.210.   VuManufacturerName

Name of the manufacturer of the vehicle unit.

Image omitted; see official source

Value assignment: Unspecified.

2.211.   VuManufacturingDate

Date of manufacture of the vehicle unit.

Image omitted; see official source

Value assignment: Unspecified.

2.212.   VuOverSpeedingControlData

Information, stored in a vehicle unit, related to over speeding events since the last over speeding control (Annex 1B requirement 095 and Annex 1C requirement 117).

Image omitted; see official source

lastOverspeedControlTime is the date and time of the last over speeding control.

firstOverspeedSince is the date and time of the first over speeding following this over speeding control.

numberOfOverspeedSince is the number of over speeding events since the last over speeding control.

2.213.   VuOverSpeedingControlDataRecordArray

Generation 2:

The VuOverSpeedingControlData plus metadata used in the download protocol.

Image omitted; see official source

recordType denotes the type of the record (VuOverSpeedingControlData). Value Assignment: See RecordType

recordSize is the size of the VuOverSpeedingControlData in bytes.

noOfRecords is the number of records in the set records.

records is a set of over speeding control data records.

2.214.   VuOverSpeedingEventData

Generation 1:

Information, stored in a vehicle unit, related to over speeding events (Annex 1B requirement 094).

Image omitted; see official source

noOfVuOverSpeedingEvents is the number of events listed in the vuOverSpeedingEventRecords set.

vuOverSpeedingEventRecords is a set of over speeding events records.

2.215.   VuOverSpeedingEventRecord

Generation 1:

Information, stored in a vehicle unit, related to over speeding events (Annex 1B requirement 094 and Annex 1C requirement 117).

Image omitted; see official source

eventType is the type of the event.

eventRecordPurpose is the purpose for which this event has been recorded.

eventBeginTime is the date and time of beginning of event.

eventEndTime is the date and time of end of event.

maxSpeedValue is the maximum speed measured during the event.

averageSpeedValue is the arithmetic average speed measured during the event.

cardNumberDriverSlotBegin identifies the card inserted in the driver slot at the beginning of the event.

similarEventsNumber is the number of similar events that day.

Generation 2:

Information, stored in a vehicle unit, related to over speeding events (Annex 1B requirement 094 and Annex 1C requirement 117).

Image omitted; see official source

Instead of cardNumberDriverSlotBegin, the generation 2 data structure makes use of the following data element:

cardNumberAndGenDriverSlotBegin identifies the card including its generation which is inserted in the driver slot at the beginning of the event.

2.216.   VuOverSpeedingEventRecordArray

Generation 2:

Information, stored in a vehicle unit, related to over speeding events (Annex 1C requirement 117).

Image omitted; see official source

recordType denotes the type of the record (VuOverSpeedingEventRecord). Value Assignment: See RecordType

recordSize is the size of the VuOverSpeedingEventRecord in bytes.

noOfRecords is the number of records in the set records.

records is a set of over speeding events records.

2.217.   VuPartNumber

Part number of the vehicle unit.

Image omitted; see official source

Value assignment: VU manufacturer specific.

2.218.   VuPlaceDailyWorkPeriodData

Generation 1:

Information, stored in a vehicle unit, related to places where drivers begin or end a daily work period (Annex 1B requirement 087 and Annex 1C requirement 108 and 110).

Image omitted; see official source

noOfPlaceRecords is the number of records listed in the vuPlaceDailyWorkPeriodRecords set.

vuPlaceDailyWorkPeriodRecords is a set of place related records.

2.219.   VuPlaceDailyWorkPeriodRecord

Generation 1:

Information, stored in a vehicle unit, related to a place where a driver begins or ends a daily work period (Annex 1B requirement 087 and Annex 1C requirement 108 and 110).

Image omitted; see official source

fullCardNumber is the driver's card type, card issuing Member State and card number.

placeRecord contains the information related to the place entered.

Generation 2, version 1:

Information, stored in a vehicle unit, related to a place where a driver begins or ends a daily work period (Annex 1B requirement 087 and Annex 1C requirement 108 and 110).

Image omitted; see official source

Instead of fullCardNumber, the generation 2 data structure makes use of the following data element:

fullCardNumberAndGeneration is the type of card, its issuing Member State, its card number and generation as stored in the card.

Generation 2, version 2:

Information, stored in a vehicle unit, related to a place where a driver begins or ends a daily work period (Annex 1B requirement 087 and Annex 1C requirement 108 and 110).

Image omitted; see official source

Instead of placeRecord, the generation 2 version 2 data structure makes use of the following data element:

placeAuthRecord contains the information related to the place entered, the recorded position, GNSS authentication status and position determination time.

2.220.   VuPlaceDailyWorkPeriodRecordArray

Generation 2:

Information, stored in a vehicle unit, related to places where drivers begin or end a daily work period (Annex 1C requirement 108 and 110).

Image omitted; see official source

recordType denotes the type of the record (VuPlaceDailyWorkPeriodRecord). Value Assignment: See RecordType

recordSize is the size of the VuPlaceDailyWorkPeriodRecord in bytes.

noOfRecords is the number of records in the set records.

records is a set of place related records.

2.221.   VuPrivateKey

Generation 1:

The private key of a vehicle unit.

Image omitted; see official source

2.222.   VuPublicKey

Generation 1:

The public key of a vehicle unit.

Image omitted; see official source

2.222a.   VuRtcTime

Generation 2, version 2:

The time of the VU RTC clock, transmitted by the VU to an External GNSS Facility, see Appendix 12 requirement GNS_3f.

Image omitted; see official source

2.223.   VuSerialNumber

Serial number of the vehicle unit (Annex 1B requirement 075 and Annex 1C requirement 93).

Image omitted; see official source

2.224.   VuSoftInstallationDate

Date of installation of the vehicle unit software version.

Image omitted; see official source

Value assignment: Unspecified.

2.225.   VuSoftwareIdentification

Information, stored in a vehicle unit, related to the software installed.

Image omitted; see official source

vuSoftwareVersion is the software version number of the Vehicle Unit.

vuSoftInstallationDate is the software version installation date.

2.226.   VuSoftwareVersion

Software version number of the vehicle unit.

Image omitted; see official source

Value assignment: Unspecified.

2.227.   VuSpecificConditionData

Generation 1:

Information, stored in a vehicle unit, related to specific conditions.

Image omitted; see official source

noOfSpecificConditionRecords is the number of records listed in the specificConditionRecords set.

specificConditionRecords is a set of specific conditions related records.

2.228.   VuSpecificConditionRecordArray

Generation 2:

Information, stored in a vehicle unit, related to specific conditions (Annex 1C requirement 130).

Image omitted; see official source

recordType denotes the type of the record (SpecificConditionRecord). Value Assignment: See RecordType

recordSize is the size of the SpecificConditionRecord in bytes.

noOfRecords is the number of records in the set records.

records is a set of specific conditions related records.

2.229.   VuTimeAdjustmentData

Generation 1:

Information, stored in a vehicle unit, related to time adjustments performed outside the frame of a regular calibration (Annex 1B requirement 101).

Image omitted; see official source

noOfVuTimeAdjRecords is the number of records in vuTimeAdjustmentRecords.

vuTimeAdjustmentRecords is a set of time adjustment records.

2.230.   Reserved for future use
2.231.   Reserved for future use
2.232.   VuTimeAdjustmentRecord

Information, stored in a vehicle unit, related a time adjustment performed outside the frame of a regular calibration (Annex 1B requirement 101 and Annex 1C requirement 124 and 125).

Generation 1:

Image omitted; see official source

oldTimeValue, newTimeValue are the old and new values of date and time.

workshopName, workshopAddress are the workshop name and address.

workshopCardNumber identifies the workshop card used to perform the time adjustment.

Generation 2:

Image omitted; see official source

Instead of workshopCardNumber the generation 2 data structure makes use of the following data element.

workshopCardNumberAndGeneration identifies the workshop card including its generation used to perform the time adjustment.

2.233.   VuTimeAdjustmentRecordArray

Generation 2:

Information, stored in a vehicle unit, related to time adjustments performed outside the frame of a regular calibration (Annex 1C requirement 124 and 125).

Image omitted; see official source

recordType denotes the type of the record (VuTimeAdjustmentRecord). Value Assignment: See RecordType

recordSize is the size of the VuTimeAdjustmentRecord in bytes.

noOfRecords is the number of records in the set records.

records is a set of time adjustment records.

2.234.   WorkshopCardApplicationIdentification

Information, stored in a workshop card related to the identification of the application of the card (Annex 1C requirement 307 and 330).

Generation 1:

Image omitted; see official source

typeOfTachographCardId is specifying the implemented type of card.

cardStructureVersion is specifying the the version of the structure that is implemented in the card.

noOfEventsPerType is the number of events per type of event the card can record.

noOfFaultsPerType is the number of faults per type of fault the card can record.

activityStructureLength indicates the number of bytes available for storing activity records.

noOfCardVehicleRecords is the number of vehicle records the card can contain.

noOfCardPlaceRecords is the number of places the card can record.

noOfCalibrationRecords is the number of calibration records the card can store.

Generation 2:

Image omitted; see official source

In addition to generation 1 the following data elements are used:

noOfGNSSADRecords is the number of GNSS accumulated driving records the card can store.

noOfSpecificConditionRecords is the number of specific condition records the card can store.

noOfCardVehicleUnitRecords is the number of vehicle units used records the card can store.

2.234a.   WorkshopCardApplicationIdentificationV2

Generation 2, version 2:

Information, stored in a workshop card related to the identification of the application of the card (Annex IC requirement 330a).

Image omitted; see official source

lengthOfFollowingData is the number of bytes following in the record.

noOfBorderCrossingRecords is the number of border crossing records the workshop card can store.

noOfLoadUnloadRecords is the number of load/unload records the workshop card can store.

noOfLoadTypeEntryRecords is the number of load type entry records the workshop card can store.

vuConfigurationLengthRange is the number of bytes in a tachograph card, available to store VU configurations.

2.234b.   WorkshopCardCalibrationAddData

Generation 2, version 2:

Information, stored in a workshop card, related to the additional data (i.e. by-default load type) entered during a calibration (Annex IC requirement 356l).

Image omitted; see official source

calibrationPointerNewestRecord is the index of the last updated calibration additional data record.

Value assignment is the number corresponding to the numerator of the calibration additional data record, beginning with '0' for the first occurrence of the calibration additional data record in the structure.

workshopCardCalibrationAddDataRecords is the set of records containing the old date and time value, the vehicle identification value and the by-default load type of the vehicle.

2.234c.   WorkshopCardCalibrationAddDataRecord

Generation 2, version 2:

Information, stored in a workshop card, related to the by-default load type entered during a calibration (Annex IC requirement 356k).

Image omitted; see official source

oldTimeValue is the old value of date and time contained in the corresponding WorkshopCardCalibrationRecord,

vehicleIdentificationNumber is the vehicle identification number of the vehicle, also contained in the corresponding WorkshopCardCalibrationRecord,

byDefaultLoadType is the by-default load type of the vehicle (only present in version 2).

calibrationCountry is the country in which the calibration has been performed,

calibrationCountryTimestamp is the date time when the position used to determine this country was provided by the GNSS receiver.

2.235.   WorkshopCardCalibrationData

Information, stored in a workshop card, related to workshop activity performed with the card (Annex 1C requirements 314, 316, 337, and 339).

Image omitted; see official source

calibrationTotalNumber is the total number of calibrations performed with the card.

calibrationPointerNewestRecord is the index of the last updated calibration record.

Value assignment: Number corresponding to the numerator of the calibration record, beginning with ‘0’ for the first occurrence of the calibration records in the structure.

calibrationRecords is the set of records containing calibration and/or time adjustment information.

2.236.   WorkshopCardCalibrationRecord

Information, stored in a workshop card, related to a calibration performed with the card (Annex 1C requirement 314 and 337).

Generation 1:

Image omitted; see official source

calibrationPurpose is the purpose of the calibration.

vehicleIdentificationNumber is the VIN.

vehicleRegistration contains the VRN and registering Member State.

wVehicleCharacteristicConstant is the characteristic coefficient of the vehicle.

kConstantOfRecordingEquipment is the constant of the recording equipment.

lTyreCircumference is the effective circumference of the wheel tyres.

tyreSize is the designation of the dimensions of the tyres mounted on the vehicle.

authorisedSpeed is the maximum authorised speed of the vehicle.

oldOdometerValue, newOdometerValue are the old and new values of the odometer.

oldTimeValue, newTimeValue are the old and new values of date and time.

nextCalibrationDate is the date of the next calibration of the type specified in CalibrationPurpose to be carried out by the authorised inspection authority.

vuPartNumber, vuSerialNumber and sensorSerialNumber are the data elements for recording equipment identification.

Generation 2:

Image omitted; see official source

In addition to generation 1 the following data elements are used:

sensorGNSSSerialNumber which identifies an external GNSS facility.

rcmSerialNumber which identifies a Remote Communication Module.

sealDataCard gives information about the seals that are attached to different components of the vehicle.

2.237.   WorkshopCardHolderIdentification

Information, stored in a workshop card, related to the identification of the cardholder (Annex 1C requirement 311 and 334).

Image omitted; see official source

workshopName is name of the workshop of the card holder.

workshopAddress is the address of the workshop of the card holder.

cardHolderName is the name and first name(s) of the holder (e.g. the name of the mechanic).

cardHolderPreferredLanguage is the preferred language of the card holder.

2.238.   WorkshopCardPIN

Personal identification number of the Workshop Card (Annex 1C requirement 309 and 332).

Image omitted; see official source

Value assignment: The PIN known to the cardholder, right padded with ‘FF’ bytes up to 8 bytes.

2.239.   W-VehicleCharacteristicConstant

Characteristic coefficient of the vehicle (definition k)).

Image omitted; see official source

Value assignment: Impulses per kilometer in the operating range 0 to 64 255 pulses/km.

2.240.   VuPowerSupplyInterruptionRecord

Generation 2:

Information, stored in a vehicle unit, related to Power Supply Interruption events (Annex 1C requirement 117).

Image omitted; see official source

eventType is the type of the event.

eventRecordPurpose is the purpose for which this event has been recorded.

eventBeginTime is the date and time of beginning of event.

eventEndTime is the date and time of end of event.

cardNumberAndGenDriverSlotBegin identifies the card including its generation inserted in the driver slot at the beginning of the event.

cardNumberAndGenDriverSlotEnd identifies the card including its generation inserted in the driver slot at the end of the event.

cardNumberAndGenCodriverSlotBegin identifies the card including its generation inserted in the co-driver slot at the beginning of the event.

cardNumberAndGenCodriverSlotEnd identifies the card including its generation inserted in the co-driver slot at the end of the event.

similarEventsNumber is the number of similar events that day.

2.241.   VuPowerSupplyInterruptionRecordArray

Generation 2:

Information, stored in a vehicle unit, related to Power Supply Interruption events (Annex 1C requirement 117).

Image omitted; see official source

recordType denotes the type of the record (VuPowerSupplyInterruptionRecord). Value Assignment: See RecordType

recordSize is the size of the VuPowerSupplyInterruptionRecord in bytes.

noOfRecords is the number of records in the set records.

records is a set of power supply interruption events records.

2.242.   VuSensorExternalGNSSCoupledRecordArray

Generation 2:

A set of SensorExternalGNSSCoupledRecord plus metadata used in the download protocol.

Image omitted; see official source

recordType denotes the type of the record (SensorExternalGNSSCoupledRecord). Value Assignment: See RecordType

recordSize is the size of the SensorExternalGNSSCoupledRecord in bytes.

noOfRecords is the number of records in the set records.

records is a set of Sensor External GNSS Coupled records.

2.243.   VuSensorPairedRecordArray

Generation 2:

A set of SensorPairedRecord plus metadata used in the download protocol.

Image omitted; see official source

recordType denotes the type of the record (SensorPairedRecord). Value Assignment: See RecordType

recordSize is the size of the SensorPairedRecord in bytes.

noOfRecords is the number of records in the set records.

records is a set of sensor paired records.

3. VALUE AND SIZE RANGE DEFINITIONS

Definition of variable values used for definitions in paragraph 2.

Image omitted; see official source

4. CHARACTER SETS

IA5Strings use the ASCII characters as defined by ISO/IEC 8824-1. For readability and for easy referencing the value assignment is given below. The ISO/IEC 8824-1 supersedes this informative note in case of discrepancy.

Image omitted; see official source

Other character strings (Address, Name, VehicleRegistrationNumber) use, in addition, characters from the decimal character code range 161 — 255 of the following 8-bit, standard character sets, specified by the Code Page number: Standard Character Set Code Page (Decimal)
ISO/IEC 8859-1 Latin-1 Western European 1
ISO/IEC 8859-2 Latin-2 Central European 2
ISO/IEC 8859-3 Latin-3 South European 3
ISO/IEC 8859-5 Latin / Cyrillic 5
ISO/IEC 8859-7 Latin / Greek 7
ISO/IEC 8859-9 Latin-5 Turkish 9
ISO/IEC 8859-13 Latin-7 Baltic Rim 13
ISO/IEC 8859-15 Latin-9 15
ISO/IEC 8859-16 Latin-10 South Eastern European 16
KOI8-R Latin / Cyrillic 80
KOI8-U Latin / Cyrillic 85

5. ENCODING

When encoded with ASN.1 encoding rules, all data types defined shall be encoded according to ISO/IEC 8825-2, aligned variant.

6. OBJECT IDENTIFIERS UND APPLICATION IDENTIFIERS

6.1.   Object Identifiers

The Object Identifiers (OIDs) listed in this chapter are only relevant for generation 2. These OIDs are specified in TR-03110-3 and repeated here for the sake of completeness. These OIDs are contained in the subtree of bsi-de:

Image omitted; see official source

VU Authentication protocol identifiers

Image omitted; see official source

Example: Suppose VU Authentication is to be done with SHA-384, then the object identifier to use is (in ASN.1 notation) Image omitted; see official source. The value of this object identifier in dot notation is Image omitted; see official source.

Dot notation Byte notation
Image omitted; see official source Image omitted; see official source ‘04 00 7F 00 07 02 02 02 02 03’
Image omitted; see official source Image omitted; see official source ‘04 00 7F 00 07 02 02 02 02 04’
Image omitted; see official source Image omitted; see official source ‘04 00 7F 00 07 02 02 02 02 05’
Chip Authentication protocol identifiers

Image omitted; see official source

Example: Suppose Chip Authentication is to be done by using the ECDH algorithm, resulting in an AES session key length of 128 bits. This session key will subsequently be used in the CBC mode of operation to ensure data confidentiality and with the CMAC algorithm to ensure data authenticity. Therefore, the object identifier to use is (in ASN.1 notation) Image omitted; see official source. The value of this object identifier in dot notation is Image omitted; see official source.

Dot notation Byte notation
Image omitted; see official source Image omitted; see official source ‘04 00 7F 00 07 02 02 03 02 02’
Image omitted; see official source Image omitted; see official source ‘04 00 7F 00 07 02 02 03 02 03’
Image omitted; see official source Image omitted; see official source ‘04 00 7F 00 07 02 02 03 02 04’
6.2.   Application Identifiers

Generation 2:

The Application Identifier (AID) for the External GNSS Facility (Generation 2) is given by ‘FF 44 54 45 47 4D’. This is a proprietary AID according to ISO/IEC 7816-4.

Note: The last 5 bytes encode DTEGM for smart Tachograph External GNSS Facility.

The Application Identifier for the generation 2 tachograph card application is given by ‘FF 53 4D 52 44 54’. This is a proprietary AID according to ISO/IEC 7816-4.

Appendix 2

TACHOGRAPH CARDS SPECIFICATION

TABLE OF CONTENT TABLE OF CONTENT
1. INTRODUCTION
1.1. Abbreviations
1.2. References
2. ELECTRICAL AND PHYSICAL CHARACTERISTICS
2.1. Supply Voltage and Current Consumption
2.2. Programming Voltage Vpp
2.3. Clock generation and Frequency
2.4. I/O Contact
2.5. States of the Card
3. HARDWARE AND COMMUNICATION
3.1. Introduction
3.2. Transmission Protocol
3.2.1 Protocols
3.2.2 ATR
3.2.3 PTS
3.3. Access Rules
3.4. Commands and error codes overview
3.5. Command descriptions
3.5.1 SELECT
3.5.2 READ BINARY
3.5.3 UPDATE BINARY
3.5.4 GET CHALLENGE
3.5.5 VERIFY
3.5.6 GET RESPONSE
3.5.7 PSO: VERIFY CERTIFICATE
3.5.8 INTERNAL AUTHENTICATE
3.5.9 EXTERNAL AUTHENTICATE
3.5.10 GENERAL AUTHENTICATE
3.5.11 MANAGE SECURITY ENVIRONMENT
3.5.12 PSO: HASH
3.5.13 PERFORM HASH OF FILE
3.5.14 PSO: COMPUTE DIGITAL SIGNATURE
3.5.15 PSO: VERIFY DIGITAL SIGNATURE
3.5.16 PROCESS DSRC MESSAGE
4. TACHOGRAPH CARDS STRUCTURE
4.1. Master File MF
4.2. Driver card applications
4.2.1 Driver card application generation 1
4.2.2 Driver card application generation 2
4.3. Workshop card applications
4.3.1 Workshop card application generation 1
4.3.2 Workshop card application generation 2
4.4. Control card applications
4.4.1 Control Card application generation 1
4.4.2 Control card application generation 2
4.5. Company card applications
4.5.1 Company card application generation 1
4.5.2 Company card application generation 2

1. INTRODUCTION

1.1.   Abbreviations

For the purpose of this appendix, the following abbreviations apply.

  • AC Access conditions
  • AES Advanced Encryption Standard
  • AID Application Identifier
  • ALW Always
  • APDU Application Protocol Data Unit (structure of a command)
  • ATR Answer To Reset
  • AUT Authenticated.
  • C6, C7 Contacts No 6 and 7 of the card as described in ISO/IEC 7816-2
  • cc clock cycles
  • CHA Certificate Holder Authorisation
  • CHV Card holder Verification Information
  • CLA Class byte of an APDU command
  • DO Data Object
  • DSRC Dedicated Short Range Communication
  • DF Dedicated File. A DF can contain other files (EF or DF)
  • ECC Elliptic Curve Cryptography
  • EF Elementary File
  • etu elementary time unit
  • G1 Generation 1
  • G2 Generation 2
  • IC Integrated Circuit
  • ICC Integrated Circuit Card
  • ID Identifier
  • IFD Interface Device
  • IFS Information Field Size
  • IFSC Information Field Size for the card
  • IFSD Information Field Size Device (for the Terminal)
  • INS Instruction byte of an APDU command
  • Lc Length of the input data for a APDU command
  • Le Length of the expected data (output data for a command)
  • MF Master File (root DF)
  • NAD Node Address used in T=1 protocol
  • NEV Never
  • P1-P2 Parameter bytes
  • PIN Personal Identification Number
  • PRO SM Protected with secure messaging
  • PTS Protocol Transmission Selection
  • RFU Reserved for Future Use
  • RST Reset (of the card)
  • SFID Short EF Identifier
  • SM Secure Messaging
  • SW1-SW2 Status bytes
  • TS Initial ATR character
  • VPP Programming Voltage
  • VU Vehicle Unit
  • XXh Value XX in hexadecimal notation
  • ‘XXh’ Value XX in hexadecimal notation

|| Concatenation symbol 03||04=0304

1.2.   References

The following references are used in this Appendix:

  • ISO/IEC 7816-2 Identification cards — Integrated circuit cards — Part 2: Dimensions and location of the contacts. ISO/IEC 7816-2:2007.
  • ISO/IEC 7816-3 Identification cards — Integrated circuit cards — Part 3: Electrical interface and transmission protocols. ISO/IEC 7816-3:2006.
  • ISO/IEC 7816-4 Identification cards — Integrated circuit cards — Part 4: Organization, security and commands for interchange. ISO/IEC 7816-4:2013 + Cor 1: 2014.
  • ISO/IEC 7816-6 Identification cards — Integrated circuit cards — Part 6: Interindustry data elements for interchange. ISO/IEC 7816-6:2004 + Cor 1: 2006.
  • ISO/IEC 7816-8 Identification cards — Integrated circuit cards — Part 8: Commands for security operations. ISO/IEC 7816-8:2004.
  • ISO/IEC 9797-2 Information technology — Security techniques — Message Authentication Codes (MACs) — Part 2: Mechanisms using a dedicated hash-function. ISO/IEC 9797-2:2011

2. ELECTRICAL AND PHYSICAL CHARACTERISTICS

  • TCS_01All electronic signals shall be in accordance with ISO/IEC 7816-3 unless specified otherwise.
  • TCS_02The location and dimensions of the card contacts shall comply with the ISO/IEC 7816-2.
2.1.   Supply Voltage and Current Consumption
  • TCS_03The card shall work according to specifications within the consumption limits specified in ISO/IEC 7816-3.
  • TCS_04The card shall work with Vcc = 3V (± 0,3V) or with Vcc = 5V (± 0,5V).
  • Voltage selection shall be performed according to ISO/IEC 7816-3.
2.2.   Programming Voltage Vpp
  • TCS_05The card shall not require a programming voltage at pin C6. It is expected that pin C6 is not connected in an IFD. Contact C6 may be connected to Vcc in the card but shall not be connected to ground. This voltage should not be interpreted in any case.
2.3.   Clock generation and Frequency
  • TCS_06The card shall operate within a frequency range of 1 to 5 MHz and may support higher frequencies. Within one card session the clock frequency may vary ± 2 %. The clock frequency is generated by the Vehicle Unit and not the card itself. The duty cycle may vary between 40 and 60 %.
  • TCS_07Under conditions contained into the card file EF ICC, the external clock can be stopped. The first byte of the EF ICC file body codes the Clockstop mode conditions:
Low High
Bit 3 Bit 2 Bit 1
0 0 1 Clockstop allowed, no preferred level
0 1 1 Clockstop allowed, high level preferred
1 0 1 Clockstop allowed, low level preferred
0 0 0 Clockstop not allowed
0 1 0 Clockstop only allowed on high level
1 0 0 Clockstop only allowed on low level
  • Bits 4 to 8 are not used.
2.4.   I/O Contact
  • TCS_08The I/O contact C7 is used to receive data from and to transmit data to the IFD. During operation only either the card or the IFD shall be in transmit mode. Should both units be in transmit mode no damage shall occur to the card. Unless transmitting, the card shall enter the reception mode.
2.5.   States of the Card
  • TCS_09The card works in two states while the supply voltage is applied:

Operation state while executing commands or interfacing with Vehicle Unit,

Idle state at all other times; in this state all data shall be retained by the card.

3. HARDWARE AND COMMUNICATION

3.1.   Introduction

This paragraph describes the minimum functionality required by Tachograph cards and VUs to ensure correct operation and interoperability.

Tachograph cards are as compliant as possible with the available ISO/IEC applicable norms (especially ISO/IEC 7816). However, commands and protocols are fully described in order to specify some restricted usage or some differences if they exist. The commands specified are fully compliant with the referred norms except where indicated.

3.2.   Transmission Protocol
  • TCS_10The Transmission protocol shall be compliant with ISO/IEC 7816-3 for T = 0 and T = 1. In particular, the VU shall recognise waiting time extensions sent by the card.
3.2.1   Protocols
  • TCS_11The card shall provide both protocol T=0 and protocol T=1. In addition the card may support further contact-oriented protocols.
  • TCS_12 T=0 is the default protocol, a PTS command is therefore necessary to change the protocol to T=1.
  • TCS_13Devices shall support direct convention in both protocols: the direct convention is hence mandatory for the card.
  • TCS_14The Information Field Size Card byte shall be presented at the ATR in character TA3. This value shall be at least ‘F0h’ (=240 bytes).

The following restrictions apply to the protocols:

  • TCS_15 T=0
  • — The interface device shall support an answer on I/O after the rising edge of the signal on RST from 400 cc.
  • — The interface device shall be able to read characters separated with 12 etu.
  • — The interface device shall read an erroneous character and its repetition if separated with 13 etu. If an erroneous character is detected, the Error signal on I/O can occur between 1 etu and 2 etu. The device shall support a 1 etu delay.
  • — The interface device shall accept a 33 bytes ATR (TS+32)
  • — If TC1 is present in the ATR, the Extra Guard Time shall be present for characters sent by the interface device although characters sent by the card can still be separated with 12 etu. This is also true for the ACK character sent by the card after a P3 character emitted by the interface device.
  • — The interface device shall take into account a NUL character emitted by the card.
  • — The interface device shall accept the complementary mode for ACK.
  • — The get-response command cannot be used in chaining mode to get a data which length could exceed 255 bytes.
  • TCS_16 T=1
  • — NAD byte: not used (NAD shall be set to ‘00’).
  • — S-block ABORT: not used.
  • — S-block VPP state error: not used.
  • — The Information Field Size Device (IFSD) shall be indicated by the IFD immediately after the ATR: the IFD shall transmit the S-Block IFS request after the ATR and the card shall send back S-Block IFS. The recommended value for IFSD is 254 bytes.
  • — The card will not ask for an IFS readjustment.
3.2.2   ATR
  • TCS_17The device checks ATR bytes, according to ISO/IEC 7816-3. No verification shall be done on ATR Historical Characters.
  • Example of Basic Biprotocol ATR according to ISO/IEC 7816-3
Character Value Remarks
TS ‘3Bh’ Indicates direct convention.
T0 ‘85h’ TD1 present; 5 historical bytes are presents.
TD1 ‘80h’ TD2 present; T=0 to be used
TD2 ‘11h’ TA3 present; T=1 to be used
TA3 ‘XXh’ (at least ‘F0h’) Information Field Size Card ( IFSC)
TH1 to TH5 ‘XXh’ Historical characters
TCK ‘XXh’ Check Character (exclusive OR)
  • TCS_18After the Answer To Reset (ATR), the Master File (MF) is implicitly selected and becomes the Current Directory.
3.2.3   PTS
  • TCS_19The default Protocol is T=0. To set the T=1 protocol, a PTS (also known as PPS) must be sent to the card by the device.
  • TCS_20As both T=0 and T=1 protocols are mandatory for the card, the basic PTS for protocol switching is mandatory for the card.
  • The PTS can be used, as indicated in ISO/IEC 7816-3, to switch to higher baud rates than the default one proposed by the card in the ATR if any (TA(1) byte).
  • Higher baud rates are optional for the card.
  • TCS_21If no other baud rate than the default one are supported (or if the selected baud rate is not supported), the card shall respond to the PTS correctly according to ISO/IEC 7816-3 by omitting the PPS1 byte.
  • Examples of basic PTS for protocol selection are the following:
Character Value Remarks
PPSS ‘FFh’ The Initiate Character.
PPS0 ‘00h’ or ‘01h’ PPS1 to PPS3 are not present; ‘00h’ to select T0, ‘01h’ to select T1.
PK ‘XXh’ Check Character: ‘XXh’ = ‘FFh’ if PPS0 = ‘00h’, ‘XXh’ = ‘FEh’ if PPS0 = ‘01h’.
3.3.   Access Rules
  • TCS_22An access rule specifies for an access mode, i.e. command, the corresponding security conditions. If these security conditions are fulfilled the corresponding command is processed.
  • TCS_23The following security conditions are used for the tachograph card:
Abbreviation Meaning
ALW The action is always possible and can be executed without any restriction. Command and response APDU are sent in plain text, i.e. without secure messaging.
NEV The action is never possible.
PLAIN-C The command APDU is sent in plain, i.e. without secure messaging.
PWD The action may only be executed if the workshop card PIN has been successfully verified, i.e. if the card internal security status ‘PIN_Verified’ is set. The command must be sent without secure messaging.
EXT-AUT-G1 The action may only be executed if the External Authenticate command for the generation 1 authentication (see also Appendix 11 Part A) has been successfully performed.
SM-MAC-G1 The APDU (command and response) must be applied with generation 1 secure messaging in authentication-only mode (see Appendix 11 Part A).
SM-C-MAC-G1 The command APDU must be applied with generation 1 secure messaging in authentication only mode (see Appendix 11 Part A).
SM-R-ENC-G1 The response APDU must be applied with generation 1 secure messaging in encryption mode (see Appendix 11 Part A), i.e. no message authentication code is returned.
SM-R-ENC-MAC-G1 The response APDU must be applied with generation 1 secure messaging in encrypt-then-authenticate mode (see Appendix 11 Part A).
SM-MAC-G2 The APDU (command and response) must be applied with generation 2 secure messaging in authentication-only mode (see Appendix 11 Part B).
SM-C-MAC-G2 The command APDU must be applied with generation 2 secure messaging in authentication only mode (see Appendix 11 Part B).
SM-R-ENC-MAC-G2 The response APDU must be applied with generation 2 secure messaging in encrypt-then-authenticate mode (see Appendix 11 Part B).
  • TCS_24These security conditions can be linked in the following ways:

AND : All security conditions must be fulfilled

OR : At least one security condition must be fulfilled

  • The access rules for the file system, i.e. the SELECT, READ BINARY and UPDATE BINARY command, are specified in chapter 4. The access rules for the remaining commands are specified in the following tables. The term ‘not applicable’ is used if there is no requirement to support the command. In this case the command may or may not be supported, but the access condition is out of scope.
  • TCS_25In the DF Tachograph G1 application the following access rules are used:
Command Driver Card Workshop Card Control Card Company Card
External Authenticate
—  For generation 1 authentication ALW ALW ALW ALW
—  For generation 2 authentication ALW PWD ALW ALW
Internal Authenticate ALW PWD ALW ALW
General Authenticate ALW ALW ALW ALW
Get Challenge ALW ALW ALW ALW
MSE:SET AT ALW ALW ALW ALW
MSE:SET DST ALW ALW ALW ALW
Process DSRC Message Not applicable Not applicable Not applicable Not applicable
PSO: Compute Digital Signature ALW OR SM-MAC-G2 ALW OR SM-MAC-G2 Not applicable Not applicable
PSO: Hash Not applicable Not applicable ALW Not applicable
PERFORM HASH of FILE ALW OR SM-MAC-G2 ALW OR SM-MAC-G2 Not applicable Not applicable
PSO: Verify Certificate ALW ALW ALW ALW
PSO: Verify Digital Signature Not applicable Not applicable ALW Not applicable
Verify Not applicable ALW Not applicable Not applicable
  • TCS_26In the DF Tachograph_G2 application the following access rules are used:
Command Driver Card Workshop Card Control Card Company Card
External Authenticate
—  For generation 1 authentication Not applicable Not applicable Not applicable Not applicable
—  For generation 2 authentication ALW PWD ALW ALW
Internal Authenticate Not applicable Not applicable Not applicable Not applicable
General Authenticate ALW ALW ALW ALW
Get Challenge ALW ALW ALW ALW
MSE:SET AT ALW ALW ALW ALW
MSE:SET DST ALW ALW ALW ALW
Process DSRC Message Not applicable ALW ALW Not applicable
PSO: Compute Digital Signature ALW OR SM-MAC-G2 ALW OR SM-MAC-G2 Not applicable Not applicable
PSO: Hash Not applicable Not applicable ALW Not applicable
PERFORM HASH of FILE ALW OR SM-MAC-G2 ALW OR SM-MAC-G2 Not applicable Not applicable
PSO: Verify Certificate ALW ALW ALW ALW
PSO: Verify Digital Signature Not applicable Not applicable ALW Not applicable
Verify Not applicable ALW Not applicable Not applicable
  • TCS_27In the MF the following access rules are used:
Command Driver Card Workshop Card Control Card Company Card
External Authenticate
—  For generation 1 authentication Not applicable Not applicable Not applicable Not applicable
—  For generation 2 authentication ALW PWD ALW ALW
Internal Authenticate Not applicable Not applicable Not applicable Not applicable
General Authenticate ALW ALW ALW ALW
Get Challenge ALW ALW ALW ALW
MSE:SET AT ALW ALW ALW ALW
MSE:SET DST ALW ALW ALW ALW
Process DSRC Message Not applicable Not applicable Not applicable Not applicable
PSO: Compute Digital Signature Not applicable Not applicable Not applicable Not applicable
PSO: Hash Not applicable Not applicable Not applicable Not applicable
PERFORM HASH of FILE Not applicable Not applicable Not applicable Not applicable
PSO: Verify Certificate ALW ALW ALW ALW
PSO: Verify Digital Signature Not applicable Not applicable Not applicable Not applicable
Verify Not applicable ALW Not applicable Not applicable
  • TCS_28A tachograph card may or may not accept a command with a higher level of security than the one specified in the security conditions. I.e. if the security condition is ALW (or PLAIN-C) the card may accept a command with secure messaging (encryption and / or authentication mode). If the security condition requires secure messaging with authentication mode, the tachograph card may accept a command with secure messaging of the same generation in authentication and encryption mode.

Note: The command descriptions provide more information on the support of the commands for the different tachograph card types and the different DFs.

3.4.   Commands and error codes overview

Commands and file organisation are deduced from and complies with ISO/IEC 7816-4.

This section describes the following APDU command-response pairs. The command variants which are supported by a generation 1 and 2 application are specified in the corresponding command descriptions.

Command INS
SELECT ‘A4h’
READ BINARY ‘B0h’, ‘B1h’
UPDATE BINARY ‘D6h’, ‘D7h’
GET CHALLENGE ‘84h’
VERIFY ‘20h’
GET RESPONSE ‘C0h’
PERFORM SECURITY OPERATION ‘2Ah’
—  VERIFY CERTIFICATE
—  COMPUTE DIGITAL SIGNATURE
—  VERIFY DIGITAL SIGNATURE
—  HASH
—  PERFORM HASH OF FILE
—  PROCESS DSRC MESSAGE
INTERNAL AUTHENTICATE ‘88h’
EXTERNAL AUTHENTICATE ‘82h’
MANAGE SECURITY ENVIRONMENT ‘22h’
—  SET DIGITAL SIGNATURE TEMPLATE
—  SET AUTHENTICATION TEMPLATE
GENERAL AUTHENTICATE ‘86h’
  • TCS_29The status words SW1 SW2 are returned in any response message and denote the processing state of the command.
SW1 SW2 Meaning
90 00 Normal processing.
61 XX Normal processing. XX = number of response bytes available.
62 81 Warning processing. Part of returned data may be corrupted
63 00 Authentication failed (Warning)
63 CX Wrong CHV (PIN). Remaining attempts counter provided by ‘X’.
64 00 Execution error - State of non-volatile memory unchanged. Integrity error.
65 00 Execution error - State of non-volatile memory changed
65 81 Execution error - State of non-volatile memory changed – Memory failure
66 88 Security error: wrong cryptographic checksum (during Secure Messaging) or wrong certificate (during certificate verification) or wrong cryptogram (during external authentication) or wrong signature (during signature verification)
67 00 Wrong length (wrong Lc or Le)
68 83 Last command of the chain expected
69 00 Forbidden command (no response available in T=0)
69 82 Security status not satisfied.
69 83 Authentication method blocked.
69 85 Conditions of use not satisfied.
69 86 Command not allowed (no current EF).
69 87 Expected Secure Messaging Data Objects missing
69 88 Incorrect Secure Messaging Data Objects
6A 80 Incorrect parameters in data field
6A 82 File not found.
6A 86 Wrong parameters P1-P2.
6A 88 Referenced data not found.
6B 00 Wrong parameters (offset outside the EF).
6C XX Wrong length, SW2 indicates the exact length. No data field is returned.
6D 00 Instruction code not supported or invalid.
6E 00 Class not supported.
6F 00 —  Other checking errors
  • Additional status words as defined in ISO/IEC 7816-4 can be returned, if their behaviour is not explicitly mentioned in this appendix.
  • For example the following status words can be optionally returned:
  • 6881: Logical channel not supported
  • 6882: Secure messaging not supported
  • TCS_30If more than one error condition is fulfilled in one command APDU the card may return any of the appropriate status words.
3.5.   Command descriptions

The mandatory commands for the Tachograph cards are described in this chapter.

Additional relevant details, related to cryptographic operations involved, are given in Appendix 11 Common security mechanisms for Tachograph Generation 1 and Generation 2.

All commands are described independently of the used protocol (T=0 or T=1). The APDU bytes CLA, INS, P1, P2, Lc and Le are always indicated. If Lc or Le is not needed for the described command, the associated length, value and description are empty.

  • TCS_31If both length bytes (Lc and Le) are requested, the described command has to be split in two parts if the IFD is using protocol T=0: the IFD sends the command as described with P3=Lc + data and then sends a GET RESPONSE (see § 3.5.6) command with P3=Le.
  • TCS_32If both length bytes are requested, and Le=0 (secure messaging):
  • — When using protocol T=1, the card shall answer to Le=0 by sending all available output data.
  • — When using protocol T=0, the IFD shall send the first command with P3=Lc + data, the card shall answer (to this implicit Le=0) by the Status bytes ‘ 61La ’, where La is the number of response bytes available. The IFD shall then generate a GET RESPONSE command with P3 = La to read the data.
  • TCS_33A tachograph card may support extended length fields according to ISO/IEC 7816-4 as an optional feature. A tachograph card that supports extended length fields shall
  • — Indicate the extended length field support in the ATR
  • — Provide the supported buffer sizes by means of the extended length information in the EF ATR/INFO see TCS_146.
  • — Indicate whether it supports extended length fields for T = 1 and / or T = 0 in the EF Extended Length, see TCS_147.
  • — Support extended length fields for the tachograph application generation 1 and 2.
Notes:

All commands are specified for short length fields. The usage of extended length APDUs is clear from ISO/IEC 7816-4.

In general the commands are specified for the plain mode, i.e. without secure messaging, as the secure messaging layer is specified in Appendix 11. It is clear from the access rules for a command whether the command shall support secure messaging or not and whether the command shall support generation 1 and / or generation 2 secure messaging. Some command variants are described with secure messaging to illustrate the usage of secure messaging.

  • TCS_34The VU shall perform the complete generation 2 VU — card mutual authentication protocol for a session including the certificate verification (if required) either in the DF Tachograph, the DF Tachograph_G2 or the MF.
3.5.1   SELECT

This command is compliant with ISO/IEC 7816-4, but has a restricted usage compared to the command defined in the norm.

The SELECT command is used:

  • — to select an application DF (selection by name must be used)

Reading this document does not replace reading the official text published in the Official Journal of the European Union. We assume no responsibility for any inaccuracies arising from the conversion of the original to this format.

This text is published under EUR-Lex's own terms of reuse, not a Legalize or public-domain licence. EUR-Lex
Creative Commons Attribution 4.0 International (CC BY 4.0)
© European Union, https://eur-lex.europa.eu — Source: EUR-Lex (Publications Office of the European Union). Reused under the Creative Commons Attribution 4.0 International (CC BY 4.0) licence. Only EU legislation published in the printed Official Journal of the European Union is deemed authentic; consolidated texts are reproduced here for documentation purposes and have been reformatted to Markdown.