Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implementation of BTECH DMR-6X2UV #269

Merged
merged 17 commits into from
Jan 4, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,10 @@ LINK_DIRECTORIES(${PROJECT_BINARY_DIR}/src)
set(CORE_LIBS ${Qt5Core_LIBRARIES} ${Qt5Core_QTMAIN_LIBRARIES} ${Qt5Network_LIBRARIES}
${Qt5Positioning_LIBRARIES} ${Qt5SerialPort_LIBRARIES} ${LIBUSB_1_LIBRARIES}
${YAMLCPP_LIBRARIES})
if (${BUILD_TESTS})
set(CORE_LIBS ${CORE_LIBS} ${Qt5Test_LIBRARIES})
endif(${BUILD_TESTS})

set(LIBS ${CORE_LIBS} ${Qt5Widgets_LIBRARIES} ${Qt5UiTools_LIBRARIES})

IF (UNIX AND APPLE)
Expand Down
16 changes: 3 additions & 13 deletions doc/code/anytone_channel.txt
Original file line number Diff line number Diff line change
Expand Up @@ -18,13 +18,11 @@
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
20 | Color code |LWK|EEE|RGP|EAT| 0 |EST|SMC|TSL| AES Encryption key | Name 16 x ASCII 0-padded ...
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
30 ... | Unused set to 0x00 |
30 ... | Pad byte set to 0x00 |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
34 | 0 0 0 0 0 |DAD|ETM|RNG| 0 0 0 0 0 0 0 |TAP| DMR APRS IDX (0-based) | Unused set to 0x00 |
34 | Device specific settings ...
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
38 | Unused set to 0x00 | Unused set to 0x00 | DMR encryption idx +1, 0=off | 0 0 0 0 0 |SMF|RnK|Muk|
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
3c | Unused set to 0x00000000 |
3c ... |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+

Field description:
Expand All @@ -51,11 +49,3 @@ Field description:
- EST: Enable simplex TDMA,
- SMC: SMS confirmation,
- TSL: Time slot where 0=TS1, 1=TS2
- DAD: Data ACK disable (inverted!)
- ETM: Enable through mode
- RNG: Ranging
- APRSRep: Enable APRS/GPS report,
- TAP: TX APRS enable
- MuK: Multiple keys
- RnK: Random key
- SMF: SMS forbid.
3 changes: 2 additions & 1 deletion doc/code/d868uv_callsigndbentry.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,14 @@
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
00 | Call type | DMR ID, 8-digit BCD, big-endian ...
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
04 ... | Ring | Body, up to 94 bytes, string list, 0-terminated ...
04 ... | 0 0 0 |FRD| 0 0 | Ring | Body, up to 94 bytes, string list, 0-terminated ...
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
... |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+

Field description:
- Call type: The call type of the entry, 0=Private, 1=Group and 2=All call.
- FRD: Friend flag.
- Ring: Ring tone settings, 0=Off, 1=Tone, 2=Online(?).
- Body: String list variable size. Each string in list 0-terminated. List is [Name, City, Call, State, Country, Comment].
Maximum length is 96 including 0 bytes.
61 changes: 61 additions & 0 deletions doc/code/d868uv_channel.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
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 | RX Frequency 32bit BCD encoded in big-endian as MMMkkkhh |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
04 | Tx Frequency Offset 32bit BCD encoded in big-endian as MMMkkkhh |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
08 | RMode | 0 |BWd| PWR | CMode |TAr|CaC|RXO|CTR|TDC|TCT|RDC|RCT| CTCSS transmit | CTCSS receive |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
0c | DCS transmit code, little endian | DCS receive code, little endian |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
10 | Custom CTCSS frequency in 0.1Hz, little endian | 2-tone decode index, 0-based, little endian |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
14 | Contact index 0-based, little endian |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
18 | Radio ID table index. | 0 |SquelchMode| 0 0 0 0 | 0 0 |OptSig | 0 0 | TxPer | Scan list index |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
1c | RX Group list index | 2-tone ID | 5-tone ID | DTMF ID |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
20 | Color code |LWK|EEE|RGP|EAT| 0 |EST|SMC|TSL| AES Encryption key | Name 16 x ASCII 0-padded ...
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
30 ... | Unused set to 0x00 |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
34 | 0 0 0 0 0 |DAD|ETM|RNG| 0 0 0 0 0 0 0 |TAP| DMR APRS IDX (0-based) | Unused set to 0x00 |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
38 | Unused set to 0x00 | Unused set to 0x00 | DMR encryption idx +1, 0=off | 0 0 0 0 0 |SMF|RnK|Muk|
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
3c | Unused set to 0x00000000 |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+

