Release: | 3.1.0 |
Date: | 2016-10-19+02:00 |
Author: | WG DA |
Company: | MOST Cooperation |
Modifications | |
---|---|
Change | Reason |
FBlock Overview | |
---|---|
FBlockID | Name |
0x03 | ErrorSpecificationExample |
Release: | 3.1.0 |
Date: | 2016-10-19+02:00 |
Author: | unknown |
Company: | unknown |
Modifications | |
---|---|
Change | Reason |
Function Overview | ||
---|---|---|
FktID | Name | Occurrence |
0x500 | MethodWithErrorSpecification | Mandatory |
Occurrence: Mandatory
This method details how errors can be specified in the MOST function catalog.
Function class: Sequence Method
FBlock | Function | OPType | Parameter |
---|---|---|---|
ErrorSpecificationExample (0x03) | MethodWithErrorSpecification (0x500) | StartResultAck | SenderHandle, ByteParameter |
ErrorAck | SenderHandle, ErrorCode, ErrorInfo | ||
ResultAck | ByteParameter | ||
Error | ErrorCode, ErrorInfo |
SenderHandle
Unique identifier of the requesting task within the device.
Basis data type | Unit | Exp. | Step |
---|---|---|---|
Unsigned Word | none | 0 | 1 |
ByteParameter
A parameter of data type Unsigned Byte.
Basis data type | Unit | Exp. | Step |
---|---|---|---|
Unsigned Byte | none | 0 | 1 |
ErrorCode
(Refer to the MOST Specification, section "Structure of MOST Messages: OPType")
Basis data type | Code | Name | Description |
---|---|---|---|
Enum (1 byte) | 0x1 | FBlockIDNotAvailable | FBlockID not available |
0x2 | InstIDNotAvailable | InstID not available | |
0x3 | FktIDNotAvailable | FktID not available | |
0x4 | OPTypeNotAvailable | OPType not available | |
0x5 | InvalidLength | Invalid length | |
0x6 | ParameterWrong | One or more of the parameters were wrong, i.e., not within the boundaries specified for the function. Example: Function Temp shall be set to 200, although maximum value is 80. | |
0x7 | ParameterNotAvailable | One or more of the parameters were within the boundaries specified for the function, but are not available at that time. | |
0x8...0xA | Reserved0x08_0x0A | Reserved range. | |
0xB | DeviceMalfunction | Device Malfunction | |
0xC | SegmentationError | ErrorInfo contains a value in the range of 0x01…0x07. | |
0x41 | NotAvailable | Function is implemented in principle, but is not available at the moment. | |
0xFF...0xFF | Reserved0xFF | Reserved range. |
ErrorInfo
Besides the error information provided in the MOST Specification, as an example, additional function specific error info values are specified here.
Basis data type | Length | Condition | Description |
---|---|---|---|
Stream | ErrorCode = 0x1 | FBlockID not available | |
ErrorCode = 0x2 | InstID not available | ||
ErrorCode = 0x3 | FktID not available | ||
ErrorCode = 0x4 | Content: UnavailableOPType
OPType not available |
||
ErrorCode = 0x5 | Invalid length | ||
ErrorCode = 0x6 | Content: ParameterPosition, ParameterValue
Parameter wrong / out of range |
||
ErrorCode = 0x7 | Content: ParameterPosition, ParameterValue
Parameter not available |
||
ErrorCode = 0xB | Device Malfunction | ||
ErrorCode = 0xC | Content: SegmentationErrorCause
Segmentation Error |
||
ErrorCode = 0x41 | Not available |
The value of the OPType for ErrorCode 0x04 (OPType not available). Because this error is only reported from FBlock to controller, the specified range does not include reports (OPType > 8).
Basis data type | Code | Name | Description |
---|---|---|---|
Enum (1 byte) | 0x0 | SetStart | Set for properties, Start for methods. |
0x1 | GetAbort | Get for properties, Abort for methods. | |
0x2 | SetGetStartResult | SetGet for properties, StartResult for methods. | |
0x3 | Increment | Increment for properties; no OPType is specified for this code for methods. | |
0x4 | Decrement | Decrement for properties; no OPType is specified for this code for methods. | |
0x5 | NotAllowed | No OPType is specified for this code. | |
0x6 | StartResultAck | No OPType is specified for this code for properties; StartResultAck for methods. | |
0x7 | AbortAck | No OPType is specified for this code for properties; AbortAck for methods. | |
0x8 | StartAck | No OPType is specified for this code for properties; StartAckfor methods. |
Contains the position of the offending parameter, where the value 1 corresponds to the first parameter. If a SenderHandle is present, 1 corresponds to the first parameter following the SenderHandle.
Basis data type | Unit | Exp. | Step | Range of values | Range description |
---|---|---|---|---|---|
Unsigned Byte | none | 0 | 1 | 1...255 |
Value of the first offending parameter. Since, the data type of the actual parameter is determined at run time, Array Type is used as an envelope so that arbitrary structures can be provided.
Basis data type | ElementCount size | Element type | Element name |
---|---|---|---|
Array Type | 2 | Unsigned Byte | ParameterValueByte |
Basis data type | Unit | Exp. | Step |
---|---|---|---|
Unsigned Byte | none | 0 | 1 |
ErrorInfo.SegmentationErrorCause
The cause of the segmentation error.
Basis data type | Code | Name | Description |
---|---|---|---|
Enum (1 byte) | 0x1 | FirstSegmentMissing | First segment missing, that is, the first telegram of a segmented message was not received. |
0x2 | TooFewBuffers | Target node does not provide enough buffers to handle a message of this size. | |
0x3 | UnexpectedSegment | Unexpected segment number. | |
0x4 | TooManyMessages | Too many unfinished segmentation messages pending. | |
0x5 | Timeout | Timeout while waiting for next segment. | |
0x6 | NodeNotCapable | Node not capable of handling segmented messages. | |
0x7 | MessageCollision | Segmented message has not been finished before the arrival of another message with identical FBlockID, InstID, FktID, and OPType sent by the same node. |