Complete

SDK device "fenix7x": outdated data for Enduro 2

SDK devices configuration for "fenix7x" device family contains outdated firmware and Connect IQ version information for Enduro 2.

compiler.json:

{
    ...
    "deviceId": "fenix7x",
    "deviceVersion": "4866e5192c0c99025597cd8e6e841f3d774b64f7",
    "displayName": "fēnix® 7X / tactix® 7 / quatix® 7X Solar / Enduro™ 2",
    ...
    "hardwarePartNumber": "010-02541-10",
    ...
    "partNumbers": [
        {
            "connectIQVersion": "5.0.0",
            "firmwareVersion": 1723,
            ...
            "number": "006-B3907-00"
        },
        {
            "connectIQVersion": "5.0.0",
            "firmwareVersion": 1723,
            ...
            "number": "006-B3910-00"
        },
        {
            "connectIQVersion": "5.0.0",
            "firmwareVersion": 1723,
            ...
            "number": "006-B4135-00"
        },
        {
            "connectIQVersion": "4.2.3",
            "firmwareVersion": 1431,
            ...
            "number": "006-B4341-00"
        }
    ],
    ...
    "worldWidePartNumber": "006-B3907-00"
}

This causes warning during export for projects with minApiLevel="5.0.0", and PRG file for Enduro 2 is not created:

WARNING: Device name: 'fēnix® 7X / tactix® 7 / quatix® 7X Solar / Enduro™ 2' Part number: '006-B4341-00' CIQ ver: '4.2.3' is being ignored by the package tool because it does not support the minimum API Level set for this project

  • See the following comment on the other bug report for details on how CIQ part numbers appear to be mapped to CIQ store devices (for the purposes of the website):

    https://forums.garmin.com/developer/connect-iq/i/bug-reports/bug-enduro-2-will-not-compile-on-5-0-0?CommentId=eba421e2-acd9-4aa9-90a4-97860edfa86d

    When the user clicks on the compatible devices tab for an app in the CIQ store, the page makes a JSON request which maps part numbers to device names and images. This is apparently what’s used to display the list of compatible devices that the user sees.

    Currently it seems that “006-B4341-0” is still mapped to “Enduro 2”, and no other part number is mapped to “Enduro 2”, but I guess that will change at some point. I’m guessing the “main part number” (006-B3907-00), which currently maps to "fēnix® 7X - Solar Edition", "fēnix® 7X– Sapphire Solar Edition" and  "quatix® 7X – Solar Edition", will also map to “Enduro 2” in the future. Or perhaps there’ll be a new part number for Enduro 2? I don’t really know how “CIQ part numbers” are determined for/from devices or whether the part number for an existing unit can change. (The CIQ part number doesn’t match the part number on the box, for one thing)

    If you’re curious about the current mapping for each of the part numbers for fenix7x:

    006-B3907-00 =>  "fēnix® 7X - Solar Edition", "fēnix® 7X– Sapphire Solar Edition", "quatix® 7X – Solar Edition"

    006-B3910-00 => "quatix® 7X"

    006-B4135-00 => "tactix® 7 – Pro Ballistics Edition", "tactix® 7 – Pro Edition"

    006-B4341-00 => "Enduro 2" (to be removed/reassigned)

    So for fenix7x, the difference between the part numbers is solar vs non-solar, and Fenix/Tactix vs Quatix vs Enduro 2.

    For older devices, there’s typically 2 CIQ part numbers:  one for the worldwide version (WW) and one for the Asia-Pacific version (APAC.) WW would typically lack most or all APAC languages, while APAC would typically lack certain non-English WW languages. APAC would usually lag behind in firmware/CIQ updates (sometimes permanently being stuck at older versions.) I’m guessing newer devices no longer have this split between WW and APAC due to presence of adequate storage for all WW/APAC languages.

    This is one thing I wish Garmin would be more transparent about in their documentation. Part numbers are referred to in compiler warnings, in the IQ export package manifest/contents, and in the CIQ device reference documentation, but Garmin doesn’t really explain any of the above things. We basically have to figure it out ourselves.

  • Does this mean, that Fenix/Quatix/Tactix 7 have their own part numbers (and compiler can potentially produce different PRG's for each one of them), while Enduro 2 haven't? If yes, then to which category it falls to?

  • 006-B4341-00 is no longer a valid part number and it'll be removed it from the configs. Hopefully this change will roll out within the next week, but until then you can ignore this warning.

  • This was reported over a month ago and acknowledged by Garmin, but still not fixed....

    forums.garmin.com/.../bug-enduro-2-will-not-compile-on-5-0-0

  • Yes, "deviceVersion": "4866e5192c0c99025597cd8e6e841f3d774b64f7" is the version you get right now by downloading this device via SDK Manager.