Jump to content
The simFlight Network Forums
Sign in to follow this  
Hawkey

XCSoar + GPSout = no altitute readings

Recommended Posts

Peter,

I have been connecting GPSout to FS2004 via USB to an HP HX4700 PDA Windows Mobile 3.x, running XCSoar, FSUIPC v3.75. I have position, speed, and direction but no altitude. I have tried multiple combinations of baud rate, sentence sequences, but have never seen an altitude reading. Killed ActiveSych and even tried a serial port connection but no luck. Just position and speed and I guess direction.

I checked the XCSoar forum and they cited that their program had a long history of working with things like "Condor" and a wide variety of other GPS devices. XCSoar is open source. They suggested that I check here first and were reluctant to change code to accommodate a commercial product. GPS sentence structure was suspect according to them.

Was hoping to use FS2004 as a training platform to gain experience with XCSoar before actually flying. XCSoar is a real world aviation navigation/glide computer program for sailplane pilots.

I have enjoyed using FSUIPC and occasionally Wide for a some time now with no problems till now (:-)

Thank you for your help,

rww

Share this post


Link to post
Share on other sites

I have been connecting GPSout to FS2004 via USB to an HP HX4700 PDA Windows Mobile 3.x, running XCSoar, FSUIPC v3.75.

Sorry, 3.75 is very much out of date and not supported. Also you need to state the version of GPSout. If it isn't the current version (see the Current Versions announcement above), please update that too.

I have position, speed, and direction but no altitude. I have tried multiple combinations of baud rate, sentence sequences, but have never seen an altitude reading.

The altitude is only provided in certain sentences (by definition). If you've tried them all it is likely that this XCSoar program needs one not supported by GPSout. You need to find out what XCSoar needs and see if GPSout can provide it. Every provision in GPSout has been made to fulfill needs of programs, and so far it has fulfilled every one. It seems unlikely the XCSoar is so very different, but you never know.

If there's no or inadequate documentation for XCSoar, and it is "open source" why not look at that source and see what sentences it needs?

They suggested that I check here first and were reluctant to change code to accommodate a commercial product. GPS sentence structure was suspect according to them.

Well they would blame someone else's code, wouldn't they, even though it's been proven good over a period of nearly 11 years! Also GPSout is freeware, not commercial, so they are probably wrong twice.

Please don't come back until you are up to date, using supported versions.

Pete

Share this post


Link to post
Share on other sites

If there's no or inadequate documentation for XCSoar, and it is "open source" why not look at that source and see what sentences it needs?

I've just looked for you. The only sentences it has in common with GPSout are RMC and GGA, but these should be adequate (they have been for most every GPS and moving map program so far).

Looking at its code for parsing GGA it should work fine. I suspect you've not tried the correct combination in GPSout.INI -- RMC and GGA.

Pete

Share this post


Link to post
Share on other sites

Peter,

So far no luck. Just position in XCSoar.

Thanks for checking on the source code for me. It's a bit beyond me and my one class of C++ years ago.

We have updated to FSUIPC v3.81 and GPSout v2.601 and WideFS v6.75.

Here's what's in my config file:

[GPSout]

Sentence=GGA,RMC

Interval=1000

Port=\\.\WCEUSBSH001

Speed=19200

PosTo6Decimal=Yes

Tried baud of 19200 and 9600, "GGA,RMC" and "RMC,GGA" (for sequence) messed with the "." in the port statement but my system does not care about that. PosTo6Decimal set both ways

In XCSoar Generic, CAI 302, EW Logg, Altair Pro, Vega, CAI GPS-NAVNmeaOut, PosiGrap, Borgelt B, Volkslogg, EW Micro, LX -- were all tried. COM9 is used for my USB connection "Use GPS time" set to both on and off

I have a number of other programs all competing for FSUIPC output but have never seen a problem here.

System is here is Windows XP patched and up-to-date

While flying -- I get from XCSoar I get -- %Climb (not correct) and Variometer activity (all sink) which is not correct and VGND which looks ok.

Incidentally my bluetooth HP 308 GPS works fine real world with XCSoar

Thanks agn,

RWW

Share this post


Link to post
Share on other sites

So far no luck. Just position in XCSoar.

