User's Manual

Protocol Operation
Crescendo UHF Half-Duplex User Manual Page 40 of 78
6.7 Distributed Network Protocol (DNP)
The Crescendo supports the Distributed Network Protocol (DNP) as defined by the DNP Users Group
(http://www.dnp.org/). The packet structure for a DNP packet expected on the serial port is shown below.
Start
0x0564
Destination
(16)
Source
(16)
CRC
(16)
Data
(016)
Len
(8)
Ctrl
(8)
CRC
(16)
Figure 9: DNP packet format
Start (16-bit): A fixed start of packet marker, always 0x0564.
Len (8-bit): The length of the packet, including all fields except Start, Length, and CRC.
Ctrl (8-bit): Defines the control information for the packet.
Destination (16-bit): The 16-bit destination address. This can be any singlecast address, or the
broadcast address.
Source (16-bit): The 16-bit source address. When sending a packet to a radio, this field does not
need to be set.
Data: The fixed length header block is followed by optional data blocks of up to 16 bytes.
CRC (16-bit): A 16-bit CRC value calculated over the previous fields, excluding the CRC fields.
The CRC uses the polynomial 0xA6BC.
6.8 Datagram Protocol
When using the datagram protocol, packets are passed to the Crescendo to be transmitted over the air. The
packet format is given in Figure 10.
Start
0xC1
Destination
(16)
Source
(16)
DP
(2)
CRC
(32)
Data
(1…Slot Size)
SP
(2)
Res.
(4)
Length
(16)
Figure 10: Datagram protocol packet format
Note that the number of data bytes in a datagram packet must be no more than max packet size. The fields of
a datagram packet are:
Start (8-bit): A fixed start of packet marker, always 0xC1.
Length (16-bit): The length of the packet, including all fields except Start, Length, and CRC.
Destination (16-bit): The 16-bit destination address. This can be any singlecast address, or the
broadcast address. The destination cannot be the same as the radios source address.
Source (16-bit): The 16-bit source address. When sending a packet to a radio, this field does not
need to be set. The source will automatically be set to the radio’s local address.
Main -> Protocol -> DNP
Main -> Protocol -> Datagram