libdrmconf  0.12.0
A library to program DMR radios.
Classes | Public Member Functions | Static Public Member Functions | Protected Types | Protected Member Functions | List of all members
DMR6X2UVCodeplug::APRSSettingsElement Class Reference

Represents the APRS settings within the binary DMR-6X2UV codeplug. More...

#include <dmr6x2uv_codeplug.hh>

Inheritance diagram for DMR6X2UVCodeplug::APRSSettingsElement:
Inheritance graph
[legend]
Collaboration diagram for DMR6X2UVCodeplug::APRSSettingsElement:
Collaboration graph
[legend]

Classes

struct  Limit
 Some static limits for this element. More...
 
struct  Offset
 Internal used offsets within the codeplug element. More...
 

Public Member Functions

 APRSSettingsElement (uint8_t *ptr)
 Constructor.
 
void clear ()
 Resets the settings.
 
bool isValid () const
 Returns true if the pointer is not null.
 
virtual Frequency fmFrequency () const
 Returns the FM APRS frequency.
 
virtual void setFMFrequency (Frequency f)
 Sets the FM APRS frequency.
 
virtual unsigned fmTXDelay () const
 Returns the TX delay in ms.
 
virtual void setFMTXDelay (unsigned ms)
 Sets the TX delay in ms.
 
virtual Signaling::Code txTone () const
 Returns the sub tone settings.
 
virtual void setTXTone (Signaling::Code code)
 Sets the sub tone settings.
 
virtual Interval manualTXInterval () const
 Returns the manual TX interval in seconds.
 
virtual void setManualTXInterval (Interval sec)
 Sets the manual TX interval in seconds.
 
virtual bool autoTX () const
 Returns true if the auto transmit is enabled.
 
virtual Interval autoTXInterval () const
 Returns the auto TX interval in seconds.
 
virtual void setAutoTXInterval (Interval sec)
 Sets the auto TX interval in seconds.
 
virtual void disableAutoTX ()
 Disables auto tx.
 
virtual bool fixedLocationEnabled () const
 Returns true if a fixed location is send.
 
virtual QGeoCoordinate fixedLocation () const
 Returns the fixed location send.
 
virtual void setFixedLocation (QGeoCoordinate &loc)
 Sets the fixed location to send.
 
virtual void disableFixedLocation ()
 Disables sending a fixed location.
 
virtual QString destination () const
 Returns the destination call.
 
virtual unsigned destinationSSID () const
 Returns the destination SSID.
 
virtual void setDestination (const QString &call, unsigned ssid)
 Sets the destination call & SSID.
 
virtual QString source () const
 Returns the source call.
 
virtual unsigned sourceSSID () const
 Returns the source SSID.
 
virtual void setSource (const QString &call, unsigned ssid)
 Sets the source call & SSID.
 
virtual QString path () const
 Returns the path string.
 
virtual void setPath (const QString &path)
 Sets the path string.
 
virtual APRSSystem::Icon icon () const
 Returns the APRS icon.
 
virtual void setIcon (APRSSystem::Icon icon)
 Sets the APRS icon.
 
virtual Channel::Power power () const
 Returns the transmit power.
 
virtual void setPower (Channel::Power power)
 Sets the transmit power.
 
virtual Interval fmPreWaveDelay () const
 Returns the pre-wave delay in ms.
 
virtual void setFMPreWaveDelay (Interval ms)
 Sets the pre-wave delay in ms.
 
virtual bool dmrChannelIsSelected (unsigned n) const
 Returns true if the channel points to the current/selected channel.
 
virtual unsigned dmrChannelIndex (unsigned n) const
 Returns the digital channel index for the n-th system.
 
virtual void setDMRChannelIndex (unsigned n, unsigned idx)
 Sets the digital channel index for the n-th system.
 
virtual void setDMRChannelSelected (unsigned n)
 Sets the channel to the current/selected channel.
 
virtual unsigned dmrDestination (unsigned n) const
 Returns the destination contact for the n-th system.
 
virtual void setDMRDestination (unsigned n, unsigned idx)
 Sets the destination contact for the n-th system.
 
virtual DMRContact::Type dmrCallType (unsigned n) const
 Returns the call type for the n-th system.
 
virtual void setDMRCallType (unsigned n, DMRContact::Type type)
 Sets the call type for the n-th system.
 