Field description:
- RMode: Repater mode where 0=simplex, 1=positive TX offset, 2=negative TX offset.
- BWd: Band width where 0=narrow (12.5kHz), 1=wide (25kHz).
- PWR: Power where 0=low, 1=mid, 2=high, 3=turbo.
- CMode: Channel mode, 0=analog, 1=digital, 2=analog + digi RX, 3=digital + analog RX.
- TAr: Enable talkaround.
- CaC: Enable call confirm.
- RXO: Enable RX only.
- CTR: Enable CTCSS phase reversal.
- TDC: Enable TX DCS code.
- TCT: Enable TX CTCSS tone.
- RDC: Enable RX DCS code.
- RCT: Enable RX CTCSS tone.
- SquelchMode: Squelch mode 0=Carrier, 1=CTCSS/DCS, 2=Optional Signaling, 3=CTCSS/DCS and Optional Signaling,
4 = CTCSS/DCS or Optional Signaling
- OptSig: Optional signalling where 0=off, 1=DTMF, 2=2-tone, 3=5-tone
- TxPer: TX permit/admit criterion, 0=always, 1=colorcode, 2=channel free.
- LWK: Enable lone worker.
- EEE: Enable enhanced encryption
- RGP: Enable RX GPS:
- EAT: Enable adative TDMA
- EST: Enable simplex TDMA,
- SMC: SMS confirmation,
- TSL: Time slot where 0=TS1, 1=TS2
- DAD: Data ACK disable (inverted!)
- ETM: Enable through mode
- RNG: Ranging
- APRSRep: Enable APRS/GPS report,
- TAP: TX APRS enable
- MuK: Multiple keys
- RnK: Random key
- SMF: SMS forbid.
58 changes: 58 additions & 0 deletions doc/code/dmr6x2uv_channel.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
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 | RX Frequency 32bit BCD encoded in big-endian as MMMkkkhh |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
04 | Tx Frequency Offset 32bit BCD encoded in big-endian as MMMkkkhh |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
08 | RMode | 0 |BWd| PWR | CMode |TAr|CaC|RXO|CTR|TDC|TCT|RDC|RCT| CTCSS transmit | CTCSS receive |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
0c | DCS transmit code, little endian | DCS receive code, little endian |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
10 | Custom CTCSS frequency in 0.1Hz, little endian | 2-tone decode index, 0-based, little endian |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
14 | Contact index 0-based, little endian |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
18 | Radio ID table index. | 0 |SquelchMode| 0 0 0 0 | 0 0 |OptSig | 0 0 | TxPer | 0 0 0 0 0 |XFR| 0 |RNG|
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
1c | RX Group list index | 2-tone ID | 5-tone ID | DTMF ID |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
20 | Color code |LWK|EEE|RGP|EAT| 0 |EST|SMC|TSL| AES Encryption key | Name 16 x ASCII 0-padded ...
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
30 ... | Unused set to 0x00 |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
34 | 0 0 0 0 0 |DAD|ETM| 0 | Unused, set to 0x00 | Scanlist idx 0, 0xff=unset | Scanlist idx 1, 0xff=unset |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
38 | Scanlist idx 2, 0xff=unset | Scanlist idx 3, 0xff=unset | Scanlist idx 4, 0xff=unset | Scanlist idx 5, 0xff=unset |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
3c | Scanlist idx 6, 0xff=unset | Scanlist idx 7, 0xff=unset | ARPS Report Channel Index | 0 0 0 0 0 0 |RGP|ATy|
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+

Field description:
- RMode: Repater mode where 0=simplex, 1=positive TX offset, 2=negative TX offset.
- BWd: Band width where 0=narrow (12.5kHz), 1=wide (25kHz).
- PWR: Power where 0=low, 1=mid, 2=high, 3=turbo.
- CMode: Channel mode, 0=analog, 1=digital, 2=analog + digi RX, 3=digital + analog RX.
- TAr: Enable talkaround.
- CaC: Enable call confirm.
- RXO: Enable RX only.
- CTR: Enable CTCSS phase reversal.
- TDC: Enable TX DCS code.
- TCT: Enable TX CTCSS tone.
- RDC: Enable RX DCS code.
- RCT: Enable RX CTCSS tone.
- SquelchMode: Squelch mode 0=Carrier, 1=CTCSS/DCS, 2=Optional Signaling, 3=CTCSS/DCS and Optional Signaling,
4 = CTCSS/DCS or Optional Signaling
- OptSig: Optional signalling where 0=off, 1=DTMF, 2=2-tone, 3=5-tone
- TxPer: TX permit/admit criterion, 0=always, 1=colorcode, 2=channel free.
- XFR: Exlcude channel from roaming
- LWK: Enable lone worker.
- EEE: Enable enhanced encryption
- RGP: Enable DMR-APRS RX
- EAT: Enable adaptive TDMA
- EST: Enable simplex TDMA
- SMC: SMS confirmation,
- TSL: Time slot where 0=TS1, 1=TS2
- DAD: Data ACK disable (inverted!)
- ETM: Enable through mode
- RNG: Ranging
- ATy: APRS Type: 0=DMR-APRS, 1=Analog APRS
Loading