# HG changeset patch # User Jim Unroe rock.unroe@gmail.com # Date 1512343051 18000 # Node ID 15510909d882976b16985438796d6a8b7ab0b61e # Parent 4d0380ebabaf418fdca10bb5979fb29886271cef [RT21] Tigthen Image Detection
The RT26 images are inadvertenly detected as an RT21 image. This patch tightens up the image detection of the RT21 driver.
#5415
diff -r 4d0380ebabaf -r 15510909d882 chirp/drivers/retevis_rt21.py --- a/chirp/drivers/retevis_rt21.py Sun Dec 03 13:53:30 2017 -0500 +++ b/chirp/drivers/retevis_rt21.py Sun Dec 03 18:17:31 2017 -0500 @@ -232,6 +232,13 @@ _rt21_exit_programming_mode(radio)
+def model_match(cls, data): + """Match the opened/downloaded image to the correct version""" + rid = data[0x01B8:0x01BE] + + return rid.startswith("P3207") + + @directory.register class RT21Radio(chirp_common.CloneModeRadio): """RETEVIS RT21""" @@ -556,3 +563,21 @@ except Exception, e: LOG.debug(element.get_name()) raise + + @classmethod + def match_model(cls, filedata, filename): + match_size = False + match_model = False + + # testing the file data size + if len(filedata) in [0x0400, ]: + match_size = True + + # testing the model fingerprint + match_model = model_match(cls, filedata) + + if match_size and match_model: + return True + else: + return False +