PSA: 10.xx Beta firmware CIQ Position bug

Hey all,

I'd like to bring your attention to a CIQ GPS/Positioning bug in the 10.xx Alpha/Beta releases (10.42 right now). While it is under investigation by Garmin (I reported from the 10.33 alpha but was overlooked until 10.39 Beta report by user), I don't know whether it will be fixed by final release: forums.garmin.com/.../bug-apps-with-gps-crashes-at-start-10-39-epix2

Basically if you're trying to set any GPS :constellations or :configuration the app will crash when you invoke Position.enableLocationEvents. Garmin's own code snippet also crashes. This means that only "GPS Only" works (no Galileo, etc.)

So if you have any app that tries to set :constellations or :configuration you may want to have a version ready that doesn't do that and be ready to push it, should Garmin decide to release the firmware without fixing the bug.

  • I think things would be clearer of you'd watched the 2022 GDVC.  Maybe the videos will be posted soon.

    That's why I asked you if you had another source. Did they explicitly say that 3.3.6 is System 6? Or that position.enableLocationEvents configuration is System 6-only?

    You are confusing the SDK version with the VM version on a device.  They are not the same.

    They are not the same but they are correlated. When a feature comes out for VM version X of device, it's typically available in the corresponding SDK version. That's what I've seen in the past.

    Isn't that why SDK 4.0 preview was required for System 4, at the time when the latest production SDK was 3.2.x?

    It would also explain why this new 3.3.6 feature is available in both the 4.1.6 SDK and the 4.2.0 beta SDK (and no others), assuming that version 3.3.6 (for CIQ 3 devices) is correlated with 4.1.6 (for CIQ 4 devices.)

    To me it seems that the "System 6 SDK" will have a version number of 4.2.0, but we'll see what happens.

    I'll just say that without any other context (like the videos I didn't watch), to me it makes more sense that:

    - 3.3.6 for CIQ 3 devices is correlated with 4.1.6 for CIQ 4 devices (which is System 5)

    - 3.4.0 for CIQ 4 devices is correlated with 4.2.0 for CIQ 4 devices (System 6)

    It would fit the historical pattern of the CIQ System X versioning scheme. (3.2.0 was correlated with 4.0.0 and 3.3.0 was correlated with 4.1.0). I fully admit I could be wrong tho.

    I'd rather hear something directly from Garmin.

    If the Min API for something is 3.3.6, it means only system 6. 

    You still haven't provided *evidence* for this, only an assertion.

    By the same reasoning, I could've said that "if the min API for something is 3.2.1, that means only System 5", because 3.2.0 was System 4, but a new feature came out in 3.2.1. Unless again there is something you know which I don't, but you don't feel like spelling out.

    There are 2 System 6 preview device available.

    I know that, but they're both CIQ 4 devices, so they tell us nothing about the minimum version for CIQ 3 devices, nor can they tell us about any potential CIQ 3-only quirks as far as System 6 goes. That was the point I tried to make.

    For system 5, one preview device was CIQ 3 and the other was CIQ 4, so just by looking at compiler.json, you could infer that System 5 was >= 3.3 for CIQ 3 devices.

  • Seems you really missed out by not watching GDVC 2022 live.  While the videos of the breakouts will probably be posted soon, in the past they didn't include the Q&A after the breakout.  You could have asked the Garmin CIQ folks directly about stuff that confuses you..

  • Jim, FlowState is correct in this based on my reading of the 4.2 SDK docs.

    System 4 = 3.2.x & 4.0.x

    System 5 = 3.3.x & 4.1.x

    System 6 = 3.4.x & 4.2.x

    Anything feature that came in 3.3.6 is still system 5 but will only be on a device once the FW gets updated to at least 3.3.6, which may never occur for some devices.

  • Jim, FlowState is correct in this based on my reading of the 4.2 SDK docs.

    System 4 = 3.2.x & 4.0.x

    System 5 = 3.3.x & 4.1.x

    System 6 = 3.4.x & 4.2.x

    Anything feature that came in 3.3.6 is still system 5 but will only be on a device once the FW gets updated to at least 3.3.6, which may never occur for some devices.

    I mean, that would be the most logical conclusion based on past history, without any explicit knowledge to the contrary.

    It's also supported by the fact that SDK version 4.1.6 includes docs about the new 3.3.6 enableLocationEvents configuration option. If we assume that SDK version 4.1.6 is correlated with firmware / API level version 4.1.6, it also implies that they're both correlated with firmware / API level 3.3.6.

    Like why would Garmin suddenly break with convention and say "System 6 = 3.3.6 and 4.2.0". That would be a very strange decision to make, given that fact people (I mean the general public, not savvy devs like us) are already confused about System 5, and before that, System 4.

    But hey, I must just be "confused".

    Again, it would just be great if Garmin would communicate this explicitly.

    They haven't even implied the "two-track version numbers system" in a "new System Level!" forum announcement post since System 4, when they explicitly said it would be API level >= 3.2.0 for CIQ 3 devices and all new CIQ 4 devices.

    For System 5 (and now System 6), we just had to "figure it out".

    You could have asked the Garmin CIQ folks directly about stuff that confuses you..

    I'm asking them now by tagging .

    Again the difference here is that one of us is completely sure about what they're saying and other at least admits they could be wrong.

  • Seems you really missed out by not watching GDVC 2022 live.  While the videos of the breakouts will probably be posted soon, in the past they didn't include the Q&A after the breakout.  You could have asked the Garmin CIQ folks directly about stuff that confuses you..

    First it was that all my questions would've been answered if only I had watched the videos (but you refused to tell me exactly what was said that would support your case).

    Now it's "I could've asked any questions I wanted during the Q and A".

    Oh well, guess we can never ask Garmin anything else until next year! Shoot

  • The GDVC is pretty important if you are doing CIQ.  So why did you skip it? How can I quote something I watched in real time?

  • The GDVC is pretty important if you are doing CIQ.  So why did you skip it? How can I quote something I watched in real time?

    You could just answer one of my two questions:

    1) Did garmin explicitly say "3.3.6 is System 6 for CIQ 3 devices"?

    2) Did garmin explicitly say that the Position.enableLocationEvents configuration option is only for System 6?

    Either of those would support your case, and then I'd be like "ok my bad, looks like you were right".

    Or did they say something vaguer, like "in System 6, there'll be a new configuration option for Position.enableLocationEvents"? That would be open to interpretation. Or even "in System 6, you get new GPS configuration features for CIQ!" Even vaguer.

    I'm not actively developing CIQ rn, but I'm still half-interested is all.

  • You should have watched and not expect me to tell you.  Then you'd know

  • I'm not actively developing CIQ rn, but I'm still half-interested is all.

    Actually, it really seems you are just here to whine..... Upside down

  • BTW, the latest release candidate for the F6 (FW 23.83) currently has CIQ VM 3.3.6.  Since System 6 has not been released to any devices yet, I don't see how 3.3.6 is anything other than a few newer features being added to the System5 feature set late in the release cycle.

    This is not the first time minor features have been added late in a SDK minor patch release. 

    I think the part that adds to the confusion is some of the configurations settings like all systems and multiband do make the statement that it is only supported by System 6 devices like Fenix 7 and Edge 1040.  While that may be a true statement that only those devices will support the option, I don't interpret the statement to mean we have to wait till system 6 is released to use the feature, just to mean the device has to be on VM 3.3.6 and only certain devices may support the setting.  To me the 4.1.6 doc should have used something like the following statement to minimize confusion.

    This option is supported only on certain device like fenix7 and edge1040

    From a HW standpoint only the F7 family and later family of devices, which are all 4.1.x VM, can support BEIDOU, all systems, multiband, and SatIQ.  So to me, the Config GPS, GPS_GLONASS, and GPS_GALILEO should be listed as since 3.3.6, and the rest should be listed as 4.1.6.