virtual bool dmrTimeSlotOverride (unsigned n)
 Returns true if the n-th system overrides the channel time-slot.
 
virtual DMRChannel::TimeSlot dmrTimeSlot (unsigned n) const
 Returns the time slot if overridden (only valid if timeSlot returns true).
 
virtual void setDMRTimeSlot (unsigned n, DMRChannel::TimeSlot ts)
 Overrides the time slot of the n-th selected channel.
 
virtual void clearDMRTimeSlotOverride (unsigned n)
 Clears the time-slot override.
 
virtual bool dmrRoaming () const
 Returns true if the roaming is enabled.
 
virtual void enableDMRRoaming (bool enable)
 Enables/disables roaming.
 
virtual Interval dmrPreWaveDelay () const
 Returns the the repeater activation delay in ms.
 
virtual void setDMRPreWaveDelay (Interval ms)
 Sets the repeater activation delay in ms.
 
virtual bool fromFMAPRSSystem (const APRSSystem *sys, Context &ctx, const ErrorStack &err=ErrorStack())
 Configures this APRS system from the given generic config.
 
virtual APRSSystemtoFMAPRSSystem ()
 Constructs a generic APRS system configuration from this APRS system.
 
virtual bool linkFMAPRSSystem (APRSSystem *sys, Context &ctx)
 Links the transmit channel within the generic APRS system based on the transmit frequency defined within this APRS system.
 
virtual bool fromDMRAPRSSystems (Context &ctx)
 Constructs all GPS system from the generic configuration.
 
virtual bool fromDMRAPRSSystemObj (unsigned int idx, GPSSystem *sys, Context &ctx)
 Encodes the given GPS system.
 
virtual GPSSystemtoDMRAPRSSystemObj (int idx) const
 Constructs a generic GPS system from the idx-th encoded GPS system.
 
virtual bool linkDMRAPRSSystem (int idx, GPSSystem *sys, Context &ctx) const
 Links the specified generic GPS system.
 
- Public Member Functions inherited from Codeplug::Element
 Element (const Element &other)
 Copy constructor.
 
virtual ~Element ()
 Destructor.
 
Elementoperator= (const Element &other)
 Copy assignment.
 
bool fill (uint8_t value, unsigned offset=0, int size=-1)
 Fills the memsets the entire element to the given value.
 
bool getBit (const Offset::BitOffset &offset) const
 Reads a specific bit at the given byte-offset.
 
bool getBit (unsigned offset, unsigned bit) const
 Reads a specific bit at the given byte-offset.
 
void setBit (const Offset::BitOffset &offset, bool value=true)
 Sets a specific bit at the given byte-offset.
 
void setBit (unsigned offset, unsigned bit, bool value=true)
 Sets a specific bit at the given byte-offset.
 
void clearBit (unsigned offset, unsigned bit)
 Clears a specific bit at the given byte-offset.
 
uint8_t getUInt2 (unsigned offset, unsigned bit) const
 Reads a 2bit unsigned integer at the given byte- and bit-offset.
 
void setUInt2 (unsigned offset, unsigned bit, uint8_t value)
 Stores a 2bit unsigned integer at the given byte- and bit-offset.
 
uint8_t getUInt3 (unsigned offset, unsigned bit) const
 Reads a 3bit unsigned integer at the given byte- and bit-offset.
 
void setUInt3 (unsigned offset, unsigned bit, uint8_t value)
 Stores a 3bit unsigned integer at the given byte- and bit-offset.
 
uint8_t getUInt4 (unsigned offset, unsigned bit) const
 Reads a 4bit unsigned integer at the given byte- and bit-offset.
 
void setUInt4 (unsigned offset, unsigned bit, uint8_t value)
 Stores a 4bit unsigned integer at the given byte- and bit-offset.
 
uint8_t getUInt5 (unsigned offset, unsigned bit) const
 Reads a 5bit unsigned integer at the given byte- and bit-offset.
 
void setUInt5 (unsigned offset, unsigned bit, uint8_t value)
 Stores a 5bit iunsinged nteger at the given byte- and bit-offset.
 
uint8_t getUInt6 (unsigned offset, unsigned bit) const
 Reads a 6bit unsigned integer at the given byte- and bit-offset.
 
void setUInt6 (unsigned offset, unsigned bit, uint8_t value)
 Stores a 6bit unsigned integer at the given byte- and bit-offset.
 
