Closed PavelFilippovich closed 1 year ago
Perhaps the best option would be to use the NMEA-0183 RMC protocol. https://tronico.fi/OH6NT/docs/NMEA0183.pdf Page 14.
Maybe this documentation will be helpful https://ge0mlib.com/papers/Protocols/SiRF_Nmea_rev3_0.pdf
Thank you for this feature request and the provided information, @PavelFilippovich. I should find some time to look into this in the next few weeks.
The NMEA-0183 RMC protocol seems to be used by RS232 GPS Devices, which is an input supported by SkyDemon. This should make testing easy for me, as I'm already familiar with SkyDemon.
Once I get it working in SkyDemon over a virtual COM, I'll give you a shout to test it in Jeppesen Flitеdesk.
@PavelFilippovich good news, COM should be supported in version v0.3.0-alpha.1 You can grab it from https://github.com/mihai-dinculescu/msfs-2020-gps-link/releases/tag/v0.3.0-alpha.1. There is another tool that needs to be installed, com0com. The UI has instructions on how to go about it.
I would love your feedback on the feature.
There are some decisions that I've taken that I'm not sure of:
PRESSURE ALTITUDE
from MSFS is reported over COM rather than the PLANE ALTITUDE
used for X-Plane mode. PRESSURE ALTITUDE
seems more accurate in Sky Demon when the data is sent over COM.GPGSA
message is broadcasted every second. Its value, $GPGSA,A,3,01,02,03,04,05,06,07,08,09,10,11,12,1.0,1.0,1.0*30\r\n
, should mean perfect accuracy.GPGGA
and GPRMC
messages are broadcasted each interval. GPGGA
contains the location and altitude. GPRMC
contains the location, ground speed and track.PDOP
- I default it to 1.0
HDOP
- I default it to 1.0
VDOP
- I default it to 1.0
Geoid Separation
- I default it to 0.0
Age of Diff. Corr.
- I left it emptyDiff. Ref. Station ID
- I left it emptyMagnetic Variation
- I left it empty because I calculated Course Over Ground as GPS GROUND MAGNETIC TRACK
- MAGVAR
. Not sure how correct this is.Great news! Connection to Jeppesen Flitеdesk successful! 3D GPS coordinates work!
More note. The choice of com port speed should be made from the standard values 4800, 9600, 19200, 38400, 57600, 115200.
There are tricks in connection. I will test further. I'll let you know the result.
Jeppesen Flitеdesk setup.
It would also be great to store the settings of the last run.
There are no problems with connection. Everything is working. I tested the comport at speeds of 9600 and 38400.
Thank you very much for the prompt testing and feedback, @PavelFilippovich . There's a new alpha release out: https://github.com/mihai-dinculescu/msfs-2020-gps-link/releases/tag/v0.3.0-alpha.2.
I think that I've managed to fix the heading error. I've also changed the Baud rate to be a dropdown with fixed options.
I have created a separate issue for the persistence of settings: #30.
There is still one bug I want to fix before the general release. The broadcaster currently hangs when sending messages over COM when no navigation app is connected.
Thank you so much for making the changes!
Unfortunately, the course has not changed. Photos in the application. One from MSFS2020 the other from Jeppesen Flitedesk. The place of fixing the course is also attached.
The comport speed of 14400 is not needed. Better add 115200.
Everything else works, as before, excellent!
Update: I checked the information on the Jeppesen Flitedeсk documentation. I was wrong. Jeppesen does not show the exact course. Do not look for a bug in your program.
Thank you very much for the quick feedback @PavelFilippovich.
I have tweaked the baud rate speeds and have addressed an edge case in the COM setup documentation. Version v0.3.0 contains these changes. https://github.com/mihai-dinculescu/msfs-2020-gps-link/releases/tag/v0.3.0
I will close this issue now.
Thanks again for all the support and feedback. It's been most useful. Please don't hesitate to open other issues if you encounter problems or if you have other requests.
Tested at a speed of 115200. Everything works well! Thank you!
Hello! Great app! I ask you to consider the possibility of issuing data to a virtual comport. The program should create a virtual comport and send a GPS data stream to it, emulating a GPS receiver. It will be possible to check the operation of the program by connecting any GPS receiver data processing program to the virtual comport. This option is needed, for example, to use Jeppesen Flitеdesk.