IoTFleetWise / Client / create_decoder_manifest
create_decoder_manifest#
- IoTFleetWise.Client.create_decoder_manifest(**kwargs)#
Creates the decoder manifest associated with a model manifest. To create a decoder manifest, the following must be true:
Every signal decoder has a unique name.
Each signal decoder is associated with a network interface.
Each network interface has a unique ID.
The signal decoders are specified in the model manifest.
See also: AWS API Documentation
Request Syntax
response = client.create_decoder_manifest( name='string', description='string', modelManifestArn='string', signalDecoders=[ { 'fullyQualifiedName': 'string', 'type': 'CAN_SIGNAL'|'OBD_SIGNAL', 'interfaceId': 'string', 'canSignal': { 'messageId': 123, 'isBigEndian': True|False, 'isSigned': True|False, 'startBit': 123, 'offset': 123.0, 'factor': 123.0, 'length': 123, 'name': 'string' }, 'obdSignal': { 'pidResponseLength': 123, 'serviceMode': 123, 'pid': 123, 'scaling': 123.0, 'offset': 123.0, 'startByte': 123, 'byteLength': 123, 'bitRightShift': 123, 'bitMaskLength': 123 } }, ], networkInterfaces=[ { 'interfaceId': 'string', 'type': 'CAN_INTERFACE'|'OBD_INTERFACE', 'canInterface': { 'name': 'string', 'protocolName': 'string', 'protocolVersion': 'string' }, 'obdInterface': { 'name': 'string', 'requestMessageId': 123, 'obdStandard': 'string', 'pidRequestIntervalSeconds': 123, 'dtcRequestIntervalSeconds': 123, 'useExtendedIds': True|False, 'hasTransmissionEcu': True|False } }, ], tags=[ { 'Key': 'string', 'Value': 'string' }, ] )
- Parameters:
name (string) –
[REQUIRED]
The unique name of the decoder manifest to create.
description (string) – A brief description of the decoder manifest.
modelManifestArn (string) –
[REQUIRED]
The Amazon Resource Name (ARN) of the vehicle model (model manifest).
signalDecoders (list) –
A list of information about signal decoders.
(dict) –
Information about a signal decoder.
fullyQualifiedName (string) – [REQUIRED]
The fully qualified name of a signal decoder as defined in a vehicle model.
type (string) – [REQUIRED]
The network protocol for the vehicle. For example,
CAN_SIGNAL
specifies a protocol that defines how data is communicated between electronic control units (ECUs).OBD_SIGNAL
specifies a protocol that defines how self-diagnostic data is communicated between ECUs.interfaceId (string) – [REQUIRED]
The ID of a network interface that specifies what network protocol a vehicle follows.
canSignal (dict) –
Information about signal decoder using the Controller Area Network (CAN) protocol.
messageId (integer) – [REQUIRED]
The ID of the message.
isBigEndian (boolean) – [REQUIRED]
Whether the byte ordering of a CAN message is big-endian.
isSigned (boolean) – [REQUIRED]
Whether the message data is specified as a signed value.
startBit (integer) – [REQUIRED]
Indicates the beginning of the CAN signal. This should always be the least significant bit (LSB).
This value might be different from the value in a DBC file. For little endian signals,
startBit
is the same value as in the DBC file. For big endian signals in a DBC file, the start bit is the most significant bit (MSB). You will have to calculate the LSB instead and pass it as thestartBit
.offset (float) – [REQUIRED]
The offset used to calculate the signal value. Combined with factor, the calculation is
value = raw_value * factor + offset
.factor (float) – [REQUIRED]
A multiplier used to decode the CAN message.
length (integer) – [REQUIRED]
How many bytes of data are in the message.
name (string) –
The name of the signal.
obdSignal (dict) –
Information about signal decoder using the On-board diagnostic (OBD) II protocol.
pidResponseLength (integer) – [REQUIRED]
The length of the requested data.
serviceMode (integer) – [REQUIRED]
The mode of operation (diagnostic service) in a message.
pid (integer) – [REQUIRED]
The diagnostic code used to request data from a vehicle for this signal.
scaling (float) – [REQUIRED]
A multiplier used to decode the message.
offset (float) – [REQUIRED]
The offset used to calculate the signal value. Combined with scaling, the calculation is
value = raw_value * scaling + offset
.startByte (integer) – [REQUIRED]
Indicates the beginning of the message.
byteLength (integer) – [REQUIRED]
The length of a message.
bitRightShift (integer) –
The number of positions to shift bits in the message.
bitMaskLength (integer) –
The number of bits to mask in a message.
networkInterfaces (list) –
A list of information about available network interfaces.
(dict) –
Represents a node and its specifications in an in-vehicle communication network. All signal decoders must be associated with a network node.
To return this information about all the network interfaces specified in a decoder manifest, use the API operation.
interfaceId (string) – [REQUIRED]
The ID of the network interface.
type (string) – [REQUIRED]
The network protocol for the vehicle. For example,
CAN_SIGNAL
specifies a protocol that defines how data is communicated between electronic control units (ECUs).OBD_SIGNAL
specifies a protocol that defines how self-diagnostic data is communicated between ECUs.canInterface (dict) –
Information about a network interface specified by the Controller Area Network (CAN) protocol.
name (string) – [REQUIRED]
The unique name of the interface.
protocolName (string) –
The name of the communication protocol for the interface.
protocolVersion (string) –
The version of the communication protocol for the interface.
obdInterface (dict) –
Information about a network interface specified by the On-board diagnostic (OBD) II protocol.
name (string) – [REQUIRED]
The name of the interface.
requestMessageId (integer) – [REQUIRED]
The ID of the message requesting vehicle data.
obdStandard (string) –
The standard OBD II PID.
pidRequestIntervalSeconds (integer) –
The maximum number message requests per second.
dtcRequestIntervalSeconds (integer) –
The maximum number message requests per diagnostic trouble code per second.
useExtendedIds (boolean) –
Whether to use extended IDs in the message.
hasTransmissionEcu (boolean) –
Whether the vehicle has a transmission control module (TCM).
tags (list) –
Metadata that can be used to manage the decoder manifest.
(dict) –
A set of key/value pairs that are used to manage the resource.
Key (string) – [REQUIRED]
The tag’s key.
Value (string) – [REQUIRED]
The tag’s value.
- Return type:
dict
- Returns:
Response Syntax
{ 'name': 'string', 'arn': 'string' }
Response Structure
(dict) –
name (string) –
The name of the created decoder manifest.
arn (string) –
The ARN of the created decoder manifest.
Exceptions
IoTFleetWise.Client.exceptions.ResourceNotFoundException
IoTFleetWise.Client.exceptions.InternalServerException
IoTFleetWise.Client.exceptions.ConflictException
IoTFleetWise.Client.exceptions.LimitExceededException
IoTFleetWise.Client.exceptions.DecoderManifestValidationException
IoTFleetWise.Client.exceptions.ThrottlingException
IoTFleetWise.Client.exceptions.ValidationException
IoTFleetWise.Client.exceptions.AccessDeniedException