uint8_t getUInt8 (unsigned offset) const
 Reads a 8bit unsigned integer at the given byte- and bit-offset.
 
void setUInt8 (unsigned offset, uint8_t value)
 Reads a 8bit unsigned integer at the given byte- and bit-offset.
 
int8_t getInt8 (unsigned offset) const
 Reads a 8bit signed integer at the given byte- and bit-offset.
 
void setInt8 (unsigned offset, int8_t value)
 Reads a 8bit signed integer at the given byte- and bit-offset.
 
uint16_t getUInt16_be (unsigned offset) const
 Reads a 16bit big-endian unsigned integer at the given byte-offset.
 
uint16_t getUInt16_le (unsigned offset) const
 Reads a 16bit little-endian unsigned integer at the given byte-offset.
 
void setUInt16_be (unsigned offset, uint16_t value)
 Stores a 16bit big-endian unsigned integer at the given byte-offset.
 
void setUInt16_le (unsigned offset, uint16_t value)
 Stores a 16bit little-endian unsigned integer at the given byte-offset.
 
uint32_t getUInt24_be (unsigned offset) const
 Reads a 24bit big-endian unsigned integer at the given byte-offset.
 
uint32_t getUInt24_le (unsigned offset) const
 Reads a 24bit little-endian unsigned integer at the given byte-offset.
 
void setUInt24_be (unsigned offset, uint32_t value)
 Stores a 24bit big-endian unsigned integer at the given byte-offset.
 
void setUInt24_le (unsigned offset, uint32_t value)
 Stores a 24bit little-endian unsigned integer at the given byte-offset.
 
uint32_t getUInt32_be (unsigned offset) const
 Reads a 32bit big-endian unsigned integer at the given byte-offset.
 
uint32_t getUInt32_le (unsigned offset) const
 Reads a 32bit little-endian unsigned integer at the given byte-offset.
 
void setUInt32_be (unsigned offset, uint32_t value)
 Stores a 32bit big-endian unsigned integer at the given byte-offset.
 
void setUInt32_le (unsigned offset, uint32_t value)
 Stores a 32bit little-endian unsigned integer at the given byte-offset.
 
uint64_t getUInt64_be (unsigned offset) const
 Reads a 64bit big-endian unsigned integer at the given byte-offset.
 
uint64_t getUInt64_le (unsigned offset) const
 Reads a 64bit little-endian unsigned integer at the given byte-offset.
 
void setUInt64_be (unsigned offset, uint64_t value)
 Stores a 64bit big-endian unsigned integer at the given byte-offset.
 
void setUInt64_le (unsigned offset, uint64_t value)
 Stores a 64bit little-endian unsigned integer at the given byte-offset.
 
uint8_t getBCD2 (unsigned offset) const
 Reads a 2-digit (1-byte/8bit) BDC value in big-endian at the given byte-offset.
 
void setBCD2 (unsigned offset, uint8_t value)
 Stores a 2-digit (1-byte/8bit) BDC value in big-endian at the given byte-offset.
 
uint16_t getBCD4_be (unsigned offset) const
 Reads a 4-digit (2-byte/16bit) BDC value in big-endian at the given byte-offset.
 
void setBCD4_be (unsigned offset, uint16_t value)
 Stores a 4-digit (2-byte/16bit) BDC value in big-endian at the given byte-offset.
 
uint16_t getBCD4_le (unsigned offset) const
 Reads a 4-digit (2-byte/16bit) BDC value in little-endian at the given byte-offset.
 
void setBCD4_le (unsigned offset, uint16_t value)
 Stores a 4-digit (1-byte/16bit) BDC value in little-endian at the given byte-offset.
 
uint32_t getBCD8_be (unsigned offset) const
 Reads a 8-digit (4-byte/32bit) BDC value in big-endian at the given byte-offset.
 
void setBCD8_be (unsigned offset, uint32_t value)
 Stores a 8-digit (4-byte/32bit) BDC value in big-endian at the given byte-offset.
 
uint32_t getBCD8_le (unsigned offset) const
 Reads a 8-digit (4-byte/32bit) BDC value in little-endian at the given byte-offset.
 
void setBCD8_le (unsigned offset, uint32_t value)
 Stores a 8-digit (4-byte/32bit) BDC value in little-endian at the given byte-offset.
 
