All,
CHIRP checks the radio and image to make sure they are the from the same firmware. For example
Image is ' Ver BFB231 '
Radio is ' Ver BFB231 '
CHIRP also verifies that "Ver BFB" is in the radio_verison
Here's the problem with a few Baofeng UV-5R radios with BFB297 firmware. There are apparently 2 versions with BFB297 floating around.
1. Image is ' Ver BFB297 ' (works OK)
2. Image is 'BFB299 BFB297 ' (upload failure)
The upload failure is caused by the 'Ver BFB' check failure. There is no 'Ver "
A possible solution is to narrow the requirements of the check
- if "Ver BFB" not in radio_version:
+ if "BFB" not in radio_version:
There would still be an issue of one type of BFB297 radio not being able to load the 'aux block' of the other type. I believe that is could be overcome by limiting the part of the string that is matched
- image_version = _firmware_version_from_image(radio)
- radio_version = _get_radio_firmware_version(radio)
+ image_version = _firmware_version_from_image(radio)[7:]
+ radio_version = _get_radio_firmware_version(radio)[7:]
Which should make the comparison like this
Image is 'BFB297 '
Radio is 'BFB297 '
Is it safe to swap the 'aux blocks' of this two similar firmware versions? I don't know. Maybe. Every other part of the 'aux block' is identical between the two images. But that is at the 'factory' delivered state.
Anyone else have any thoughts about this issue?
Jim