Do you ever sleep? What tz are you?
I am studying and debugging the Windows serial port code again.
One obvious point that we both missed:
If the TCP AIS
data from Frisco comes in at an effective data rate of more than about 500 character per second, then there is no way a vspe port set to 4800 baud can ship all of that data intact to O-p.
And this is what causes the freeze. O is stuck in a syncronization loop trying to jam too much data down a 4800 baud pipe. The comm stuff takes precedence over the UI updates, so O appears to be non-responsive.
I'm in the process of fixing that hang point now, trying to see how fast a comm port needs to be to absorb all of the Frisco feed. Pretty fast....
In general, though, using vspe to share data locally is a bad idea. Lots of overhead. UDP is much better.
vspe is probably fine for sharing a single GPS
input line among multiple O's.
So, mostly understood. What remains:
"Why will localhost UDP not work on Windows if the ethernet port has no assigned address? Is this a known Windows bug?"
Googling on this leads to some pretty deep ratholes. Still studying, but I think it may remain a mystery. Network gurus chime in here....
So, the solution for you (and others) is to set your ethernet port to some static address and carry on.
New code in github master late tonight.