# HG changeset patch
# User Brad Schuler <brad@schuler.ws>
# Date 1604816852 25200
# Sat Nov 07 23:27:32 2020 -0700
# Node ID f13da43b1125af02a6dbc129a6e9e33760adc9a7
# Parent af9c114dd8c5d13c0a1031103900d7db5262bc62
[AnyTone 5888UV] Add limited squelch mode & fix file identifier
Set the radio's squelch mode to CTCSS/DCS Tones instead of Carrier when the receive tone mode is set.
Recognize a file image from this radio when no metadata is present.
Related to issues 2989, 3653, 6633
diff -r af9c114dd8c5 -r f13da43b1125 chirp/drivers/anytone.py
--- a/chirp/drivers/anytone.py Mon Nov 02 16:12:36 2020 -0700
+++ b/chirp/drivers/anytone.py Sat Nov 07 23:27:32 2020 -0700
@@ -68,7 +68,9 @@
u8 txcode;
u8 rxcode;
u8 unknown7[2];
- u8 unknown2[5];
+ u8 unknown9:5,
+ sqlMode:3; // [Carrier, CTCSS/DCS Tones, Opt Sig Only, Tones & Opt Sig, Tones or Opt Sig]
+ u8 unknown2[4];
char name[7];
u8 unknownZ[2];
};
@@ -324,6 +326,7 @@
chirp_common.PowerLevel("Mid1", watts=25),
chirp_common.PowerLevel("Mid2", watts=10),
chirp_common.PowerLevel("Low", watts=5)]
+SQL_MODES = ["Carrier", "CTCSS/DCS", "Opt Sig Only", "Tones AND Sig", "Tones OR Sig"]
@directory.register
@@ -333,7 +336,7 @@
VENDOR = "AnyTone"
MODEL = "5888UV"
BAUD_RATE = 9600
- _file_ident = "QX588UV"
+ _file_ident = "588UVN"
# May try to mirror the OEM behavior later
_ranges = [
@@ -424,6 +427,8 @@
rxtone = txtone = None
rxmode = TMODES[_mem.rxtmode]
+ if _mem.sqlMode == 0 or _mem.sqlMode == 2:
+ rxmode = TMODES.index('')
txmode = TMODES[_mem.txtmode]
if txmode == "Tone":
txtone = TONES[_mem.txtone]
@@ -472,6 +477,10 @@
_mem.txtmode = TMODES.index(txmode)
_mem.rxtmode = TMODES.index(rxmode)
+ if rxmode != '':
+ _mem.sqlMode = SQL_MODES.index("CTCSS/DCS")
+ else:
+ _mem.sqlMode = SQL_MODES.index("Carrier")
if txmode == "Tone":
_mem.txtone = TONES.index(txtone)
elif txmode == "DTCS":