Proposed Application Type specification for Class user i.d.= 016
Please refer to the forum Class User Id: 016 NATO JANUS reference Implementation - Forum
016 - 00
Application Fields
Name | Type | Descriptor
| |
Station Identifier | Integer | Acoustic ID of transmitter | |
Parameter Set Identifier | Integer | Transmitter capabilities enumeration or bitmask | |
Payload Size | Integer | Size in bytes of the payload | |
Payload | Text/Binary | Message content |
Note: The Parameter Set Identifier field is yet to be defined.
Application Data Block
Bits | Descriptor | 0/1 bit set | Comments
|
25 - 18 | Station Identifier | 00000000 : 11111111 | Station identifier of sender |
17 - 6 | Parameter Set | 000000000000 : 111111111111 | Encoded parameter set |
5 - 0 | Payload Size | 000000 : 111111 | Size of Cargo encoded |
In order to save bits, and allow for a Cargo size bigger than 64 bits (the 6 bits of the "Payload Size" only provide 2^6=64 combinations), a custom mapping between the Payload Size bit pattern and the actual size of the encoded Cargo was developed. The Payload Size is encoded as:
Payload Size Range | Encoded Value | Actual Cargo Size | |
0 ~ 2 | Payload Size | Payload Size | |
3 ~ 4 | 3 | 4 | |
5 ~ 480 | 4 + (Payload Size - 1 - mod(Payload Size - 1, 8)) / 8 | Payload Size - 1 - mod(Payload Size - 1, 8)+8 |
The increased range of the Cargo size (0 to 480 bits) comes with a loss of granularity in the available sizes. It allows for the sizes 0,1,2,4, and starting from 8, only multiples of 8 are available. E.g.: 0,1,2,4, 8, 16, 24, 32, 40,...,472,480.
016 - 01
Application Fields
Name | Type | Descriptor
| |
Station_Identifier | Integer | Acoustic ID of transmitter | |
Destination_Identifier | Integer | Acoustic ID of end receiver | |
Ack_Request | Boolean | Request of acknowledgement from the end receiver | |
Payload_Size | integer | Size in bytes of the payload | |
Payload | Text/Binary | Message content |
Application Data Block
Bits | Descriptor | 0/1 bit set | Comments
|
25 - 18 | Station Identifier | 00000000: 11111111 | Station identifier of sender |
17 - 10 | Destination Identifier | 00000000: 11111111 | Station identifier of selected receiver |
9 | Ack_Request | 0= No Req, 1= Ack Req | Request of acknowledgement from the end receiver |
8 - 0 | Payload Size | 000000000: 111111111 | Size of the cargo: payload size plus 2 Bytes for the CRC16 |
Cargo will be composed by the payload followed by a 2 bytes CRC16 (X^16 + X^15 + X^2 + 1) Full description of CRC16