...

Tried baud of 19200 and 9600, "GGA,RMC" and "RMC,GGA" (for sequence) messed with the "." in the port statement but my system does not care about that. PosTo6Decimal set both ways

In XCSoar Generic, CAI 302, EW Logg, Altair Pro, Vega, CAI GPS-NAVNmeaOut, PosiGrap, Borgelt B, Volkslogg, EW Micro, LX -- were all tried. COM9 is used for my USB connection "Use GPS time" set to both on and off

I have a number of other programs all competing for FSUIPC output but have never seen a problem here.

System is here is Windows XP patched and up-to-date

All of that is surely entirely irrelevant. If it gets the position, it is evidently reading the output. No amount of messing or other programs is going to change that. This obviously points to a bug in their GGA parsing, tha's all.

Incidentally my bluetooth HP 308 GPS works fine real world with XCSoar

And what sentences is that supplying?

Pete

Share this post


Link to post
Share on other sites

GlobalSat BT308 Bluetooth GPS Receiver

Manufacturers Technical Specifications

Channels 12 parallel channels

Output Messages NMEA 0183 V2.2 protocol and supports command:

GGA, GSA, GSV, RMC, VTG, GLL

Hot Start 8 sec., average

Warm Start 38 sec., average

Cold Start 45 sec., average

Acceleration Limit < 4g

Altitude Limit 18,000m

Re-acquisition 100ms

Velocity Limit 515 meters/sec

Time Accuracy 1us synchronized to GPS time

Position Accuracy 15m 2D RMS without SA {BR} 10m 2D RMS WAAS enabled

Supply Voltage Build-in rechargeable battery and 5V

DC input charging circuit

Operation Time 8hr. After fully charged, in continuous mode

Dimension 84mm*47mm*27mm

Storage Temperature -30¢XC~85¢XC

Operation Temperature -20¢XC~70¢XC

Humidity Up to 95% non-Condensing

rww

Share this post


Link to post
Share on other sites

Pete

An added note. And I am using on my PDA a free GPS "monitoring program" called VisualGPSce. Do a google on it.

I use this thing to debug/see if things work sort of tool tool. It connects. There is a red indicator light showing incoming packets. But is shows no GPS data at all.

If that helps at all,

rww

Share this post


Link to post
Share on other sites

Output Messages NMEA 0183 V2.2 protocol and supports command:

GGA, GSA, GSV, RMC, VTG, GLL