QString readASCII (unsigned offset, unsigned maxlen, uint8_t eos=0x00) const
 Reads up to maxlen ASCII chars at the given byte-offset using eos as the string termination char.
 
void writeASCII (unsigned offset, const QString &txt, unsigned maxlen, uint8_t eos=0x00)
 Stores up to maxlen ASCII chars at the given byte-offset using eos as the string termination char. More...
 
QString readUnicode (unsigned offset, unsigned maxlen, uint16_t eos=0x0000) const
 Reads up to maxlen unicode chars at the given byte-offset using eos as the string termination char.
 
void writeUnicode (unsigned offset, const QString &txt, unsigned maxlen, uint16_t eos=0x0000)
 Stores up to maxlen unicode chars at the given byte-offset using eos as the string termination char. More...
 

Static Public Member Functions

static constexpr unsigned int size ()
 The size of the element.
 

Protected Types

enum class  SignalingType { Off =0 , CTCSS =1 , DCS =2 }
 Possible settings for the FM APRS subtone type.
 

Protected Member Functions

 APRSSettingsElement (uint8_t *ptr, unsigned size)
 Hidden constructor.
 
- Protected Member Functions inherited from Codeplug::Element
 Element (uint8_t *ptr, size_t size)
 Hidden constructor. More...
 

Additional Inherited Members

- Protected Attributes inherited from Codeplug::Element
uint8_t * _data
 Holds the pointer to the element.
 
size_t _size
 Holds the size of the element.
 

Detailed Description

Represents the APRS settings within the binary DMR-6X2UV codeplug.

Memory layout of APRS settings (size 0x00a0 bytes):

     7   6   5   4   3   2   1   0   7   6   5   4   3   2   1   0   7   6   5   4   3   2   1   0   7   6   5   4   3   2   1   0
   +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
00 | Unknown, set to 0x000         | TX frequency as 8 digit BDC, big-endian in 10Hz (unused)                                   ...
   +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
04  ...                            | FM APRS TX delay in 20ms      | Signaling type                | CTCSS tone                    |
   +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
08 | DCS code, little-endian                                       | Manual TX interval in seconds | Auto TX interval in 30s       |
   +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
0c | FM APRS Monitor enable        | Fixed location flag           | Latitude degrees              | Latitude minutes              |
   +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
10 | Latitude seconds              | South flag                    | Longitude degrees             | Longitude minutes             |
   +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
14 | Longitude seconds             | West flag                     | Destination call, 6 x ASCII, 0-padded                      ...
   +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
18  ...                                                                                                                            |
   +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
1c | Destination SSID              | Source call, 6 x ASCII, 0-padded                                                           ...
   +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
20  ...                                                                                            | Source SSID                   |
   +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
24 | Path, 20 x ASCII, 0-padded                                                                                                 ...
   +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
    ...                                                                                                                         ...
   +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
34  ...                                                                                                                            |
   +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
38 | Unused set to 0x00            | ASCII APRS Symbol Table       | ASCII APRS Map Icon           | Transmit power                |
   +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
3c | Prewave delay in 10ms         | Unknown set to 0x01           | Unknown set to 0x03           | Unknown set to 0xff           |
   +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
40 | DMR APRS Sys 0 channel index, uint16, litte-endian            | DMR APRS Sys 1 channel index, uint16, litte-endian            |
   +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
44 | DMR APRS Sys 2 channel index, uint16, litte-endian            | DMR APRS Sys 3 channel index, uint16, litte-endian            |
   +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
48 | DMR APRS Sys 4 channel index, uint16, litte-endian            | DMR APRS Sys 5 channel index, uint16, litte-endian            |
   +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
4c | DMR APRS Sys 6 channel index, uint16, litte-endian            | DMR APRS Sys 7 channel index, uint16, litte-endian            |
   +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
50 | DMR APRS Sys 0 destination ID, 8-digit BCD, big-endian                                                                        |
   +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
54 | DMR APRS Sys 1 destination ID, 8-digit BCD, big-endian                                                                        |
   +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
58 | DMR APRS Sys 2 destination ID, 8-digit BCD, big-endian                                                                        |
   +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
5c | DMR APRS Sys 3 destination ID, 8-digit BCD, big-endian                                                                        |
   +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
60 | DMR APRS Sys 4 destination ID, 8-digit BCD, big-endian                                                                        |
   +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
64 | DMR APRS Sys 5 destination ID, 8-digit BCD, big-endian                                                                        |
   +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
