You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
ADN-DMR-Peer-Server/docs/en/server/protocols/dmre-v5.md

1.4 KiB

DMRE v5 frame layout

This page describes the OpenBridge DMRE wire format when the embedded protocol version is 5 (often called “OpenBridge v5” in operator docs — same as DMRE v5; see OpenBridge).

Extended OpenBridge datagrams use the DMRE opcode (bytes D,M,R,E) and a version field. When the embedded version byte is > 4, the packet is 89 bytes with hops at byte 72 and BLAKE2b from 73 to 89.

Short form (85 bytes)

When the embedded version is ≤ 4, source repeater is omitted; hops and MAC shift (see implementation in udp_hbp.py).

Field summary (89-byte v5)

Region Content
0:4 Opcode DMRE
4:5 Sequence
5:8 RF source
8:11 Destination ID
11:15 Server ID
15:16 Bits (slot, call type, frame type, dtype/vseq)
16:20 Stream ID
20:53 Voice payload
53:55 BER, RSSI
55:56 Embedded protocol version
56:64 Timestamp (ns, big-endian)
64:68 Source server ID
68:72 Source repeater (v5 extended)
72:73 Hops
73:89 BLAKE2b MAC (16 bytes)

Integrity: BLAKE2b-128 with the passphrase as key; MAC covers bytes before the MAC field.

The byte layout in code (infrastructure/twisted_adapters/udp_hbp.py) is authoritative and may gain minor clarifications over time.

Powered by TurnKey Linux.