mapper
mapper copied to clipboard
Live-GPS using NMEA on Windows
Support for NMEA based GPS devices in Windows is missing. There is support in Linux (since 0.9.3, #1569). It would be really great to have support in Windows too!
There are some closed issues touching this. #422, #709, #673 Some of them state that QT serial NMEA support was added in QT 5.6. Current QT version in OOM 0.9.5 is 5.12.10, so there should be no more issue.
Edited to reflect later posts, additions in italics:
Support for NMEA based GPS devices in Windows is missing
NMEA based GPS devices in Windows do work, but need either additional software, or configuring the device's baud rate to 4800.
Some of them state that QT serial NMEA support was added in QT 5.6. Current QT version in OOM 0.9.5 is 5.12.10, so there should be no more issue.
Qt's serial port discovery NMEA support is tight to some special chips. Unfortunately it was never meant to be generic. In any case, the "NMEA (Qt)" sensor in Mapper, which represents Qt's original plugin, sets the serial port's baud rate to 4800.
For Linux and macOS, Mapper uses Qt's generic NMEA support to provide a special "NMEA (OpenOrienteering)" plugin which directly access the virtual "files" which represent the serial ports. This couldn't be made work on Windows. Maybe this can be revived when a user with such a device is brave enough to help developers with testing snapshot builds.
It would be awesome with native support, without needing to rely on third party software that needs to be bought.
I own a cheap NEO-6M GPS module from ebay, which I use together with a USB to serial adapter. It did work great in ocad. https://www.electroschematics.com/neo-6m-gps-module/
I can assist with testing. I work with system development, but have very limited experience with C++. With some assistance, I would be glad to test some snapshots.
The Qt plugin could probably work, too. We set QT_NMEA_SERIAL_PORT
according to the settings dialog, in order to avoid auto-detection problems. But Qt sets the baud rate to 4800. I wonder how devices cope with that. Maybe you have to chance to test this independly (from Mapper/Qt) in some terminal application.
My device was configured for baud rate 9600.
I figured out how to change it to 4800 using u-center (https://www.navilock.com/service/fragen/gruppe_59_uCenter/beitrag/40_uBlox-and-Change-the-Baudrate.html). Then I configured OOM to use "NMEA (QT)" on COM4.
And my location showed up on the map in OOM! Only in touch mode though, but that is expected? So it seems to actually work!
Thanks @Jocke-G! I update my first answer to reflect this.
We need to see how we can improve the situation. Apart from documentation, do we need to offer a user setting for the baud rate?
Only in touch mode though, but that is expected?
This is expected at the moment. It is simply not part of the regular user interface which is already quite loaded.
Apart from documentation, do we need to offer a user setting for the baud rate?
Yes, a drop-down or similar to select baud rate would be great! I believe most users don't know how to change the baud rate of the device. Probably both baud rate and com port could be hidden if anything else than NMEA is selected?
This is expected at the moment. It is simply not part of the regular user interface which is already quite loaded.
It would be awesome to to have live GPS in regular user interface too!