68 | DMR APRS Sys 6 destination ID, 8-digit BCD, big-endian                                                                        |
   +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
6c | DMR APRS Sys 7 destination ID, 8-digit BCD, big-endian                                                                        |
   +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
70 | DMR APRS Sys 0 call type      | DMR APRS Sys 1 call type      | DMR APRS Sys 2 call type      | DMR APRS Sys 3 call type      |
   +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
74 | DMR APRS Sys 4 call type      | DMR APRS Sys 5 call type      | DMR APRS Sys 6 call type      | DMR APRS Sys 7 call type      |
   +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
78 | Enable roaming support        | DMR APRS Sys 0 time slot      | DMR APRS Sys 1 time slot      | DMR APRS Sys 2 time slot      |
   +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
7c | DMR APRS Sys 3 time slot      | DMR APRS Sys 4 time slot      | DMR APRS Sys 5 time slot      | DMR APRS Sys 6 time slot      |
   +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
80 | DMR APRS Sys 7 time slot      | DMR APRS pre-wave delay       | Unknown                                                    ...
   +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
    ...                                                                                                                         ...
   +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
8c  ...                                                                                                                            |
   +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+

Field description:
 - FM APRS TX Frequency 8 digit BCD big endian in 10Hz.
 - FM APRS TX delay: 0=0ms, 1=20ms, ..., 255=5100ms
 - Signaling type: 0=off, 1=CTCSS, 2=DCS, default=off
 - CTCSS Tone:  0= 61.2Hz,  1= 67.0Hz,  2= 69.3Hz,  3= 71.9Hz,  4= 74.4Hz,  5= 77.0Hz,  6= 79.7Hz,
                7=82.5Hz,   8= 85.4Hz,  9= 88.5Hz, 10= 91.5Hz, 11= 94.8Hz, 12= 97.4Hz, 13=100.0Hz,
               14=103.5Hz, 15=107.2Hz, 16=110.9Hz, 17=114.8Hz, 18=118.8Hz, 19=123.0Hz, 20=127.3Hz,
               21=131.8Hz, 22=136.5Hz, 23=141.3Hz, 24=146.2Hz, 25=151.4Hz, 26=156.7Hz, 27=159.8Hz,
               28=162.2Hz, 29=165.5Hz, 30=167.9Hz, 31=171.3Hz, 32=173.8Hz. 33=179.9Hz, 34=183.5Hz,
               35=186.2Hz, 36=189.9Hz, 37=192.8Hz, 38=196.6Hz, 39=199.5Hz, 40=203.5Hz, 41=206.5Hz,
               42=210.7Hz, 43=218.1Hz, 44=225.7Hz, 45=229.1Hz, 46=233.6Hz, 47=241.8Hz, 48=250.3Hz,
               49=254.1Hz
 - Path: 20 x ASCII, 0-padded path string. Format is comma-separated CALL1-SSID,CALL2-SSID,...
 - DMR APRS Sys N channel index: uint16 channel index, 0-based, little-endian, [0,4000],
      0x0fa0=VFO A, 0x0fa1=VFO B, 0x0fa2=Selected
 - DMR APRS Sys N time slot: 0 = Channel, 1 = Timeslot 1, 2 = Timeslot 2
 - Transmit power: 0=low, 1=mid, 2=high, 3=turbo.
 - FM prewave delay: in multiples of 10ms [0,2550ms], default=0ms.
 - Manual TX interval: n+1 seconds. [0,255], default=0s
 - Auto TX interval: 0=Off, 1=30s, ..., 255=7650s, default=off
 - FM APRS Monitor enable: If enabled, the radio will monitor send FM APRS transmissions. default=off
 - Rep. activation delay: 0=Off, 1=100ms, ..., 10=1000ms.
 - APRS display time: 0=3s, 1=4s, ..., 12=15s, 13=infinite, default=3s
 - RPO: Report position flag.
 - RME: Report MIC-E flag.
 - ROB: Report object flag.
 - RIT: Report item flag.
 - RMS: Report message flag.
 - RWX: Report weather flag.
 - RNF: Report NEMA flag.
 - RST: Report status flag.
 - ROF: Report other flag.
 - FM APRS width: 0=narrow, 1=wide.
 - Pass all: 0=Off, 1=On, no idea.

The documentation for this class was generated from the following files: