I've just pushed to my own fork the changes to migrate the Icom CI-V drivers for Python 3. Tested and working against an IC-910. I haven't yet created a pull request, because if I do, GitHub will conflate it with another pull request that makes some fixes to the UI. (Yes, I should have created separate fix branches, but didn't think about it until after the fact.) When the UI fixes are applied, I'll create a pull request for the Icom CI-V drivers.

One issue that came up as I was doing this is that of bytearray vs bytes. A couple of methods really, really want bytes and won't accept bytearray. The two I came across are MemoryMapBytes() and hexprint(). These will fail if passed a bytearray. Since the Icom CI-V driver works with bytearray, these have to be cast to bytes any time one of those methods are called. I think it would make sense for these methods to accept both bytes and bytearray.

Martin.
KD6YAM