From 4e5a89679de66cbb7a8d585a05b3b9cd5ba5e010 Mon Sep 17 00:00:00 2001 From: Jim Unroe Date: Fri, 14 Jun 2024 19:34:39 -0400 Subject: [PATCH] mml_jc8810.py: Add Radtel RT-495 - fixes #11161 --- chirp/drivers/mml_jc8810.py | 29 +++++++++++++++++++++++------ tests/Python3_Driver_Testing.md | 7 ++++--- tests/images/Radtel_RT-495.img | Bin 0 -> 47097 bytes tests/py3_driver_testers.txt | 1 + 4 files changed, 28 insertions(+), 9 deletions(-) create mode 100644 tests/images/Radtel_RT-495.img diff --git a/chirp/drivers/mml_jc8810.py b/chirp/drivers/mml_jc8810.py index ced745951..66454d823 100644 --- a/chirp/drivers/mml_jc8810.py +++ b/chirp/drivers/mml_jc8810.py @@ -847,7 +847,7 @@ def apply_skey2s_listvalue(setting, obj): unwanted = [0, 5, 7, 9, 10, 11, 12] elif self.MODEL in ["A36plus", "A36plus_8w"]: unwanted = [0, 5, 7, 9, 10, 11] - elif self.MODEL in ["RT-630"]: + elif self.MODEL in ["RT-630", "RT-495"]: unwanted = [5, 9, 10, 11, 12] else: unwanted = [] @@ -880,7 +880,7 @@ def apply_skey2l_listvalue(setting, obj): unwanted = [0, 5, 7, 8, 10, 11, 12] elif self.MODEL in ["A36plus", "A36plus_8w"]: unwanted = [0, 5, 7, 8, 11, 12] - elif self.MODEL in ["RT-630"]: + elif self.MODEL in ["RT-630", "RT-495"]: unwanted = [5, 9, 10, 11, 12] else: unwanted = [] @@ -913,7 +913,7 @@ def apply_skey3s_listvalue(setting, obj): unwanted = [0, 5, 7, 8, 9, 10, 11, 12] elif self.MODEL in ["A36plus", "A36plus_8w"]: unwanted = [0, 5, 7, 8, 11] - elif self.MODEL in ["RT-630"]: + elif self.MODEL in ["RT-630", "RT-495"]: unwanted = [5, 9, 10, 11, 12] else: unwanted = [] @@ -932,7 +932,8 @@ def apply_skey3s_listvalue(setting, obj): rset.set_apply_callback(apply_skey3s_listvalue, _settings.skey3_sp) basic.append(rset) - if self.MODEL in ["HI-8811", "RT-470L", "RT-470X", "RT-470", "RT-630"]: + if self.MODEL in ["HI-8811", "RT-470L", "RT-470X", "RT-470", "RT-630", + "RT-495"]: # Menu 24: PF3 LONG PRESS (RT-470L) def apply_skey3l_listvalue(setting, obj): LOG.debug("Setting value: " + str(setting.value) + @@ -944,7 +945,7 @@ def apply_skey3l_listvalue(setting, obj): if self.MODEL in ["HI-8811", "RT-470L", "RT-470X", "RT-470"]: unwanted = [8, 9, 10, 11, 12] - elif self.MODEL in ["RT-630"]: + elif self.MODEL in ["RT-630", "RT-495"]: unwanted = [5, 9, 10, 11, 12] else: unwanted = [] @@ -1007,7 +1008,7 @@ def apply_skeytop_listvalue(setting, obj): rset = RadioSetting("ponmsg", "Power On Message", rs) basic.append(rset) - if self.MODEL in ["HI-8811", "RT-470L", "RT-470X", "RT-630"]: + if self.MODEL in ["HI-8811", "RT-470L", "RT-470X", "RT-630", "RT-495"]: rs = RadioSettingValueList(TAILCODE_LIST, TAILCODE_LIST[_settings.tailcode]) rset = RadioSetting("tailcode", "Tail Code", rs) @@ -1539,3 +1540,19 @@ class RT630Radio(JC8810base): (0xB500, 0xB740) ] _memsize = 0xB740 + + +@directory.register +class RT495Radio(RT630Radio): + """Radtel RT-495""" + VENDOR = "Radtel" + MODEL = "RT-495" + + # ========== + # Notice to developers: + # The RT-495 support in this driver is currently based upon v0.07 firmware. + # ========== + + _fingerprint = [b"\x00\x00\x00\x24\x00\x20\xD0\x04", # fw 0.06 + b"\x00\x00\x00\x32\x00\x20\xD8\x04", # fw 0.07 + ] diff --git a/tests/Python3_Driver_Testing.md b/tests/Python3_Driver_Testing.md index 8d636bd66..7575e5f29 100644 --- a/tests/Python3_Driver_Testing.md +++ b/tests/Python3_Driver_Testing.md @@ -282,6 +282,7 @@ | Radtel_RT-470L | [@KC9HI](https://github.com/KC9HI) | 5-May-2023 | Yes | | | Radtel_RT-470X | [@KC9HI](https://github.com/KC9HI) | 10-Aug-2023 | Yes | | | Radtel_RT-490 | [@KC9HI](https://github.com/KC9HI) | 11-Nov-2023 | Yes | 0.08% | +| Radtel_RT-495 | [@KC9HI](https://github.com/KC9HI) | 14-Jun-2024 | Yes | | | Radtel_RT-630 | [@KC9HI](https://github.com/KC9HI) | 14-Jun-2024 | Yes | | | Radtel_RT-730 | [@KC9HI](https://github.com/KC9HI) | 11-May-2024 | Yes | | | Radtel_T18 | [@KC9HI](https://github.com/KC9HI) | 28-Nov-2022 | Yes | 0.07% | @@ -463,11 +464,11 @@ | Zastone_ZT-X6 | [Implied by Retevis_RT22](#user-content-Retevis_RT22) | 9-Dec-2022 | Yes | 0.11% | ## Stats -**Drivers:** 460 +**Drivers:** 461 -**Tested:** 87% (403/57) (93% of usage stats) +**Tested:** 87% (404/57) (93% of usage stats) -**Byte clean:** 91% (421/39) +**Byte clean:** 91% (422/39) ## Meaning of this testing diff --git a/tests/images/Radtel_RT-495.img b/tests/images/Radtel_RT-495.img new file mode 100644 index 0000000000000000000000000000000000000000..1127671007f10517c5e325dd5587188f81c61778 GIT binary patch literal 47097 zcmeI*O-~y~7{Kv)=Eb`!aqO{?dWm|A4D3QVQV7Uaa7qwwzSV9MZ?Fl9D3mIf9CFC9 z-=SY1QqGa`DXQc{a zpdf$%0tg_000IagfB*srAbsi009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY** z5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0 z009ILKmY**5I_I{1a7W?RZ6rQ{&RrgRxVbQm|D<&so7TwAEGK1(#&UTRqZTdQK%yP z4YAgJsr~i4i4h`KJMB{qdr+5hc=d8p1e3(}Y*^zWe0Vb{f~fc`g|RujeK9eDaY-Bv z>Br^pQ!z2Zbmj&+`KA&>88|m z_<3>hGxB~BfU@NZ096we`Ni#`l5%FgEPl4$NV!J9uMen+L?W?BBHGW}`$j*TZ$y`? z=|%gm3Phq~(TN!U%>n;DEyjqkVqEz}0uzae#Ux@?8P965e(`}7>%`W?Mq*>Ji8xhu z<+L~>&Wdy5YT_bsvA9G=OaH5B+t%jVz1ivW8QiKq6VzvedK%QTpgtGW=Y#qWL4DzJ zJ*@}zAip%oFAefbgZ$DUzck1%4f0Ea{L&!5EXXel^2>t!vLL@K$S(`>%Yyu}Aipfg zFAMUUyO7_x`x`#68Fw3v6c7xv2IhxuZ@*aAzNgn6^n0EC^{TBpH)uWkd8c{2Gu!TW f_ge>@nY3!_47So=mg*;K%Z>Wl^6u}grRKsv)y`fh literal 0 HcmV?d00001 diff --git a/tests/py3_driver_testers.txt b/tests/py3_driver_testers.txt index 0b13dc603..12eb61c84 100644 --- a/tests/py3_driver_testers.txt +++ b/tests/py3_driver_testers.txt @@ -249,6 +249,7 @@ Radtel_RT-470,@KC9HI,2-Apr-2023 Radtel_RT-470L,@KC9HI,5-May-2023 Radtel_RT-470X,@KC9HI,10-Aug-2023 Radtel_RT-490,@KC9HI,11-Nov-2023 +Radtel_RT-495,@KC9HI,14-Jun-2024 Radtel_RT-630,@KC9HI,14-Jun-2024 Radtel_RT-730,@KC9HI,11-May-2024 Radtel_T18,@KC9HI,28-Nov-2022