From cbb06d9aea21b20358d0428107babcfa276e59d1 Mon Sep 17 00:00:00 2001 From: Dan Smith Date: Fri, 23 Feb 2024 17:22:29 -0800 Subject: [PATCH] retevis_rt21: Fix duplex=off And also fix up some byte unclean stuff. --- chirp/drivers/retevis_rt21.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/chirp/drivers/retevis_rt21.py b/chirp/drivers/retevis_rt21.py index 11a5cac7..7d458a77 100644 --- a/chirp/drivers/retevis_rt21.py +++ b/chirp/drivers/retevis_rt21.py @@ -910,7 +910,7 @@ class RT21Radio(chirp_common.CloneModeRadio): mem.empty = True return mem - if _mem.rxfreq.get_raw(asbytes=False) == "\xFF\xFF\xFF\xFF": + if _mem.rxfreq.get_raw() == b"\xFF\xFF\xFF\xFF": mem.freq = 0 mem.empty = True return mem @@ -918,6 +918,8 @@ class RT21Radio(chirp_common.CloneModeRadio): if int(_mem.rxfreq) == int(_mem.txfreq): mem.duplex = "" mem.offset = 0 + elif _mem.txfreq.get_raw() == b"\xFF\xFF\xFF\xFF": + mem.duplex = "off" else: mem.duplex = int(_mem.rxfreq) > int(_mem.txfreq) and "-" or "+" mem.offset = abs(int(_mem.rxfreq) - int(_mem.txfreq)) * 10 @@ -1214,8 +1216,7 @@ class RT21Radio(chirp_common.CloneModeRadio): _mem.rxfreq = mem.freq / 10 if mem.duplex == "off": - for i in range(0, 4): - _mem.txfreq[i].set_raw("\xFF") + _mem.txfreq.fill_raw(b"\xFF") elif mem.duplex == "split": _mem.txfreq = mem.offset / 10 elif mem.duplex == "+":