
There are plenty of issues related to settings not "sticking" or taking effect for Baofeng 888 and derivative radios. I experienced this personally on a Radioddity GA-2S.
Changes based on serial capture of Baofeng "V12" programming software. Many thanks to Dan Clemmensen's notes on easy Linux serial capture.
Tony
---
# HG changeset patch # User Tony F goldstar611@hotmail.com # Date 1566262713 18000 # Mon Aug 19 19:58:33 2019 -0500 # Branch issue_6969 # Node ID e8b99ab1ca358bbe25a662b02a7006cd292e0bf9 # Parent 1da5155c550477777c021fd6fbaf5036f0b0b5c0 [h777] Fix some settings not taking effect on Baofeng 888 and variants Fix #6969 https://chirp.danplanet.com/issues/6969 Changes based on serial output of latest "V12" programming software List of settings that were affected: - Scan On/Off - Voice Prompt On/Off - Language English/Chinese - Vox On/Off - Vox Level - Vox Inhibit on Rx (Untested) - Alarm On/Off - Radio On/Off (Untested) - Low Voltage Inhibit (Untested) - High Voltage Inhibit (Untested)
To the best of my knowledge, also Fixes #5027 Fixes #5985 Fixes #6283 Fixes #4959 Fixes #5153 Fixes #5343 Fixes #5797 Fixes #5833 Fixes #5831 Fixes #5857
diff --git a/chirp/drivers/h777.py b/chirp/drivers/h777.py --- a/chirp/drivers/h777.py +++ b/chirp/drivers/h777.py @@ -166,7 +166,10 @@ def _h777_write_block(radio, block_addr, block_size): serial = radio.pipe
- cmd = struct.pack(">cHb", 'W', block_addr, BLOCK_SIZE) + if 0x02B0 <= block_addr <= 0x02C0: + cmd = struct.pack(">cHb", 'Y', block_addr, BLOCK_SIZE) + else: + cmd = struct.pack(">cHb", 'W', block_addr, BLOCK_SIZE) data = radio.get_mmap()[block_addr:block_addr + 8]
LOG.debug("Writing Data:") @@ -281,8 +284,8 @@
_ranges = [ (0x0000, 0x0110), + (0x0380, 0x03E0), (0x02B0, 0x02C0), - (0x0380, 0x03E0), ] _memsize = 0x03E0 _has_fm = True