Hi everyone,

The new IC-R6 driver is failing one test:

Failed tests/unit/test_icom_clone.py::Test_Icom_IC-R6::test_sync_out    1 ms   
self = <tests.unit.test_icom_clone.Test_Icom_IC-R6 testMethod=test_sync_out>

    def test_sync_out(self):
        self.radio._mmap = memmap.MemoryMapBytes(
            bytes(b'\x00') * self.radio.get_memsize())
        self.radio._mmap[50] = bytes(b'abcdefgh')
        self.radio.sync_out()
>       self.assertEqual(b'abcdefgh', self.simulator._memory[50:58])
E       AssertionError: b'abcdefgh' != b''

tests/unit/test_icom_clone.py:78: AssertionError


Memsize looks fine, though the exported image has a trailing base64 string which decodes as:

{"mem_extra": {}, "rclass": "ICR6Radio", "vendor": "Icom", "model": "IC-R6", "variant": "", "chirp_version": "py3dev"}

Some other Icom image files such as Icom_IC-W32E.img end with the standard Icom_IC-W32E.img<null> but I see Icom_ID-80H.img also has base64 at the end:

{"mem_extra": {}, "rclass": "ID80Radio", "vendor": "Icom", "model": "ID-80H", "variant": "", "chirp_version": "py3dev"}

Perhaps that's OK?


Saved the image file back out as ICF and it loaded fine in Icom's CS-R6 - had to change one value from 000000 to 002A to get "#EtcData=002A" but that's related to US/Europe variant.


Haven't tried writing to my radio yet. Using the standard library ICF3 code, don't have sync_out() in the IC-R6 class.


Thoughts on why test_sync_out() could be failing please?


Regards,

John.