forked from japskunk/OpenIPSC
-
Notifications
You must be signed in to change notification settings - Fork 2
/
README.hytera
91 lines (73 loc) · 2.95 KB
/
README.hytera
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
Hytera "Multi Site Connect" Protocol
Voice Packets 114 bytes Port 30001
Keepalive/Control? 60/102/146/162 bytes port 30000/30002
|------------------------------------------------------------------------|
| Hytera Voice UDP Payload |
|0 1 2 3 |
|0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 |
|------------------------------------------------------------------------|
|<4 BYTE><> <><ASCI> <---- AMBE+2 VOICE |
|------------------------------------------------------------------------|
cont...
|------------------------------------------------------------------------|
|3 4 5 6 7 |
|6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 |
|------------------------------------------------------------------------|
|----> <--SYNC --> <---- AMBE+2 VOICE ----> <> <gid ><sid > |
|------------------------------------------------------------------------|
OFFSET 0 - 3
"ZZZZ" = some form of special frame, seems to denote that the
packet is from a remote repeater(maybe master)
always denoted with pattern at offset 0x08
0xXXXX = Offset 18 - 19 "BBBB" or "1111"
the first 2 bytes are the port number e.g. 0x7531 = 30001
OFFSET 4
00 to FF = Voice Frame Sequence Number Looping
Does not Increment for Sync Frames
OFFSET 8
0x01 = Voice Frame
0x02 = Start Of Transmission or Sync Frame
0x03 = End of Transmission
0x41 = "A" as a part of "AZZZ"
0x42 = "B" as a part of "BZZZ"
0x43 = "C" as a part of "CZZZ"
OFFSET 9
"ZZZ" - only when the value at offset 8 is "A | B | C"
always associated with pattern at Offset 0x00 noted above
OFFSET 16 - 17
"1111" = Slot 1
"2222" = Slot 2
OFFSET 18 - 19
"DDDD" = Startup packet
"1111" = Startup packet
"EEEE" = Sync packet
"7777" = Voice packet
"8888" = Voice packet
"9999" = Voice packet
"AAAA" = Voice packet
"BBBB" = Voice packet
"CCCC" = Voice packet
"2222" = End of Transmission
Start of Transmission SEQUENCE: DDE1E1E1
Voice Sequence w/ Sync: 789AEBC
Voice Packets: 789ABC
OFFSET 20 - 21
"1111" - Always
OFFSET 22 - 23
"0000" - Not Sync Packet
"1111" - Sync Packet
OFFSET 38,40,42 ( Sync Packets Only )
Source Radio ID Bytes ( Big Endian )
OFFSET 26 - 38 plus high order nibble of 39 for 13.5 bytes
AMBE+2 1 of 2 VOICE AND DATA
OFFSET 39 low order nibble - 44 plus high order nibble of 45 for total of 6 bytes
DMR Sync frame between all VOICE / DATA Packets
OFFSET 45 - 58 (starts at low order nibble of 45 through 58 for 13.5 bytes
AMBE+2 2 of 2 VOICE AND DATA
OFFSET 62
0x00 = Private Call
0x01 = Group Call
OFFSET 64 - 66
Destination Group ID ( big endian )
OFFSET 67 - 69
Source ID ( little endian ) - First Byte Missing