So, now I am reverting back to stage one. Since the radio does not act reliably as with Windows, I assume that the serial settings are not a match.
If the serial parameters aren't right, you should get much less than 75% reliability. If parity needs to be enabled, and isn't, you'd not likely be able to get enough sequential bytes honored by the radio to do anything.
Secondly, the Windows program closes and re-opens the serial port before communicating with the radio. I am assuming that it is setting non-default parameters on the serial port. My current plan of diagnosis is to try various settings to see if there is a problem there.
Every piece of OEM Windows software I can recall looking at behaves this way. I assume it's some quirk of the API.
Remember that the radios really only communicate with three wires, which means none of the hardware flow control settings have any effect, which rules out a bunch of things.
Unfortunately, I am stuck trying to set the parity. All other parameters seem to be accepted except that one.
There is an example of this in the ft2800 driver, but I *seriously* doubt that is your problem.
Any chance you need to enable DTR or something to power your level converter in the cable? I forget what type you're using...
Still sounds like timing stuff to me, FWIW.