Using GpsGate (Standard edition during the trial period) and SiRFDemo.exe I can see the NMEA output from a GPS 18 device attached to a USB 3 port. When attached to a virtual port created by GpsGate, SiRFDemo displays the satellites' signal strength, a map of the satellites' positions, the fix information, and the NMEA sentences themselves. However, neither SiRFDemo or a self-written C++ program, that works well for other GPS devices, can output NMEA sentences to the GPS 18. Since the Garmin GPS 18 outputs in a Garmin proprietary protocol, GpsGate must be translating Garmin's protocol to NMEA. Can GpsGate translate the other way, from NMEA to Garmin's proprietary protocol and output the resulting packet to the GPS 18?
The original intent in purchasing the Garmin GPS 18 was to use it as a source of time for NTPD, the Network Time Protocol daemon. Yet NTPD can find the virtual COM port created by GpsGate and open it, but it detects no information there. I know it is there because SiRFDemo can find it and read it. Since NTPD waits on the COM interrupt before it even checks the COM buffer for data, I suspect GpsGate puts the NMEA sentences in the virtual port's buffer, but does not trigger the interrupt. Does that sound possible?