| F | E | D | C | B | A | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Direction | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Request Type | |||
| Value | Direction |
|---|---|
| 0 | Send |
| 1 | Receive |
| Value | Request type |
|---|---|
| 0 | Normal termination |
| 1 | No data |
| 2 | Currently unavailable |
| 3 | GW registration request |
| 4 | GW registration failure |
| Value | Query |
|---|---|
| 0 | None |
| 1 | Update terminal location information |
| 2 | Inquiry using the terminal call sign as a key |
| 3 | Inquiry using device IP as key |
| 4 | Inquiry using an area repeater as a key |
| 5 | Inquiry using a zone repeater as a key |
| 6 | Register GW's IP address |
| 7 | None |
Reserved and set to 0x00
[ Query ID ][Flags][Command][Version][Reserved][Inquiry callsign] 2B 1B 1B 1B 2B 8B
[Query ID ][Flags][Command][Version][Reserved][Inquiry callsign][Zone RPT CS][Area RPT Callsign][GW IP address][Device IP address]
2B 1B 1B 1B 2B 8B 8B 8B 4B 4B
[ Query ID ][Flags][Command][Version][Reserved][Inquiry IP] 2B 1B 1B 1B 2B 4B
[Query ID ][Flags][Command][Version][Reserved][Inquiry callsign][Zone RPT CS][Area RPT Callsign][GW IP address][Device IP address]
2B 1B 1B 1B 2B 8B 8B 8B 4B 4B
[ Query ID ][Flags][Command][Version][Reserved][Inquiry IP] 2B 1B 1B 1B 2B 4B
[Query ID ][Flags][Command][Version][Reserved][Inquiry callsign][Zone RPT CS][Area RPT Callsign][GW IP address][Dummy bit]
2B 1B 1B 1B 2B 8B 8B 8B 4B 4B
[Query ID][Flags][Command][Version][Reserved][Inquiry IP] 2B 1B 1B 1B 2B 4B
[Query ID][Flags][Command][Version][Reserved][Inquiry callsign][Zone RPT CS][Area RPT Callsign][GW IP address][Dummy bit]
2B 1B 1B 1B 2B 8B 8B 8B 4B 4B
Sends a rewrite request to the management server at the start of a call (until you press and release PTT). After that, if there is no change to the information, it can be omitted.
[Query ID][Flags][Command][Version][Reserved][Mobile terminal CS]
2B 1B 1B 1B 2B 4B
Use this when the mobile terminal call sign is registered in the management server. If the mobile terminal callsign is registered and the zone repeater and area repeater are not registered, the management server should additionally register these callsigns. Do not specify spaces.
[Query ID][Flags][Command][Version][Reserved][Mobile term CS][Zone RPT CS][Area RPT Callsign][GW IP address]
2B 1B 1B 1B 2B 8B 8B 8B 4B
[Query ID][Flags][Command][Version][Reserved][Zone RPT CS]
2B 1B 1B 1B 2B 4B
Caution Use this request only when it is registered as a GW zone repeater on the management server.
[Query ID][Flags][Command][Version][Reserved][Mobile term CS][Zone RPT CS][GW IP address]
2B 1B 1B 1B 2B 8B 8B 4B
If GW is not registered as a zone repeater, the server returns 4 as an error code
When accessing through the GW from a station on the Internet to the terminal radio station, the use of transfer Chapter 8 of the packet. When using software with a GW function, follow the procedure in 5.2 “Communication between the GW of the calling station zone repeater station and the GW of the partner station zone repeater station”.
When connecting to an existing JARL D-STAR network, obtain JARL verification and approval to ensure consistency with the existing network. Also, use the query ID assigned by JARL.
Packet communication between the zones repeater and GW is constructed as follows. The contents of the management data and trunk header of each packet are as follows.
It is possible to specify different port numbers for transmission and reception.
M = magic number (2 bytes)
An arbitrary numerical value that differs for each packet, which is used to identify the packet sent in the communication between the zone repeater and the GW, used to confirm this value was returned and has arrived.
SR = Direction identification (1 byte)
| Value | Type |
|---|---|
| 'r' (0x72) | Receive |
| 's' (0x73) | Send |
C = Command identifier (1 byte)
| Value | Type |
|---|---|
| 0x00 | Dummy connection check |
| 0x01 | Reserved |
| 0x10 | Reserved |
| 0x11 | Data communication (DD) packet |
| 0x12 | Voice communication (DV) packet |
| 0x20 | Reserved |
| 0x21 | Terminal location information update |
L = data length (2 bytes)
The length of the payload after this field.
The contents of the trunk line header are as follows.
| Value | Type |
|---|---|
| 01000000 | Data communication |
| 00100000 | Voice communication |
| 11100000 | Reserved |
Repeater ID: Number of repeater sites in the same zone
Terminal ID: Number of repeater in the same repeater within the site
Note: For a response, set the source terminal ID to 0xff.
Call ID: during one call (until you press and release PTT), set the same ID. Do not overlap with other IDs. (Usually use random numbers.)
C (command indicator) bit field: indicates a command packet (see "Packet Forward" for details).
Bit field content
GZIIXFII
| Letter | Fields |
|---|---|
| G | FORWARD packet gateway-to / gateway packet flag |
| Z | FORWARD packet zone repeater to / zone repeater packet flag |
| X | Control commands for xchange from FORWARD port |
| F | Packets from other FORWARD ports |
| I | Defined in the old specifications (used by Icom's dsgwd and ID-RP2C) |
Note: These bits are not used in the Icom specifications. For xchange, to dsgwd and ID-RP2C, packets should be forwarded with these bits cleared.
If a packet from the FORWARD port has these bits set, it indicates the packet from the corresponding bit.
If these bits are set in the packet to the FORWARD port, it will be sent to each port. Also, for reforwarded packets from a FORWARD port to another FORWARD port, set the second bit. (See description above),
In the communication between the zone repeater and the GW, M (magic number) and SR (transmission / reception identification) are used to confirm the communication.
The transmitting side sets the transmission sequence number in M, sets s in SR, then transmits.
The receiving side compares the transmission sequence number received this time with the transmission sequence number received immediately before, confirms that there is no omission, the number received in M, r in SR, the received value in C, and L. Set to zero and send confirmation information.
After receiving this confirmation information, the transmitting side increments M by one and transmits the next information.
["DSTR"][M ][SR][C (0x00)][L ] 4B 2B 1B 1B 2B
["DSTR"][M ][SR][C (0x11)][L ][Trunk HDR][Wireless header][Data][FCS] 4B 2B 1B 1B 2B 7B Cf. Note below
Data signals excluding bit synchronization and frame synchronization signals.
Trunk Header
[0b01000000][DST repeater ID][Snd repeater ID][Snd terminal ID][Dummy][Dummy][Mgmt info]
1B 1B 1B 1B 1B 1B 1B
["DSTR"][M ][SR][C (0x12)][L ][Trunk HDR][OTA Voice frame] 4B 2B 1B 1B 2B 7B Cf. Note below
Excludes bit synchronization and frame synchronization signals
Trunk header
[0b00100000][DST repeater ID][Snd repeater ID][Snd terminal ID][Call ID (high byte)][Call ID (low byte)][Mgmt info]
1B 1B 1B 1B 1B 1B 1B
["DSTR"][M ][SR][C (0x12)][L ][Trunk HDR][OTA Voice frame][OTA Data frame] 4B 2B 1B 1B 2B 7B 9B 3B (cf. note below)
The last data frame will be the last frame
Trunk header
[0b00100000][DST repeater ID][Snd repeater ID][Snd terminal ID][Call ID (high byte)][Call ID (low byte)][Mgmt info]
1B 1B 1B 1B 1B 1B 1B
Identification of voice packets in one communication (2byte 16bit), assigning the same number to multiple packets in the same communication with random numbers.
The same communication is one communication by PTT.
| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
|---|---|---|---|---|---|---|---|
| Frame type | Error | Voice packet sequence number | |||||
| Value | Frame type |
|---|---|
| 00 | Voice communication data section |
| 01 | Same as above Data section (last frame) |
| 10 | Voice communication wireless header |
| 11 | Reserved |
| Value | Error |
|---|---|
| 0 | Normal |
| 1 | Header error |
Voice packet sequence number is sequentially allocated to voice packets (from 0 to 20).
Considering that packet loss of the voice header will occur, insert the radio header every 21 times of the voice data (immediately before the voice data in which the resynchronization signal is inserted). However, the audio data transmission interval should be maintained at 20 milliseconds.
Also, if the receiving side has already received the wireless header, discard the subsequent wireless header.
["DSTR"][M ][SR][C (0x01)][L ][Error Data] 4B 2B 1B 1B 2B
["DSTR"][M ][SR][C (0x21)][L ][Terminal CS][Area repeater CS] 4B 2B 1B 1B 2B 8B 8B
["INIT"][M ][SR][C (0x00)][L ] 4B 2B 1B 1B 2B
Used to synchronize the value of M (magic number) between GW and zone repeater.
["DSLG"][Log record Nbr][Log sender CS][Log record][...][Log record] 4B 4B 8B 64B 64B
["DSDT"][Packet length][Trunk HDR][Wireless header][Data][FCS] 4B 2B 7B ----- Read note below -----
DD signals excluding bit synchronization and frame synchronization signals
If this frame is over 1500 bytes, fragment it.
["DSVT"][Packet length][Reserved][Trunk HDR][Wireless digital voice frame] 4B 2B 2B 7B ----- Read note below -----
Excludes bit synchronization and frame synchronization signals Radio header
["DSVT"][Packet length][Reserved][Trunk HDR][Voice frame][Data frame] 4B 2B 2B 7B --- Read note below ---
Excludes bit synchronization and frame synchronization signals
| F | E | D | C | B | A | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Payload type | Reserved | Hole | |||||||||||||
| Value | Type |
|---|---|
| 0001 | Radio voice packet |
| 0010 | Data packet |
| Value | Hole |
|---|---|
| 0 | Hole punch OFF |
| 1 | Hole punch ON |
When the hole punch bit of the received DV header (wireless header) packet is set, the source terminal call sign is used. When sending to the source GW IP address, the source UDP port number is used as the remote port.