|
LibDMRConf
0.5.0
A library to program DMR radios.
|
Represents a configured channel within the codeplug. More...
#include <rd5r_codeplug.hh>
Public Types | |
| enum | Mode { MODE_ANALOG = 0, MODE_DIGITAL = 1 } |
| Possible channel types. More... | |
| enum | Admit { ADMIT_ALWAYS = 0, ADMIT_CH_FREE = 1, ADMIT_COLOR = 2 } |
| Possible admit criteria. More... | |
| enum | PrivacyGroup { PRIVGR_NONE = 0, PRIVGR_53474C39 = 1 } |
| Possible privacy groups, not used in ham radio. More... | |
| enum | Bandwidth { BW_12_5_KHZ = 0, BW_25_KHZ = 1 } |
| Bandwidth of channel. More... | |
| enum | Power { POWER_HIGH = 1, POWER_LOW = 0 } |
| Transmit power for channel. More... | |
Public Member Functions | |
| channel_t () | |
| Constructor. | |
| bool | isValid () const |
Returns true if the channel is valid. | |
| void | clear () |
| Clears the channel settings. | |
| double | getRXFrequency () const |
| Returns the RX frequency in MHz. | |
| void | setRXFrequency (double f) |
| Sets the RX frequency in MHz. | |
| double | getTXFrequency () const |
| Returns the TX frequency in MHz. | |
| void | setTXFrequency (double f) |
| Sets the TX frequency in MHz. | |
| QString | getName () const |
| Returns the channel name. | |
| void | setName (const QString &name) |
| Sets the channel name. | |
| Signaling::Code | getRXTone () const |
| Returns the CTCSS RX tone. | |
| void | setRXTone (Signaling::Code code) |
| Sets the CTCSS RX tone. | |
| Signaling::Code | getTXTone () const |
| Returns the CTCSS TX tone. | |
| void | setTXTone (Signaling::Code code) |
| Sets the CTCSS TX tone. | |
| Channel * | toChannelObj () const |
Constructs a Channel object from this codeplug channel. | |
| void | fromChannelObj (const Channel *c, const Config *conf) |
Resets this codeplug channel from the given Channel object. | |
| bool | linkChannelObj (Channel *c, const CodeplugContext &ctx) const |
Links a previously constructed Channel object to other object within the generic configuration, for example scan lists etc. | |
Public Attributes | |
| uint8_t | name [16] |
| Channel Name 16 x ASCII 0xff terminated. | |
| uint32_t | rx_frequency |
| RX Frequency, 8 digits BCD. | |
| uint32_t | tx_frequency |
| TX Frequency, 8 digits BCD. | |
| uint8_t | channel_mode |
| Mode analog or digital. | |
| uint16_t | _unused25 |
| Unknown set to 0. | |
| uint8_t | tot |
| TOT x 15sec, [0,33], 0-Infinite. | |
| uint8_t | tot_rekey_delay |
| TOT Rekey Delay in seconds [0,255]. | |
| uint8_t | admit_criteria |
| Admit Criteria, Always, Channel Free or Color Code. | |
| uint8_t | _unused30 |
| Unknown set to 0x50. | |
| uint8_t | scan_list_index |
| Scan List index + 1, 0=None. | |
| uint16_t | ctcss_dcs_receive |
| CTCSS/DCS decode, 4 digits BCD or 0xffff=disabled. | |
| uint16_t | ctcss_dcs_transmit |
| CTCSS/DCS encode, 4 digits BCD or 0xffff=disabled. | |
| uint8_t | _unused36 |
| Unkown set to 0. | |
| uint8_t | tx_signaling_syst |
| TX signaling system index+1, 0=Off. | |
| uint8_t | _unused38 |
| Unknown set to 0. | |
| uint8_t | rx_signaling_syst |
| RX signaling system index+1, 0=Off. | |
| uint8_t | _unused40 |
| Unknown set to 0x16. | |
| uint8_t | privacy_group |
| Privacy Group, 0=None, 1=53474c39. | |
| uint8_t | colorcode_tx |
| Transmit color code [0,15]. | |
| uint8_t | group_list_index |
| RX group list index+1, 0=None. | |
| uint8_t | colorcode_rx |
| Receive color code [0,15]. | |
| uint8_t | emergency_system_index |
| Emergency system index+1, 0=None. | |
| uint16_t | contact_name_index |
| Transmit contact index+1. | |
| uint8_t | _unused48_0: 6 |
| Unknown, set to 0. | |
| uint8_t | emergency_alarm_ack: 1 |
| Emergency alarm ACK. | |
| uint8_t | data_call_conf: 1 |
| Data call confirmed. | |
| uint8_t | private_call_conf: 1 |
| Private call confirmed. | |
| uint8_t | _unused49_1: 3 |
| Unknown, set to 0. | |
| uint8_t | privacy: 1 |
| Privacy: Off or On. | |
| uint8_t | _unused49_5: 1 |
| Unknown set to 0. | |
| uint8_t | repeater_slot2: 1 |
| Repeater time slot, 0=slot1 or 1=slot2. | |
| uint8_t | _unused49_7: 1 |
| Unknown set to 0. | |
| uint8_t | dcdm: 1 |
| Dual capacity direct mode enable. | |
| uint8_t | _unused50_1: 4 |
| Unknown set to 0. | |
| uint8_t | non_ste_frequency: 1 |
| Non STE = Frequency. | |
| uint8_t | _unused50_6: 2 |
| Unknown set to 0. | |
| uint8_t | _unused51_0: 1 |
| Unknown set to 0. | |
| uint8_t | bandwidth: 1 |
| Bandwidth 12.5 or 25 kHz. | |
| uint8_t | rx_only: 1 |
| RX only enable. | |
| uint8_t | talkaround: 1 |
| Allow talkaround, default 0. | |
| uint8_t | _unused51_4: 2 |
| Unknown 0. | |
| uint8_t | vox: 1 |
| VOX Enable. | |
| uint8_t | power: 1 |
| Power Low or High. | |
| uint8_t | _unused52 [3] |
| Unknown set to 0. | |
| uint8_t | squelch |
| Squelch level [0,9]. | |
Represents a configured channel within the codeplug.
Please note that channels are organized in banks, see RD5RCodeplug::bank_t for details.
Memmory layout of encoded channel:
0 8 16 24
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
00 | Name, 16 x 1byte ASCII encoded, 0xff terminated text ...
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
0c ... |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
10 | RX Frequency in MHz encoded as 8-digits BCD like MMMkkkhh |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
14 | TX Frequency in MHz encoded as 8-digits BCD like MMMkkkhh |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
18 | Mode 0=analog, 1digital | Unused set to 0 | TX timeout (TOT) N x 15s |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
1c | TOT rekey delay in s | Admit 0=always, 1=free, 2=CC | !!! Unknown set to 0x50 !!! | Scan-list index +1 |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
20 | RX CTCSS/DCS | TX CTCSS/DCS |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
24 | Unused set to 0x00 | TX signaling index +1 | Unused set to 0x00 | RX signaling index +1 |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
28 | !!! Unknown set to 0x16 !!! | Privacy Grp 0=None, 1=53474c39| TX Color code [0,15] | RX group-list index +1 |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
2c | RX Color code [0,15] | Emergency sys. index +1 | TX contact index +1 |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
30 |EAC|DCC| 0 0 0 0 0 0 | 0 |SLT| 0 |PRV| 0 0 0 |PCC| 0 0 |STE| 0 0 0 0 |DCM|PWR|VOX| 0 0 |TLK|RXO|BW | 0 |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
34 | Unused set to 0x00 | Unused set to 0x00 | Unused set to 0x00 | Squelch [0..9] |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
where
EAC = Emergency alarm ACK; DCC = Data call confirmed; SLT = Repeater slot {1,2}; PRV = Privacy enabled; PCC = Private call confirmed;
STE = Non STE is frequency(?!?); DCM = Dual capacity direct mode enable; PWR = Power; VOX = Voice operated switch wnable;
TLK = Allow talkaround; RXO = RX only; BW = Bandwidth;
1.8.17