The Heartbeat message is used to inform other modules that the sending entity’s system is running normally and communications are alive.
This message has no fields.
A system description that is to be broadcasted to other systems.
Name | Abbreviation | Unit | Type | Description | Range |
---|---|---|---|---|---|
System Name | sys_name | - | plaintext | System name. | Same as field type |
System Type | sys_type | Enumerated (Enum System Type) | uint8_t | System type. | Same as field type |
Control Owner | owner | - | uint16_t | The owner IMC system ID. | Same as field type |
Latitude WGS-84 | lat | rad | fp64_t | WGS-84 Latitude. If lat=0 and lon=0 means location value is unknown. | min=-1.5707963267948966, max=1.5707963267948966 |
Longitude WGS-84 | lon | rad | fp64_t | WGS-84 Longitude. If lat=0 and lon=0 means location value is unknown. | min=-3.141592653589793, max=3.141592653589793 |
Height WGS-84 | height | m | fp32_t | Height above WGS-84 ellipsoid. | Same as field type |
Services | services | - | plaintext | Semicolon separated list of URLs. Examples of such URLs are:
|
Same as field type |
Announcement about the existence of a service.
Name | Abbreviation | Unit | Type | Description | Range |
---|---|---|---|---|---|
Service | service | - | plaintext | Semicolon separated list of URLs (see Announce). | Same as field type |
ServiceType | service_type | Bitfield (Bitfield ServiceType) | uint8_t | Informs about the availability of the service on internal and external networks. | Same as field type |
Informs about the availability of the service on internal and external networks.
Value | Name | Abbreviation | Description |
---|---|---|---|
0x01 | External | EXTERNAL | - |
0x02 | Local | LOCAL | - |
Measure of the RSSI by a networking device. Indicates the gain or loss in the signal strength due to the transmission and reception equipment and the transmission medium and distance.
Name | Abbreviation | Unit | Type | Description | Range |
---|---|---|---|---|---|
Value | value | % | fp32_t | RSSI measurement. | max=100 |
Measure of the VSWR by a networking device.
Name | Abbreviation | Unit | Type | Description | Range |
---|---|---|---|---|---|
Value | value | - | fp32_t | VSWR measurement. | Same as field type |
Measurement of link level quality. For instance, this may correspond to the acknowledgment ratio of a link. But, generally, the measure is link-dependent.
Name | Abbreviation | Unit | Type | Description | Range |
---|---|---|---|---|---|
Value | value | - | fp32_t | Link level value. | Same as field type |
Send a SMS message.
Name | Abbreviation | Unit | Type | Description | Range |
---|---|---|---|---|---|
Number | number | - | plaintext | Target mobile device number. | Same as field type |
Timeout | timeout | - | uint16_t | Timeout for sending message. | Same as field type |
Contents | contents | - | plaintext | Message contents. | Same as field type |
Request to send SMS.
Name | Abbreviation | Unit | Type | Description | Range |
---|---|---|---|---|---|
Sequence Number | seq | - | uint32_t | Sequence number. | Same as field type |
Destination | destination | - | plaintext | Number or name of the recipient. | Same as field type |
Timeout | timeout | s | uint16_t | Timeout for sending message. | Same as field type |
Data | data | - | rawdata | Message data. | Same as field type |
Received SMS data.
Name | Abbreviation | Unit | Type | Description | Range |
---|---|---|---|---|---|
Source | source | - | plaintext | Number of name of the sender. | Same as field type |
Data | data | - | rawdata | Message data. | Same as field type |
No description
Name | Abbreviation | Unit | Type | Description | Range |
---|---|---|---|---|---|
Sequence Number | seq | - | uint32_t | Sequence number. | Same as field type |
State | state | Enumerated (Enum State) | uint8_t | Current state of an SMS transaction. | Same as field type |
Error Message | error | - | plaintext | Same as field type |
Current state of an SMS transaction.
Value | Name | Abbreviation | Description |
---|---|---|---|
0 | Accepted | ACCEPTED | - |
1 | Rejected | REJECTED | - |
2 | Interrupted | INTERRUPTED | - |
3 | Completed | COMPLETED | - |
4 | Idle | IDLE | - |
5 | Transmitting | TRANSMITTING | - |
6 | Receiving | RECEIVING | - |
A text message has been received.
Name | Abbreviation | Unit | Type | Description | Range |
---|---|---|---|---|---|
Origin | origin | - | plaintext | Message origin (if known). | Same as field type |
Text | text | - | plaintext | Message contents. | Same as field type |
No description
Name | Abbreviation | Unit | Type | Description | Range |
---|---|---|---|---|---|
Origin Identifier | origin | - | plaintext | The unique identifier of this message’s origin device (e.g. lauv-xtreme-2, manta-0). | Same as field type |
Timestamp | htime | s | fp64_t | Timestamp (Epoch time). | Same as field type |
Latitude Reference | lat | rad | fp64_t | Same as field type | |
Longitude Reference | lon | rad | fp64_t | Same as field type | |
Data | data | - | rawdata | Message data. | Same as field type |
No description
Name | Abbreviation | Unit | Type | Description | Range |
---|---|---|---|---|---|
Request Identifier | req_id | - | uint16_t | The request identifier used to receive transmission updates. | Same as field type |
Time to live | ttl | s | uint16_t | Time, in seconds, after which there will be no more atempts to transmit the message. | Same as field type |
Destination Identifier | destination | - | plaintext | The unique identifier of this message’s destination (e.g. lauv-xtreme-2, manta-0). | Same as field type |
Data | data | - | rawdata | Message data. | Same as field type |
No description
Name | Abbreviation | Unit | Type | Description | Range |
---|---|---|---|---|---|
Request Identifier | req_id | - | uint16_t | The request identifier used to receive transmission updates | Same as field type |
Status Code | status | Enumerated (Enum Status Code) | uint8_t | Same as field type | |
Status Text | text | - | plaintext | Same as field type |
No description
Value | Name | Abbreviation | Description |
---|---|---|---|
1 | Successfull transmission | OK | - |
2 | Error while trying to transmit message | ERROR | - |
3 | Message has been queued for transmission | QUEUED | - |
4 | Message is currently being transmitted | TRANSMIT | - |
5 | Message’s TTL has expired. Transmition cancelled. | EXPIRED | - |
6 | No more messages to be transmitted or received. | EMPTY | - |
Group communication link assertion.
Name | Abbreviation | Unit | Type | Description | Range |
---|---|---|---|---|---|
Group Name | group_name | - | plaintext | Name of the group of systems. | Same as field type |
Communication Links Assertion | links | - | uint32_t | Communication link assertion for each group member. One bit to assert each system communication link state. | Same as field type |
Group of systems configuration.
Name | Abbreviation | Unit | Type | Description | Range |
---|---|---|---|---|---|
Group Name | GroupName | - | plaintext | Name of the group of systems. | Same as field type |
Group List Action | Action | Enumerated (Enum Group List Action) | uint8_t | Actions on the group list. | Same as field type |
Systems Name List | GroupList | - | plaintext | List of names of system in the group, separated by commas. | Same as field type |
Actions on the group list.
Value | Name | Abbreviation | Description |
---|---|---|---|
0 | Disband | Dis | - |
1 | Set | Set | - |
2 | Request | Req | - |
3 | Change | Chg | - |
4 | Report | Rep | - |
5 | Force | Frc | - |
Communications latency between two systems.
Name | Abbreviation | Unit | Type | Description | Range |
---|---|---|---|---|---|
Value | value | s | fp32_t | Time taken between the communications package/message is sent from the source until it arrives to the destination. | min=0 |
Communications Source System ID | sys_src | - | uint16_t | ID of system that was the source of the communication package. | Same as field type |
Measure of the RSSI by a networking device. Indicates the gain or loss in the signal strenght due to the transmission and reception equipment and the transmission medium and distance.
Name | Abbreviation | Unit | Type | Description | Range |
---|---|---|---|---|---|
Value | value | - | fp32_t | RSSI measurement. | Same as field type |
RSSI Units | units | Enumerated (Enum RSSI Units) | uint8_t | Indicates the units used for the RSSI value. | Same as field type |
This message holds a list of inline data samples produced by one or more vehicles in the past. It is used to transfer data over disruption tolerant networks.
Name | Abbreviation | Unit | Type | Description | Range |
---|---|---|---|---|---|
Base Latitude | base_lat | ° | fp32_t | All data sent inside this message will have offsets relative to this latitude. | Same as field type |
Base Longitude | base_lon | ° | fp32_t | All data sent inside this message will have offsets relative to this longitude. | Same as field type |
Base Timestamp | base_time | s | fp32_t | All data sent inside this message will use this time as the origin (0). | Same as field type |
Data | data | - | message-list (Message-Group RemoteData) | Same as field type |
This message holds a list of inline data samples produced by one or more vehicles in the past. It is used to transfer data over disruption tolerant networks.
Name | Abbreviation | Unit | Type | Description | Range |
---|---|---|---|---|---|
Base Latitude | base_lat | ° | fp32_t | All data sent inside this message will have offsets relative to this latitude. | Same as field type |
Base Longitude | base_lon | ° | fp32_t | All data sent inside this message will have offsets relative to this longitude. | Same as field type |
Base Timestamp | base_time | s | fp32_t | All data sent inside this message will use this time as the origin (0). | Same as field type |
Data | data | - | rawdata | A message-list of HistoricSample messages compressed with GZip algorithm. | Same as field type |
No description
Name | Abbreviation | Unit | Type | Description | Range |
---|---|---|---|---|---|
Original System Id | sys_id | - | uint16_t | The IMC identifier of the system that produced this sample. | Same as field type |
Priority | priority | - | int8_t | The priority for this data sample. Default priority is 0. Samples with higher priorities will always be transmitted before samples with lower priorities. Samples with -127 priority will not be transmitted but just logged to disk locally. | Same as field type |
X offset | x | m | int16_t | Northing offsets relative to base latitude / longitude expressed in the enclosing HistoricData message. | Same as field type |
Y offset | y | m | int16_t | Easting offsets relative to base latitude / longitude expressed in the enclosing HistoricData message. | Same as field type |
Z offset | z | dm | int16_t | Altitude / depth offsets relative to sea level expressed in decimeters. Negative values mean depth and positive values mean altitude. | Same as field type |
Time offset | t | s | int16_t | Time offset in seconds relative to the base time expressed in the enclosing HistoricData message. | Same as field type |
Data Sample | sample | - | message | Same as field type |
No description
Name | Abbreviation | Unit | Type | Description | Range |
---|---|---|---|---|---|
Request Id | req_id | - | uint16_t | Same as field type | |
Request Type | type | Enumerated (Enum Request Type) | uint8_t | Same as field type | |
Maximum Size | max_size | - | uint16_t | Same as field type | |
Data | data | - | message (Historic Data Series) | Same as field type |
No description
Value | Name | Abbreviation | Description |
---|---|---|---|
1 | Query | QUERY | Request data from the Data Store |
2 | Reply | REPLY | Data Store response with Data (using field ‘data’) |
3 | Clear | CLEAR | Clear ‘data’ from the Data Store |
Command to remote system. If a system receives a RemoteCommand and it isn’t the intended recipient, then it should resend it.
Name | Abbreviation | Unit | Type | Description | Range |
---|---|---|---|---|---|
Original Source | original_source | - | uint16_t | IMC id of the original sender. | Same as field type |
Destination | destination | - | uint16_t | IMC id of the recipient. | Same as field type |
Timeout | timeout | s | fp64_t | Expiration time of the message (Epoch Time), in seconds. If the message doesn’t reach the destination within timeout, the validity of the message expires and there will be no more attempts to transmit the message. | Same as field type |
Command | cmd | - | message | Command to be unpacked by the recipient. | Same as field type |
Presence of Communication Interfaces query.
Name | Abbreviation | Unit | Type | Description | Range |
---|---|---|---|---|---|
Type | type | Bitfield (Bitfield Type) | uint8_t | Same as field type | |
Communication Interface | comm_interface | Bitfield (CommSystemsQuery-bitfield-comm_interface) | uint16_t | Communication interface to be used for reports. | Same as field type |
Model | model | Enumerated (Enum Model) | uint16_t | Same as field type | |
System List | list | List | plaintext | Comma separated list of known Radio system names. | Same as field type |
No description
Value | Name | Abbreviation | Description |
---|---|---|---|
0x01 | Query Systems | QUERY | Query systems about communication capability |
0x02 | Reply | REPLY | Reply systems about communication capability |
Communication interface to be used for reports.
Value | Name | Abbreviation | Description |
---|---|---|---|
0x01 | Acoustic | ACOUSTIC | Use acoustic communications |
0x02 | Satellite | SATELLITE | Use satellite communications |
0x04 | GSM | GSM | Use Global System for Mobile Communications |
0x08 | Mobile | MOBILE | Use mobile networks |
0x10 | Radio | RADIO | Use Radio telemetry |
No description
Value | Name | Abbreviation | Description |
---|---|---|---|
0x00 | unknown | UNKNOWN | Model is not defined |
0x01 | 3DR | M3DR | Radio Model 3DR |
0x02 | RDFXXXxPtP | RDFXXXXPTP | Radio Model RDFXXXx point to point |
Message to handle telemetry transmissions.
Name | Abbreviation | Unit | Type | Description | Range |
---|---|---|---|---|---|
Type | type | Enumerated (Enum Type) | uint8_t | Type of telemetry transmissions. | Same as field type |
Request Identifier | req_id | - | uint32_t | The request identifier used to receive transmission updates. | Same as field type |
Time to live | ttl | s | uint16_t | Time, in seconds, which will be considered a non-transmitted message. | Same as field type |
Code | code | Enumerated (TelemetryMsg-enum-code) | uint8_t | Type of telemetry transmissions. | Same as field type |
Destination Identifier | destination | - | plaintext | The unique identifier of this message’s destination (e.g. lauv-xtreme-2, manta-0). | Same as field type |
Source Identifier | Source | - | plaintext | The unique identifier of this message’s destination (e.g. lauv-xtreme-2, manta-0). | Same as field type |
Acknowledge | acknowledge | Bitfield (Bitfield Acknowledge) | uint8_t | Type of telemetry transmissions. | Same as field type |
Status | status | Enumerated (TelemetryMsg-enum-status) | uint8_t | State of the transmitted message. | Same as field type |
Data | data | - | rawdata | Same as field type |
Type of telemetry transmissions.
Value | Name | Abbreviation | Description |
---|---|---|---|
0x01 | Tx | TX | Send telemetry data. |
0x02 | Rx | RX | Received telemetry data. |
0x03 | TxStatus | TXSTATUS | Status of transmitted data. |
Type of telemetry transmissions.
Value | Name | Abbreviation | Description |
---|---|---|---|
0x00 | Code unknown | CODE_UNK | Unknown code type |
0x01 | Code Report | CODE_REPORT | Concise representation of entire system state message. Payload message is a MessageList. |
0x02 | Code IMC | CODE_IMC | Payload message is INLINEMSG |
0x03 | Code raw | CODE_RAW | Payload message is in raw |
Type of telemetry transmissions.
Value | Name | Abbreviation | Description |
---|---|---|---|
0x00 | Not acknowledge | NAK | Message transmitted without acknowledged reception response |
0x01 | acknowledge | AK | Message transmitted with acknowledged reception response |
State of the transmitted message.
Value | Name | Abbreviation | Description |
---|---|---|---|
0x00 | Does not apply | NONE | - |
1 | Successfull transmission | DONE | - |
2 | Error while trying to transmit message | FAILED | - |
3 | Message has been queued for transmission | QUEUED | - |
4 | Message is currently being transmitted | TRANSMIT | - |
5 | Message’s TTL has expired. Transmition cancelled | EXPIRED | - |
6 | No more messages to be transmitted or received | EMPTY | - |
7 | Invalid address | INV_ADDR | - |
8 | Invalid transmission size | INV_SIZE | - |
Request data to be sent over a specified communication mean.
Name | Abbreviation | Unit | Type | Description | Range |
---|---|---|---|---|---|
Request Identifier | req_id | - | uint16_t | The unique identifier for this request. | Same as field type |
Communication Mean | comm_mean | Enumerated (Enum Communication Mean) | uint8_t | Communication mean to be used to transfer these data. | Same as field type |
Destination System | destination | - | plaintext | The name of the system where to send this message. | Same as field type |
Deadline | deadline | - | fp64_t | Deadline for message transmission (seconds since epoch). | Same as field type |
Range | range | m | fp32_t | The meaning of this field depends on the operation and is explained in the operation’s description. | Same as field type |
Data Mode | data_mode | Enumerated (Enum Data Mode) | uint8_t | Type of data to be transmitted. Abort and Range mode can only be used with comm_mean=ACOUSTIC | Same as field type |
Message Data | msg_data | - | message | Data to be transmitted if selected data_mode is INLINEMSG. | Same as field type |
Text Data | txt_data | - | plaintext | Data to be transmitted if selected data_mode is TEXT. | Same as field type |
Raw Data | raw_data | - | rawdata | Data to be transmitted if selected data_mode is RAW. | Same as field type |
Communication mean to be used to transfer these data.
Value | Name | Abbreviation | Description |
---|---|---|---|
0 | WiFi | WIFI | - |
1 | Acoustic | ACOUSTIC | - |
2 | Satellite | SATELLITE | - |
3 | GSM | GSM | - |
4 | Any | ANY | - |
5 | All | ALL | - |
Type of data to be transmitted. Abort and Range mode can only be used with comm_mean=ACOUSTIC
Value | Name | Abbreviation | Description |
---|---|---|---|
0 | Inline Message | INLINEMSG | - |
1 | Text | TEXT | - |
2 | Raw Data | RAW | - |
3 | Abort | ABORT | - |
4 | Range | RANGE | - |
5 | Reverse Range | REVERSE_RANGE | - |
Reply sent in response to a communications request.
Name | Abbreviation | Unit | Type | Description | Range |
---|---|---|---|---|---|
Request Identifier | req_id | - | uint16_t | Same as field type | |
Status | status | Enumerated (Enum Status) | uint8_t | Same as field type | |
Range | range | m | fp32_t | The meaning of this field depends on the operation and is explained in the operation’s description. | Same as field type |
Information | info | - | plaintext | Same as field type |
No description
Value | Name | Abbreviation | Description |
---|---|---|---|
0 | In progress | IN_PROGRESS | - |
1 | Sent | SENT | - |
51 | Delivered | DELIVERED | - |
52 | Delivery is unknown | MAYBE_DELIVERED | - |
60 | Range received | RANGE_RECEIVED | - |
101 | Input Error | INPUT_FAILURE | - |
102 | Temporary Error | TEMPORARY_FAILURE | - |
103 | Permanent Failure | PERMANENT_FAILURE | - |
104 | Invalid Address | INV_ADDR | - |
Request SMS Text sending.
Name | Abbreviation | Unit | Type | Description | Range |
---|---|---|---|---|---|
Request Identifier | req_id | - | uint16_t | Same as field type | |
Destination | destination | - | plaintext | Recipient identifier (number or name). | Same as field type |
Timeout | timeout | s | fp64_t | Period of time to send message (in seconds). | Same as field type |
SMS Text | sms_text | - | plaintext | Same as field type |
Reply sent in response to a SMS sending request.
Name | Abbreviation | Unit | Type | Description | Range |
---|---|---|---|---|---|
Request Identifier | req_id | - | uint16_t | Same as field type | |
Status | status | Enumerated (Enum Status) | uint8_t | Same as field type | |
Information | info | - | plaintext | Error description. | Same as field type |
No description
Value | Name | Abbreviation | Description |
---|---|---|---|
0 | Queued | QUEUED | - |
1 | Sent | SENT | - |
101 | Input Error | INPUT_FAILURE | - |
102 | Error trying to send sms | ERROR | - |
Request data to be sent over a TCP connection
Name | Abbreviation | Unit | Type | Description | Range |
---|---|---|---|---|---|
Request Identifier | req_id | - | uint16_t | Same as field type | |
Destination | destination | - | plaintext | Recipient identifier (number or name). | Same as field type |
Timeout | timeout | s | fp64_t | Period of time to send message (in seconds). | Same as field type |
Message Data | msg_data | - | message | IMC message to be transmitted . | Same as field type |
Reply sent in response to a TCP sending request.
Name | Abbreviation | Unit | Type | Description | Range |
---|---|---|---|---|---|
Request Identifier | req_id | - | uint16_t | Same as field type | |
Status | status | Enumerated (Enum Status) | uint8_t | Same as field type | |
Information | info | - | plaintext | Error description. | Same as field type |
No description
Value | Name | Abbreviation | Description |
---|---|---|---|
0 | Queued | QUEUED | - |
1 | Sent | SENT | - |
100 | Input Error | INPUT_FAILURE | - |
101 | Host Unknown | HOST_UNKNOWN | - |
102 | Can’t Connect | CANT_CONNECT | - |
103 | Error trying to send sms | ERROR | - |
Request creating a new session with this remote peer. Example session sequence is shown in the following diagram.
align: | center |
---|
Name | Abbreviation | Unit | Type | Description | Range |
---|---|---|---|---|---|
Session Timeout | timeout | - | uint32_t | Session timeout, in seconds. If no messages are received from the remote peer, the session will be closed after this ammount of seconds have ellapsed. | Same as field type |
Request closing of an ongoing session
Name | Abbreviation | Unit | Type | Description | Range |
---|---|---|---|---|---|
Session Identifier | sessid | - | uint32_t | Same as field type |
No description
Name | Abbreviation | Unit | Type | Description | Range |
---|---|---|---|---|---|
Session Identifier | sessid | - | uint32_t | Same as field type | |
Messages to subscribe | messages | - | plaintext | Comma-separated list of messages to subscribe. Example: “EstimatedState,EulerAngles,Temperature” | Same as field type |
Message exchanged to prevent a session from timing out
Name | Abbreviation | Unit | Type | Description | Range |
---|---|---|---|---|---|
Session Identifier | sessid | - | uint32_t | Same as field type |
Message transmitted periodically to inform the state of a communication session
Name | Abbreviation | Unit | Type | Description | Range |
---|---|---|---|---|---|
Session Identifier | sessid | - | uint32_t | Same as field type | |
Status | status | Enumerated (Enum Status) | uint8_t | Same as field type |
No description
Value | Name | Abbreviation | Description |
---|---|---|---|
1 | Established | ESTABLISHED | - |
2 | Closed | CLOSED | - |
No description
Name | Abbreviation | Unit | Type | Description | Range |
---|---|---|---|---|---|
Transmission Unique Id | uid | - | uint8_t | Same as field type | |
Fragment Number | frag_number | - | uint8_t | Same as field type | |
Total Number of fragments | num_frags | - | uint8_t | Same as field type | |
Fragment Data | data | - | rawdata | Same as field type |
This message is used to restrict the vehicle from using some communication means.
Name | Abbreviation | Unit | Type | Description | Range |
---|---|---|---|---|---|
Restricted Communication Means | restriction | Bitfield (Bitfield Restricted Communication Means) | uint8_t | The restricted communication means. | Same as field type |
Reason | reason | - | plaintext | Textual description for why this restriction is needed. | Same as field type |
The restricted communication means.
Value | Name | Abbreviation | Description |
---|---|---|---|
0x01 | Satellite | SATELLITE | - |
0x02 | Acoustic | ACOUSTIC | - |
0x04 | WiFi | WIFI | - |
0x08 | GSM | GSM | - |