Ok. Put a serial port monitor on that (eg PortMon from http://www.syssinternals.com), log the sentences it is producing, and let me see its examples of GGA. In fact to can log my GPSout samples too and compare them yourself. There may be an entry which I omit (as it isn't applicable to simulation) but which XCSoar needs "fabricating", though if so it'll be a first.

You see, my current GGA sentences have been feeding Altitude correctly to an assortment of GPSs and mapping programs now for 11 years and I am not willing to change it in any way without good reason and knowing exactly why, otherwise everyone else will be upset. The best folks to comment on that would be the XCSoar authors, but evidently they are a totally uncooperative bunch.

On your second message:

An added note. And I am using on my PDA a free GPS "monitoring program" called VisualGPSce. Do a google on it.

I use this thing to debug/see if things work sort of tool tool. It connects. There is a red indicator light showing incoming packets. But is shows no GPS data at all.

It isn't very good then, is it? You've already proven GPSout is working with XCSoar to provide positional data.

Pete

Share this post


Link to post
Share on other sites

Ok Peter,

I have a bit of a problem monitoring my BT308 output. For now only my PDA talks to it, and I have not found a PDA based port sniffer that is free yet. May have to break down and get a bluetooth adapter for my PC, and the go figure a way from there. Perhaps then I can find a way with PC based Portmon. This may take a while.

rww

Share this post


Link to post
Share on other sites

This may take a while.

Well, if you can get ANY examples of GGA sentences which XCSoar accepts then I can see what fiddle I need to do to get it to accept mine. I looked at the XCSoar code and it looks like it should be fine, it actually appears to check for very little -- but it is a bit convoluted and I may have missed something.

However, the code they release is for an older version, 4 I think. You are probably using 5, so that could very well be completely different. Also it may of course be different on a PDA. I only looked at Windows C source.

In the end the quickest way would be to ask the XCSoar folks what they don't like about GPSout's GGA. I don't understand why they are so uncooperative. And GPSout is freeware, I make no money out of it at all, so they've got nothing to complain about there.

Regards

Pete

Share this post


Link to post
Share on other sites

Peter,

Is this anything like what you are looking for? A log file from VsualGPSce PDA program talking to my bluetooth HP BT308. Location is KCID.

$GPRMC,222400.813,A,4159.3273,N,09138.5491,W,0.52,209.43,280608,,*14

$GPGGA,222401.813,4159.3274,N,09138.5490,W,1,03,26.5,203.1,M,-33.5,M,0.0,0000*77

$GPGSA,A,2,23,08,19,,,,,,,,,,33.2,26.5,20.0*03

$GPGSV,3,1,10,13,70,265,00,25,67,324,32,23,54,179,41,03,54,101,00*74

$GPGSV,3,2,10,07,48,304,00,06,46,078,00,19,41,145,37,27,40,302,00*77

$GPGSV,3,3,10,16,27,053,00,08,13,290,30*7E

$GPRMC,222401.813,A,4159.3274,N,09138.5490,W,0.54,209.72,280608,,*17

$GPGGA,222402.813,4159.3276,N,09138.5488,W,1,03,26.4,203.2,M,-33.5,M,0.0,0000*7D

$GPGSA,A,2,23,08,19,,,,,,,,,,33.1,26.4,20.0*01

$GPRMC,222402.813,A,4159.3276,N,09138.5488,W,0.53,211.27,280608,,*11

$GPGGA,222403.813,4159.3279,N,09138.5485,W,1,03,26.4,203.2,M,-33.5,M,0.0,0000*7E

$GPGSA,A,2,23,08,19,,,,,,,,,,33.1,26.4,20.0*01

$GPRMC,222403.813,A,4159.3279,N,09138.5485,W,0.64,208.15,280608,,*1F

$GPGGA,222404.813,4159.3282,N,09138.5482,W,1,03,26.3,203.2,M,-33.5,M,0.0,0000*7D

$GPGSA,A,2,23,08,19,,,,,,,,,,33.1,26.3,20.0*06

$GPRMC,222404.813,A,4159.3282,N,09138.5482,W,0.50,209.89,280608,,*18

$GPGGA,222405.813,4159.3285,N,09138.5478,W,1,03,26.3,203.3,M,-33.5,M,0.0,0000*7F

$GPGSA,A,2,23,08,19,,,,,,,,,,33.0,26.3,20.0*07

$GPRMC,222405.813,A,4159.3285,N,09138.5478,W,0.43,210.38,280608,,*1B

rww

Share this post


Link to post
Share on other sites
Peter,

Is this anything like what you are looking for?

It may be useful. I'd need to set up something here to get the same from GPSout for comparison. I don't use FS2004 any more, so it may take a few days whilst I sort something out. It would be quicker if you did the same as you've just done but with GPSout, to get a comparison. Set the 6 position option off -- I see that isn't using the extra precision.

Pete

Share this post


Link to post
Share on other sites
Peter,

Is this anything like what you are looking for?

Since I didn't get a reply yet, I thought I'd just compare what I have programmed to provide in GGA with whay you see from your other device:

$GPGGA,222401.813,4159.3274,N,09138.5490,W,1,03,26.5,203.1,M,-33.5,M,0.0,0000*77

With the 6 decimal position optio off I provide

$GPGGA,

nnnnnn.nn, // 222401.813 3 decimal places for seconds instead of 2? Didn't matter on RMC, so shouldn't here!

nnnn.nnnn,N // 4159.3274,N same, ok

nnnnn.nnnn,W // 09138.5490,W same, ok

1, // 1 same, ok

05, // 03, shouldn't matter (= number of satellites received)

0.0, // 26.5 horizontal dilution. 0.0 should be fine, can't invent a figure.

n.n, // 203.1 altitude, okay, same, to 1 decimal place

M, // M metres, same

(omitted), // -33.5 height of Geoid above WGS84 ellipsoid. Can't provide this. Should I provide 0.0?

(omitted), // M metres -- maybe I'll try filling this in too

(omitted), // 0.0 time in secs since last DGPS update. Could try 0.0

(omitted) // 0000 DGPS station ID number. Could try 0000

If you like I'll supply a GPSout with those changes in BLUE above. I can't see what else I could possible do. I think your XCSoar program is being fussy beyond what the NMEA 0183 spec calls for.

Regards

Pete

Share this post


Link to post
Share on other sites

Peter,

Using a serial port to my PDA now.

I tried the new GPSout.dll but still no altitude. I don't think the GGA sentence is being generated from the looks of what Microsoft Portmon is showing.

First --- my config file. It is getting messy now.

[GPSout]

Sentence=GGA,RMC

;Sentence=GGA,RMC.GSA

;Sentence=RMA,RMC,GLL,GGA,PGRMZ,VTG,GSA,GSV

;Sentence=AV400

;Sentence=PGRMZ

Interval=1000

;Port=\\.\WCEUSBSH001

Port=COM1

;Speed=19200

Speed=9600

;PosTo6Decimal=No

;Interval=1000

;Port=com1

;Speed=9600

PosTo6Decimal=Yes

Next output from com1 to my PDA as reported by MS Portmon -- location KCID:

0.07198094 fs9.exe IRP_MJ_WRITE Serial0 SUCCESS Length 73: $GPRMC,023636.00,A,4152.786901,N,09141.818855,W,0.0,2.3,010708,2

0.07192115 fs9.exe IRP_MJ_WRITE Serial0 SUCCESS Length 73: $GPRMC,023636.94,A,4152.786901,N,09141.818855,W,0.0,2.3,010708,2

0.07193009 fs9.exe IRP_MJ_WRITE Serial0 SUCCESS Length 73: $GPRMC,023637.00,A,4152.786901,N,09141.818855,W,0.0,2.3,010708,2

0.07189322 fs9.exe IRP_MJ_WRITE Serial0 SUCCESS Length 73: $GPRMC,023637.42,A,4152.786901,N,09141.818855,W,0.0,2.3,010708,2

0.07196753 fs9.exe IRP_MJ_WRITE Serial0 SUCCESS Length 73: $GPRMC,023638.00,A,4152.786901,N,09141.818855,W,0.0,2.3,010708,2

0.07199435 fs9.exe IRP_MJ_WRITE Serial0 SUCCESS Length 73: $GPRMC,023638.14,A,4152.786901,N,09141.818855,W,0.0,2.3,010708,2

0.07192003 fs9.exe IRP_MJ_WRITE Serial0 SUCCESS Length 73: $GPRMC,023638.34,A,4152.786901,N,09141.818855,W,0.0,2.3,010708,2

0.07198736 fs9.exe IRP_MJ_WRITE Serial0 SUCCESS Length 73: $GPRMC,023638.55,A,4152.786901,N,09141.818855,W,0.0,2.3,010708,2

0.07196641 fs9.exe IRP_MJ_WRITE Serial0 SUCCESS Length 73: $GPRMC,023639.00,A,4152.786901,N,09141.818855,W,0.0,2.3,010708,2

0.07191333 fs9.exe IRP_MJ_WRITE Serial0 SUCCESS Length 73: $GPRMC,023639.08,A,4152.786901,N,09141.818855,W,0.0,2.3,010708,2

0.07197982 fs9.exe IRP_MJ_WRITE Serial0 SUCCESS Length 73: $GPRMC,023640.00,A,4152.786901,N,09141.818855,W,0.0,2.3,010708,2

0.07195384 fs9.exe IRP_MJ_WRITE Serial0 SUCCESS Length 73: $GPRMC,023640.11,A,4152.786901,N,09141.818855,W,0.0,2.3,010708,2

0.07194434 fs9.exe IRP_MJ_WRITE Serial0 SUCCESS Length 73: $GPRMC,023641.00,A,4152.786901,N,09141.818855,W,0.0,2.3,010708,2

0.07192087 fs9.exe IRP_MJ_WRITE Serial0 SUCCESS Length 73: $GPRMC,023641.13,A,4152.786901,N,09141.818855,W,0.0,2.3,010708,2

0.07194769 fs9.exe IRP_MJ_WRITE Serial0 SUCCESS Length 73: $GPRMC,023641.53,A,4152.786901,N,09141.818855,W,0.0,2.3,010708,2

0.07189377 fs9.exe IRP_MJ_WRITE Serial0 SUCCESS Length 73: $GPRMC,023642.00,A,4152.786901,N,09141.818855,W,0.0,2.3,010708,2

0.07193205 fs9.exe IRP_MJ_WRITE Serial0 SUCCESS Length 73: $GPRMC,023642.24,A,4152.786901,N,09141.818855,W,0.0,2.3,010708,2

0.07193708 fs9.exe IRP_MJ_WRITE Serial0 SUCCESS Length 73: $GPRMC,023642.34,A,4152.786901,N,09141.818855,W,0.0,2.3,010708,2

0.07190523 fs9.exe IRP_MJ_WRITE Serial0 SUCCESS Length 73: $GPRMC,023643.00,A,4152.786901,N,09141.818855,W,0.0,2.3,010708,2

0.07190746 fs9.exe IRP_MJ_WRITE Serial0 SUCCESS Length 73: $GPRMC,023644.00,A,4152.786901,N,09141.818855,W,0.0,2.3,010708,2

0.07192059 fs9.exe IRP_MJ_WRITE Serial0 SUCCESS Length 73: $GPRMC,023644.27,A,4152.786901,N,09141.818855,W,0.0,2.3,010708,2

0.07193009 fs9.exe IRP_MJ_WRITE Serial0 SUCCESS Length 73: $GPRMC,023644.38,A,4152.786901,N,09141.818855,W,0.0,2.3,010708,2

0.07198429 fs9.exe IRP_MJ_WRITE Serial0 SUCCESS Length 73: $GPRMC,023644.67,A,4152.786901,N,09141.818855,W,0.0,2.3,010708,2

0.07190467 fs9.exe IRP_MJ_WRITE Serial0 SUCCESS Length 73: $GPRMC,023645.00,A,4152.786901,N,09141.818855,W,0.0,2.3,010708,2

0.07189573 fs9.exe IRP_MJ_WRITE Serial0 SUCCESS Length 73: $GPRMC,023645.17,A,4152.786901,N,09141.818855,W,0.0,2.3,010708,2

Looks more messy. The Bulletin Board wraps the text around somehow.

Anyway, all this makes me wonder if there isn't something odd with my system.

I have tried FS2002 and FS2004. Both have no altitude. Only location.

Thanks for working with me on this.

rww

Share this post


Link to post
Share on other sites

I tried the new GPSout.dll but still no altitude. I don't think the GGA sentence is being generated from the looks of what Microsoft Portmon is showing.

First --- my config file. It is getting messy now.

[GPSout]

Sentence=GGA,RMC

There's your problem. It is not and never has been "Sentence=" but "Sentences=". You are merely getting the default set, which consists only of RMC. Where did you get "Sentence" from? And, sorry, but I should have noticed that when you posted it before. I'd just assumed you'd just edited the supplied INI, not written your own with errors. :-(

The file doesn't have to be "messy". Just delete all the duplicated and commented-out lines.

Pete

Share this post


Link to post
Share on other sites

Can't wait till I get home to try this!

That's why I never became a programmer. I was never much of a "human compiler".

Will let you know the outcome later this evening. I'm sure it will be good.

rww

Share this post


Link to post
Share on other sites
Peter,

You asked where I got that bad syntax. When I was looking for USB solutions I copied and pasted from this site. The config file examples are a ways down in this page. There is one good one and a bad one for USB connections. Again my eyes are not very sharp.

http://www.homepages.mcb.net/bones/04fsST_GPS.htm

Not seen that place before. There are in fact two examples with the wrong setting "Sentence". Someone should get them corrected.

Pete

Share this post


Link to post
Share on other sites
Peter,

I sent the webmaster an email about his syntax. Will wait and see what happens.

rww

Thanks.

I browsed the site whilst I was there, and it seemed to show that a free program "Pocket FMS" would run on my HP Ipaq Pocket PC. So I went to PocketFMS, downloaded it (though it doesn't appear to be free after a 30-day evaluation. there's then an annual payment due!). But apart from getting it installed okay on the PC I can't get anywhere with it.

I have no ActiveSync running (I closed it down when I last tried to talk to my Ipaq as a serial device) so I asked PocketFMS to prepare an SD card, which it did. Apparently, when inserting this into the Pocket PC is should run something to get some data, which allows PocketFMS, back on the PC again, to enable the whole shebang on the Pocket PC.

Pah! Nothing would run from that CD. It is supposed to autorun something, which it doesn't. Then everything I tried to run manually simply said "PocketFMS is not a valid PocketPC application".

I seem to remember I tried this way back when I first got the iPaq, and had to give up then. Maybe PocketFMS was free then, too

Regards

Pete

Share this post


Link to post
Share on other sites

Peter,

It works now!! I have altitude!! I made it home after work and tried the correct syntax, and it worked right off the bat.

I'll certainly spend some time with XCSoar and FS9 working the bugs out, but I think the worst is behind now. I may experiment now with additional sentences but the basic 2 work ok now as far as i can tell.

Sentences=GGA,RMC

Thank you so much for your patience.

Just add XCSoar to your list of compatible programs.

rww :D

Share this post


Link to post
Share on other sites

It works now!! I have altitude!!

Is that with the released version of GSPout, or the special one I gave you? If the latter could you please try the "official" one, as if that works I don't need to make a new release nor update the version of GPSout built into FSUIPC4.

Thanks,

Pete

Share this post


Link to post
Share on other sites

Peter,

I like your latest release (2.6.07) because it reports field elevation more accurately. But both dll's give me altitude and position.

At KCID field elevation listed by FSNav is 862ft.

AirNav lists KCID at 869ft (real world)

GPSout 2.6.0.1 shows 979ft (center of RW9/27)

GPSout 2.6.0.7 shows 867ft (center of RW9/27) (I like that better)

I'm in a Bellanca Super Decathlon for these tests. Not a large a/c.

Neither dll knows which direction the aircraft is pointed until it begins to move (I think). As best I can recall, my BT308 gets that right. Not a major concern here.

rww

Share this post


Link to post
Share on other sites

I like your latest release (2.6.07) because it reports field elevation more accurately.

I don't see how anything has changed there As I said, all I changed was:

(omitted), // -33.5 height of Geoid above WGS84 ellipsoid. Can't provide this. Should I provide 0.0?

(omitted), // M metres -- maybe I'll try filling this in too

(omitted), // 0.0 time in secs since last DGPS update. Could try 0.0

(omitted) // 0000 DGPS station ID number. Could try 0000

At KCID field elevation listed by FSNav is 862ft.

AirNav lists KCID at 869ft (real world)

GPSout 2.6.0.1 shows 979ft (center of RW9/27)

GPSout 2.6.0.7 shows 867ft (center of RW9/27) (I like that better)

Weird -- it must be XCSoar which is messing up the altitude then as both versions will certainly be giving the same value. Maybe that "Geoid" value (the "33.5 metres" in your sample earlier) is being assumed as an altitude difference by XCSoar unless I actually fill a 0.0 in? That is stupid of it -- it should read an empty field as the same as a zero!!

33.5 metres = 110 feet, 867 + 110 = 977 :roll: :roll: :roll:

No other moving map program I have tried gets this wrong. You should report the bug to the XCSoar folks.

Neither dll knows which direction the aircraft is pointed until it begins to move (I think).

Of course the DLL knows the heading!!! It's the TRACK which is non-existent until it moves. If you want the HEADING (where the nose is pointing) you need your XCSoar to read and use a different sentence -- the VTG sentence provides Mag Heading as well as Track and Ground Speed. The RMA and RMC only contain track.

This is by NMEA standards.

BTW GPS's have no idea of your heading at all, ever. They measure direction from your movement -- i.e. track. heading needs a compass reading locally.

As best I can recall, my BT308 gets that right.

It must get it wrong if it is providing Track when you aren't moving! There's no such thing then. Or maybe you should provide XCSoar with the VTG sentence -- maybe it uses Heading when there's no Track.

Pete

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
Sign in to follow this  

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use. Guidelines Privacy Policy We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.