Glitches in simvars "SIM ON GROUND" and "PLANE ALT ABOVE GROUND"

It seems the SIM ON GROUND and PLANE ALT ABOVE GROUND can have short bugged glitches in the sim while airborn.

I’ve written a fairly fancy MSFS tracklog recorder (NB21 Logger) which includes recording “SIM ON GROUND” (0|1) and “PLANE ALT ABOVE GROUND” (m) as well as more typical values like time/lat/long/alt.

The logger is used actively in the soaring community and I’ve detected in a tracklog a relatively rare case where “SIM ON GROUND” is flipping to ‘true’ and “PLANE ALT ABOVE GROUND” is flipping to ~zero for short periods. My logging period is currently one-second. The logger creates additional ‘LAND’ records when it detects “SIM ON GROUND” transitioning 0 to 1 and “TOFF” (takeoff) for the reverse.

E.g. (IGC-format tracklog with spaces added for ease of reading)

 utc time    lat   long     alt            alt agl
 hhmmss DDMM.mmm DDDMM.mmm  (m)              (m)                 GND
B192831 4854202N 01840377E A01272 01272 007 00705 0208 0007 000 1 0
B192832 4854231N 01840396E A01271 01271 007 00698 0208 0000 000 1 0
B192833 4854260N 01840415E A01271 01271 007 00698 0207 -006 000 1 0
B192834 4854289N 01840434E A01271 01271 007 00000 0207 -009 000 1 1
LNB21 192834 LAND 
B192835 4854318N 01840452E A01271 01271 007 00000 0206 -009 000 1 0
LNB21 192835 TOFF 
B192836 4854347N 01840471E A01272 01272 007 00679 0205 -012 000 1 0
B192837 4854375N 01840489E A01272 01272 007 00679 0203 -017 000 1 0
B192838 4854403N 01840506E A01272 01272 007 00666 0203 -023 000 1 0
B192839 4854432N 01840525E A01271 01271 007 00665 0202 -028 000 1 0

Note at 19:28:34 the PLANE ALT ABOVE GROUND flipping from 698 meters to 0 meters for 1 second then back to 679 meters.

My guess is this is due to a glitch in the sim AGL calculation causing the SIM ON GROUND code to glitch also, but who knows. If so, at least the tracklog has recorded the lat/long in case that’s a clue.

This data is being collected within a single

RequestDataOnSimObject(...SIMCONNECT_PERIOD.SECOND,...)

I’d have it as unlikely the bug is in my logger as the core processing loop of collecting the simvars and formatting them for output into the tracklog file record isn’t likely to break just on those adjacent records and there is no relationship in my core logging loop between the ALT AGL simvar and the ON GROUND simvar.

Hello @B21

We never had this issue on our side, so some additional information about the it would help us to investigate.

  • Do you have any idea about the frequence this issue comes up ( for example for a 1 hour flight ) ?
  • Or maybe an area or a biome type in which it is more likely to happen ?
  • A specific aircraft / aircraft type ?

Thanks in advance,

Alexandre

Hi - the logger is relatively new (use in the MSFS soaring community for the past month max) and in that timescale I’ve only seen the issue in one tracklog, albeit occurring twice in that tracklog - it contains the lat/long where the glitch occurred which might be relevant. That was the example I cut-and-paste above. The logger is used exclusively for gliders.

I understand this is a relatively rare issue and also there’s probably little code out there that cares about a short blip in the “SIM ON GROUND” simvar (my logger is an exception), but in case it reflects some more malign bug I thought it worth reporting.

My simconnect code that’s impacted is pretty generic for a logger, with a permanently-running 1-second RequestDataOnSimObject that gets a bunch of simvars including lat, long, alt agl, and SIM ON GROUND into a struct of RepeatData. My processing of a basic ‘landing’ event is to detect a simple transition between the 1-second samples of SIM ON GROUND:

        // *********************************************************************
        // ***************     Detect landing                        ***********
        // *********************************************************************
        private void processLanding(double realtime_s, RepeatData rec)
        {
            bool on_ground = (int)rec.sim_on_ground > 0;
            if (!prev_landing && on_ground)
            {
                flight_data_model.addLAND(realtime_s);
                trigger(APPEVENT_ID.Landing);
            }
            prev_landing = on_ground;
        }

I tried to reproduce it with automated tests but didn’t see any 0 for PLANE ALT ABOVE GROUND or 1 for SIM ON GROUND simvars in my logs…

Thanks for your report though, and please contact us again if you have more information about this issue. In this case we will be able to investigate more on this.

Regards,

Alexandre

thanks - it seems pretty rare - if I get any more clues from our soaring tracklogs I’ll pass that on.

1 Like

I too have had this issue. It registers as a landing in Volanta. It also causes crashes if you are landing, because then your vertical speed is rather ( negatively ) high.
I seem to have it most in the HPG H145.