These rigs require a CHECKSUM code at the end of each command. A mechanism which is unique to them and I need to add to my code a section to send commands in a different manner when its those type of rigs.
I have been playing with remote control on my IC-M802 using Hamlib's rigctl app.
rigctl.exe supports not only those Mxxx but looks to me like it supports the greatest number of rigs of any app out there. If VarAC can use rigctl, then there is no need for ANY individual rig control code to reside within VarAC and no need to calculate a checksum - rigctl does all that already.
For example, at the cmd prompt, with my M802 connected to port 5, I enter:
rigctl -r COM5 -m 30002 F 1410575 M USB 2400
This sets the M802 frequency to 14.10575 MHz and USB mode with 2400Hz passband.
The 30002 is a reference to model number M802 in a lookup table.
That table and a complete list of commands is in the documentation of Hamlib.
Hamlib is open source software. I don't know why all the comm apps don't use it.
A full list of control codes and much more, for IC-M802:
http://yachtzenagain.blogspot.com/2016/05/icom-ic-m802-remote-interface.html
This is not my web page and I take no responsibility for the correctness of it - but what I have looked at seems correct.
IC-MXXX rigs are very tricky with Cat commands. completely different set of commands when compared to standard IC rigs.
I will get there but not anytime soon.
Irad