1. Compatible Devices | Connect IQ | Garmin Developers
   URL: https://developer.garmin.com/connect-iq/compatible-devices
   Compatible Devices | Connect IQ | Garmin Developers

MenuCompatible Devices

×

Device Type:

AllWatches/WearablesOutdoor HandheldsEdge

Supported CIQ Version:

All

- All
- 1.2
- 1.4
- 2.4
- 3.0
- 3.1
- 3.2
- 3.3
- 3.4
- 5.0
- 5.1
- 5.2
- 6.0

| Watches/Wearables | Screen Resolution | Screen Shape | Screen Technology | API Level |
| --- | --- | --- | --- | --- |
| Approach® S50 info | 390 x 390 | round | AMOLED | 5.1 |
| Approach® S60 info | 240 x 240 | round | Memory-In-Pixel (64 colors) | 2.4 |
| Approach® S62 info | 260 x 260 | round | Memory-In-Pixel (64 colors) | 3.0 |
| Approach® S70 42mm info | 390 x 390 | round | AMOLED | 5.1 |
| Approach® S70 47mm info | 454 x 454 | round | AMOLED | 5.1 |
| Captain Marvel info | 218 x 218 | round | Memory-In-Pixel (64 colors) | 3.3 |
| D2™ Air info | 390 x 390 | round | AMOLED | 3.2 |
| D2™ Air X10 info | 416 x 416 | round | AMOLED | 5.0 |
| D2™ Bravo info | 218 x 218 | round | Memory-In-Pixel (16 colors) | 1.4 |
| D2™ Bravo Titanium info | 218 x 218 | round | Memory-In-Pixel (16 colors) | 1.4 |
| D2™ Charlie info | 240 x 240 | round | Memory-In-Pixel (64 colors) | 3.0 |
| D2™ Delta info | 240 x 240 | round | Memory-In-Pixel (64 colors) | 3.1 |
| D2™ Delta PX info | 240 x 240 | round | Memory-In-Pixel (64 colors) | 3.1 |
| D2™ Delta S info | 240 x 240 | round | Memory-In-Pixel (64 colors) | 3.1 |
| D2™ Mach 1 info | 416 x 416 | round | AMOLED | 5.2 |
| D2™ Mach 2 info | 454 x 454 | round | AMOLED | 5.2 |
| D2™ Mach 2 Pro info | 454 x 454 | round | AMOLED | 6.0 |
| Darth Vader™ info | 260 x 260 | round | Memory-In-Pixel (64 colors) | 3.3 |
| Descent™ G1 / G1 Solar info | 176 x 176 | semi-octagon | Memory-In-Pixel (2 colors) | 3.4 |
| Descent™ G2 info | 390 x 390 | round | AMOLED | 5.1 |
| Descent™ Mk1 info | 240 x 240 | round | Memory-In-Pixel (64 colors) | 3.1 |
| Descent™ Mk2 / Mk2i info | 280 x 280 | round | Memory-In-Pixel (64 colors) | 3.4 |
| Descent™ Mk2 S info | 240 x 240 | round | Memory-In-Pixel (64 colors) | 3.4 |
| Descent™ Mk3 43mm / Mk3i 43mm info | 390 x 390 | round | AMOLED | 5.1 |
| Descent™ Mk3i 51mm info | 454 x 454 | round | AMOLED | 5.1 |
| Enduro™ info | 280 x 280 | round | Memory-In-Pixel (64 colors) | 3.4 |
| Enduro™ 3 info | 280 x 280 | round | Memory-In-Pixel (64 colors) | 6.0 |
| epix™ info | 205 x 148 | rectangle | Memory-In-Pixel (64 colors) | 1.2 |
| epix™ (Gen 2) / quatix® 7 Sapphire info | 416 x 416 | round | AMOLED | 5.2 |
| epix™ Pro (Gen 2) 42mm info | 390 x 390 | round | AMOLED | 5.2 |
| epix™ Pro (Gen 2) 47mm / quatix® 7 Pro info | 416 x 416 | round | AMOLED | 5.2 |
| epix™ Pro (Gen 2) 51mm / D2™ Mach 1 Pro / tactix® 7 – AMOLED Edition info | 454 x 454 | round | AMOLED | 5.2 |
| fēnix® 3 / tactix® Bravo / quatix® 3 info | 218 x 218 | round | Memory-In-Pixel (16 colors) | 1.4 |
| fēnix® 3 HR info | 218 x 218 | round | Memory-In-Pixel (16 colors) | 1.4 |
| fēnix® 5 / quatix® 5 info | 240 x 240 | round | Memory-In-Pixel (64 colors) | 3.1 |
| fēnix® 5 Plus info | 240 x 240 | round | Memory-In-Pixel (64 colors) | 3.3 |
| fēnix® 5S info | 218 x 218 | round | Memory-In-Pixel (64 colors) | 3.1 |
| fēnix® 5S Plus info | 240 x 240 | round | Memory-In-Pixel (64 colors) | 3.3 |
| fēnix® 5X / tactix® Charlie info | 240 x 240 | round | Memory-In-Pixel (64 colors) | 3.1 |
| fēnix® 5X Plus info | 240 x 240 | round | Memory-In-Pixel (64 colors) | 3.3 |
| fēnix® 6 / 6 Solar / 6 Dual Power info | 260 x 260 | round | Memory-In-Pixel (64 colors) | 3.4 |
| fēnix® 6 Pro / 6 Sapphire / 6 Pro Solar / 6 Pro Dual Power / quatix® 6 info | 260 x 260 | round | Memory-In-Pixel (64 colors) | 3.4 |
| fēnix® 6S / 6S Solar / 6S Dual Power info | 240 x 240 | round | Memory-In-Pixel (64 colors) | 3.4 |
| fēnix® 6S Pro / 6S Sapphire / 6S Pro Solar / 6S Pro Dual Power info | 240 x 240 | round | Memory-In-Pixel (64 colors) | 3.4 |
| fēnix® 6X Pro / 6X Sapphire / 6X Pro Solar / tactix® Delta Sapphire / Delta Solar / Delta Solar - Ballistics Edition / quatix® 6X / 6X Solar / 6X Dual Power info | 280 x 280 | round | Memory-In-Pixel (64 colors) | 3.4 |
| fēnix® 7 / quatix® 7 info | 260 x 260 | round | Memory-In-Pixel (64 colors) | 5.2 |
| fēnix® 7 Pro info | 260 x 260 | round | Memory-In-Pixel (64 colors) | 5.2 |
| fēnix® 7 Pro - Solar Edition (no Wi-Fi) info | 260 x 260 | round | Memory-In-Pixel (64 colors) | 5.2 |
| fēnix® 7S info | 240 x 240 | round | Memory-In-Pixel (64 colors) | 5.2 |
| fēnix® 7S Pro info | 240 x 240 | round | Memory-In-Pixel (64 colors) | 5.2 |
| fēnix® 7X / tactix® 7 / quatix® 7X Solar / Enduro™ 2 info | 280 x 280 | round | Memory-In-Pixel (64 colors) | 5.2 |
| fēnix® 7X Pro info | 280 x 280 | round | Memory-In-Pixel (64 colors) | 5.2 |
| fēnix® 7X Pro - Solar Edition (no Wi-Fi) info | 280 x 280 | round | Memory-In-Pixel (64 colors) | 5.2 |
| fēnix® 8 43mm info | 416 x 416 | round | AMOLED | 6.0 |
| fēnix® 8 47mm / 51mm / tactix® 8 47mm / 51mm / quatix® 8 47mm / 51mm info | 454 x 454 | round | AMOLED | 6.0 |
| fēnix® 8 Pro 47mm / 51mm / MicroLED / quatix® 8 Pro 47mm / 51mm info | 454 x 454 | round | AMOLED | 6.0 |
| fēnix® 8 Solar 47mm info | 260 x 260 | round | Memory-In-Pixel (64 colors) | 6.0 |
| fēnix® 8 Solar 51mm / tactix® 8 Solar 51mm info | 280 x 280 | round | Memory-In-Pixel (64 colors) | 6.0 |
| fēnix® Chronos info | 218 x 218 | round | Memory-In-Pixel (64 colors) | 3.1 |
| fēnix® E info | 416 x 416 | round | AMOLED | 6.0 |
| First Avenger info | 260 x 260 | round | Memory-In-Pixel (64 colors) | 3.3 |
| Forerunner® 165 info | 390 x 390 | round | AMOLED | 5.2 |
| Forerunner® 165 Music info | 390 x 390 | round | AMOLED | 5.2 |
| Forerunner® 170 info | 390 x 390 | round | AMOLED | 6.0 |
| Forerunner® 170 Music info | 390 x 390 | round | AMOLED | 6.0 |
| Forerunner® 230 info | 215 x 180 | semi-round | Memory-In-Pixel (16 colors) | 1.4 |
| Forerunner® 235 info | 215 x 180 | semi-round | Memory-In-Pixel (16 colors) | 1.4 |
| Forerunner® 245 info | 240 x 240 | round | Memory-In-Pixel (64 colors) | 3.3 |
| Forerunner® 245 Music info | 240 x 240 | round | Memory-In-Pixel (64 colors) | 3.3 |
| Forerunner® 255 info | 260 x 260 | round | Memory-In-Pixel (64 colors) | 5.2 |
| Forerunner® 255 Music info | 260 x 260 | round | Memory-In-Pixel (64 colors) | 5.2 |
| Forerunner® 255s info | 218 x 218 | round | Memory-In-Pixel (64 colors) | 5.2 |
| Forerunner® 255s Music info | 218 x 218 | round | Memory-In-Pixel (64 colors) | 5.2 |
| Forerunner® 265 info | 416 x 416 | round | AMOLED | 5.2 |
| Forerunner® 265s info | 360 x 360 | round | AMOLED | 5.2 |
| Forerunner® 45 info | 208 x 208 | round | Memory-In-Pixel (8 colors) | 1.4 |
| Forerunner® 55 info | 208 x 208 | round | Memory-In-Pixel (8 colors) | 3.4 |
| Forerunner® 570 42mm info | 390 x 390 | round | AMOLED | 6.0 |
| Forerunner® 570 47mm info | 454 x 454 | round | AMOLED | 6.0 |
| Forerunner® 630 info | 215 x 180 | semi-round | Memory-In-Pixel (16 colors) | 1.4 |
| Forerunner® 645 info | 240 x 240 | round | Memory-In-Pixel (64 colors) | 3.1 |
| Forerunner® 645 Music info | 240 x 240 | round | Memory-In-Pixel (64 colors) | 3.2 |
| Forerunner® 70 info | 390 x 390 | round | AMOLED | 6.0 |
| Forerunner® 735xt info | 215 x 180 | semi-round | Memory-In-Pixel (16 colors) | 2.4 |
| Forerunner® 745 info | 240 x 240 | round | Memory-In-Pixel (64 colors) | 3.3 |
| Forerunner® 920XT info | 205 x 148 | rectangle | Memory-In-Pixel (16 colors) | 1.4 |
| Forerunner® 935 info | 240 x 240 | round | Memory-In-Pixel (64 colors) | 3.1 |
| Forerunner® 945 info | 240 x 240 | round | Memory-In-Pixel (64 colors) | 3.3 |
| Forerunner® 945 LTE info | 240 x 240 | round | Memory-In-Pixel (64 colors) | 3.4 |
| Forerunner® 955 / Solar info | 260 x 260 | round | Memory-In-Pixel (64 colors) | 5.2 |
| Forerunner® 965 info | 454 x 454 | round | AMOLED | 5.2 |
| Forerunner® 970 info | 454 x 454 | round | AMOLED | 6.0 |
| Garmin Swim™ 2 info | 208 x 208 | round | Memory-In-Pixel (8 colors) | 1.4 |
| Instinct® 2 / Solar / Dual Power / dēzl Edition info | 176 x 176 | semi-octagon | Memory-In-Pixel (2 colors) | 3.4 |
| Instinct® 2S / Solar / Dual Power info | 163 x 156 | semi-octagon | Memory-In-Pixel (2 colors) | 3.4 |
| Instinct® 2X Solar info | 176 x 176 | semi-octagon | Memory-In-Pixel (2 colors) | 3.4 |
| Instinct® 3 AMOLED 45mm info | 390 x 390 | round | AMOLED | 5.1 |
| Instinct® 3 AMOLED 50mm info | 416 x 416 | round | AMOLED | 5.1 |
| Instinct® 3 Solar 45mm / 50mm info | 176 x 176 | semi-octagon | Memory-In-Pixel (2 colors) | 5.1 |
| Instinct® Crossover info | 176 x 176 | semi-octagon | Memory-In-Pixel (2 colors) | 3.4 |
| Instinct® Crossover AMOLED info | 390 x 390 | round | AMOLED | 5.1 |
| Instinct® E 40mm info | 166 x 166 | semi-octagon | Memory-In-Pixel (2 colors) | 5.1 |
| Instinct® E 45mm info | 176 x 176 | semi-octagon | Memory-In-Pixel (2 colors) | 5.1 |
| MARQ® (Gen 2) Athlete / Adventurer / Captain / Golfer / Carbon Edition / Commander - Carbon Edition info | 390 x 390 | round | AMOLED | 5.2 |
| MARQ® (Gen 2) Aviator info | 390 x 390 | round | AMOLED | 5.2 |
| MARQ® Adventurer info | 240 x 240 | round | Memory-In-Pixel (64 colors) | 3.4 |
| MARQ® Athlete info | 240 x 240 | round | Memory-In-Pixel (64 colors) | 3.4 |
| MARQ® Aviator info | 240 x 240 | round | Memory-In-Pixel (64 colors) | 3.4 |
| MARQ® Captain / MARQ® Captain: American Magic Edition info | 240 x 240 | round | Memory-In-Pixel (64 colors) | 3.4 |
| MARQ® Commander info | 240 x 240 | round | Memory-In-Pixel (64 colors) | 3.4 |
| MARQ® Driver info | 240 x 240 | round | Memory-In-Pixel (64 colors) | 3.4 |
| MARQ® Expedition info | 240 x 240 | round | Memory-In-Pixel (64 colors) | 3.4 |
| MARQ® Golfer info | 240 x 240 | round | Memory-In-Pixel (64 colors) | 3.4 |
| Rey™ info | 218 x 218 | round | Memory-In-Pixel (64 colors) | 3.3 |
| Venu® info | 390 x 390 | round | AMOLED | 3.3 |
| Venu® 2 info | 416 x 416 | round | AMOLED | 5.0 |
| Venu® 2 Plus info | 416 x 416 | round | AMOLED | 5.0 |
| Venu® 2S info | 360 x 360 | round | AMOLED | 5.0 |
| Venu® 3 info | 454 x 454 | round | AMOLED | 5.2 |
| Venu® 3S info | 390 x 390 | round | AMOLED | 5.2 |
| Venu® 4 41mm info | 390 x 390 | round | AMOLED | 6.0 |
| Venu® 4 45mm / D2™ Air X15 info | 454 x 454 | round | AMOLED | 6.0 |
| Venu® Mercedes-Benz® Collection info | 390 x 390 | round | AMOLED | 3.3 |
| Venu® Sq info | 240 x 240 | rectangle | Transflective Liquid-Crystal (High Color) | 3.3 |
| Venu® Sq 2 info | 320 x 360 | rectangle | AMOLED | 5.0 |
| Venu® Sq 2 Music info | 320 x 360 | rectangle | AMOLED | 5.0 |
| Venu® Sq. Music Edition info | 240 x 240 | rectangle | Transflective Liquid-Crystal (High Color) | 3.3 |
| Venu® X1 info | 448 x 486 | rectangle | AMOLED | 6.0 |
| vívoactive® info | 205 x 148 | rectangle | Memory-In-Pixel (64 colors) | 1.4 |
| vívoactive® 3 info | 240 x 240 | round | Memory-In-Pixel (64 colors) | 3.1 |
| vívoactive® 3 Mercedes-Benz® Collection info | 240 x 240 | round | Memory-In-Pixel (64 colors) | 3.0 |
| vívoactive® 3 Music info | 240 x 240 | round | Memory-In-Pixel (64 colors) | 3.2 |
| vívoactive® 3 Music LTE info | 240 x 240 | round | Memory-In-Pixel (64 colors) | 3.1 |
| vívoactive® 4 info | 260 x 260 | round | Memory-In-Pixel (64 colors) | 3.3 |
| vívoactive® 4S info | 218 x 218 | round | Memory-In-Pixel (64 colors) | 3.3 |
| vívoactive® 5 info | 390 x 390 | round | AMOLED | 5.2 |
| vívoactive® 6 info | 390 x 390 | round | AMOLED | 6.0 |
| vívoactive® HR info | 148 x 205 | rectangle | Memory-In-Pixel (64 colors) | 2.4 |

| Outdoor Handhelds | Screen Resolution | Screen Shape | Screen Technology | API Level |
| --- | --- | --- | --- | --- |
| eTrex® Touch info | 240 x 400 | rectangle | Transflective Liquid-Crystal (High Color) | 5.1 |
| GPSMAP® 66s / 66i / 66sr / 66st info | 240 x 400 | rectangle | Transflective Liquid-Crystal (High Color) | 3.1 |
| GPSMAP® 67 / 67i info | 240 x 400 | rectangle | Transflective Liquid-Crystal (High Color) | 3.2 |
| GPSMAP® 86s / 86sc / 86i / 86sci info | 240 x 400 | rectangle | Transflective Liquid-Crystal (High Color) | 3.0 |
| GPSMAP® H1 / H1i Plus info | 282 x 470 | rectangle | Transflective Liquid-Crystal (High Color) | 5.0 |
| Montana® 7 Series info | 480 x 800 | rectangle | Transflective Liquid-Crystal (High Color) | 3.2 |
| Oregon® 7 Series info | 240 x 400 | rectangle | Transflective Liquid-Crystal (High Color) | 3.0 |
| Rino® 7 Series info | 240 x 400 | rectangle | Transflective Liquid-Crystal (High Color) | 3.0 |

| Edge | Screen Resolution | Screen Shape | Screen Technology | API Level |
| --- | --- | --- | --- | --- |
| Edge® 1000 / Explore info | 240 x 400 | rectangle | Transflective Liquid-Crystal (High Color) | 2.4 |
| Edge® 1030 info | 282 x 470 | rectangle | Transflective Liquid-Crystal (High Color) | 3.3 |
| Edge® 1030 / Bontrager info | 282 x 470 | rectangle | Transflective Liquid-Crystal (High Color) | 3.3 |
| Edge® 1030 Plus info | 282 x 470 | rectangle | Transflective Liquid-Crystal (High Color) | 3.3 |
| Edge® 1040 / 1040 Solar info | 282 x 470 | rectangle | Transflective Liquid-Crystal (High Color) | 6.0 |
| Edge® 1050 info | 480 x 800 | rectangle | Transflective Liquid-Crystal (High Color) | 6.0 |
| Edge® 130 info | 230 x 303 | rectangle | Transflective Liquid-Crystal (Single Color) | 3.1 |
| Edge® 130 Plus info | 230 x 303 | rectangle | Transflective Liquid-Crystal (Single Color) | 3.2 |
| Edge® 520 info | 200 x 265 | rectangle | Transflective Liquid-Crystal (High Color) | 2.4 |
| Edge® 520 Plus info | 200 x 265 | rectangle | Transflective Liquid-Crystal (High Color) | 3.1 |
| Edge® 530 info | 246 x 322 | rectangle | Transflective Liquid-Crystal (High Color) | 3.3 |
| Edge® 540 / 540 Solar info | 246 x 322 | rectangle | Transflective Liquid-Crystal (High Color) | 6.0 |
| Edge® 550 info | 420 x 600 | rectangle | Transflective Liquid-Crystal (High Color) | 6.0 |
| Edge® 820 / Explore info | 200 x 265 | rectangle | Transflective Liquid-Crystal (High Color) | 3.1 |
| Edge® 830 info | 246 x 322 | rectangle | Transflective Liquid-Crystal (High Color) | 3.3 |
| Edge® 840 / 840 Solar info | 246 x 322 | rectangle | Transflective Liquid-Crystal (High Color) | 6.0 |
| Edge® 850 info | 420 x 600 | rectangle | Transflective Liquid-Crystal (High Color) | 6.0 |
| Edge® Explore info | 240 x 400 | rectangle | Transflective Liquid-Crystal (High Color) | 3.1 |
| Edge® Explore 2 info | 240 x 400 | rectangle | Transflective Liquid-Crystal (High Color) | 5.1 |
| Edge® MTB info | 240 x 320 | rectangle | Transflective Liquid-Crystal (High Color) | 6.0 |

2. Device Reference
   URL: https://developer.garmin.com/connect-iq/device-reference/fenix3/
   Device Reference

MenuDevice Reference

Device Reference
[Garmin Developers](https://developer.garmin.com/)
#
* [Overview](https://developer.garmin.com/connect-iq/overview/)
*
* [Compatible Devices](https://developer.garmin.com/connect-iq/compatible-devices/)
*
* [API Docs](https://developer.garmin.com/connect-iq/api-docs/)
*
* [Get the SDK](https://developer.garmin.com/connect-iq/sdk/)
*
* [Submit an App](https://developer.garmin.com/connect-iq/submit-an-app/)
*
* [Stay Informed](https://developer.garmin.com/connect-iq/stay-informed/)
*
* [Connect IQ Basics](https://developer.garmin.com/connect-iq/connect-iq-basics/)
*
* [Monkey C](https://developer.garmin.com/connect-iq/monkey-c/)
*
* [Core Topics](https://developer.garmin.com/connect-iq/core-topics/)
*
* [User Experience Guidelines](https://developer.garmin.com/connect-iq/user-experience-guidelines/)
*
* [Personality Library](https://developer.garmin.com/connect-iq/personality-library/)
*
* [Connect IQ FAQ](https://developer.garmin.com/connect-iq/connect-iq-faq/)
*
* [Reference Guides](https://developer.garmin.com/connect-iq/reference-guides/)
*
* [App Review Guidelines](https://developer.garmin.com/connect-iq/app-review-guidelines/)
*
* [Monetization](https://developer.garmin.com/connect-iq/monetization/)
*
* [Device Reference](https://developer.garmin.com/connect-iq/device-reference/)
*
* [Approach® S50](https://developer.garmin.com/connect-iq/device-reference/approachs50/)
* [Approach® S60](https://developer.garmin.com/connect-iq/device-reference/approachs60/)
* [Approach® S62](https://developer.garmin.com/connect-iq/device-reference/approachs62/)
* [Approach® S70 42mm](https://developer.garmin.com/connect-iq/device-reference/approachs7042mm/)
* [Approach® S70 47mm](https://developer.garmin.com/connect-iq/device-reference/approachs7047mm/)
* [D2™ Air](https://developer.garmin.com/connect-iq/device-reference/d2air/)
* [D2™ Air X10](https://developer.garmin.com/connect-iq/device-reference/d2airx10/)
* [D2™ Bravo](https://developer.garmin.com/connect-iq/device-reference/d2bravo/)
* [D2™ Bravo Titanium](https://developer.garmin.com/connect-iq/device-reference/d2bravo-titanium/)
* [D2™ Charlie](https://developer.garmin.com/connect-iq/device-reference/d2charlie/)
* [D2™ Delta](https://developer.garmin.com/connect-iq/device-reference/d2delta/)
* [D2™ Delta PX](https://developer.garmin.com/connect-iq/device-reference/d2deltapx/)
* [D2™ Delta S](https://developer.garmin.com/connect-iq/device-reference/d2deltas/)
* [D2™ Mach 1](https://developer.garmin.com/connect-iq/device-reference/d2mach1/)
* [D2™ Mach 2](https://developer.garmin.com/connect-iq/device-reference/d2mach2/)
* [D2™ Mach 2 Pro](https://developer.garmin.com/connect-iq/device-reference/d2mach2pro/)
* [Descent™ G1 / G1 Solar](https://developer.garmin.com/connect-iq/device-reference/descentg1/)
* [Descent™ G2](https://developer.garmin.com/connect-iq/device-reference/descentg2/)
* [Descent™ Mk1](https://developer.garmin.com/connect-iq/device-reference/descentmk1/)
* [Descent™ Mk2 / Mk2i](https://developer.garmin.com/connect-iq/device-reference/descentmk2/)
* [Descent™ Mk2 S](https://developer.garmin.com/connect-iq/device-reference/descentmk2s/)
* [Descent™ Mk3 43mm / Mk3i 43mm](https://developer.garmin.com/connect-iq/device-reference/descentmk343mm/)
* [Descent™ Mk3i 51mm](https://developer.garmin.com/connect-iq/device-reference/descentmk351mm/)
* [Edge® 1030](https://developer.garmin.com/connect-iq/device-reference/edge1030/)
* [Edge® 1030 / Bontrager](https://developer.garmin.com/connect-iq/device-reference/edge1030bontrager/)
* [Edge® 1030 Plus](https://developer.garmin.com/connect-iq/device-reference/edge1030plus/)
* [Edge® 1040 / 1040 Solar](https://developer.garmin.com/connect-iq/device-reference/edge1040/)
* [Edge® 1050](https://developer.garmin.com/connect-iq/device-reference/edge1050/)
* [Edge® 130](https://developer.garmin.com/connect-iq/device-reference/edge130/)
* [Edge® 130 Plus](https://developer.garmin.com/connect-iq/device-reference/edge130plus/)
* [Edge® 520 Plus](https://developer.garmin.com/connect-iq/device-reference/edge520plus/)
* [Edge® 530](https://developer.garmin.com/connect-iq/device-reference/edge530/)
* [Edge® 540 / 540 Solar](https://developer.garmin.com/connect-iq/device-reference/edge540/)
* [Edge® 550](https://developer.garmin.com/connect-iq/device-reference/edge550/)
* [Edge® 820 / Explore](https://developer.garmin.com/connect-iq/device-reference/edge820/)
* [Edge® 830](https://developer.garmin.com/connect-iq/device-reference/edge830/)
* [Edge® 840 / 840 Solar](https://developer.garmin.com/connect-iq/device-reference/edge840/)
* [Edge® 850](https://developer.garmin.com/connect-iq/device-reference/edge850/)
* [Edge® 1000 / Explore](https://developer.garmin.com/connect-iq/device-reference/edge-1000/)
* [Edge® 520](https://developer.garmin.com/connect-iq/device-reference/edge-520/)
* [Edge® Explore](https://developer.garmin.com/connect-iq/device-reference/edgeexplore/)
* [Edge® Explore 2](https://developer.garmin.com/connect-iq/device-reference/edgeexplore2/)
* [Edge® MTB](https://developer.garmin.com/connect-iq/device-reference/edgemtb/)
* [Enduro™](https://developer.garmin.com/connect-iq/device-reference/enduro/)
* [Enduro™ 3](https://developer.garmin.com/connect-iq/device-reference/enduro3/)
* [epix™](https://developer.garmin.com/connect-iq/device-reference/epix/)
* [epix™ (Gen 2) / quatix® 7 Sapphire](https://developer.garmin.com/connect-iq/device-reference/epix2/)
* [epix™ Pro (Gen 2) 42mm](https://developer.garmin.com/connect-iq/device-reference/epix2pro42mm/)
* [epix™ Pro (Gen 2) 47mm / quatix® 7 Pro](https://developer.garmin.com/connect-iq/device-reference/epix2pro47mm/)
* [epix™ Pro (Gen 2) 51mm / D2™ Mach 1 Pro / tactix® 7 – AMOLED Edition](https://developer.garmin.com/connect-iq/device-reference/epix2pro51mm/)
* [eTrex® Touch](https://developer.garmin.com/connect-iq/device-reference/etrextouch/)
* [fēnix® 3 / tactix® Bravo / quatix® 3](https://developer.garmin.com/connect-iq/device-reference/fenix3/)
* [fēnix® 3 HR](https://developer.garmin.com/connect-iq/device-reference/fenix3-hr/)
* [fēnix® 5 / quatix® 5](https://developer.garmin.com/connect-iq/device-reference/fenix5/)
* [fēnix® 5 Plus](https://developer.garmin.com/connect-iq/device-reference/fenix5plus/)
* [fēnix® 5S](https://developer.garmin.com/connect-iq/device-reference/fenix5s/)
* [fēnix® 5S Plus](https://developer.garmin.com/connect-iq/device-reference/fenix5splus/)
* [fēnix® 5X / tactix® Charlie](https://developer.garmin.com/connect-iq/device-reference/fenix5x/)
* [fēnix® 5X Plus](https://developer.garmin.com/connect-iq/device-reference/fenix5xplus/)
* [fēnix® 6 / 6 Solar / 6 Dual Power](https://developer.garmin.com/connect-iq/device-reference/fenix6/)
* [fēnix® 6 Pro / 6 Sapphire / 6 Pro Solar / 6 Pro Dual Power / quatix® 6](https://developer.garmin.com/connect-iq/device-reference/fenix6pro/)
* [fēnix® 6S / 6S Solar / 6S Dual Power](https://developer.garmin.com/connect-iq/device-reference/fenix6s/)
* [fēnix® 6S Pro / 6S Sapphire / 6S Pro Solar / 6S Pro Dual Power](https://developer.garmin.com/connect-iq/device-reference/fenix6spro/)
* [fēnix® 6X Pro / 6X Sapphire / 6X Pro Solar / tactix® Delta Sapphire / Delta Solar / Delta Solar - Ballistics Edition / quatix® 6X / 6X Solar / 6X Dual Power](https://developer.garmin.com/connect-iq/device-reference/fenix6xpro/)
* [fēnix® 7 / quatix® 7](https://developer.garmin.com/connect-iq/device-reference/fenix7/)
* [fēnix® 7 Pro](https://developer.garmin.com/connect-iq/device-reference/fenix7pro/)
* [fēnix® 7 Pro - Solar Edition (no Wi-Fi)](https://developer.garmin.com/connect-iq/device-reference/fenix7pronowifi/)
* [fēnix® 7S](https://developer.garmin.com/connect-iq/device-reference/fenix7s/)
* [fēnix® 7S Pro](https://developer.garmin.com/connect-iq/device-reference/fenix7spro/)
* [fēnix® 7X / tactix® 7 / quatix® 7X Solar / Enduro™ 2](https://developer.garmin.com/connect-iq/device-reference/fenix7x/)
* [fēnix® 7X Pro](https://developer.garmin.com/connect-iq/device-reference/fenix7xpro/)
* [fēnix® 7X Pro - Solar Edition (no Wi-Fi)](https://developer.garmin.com/connect-iq/device-reference/fenix7xpronowifi/)
* [fēnix® 8 43mm](https://developer.garmin.com/connect-iq/device-reference/fenix843mm/)
* [fēnix® 8 47mm / 51mm / tactix® 8 47mm / 51mm / quatix® 8 47mm / 51mm](https://developer.garmin.com/connect-iq/device-reference/fenix847mm/)
* [fēnix® 8 Pro 47mm / 51mm / MicroLED / quatix® 8 Pro 47mm / 51mm](https://developer.garmin.com/connect-iq/device-reference/fenix8pro47mm/)
* [fēnix® 8 Solar 47mm](https://developer.garmin.com/connect-iq/device-reference/fenix8solar47mm/)
* [fēnix® 8 Solar 51mm / tactix® 8 Solar 51mm](https://developer.garmin.com/connect-iq/device-reference/fenix8solar51mm/)
* [fēnix® Chronos](https://developer.garmin.com/connect-iq/device-reference/fenixchronos/)
* [fēnix® E](https://developer.garmin.com/connect-iq/device-reference/fenixe/)
* [Forerunner® 165](https://developer.garmin.com/connect-iq/device-reference/fr165/)
* [Forerunner® 165 Music](https://developer.garmin.com/connect-iq/device-reference/fr165m/)
* [Forerunner® 170](https://developer.garmin.com/connect-iq/device-reference/fr170/)
* [Forerunner® 170 Music](https://developer.garmin.com/connect-iq/device-reference/fr170m/)
* [Forerunner® 230](https://developer.garmin.com/connect-iq/device-reference/fr230/)
* [Forerunner® 235](https://developer.garmin.com/connect-iq/device-reference/fr235/)
* [Forerunner® 245](https://developer.garmin.com/connect-iq/device-reference/fr245/)
* [Forerunner® 245 Music](https://developer.garmin.com/connect-iq/device-reference/fr245m/)
* [Forerunner® 255](https://developer.garmin.com/connect-iq/device-reference/fr255/)
* [Forerunner® 255 Music](https://developer.garmin.com/connect-iq/device-reference/fr255m/)
* [Forerunner® 255s](https://developer.garmin.com/connect-iq/device-reference/fr255s/)
* [Forerunner® 255s Music](https://developer.garmin.com/connect-iq/device-reference/fr255sm/)
* [Forerunner® 265](https://developer.garmin.com/connect-iq/device-reference/fr265/)
* [Forerunner® 265s](https://developer.garmin.com/connect-iq/device-reference/fr265s/)
* [Forerunner® 45](https://developer.garmin.com/connect-iq/device-reference/fr45/)
* [Forerunner® 55](https://developer.garmin.com/connect-iq/device-reference/fr55/)
* [Forerunner® 570 42mm](https://developer.garmin.com/connect-iq/device-reference/fr57042mm/)
* [Forerunner® 570 47mm](https://developer.garmin.com/connect-iq/device-reference/fr57047mm/)
* [Forerunner® 630](https://developer.garmin.com/connect-iq/device-reference/fr630/)
* [Forerunner® 645](https://developer.garmin.com/connect-iq/device-reference/fr645/)
* [Forerunner® 645 Music](https://developer.garmin.com/connect-iq/device-reference/fr645m/)
* [Forerunner® 70](https://developer.garmin.com/connect-iq/device-reference/fr70/)
* [Forerunner® 735xt](https://developer.garmin.com/connect-iq/device-reference/fr735xt/)
* [Forerunner® 745](https://developer.garmin.com/connect-iq/device-reference/fr745/)
* [Forerunner® 920XT](https://developer.garmin.com/connect-iq/device-reference/fr920xt/)
* [Forerunner® 935](https://developer.garmin.com/connect-iq/device-reference/fr935/)
* [Forerunner® 945](https://developer.garmin.com/connect-iq/device-reference/fr945/)
* [Forerunner® 945 LTE](https://developer.garmin.com/connect-iq/device-reference/fr945lte/)
* [Forerunner® 955 / Solar](https://developer.garmin.com/connect-iq/device-reference/fr955/)
* [Forerunner® 965](https://developer.garmin.com/connect-iq/device-reference/fr965/)
* [Forerunner® 970](https://developer.garmin.com/connect-iq/device-reference/fr970/)
* [Garmin Swim™ 2](https://developer.garmin.com/connect-iq/device-reference/garminswim2/)
* [GPSMAP® 66s / 66i / 66sr / 66st](https://developer.garmin.com/connect-iq/device-reference/gpsmap66/)
* [GPSMAP® 67 / 67i](https://developer.garmin.com/connect-iq/device-reference/gpsmap67/)
* [GPSMAP® 86s / 86sc / 86i / 86sci](https://developer.garmin.com/connect-iq/device-reference/gpsmap86/)
* [GPSMAP® H1 / H1i Plus](https://developer.garmin.com/connect-iq/device-reference/gpsmaph1/)
* [Instinct® 2 / Solar / Dual Power / dēzl Edition](https://developer.garmin.com/connect-iq/device-reference/instinct2/)
* [Instinct® 2S / Solar / Dual Power](https://developer.garmin.com/connect-iq/device-reference/instinct2s/)
* [Instinct® 2X Solar](https://developer.garmin.com/connect-iq/device-reference/instinct2x/)
* [Instinct® 3 AMOLED 45mm](https://developer.garmin.com/connect-iq/device-reference/instinct3amoled45mm/)
* [Instinct® 3 AMOLED 50mm](https://developer.garmin.com/connect-iq/device-reference/instinct3amoled50mm/)
* [Instinct® 3 Solar 45mm / 50mm](https://developer.garmin.com/connect-iq/device-reference/instinct3solar45mm/)
* [Instinct® Crossover](https://developer.garmin.com/connect-iq/device-reference/instinctcrossover/)
* [Instinct® Crossover AMOLED](https://developer.garmin.com/connect-iq/device-reference/instinctcrossoveramoled/)
* [Instinct® E 40mm](https://developer.garmin.com/connect-iq/device-reference/instincte40mm/)
* [Instinct® E 45mm](https://developer.garmin.com/connect-iq/device-reference/instincte45mm/)
* [Captain Marvel](https://developer.garmin.com/connect-iq/device-reference/legacyherocaptainmarvel/)
* [First Avenger](https://developer.garmin.com/connect-iq/device-reference/legacyherofirstavenger/)
* [Darth Vader™](https://developer.garmin.com/connect-iq/device-reference/legacysagadarthvader/)
* [Rey™](https://developer.garmin.com/connect-iq/device-reference/legacysagarey/)
* [MARQ® (Gen 2) Athlete / Adventurer / Captain / Golfer / Carbon Edition / Commander - Carbon Edition](https://developer.garmin.com/connect-iq/device-reference/marq2/)
* [MARQ® (Gen 2) Aviator](https://developer.garmin.com/connect-iq/device-reference/marq2aviator/)
* [MARQ® Adventurer](https://developer.garmin.com/connect-iq/device-reference/marqadventurer/)
* [MARQ® Athlete](https://developer.garmin.com/connect-iq/device-reference/marqathlete/)
* [MARQ® Aviator](https://developer.garmin.com/connect-iq/device-reference/marqaviator/)
* [MARQ® Captain / MARQ® Captain: American Magic Edition](https://developer.garmin.com/connect-iq/device-reference/marqcaptain/)
* [MARQ® Commander](https://developer.garmin.com/connect-iq/device-reference/marqcommander/)
* [MARQ® Driver](https://developer.garmin.com/connect-iq/device-reference/marqdriver/)
* [MARQ® Expedition](https://developer.garmin.com/connect-iq/device-reference/marqexpedition/)
* [MARQ® Golfer](https://developer.garmin.com/connect-iq/device-reference/marqgolfer/)
* [Montana® 7 Series](https://developer.garmin.com/connect-iq/device-reference/montana7xx/)
* [Oregon® 7 Series](https://developer.garmin.com/connect-iq/device-reference/oregon7xx/)
* [Rino® 7 Series](https://developer.garmin.com/connect-iq/device-reference/rino7xx/)
* [Venu®](https://developer.garmin.com/connect-iq/device-reference/venu/)
* [Venu® 2](https://developer.garmin.com/connect-iq/device-reference/venu2/)
* [Venu® 2 Plus](https://developer.garmin.com/connect-iq/device-reference/venu2plus/)
* [Venu® 2S](https://developer.garmin.com/connect-iq/device-reference/venu2s/)
* [Venu® 3](https://developer.garmin.com/connect-iq/device-reference/venu3/)
* [Venu® 3S](https://developer.garmin.com/connect-iq/device-reference/venu3s/)
* [Venu® 4 41mm](https://developer.garmin.com/connect-iq/device-reference/venu441mm/)
* [Venu® 4 45mm / D2™ Air X15](https://developer.garmin.com/connect-iq/device-reference/venu445mm/)
* [Venu® Mercedes-Benz® Collection](https://developer.garmin.com/connect-iq/device-reference/venud/)
* [Venu® Sq](https://developer.garmin.com/connect-iq/device-reference/venusq/)
* [Venu® Sq 2](https://developer.garmin.com/connect-iq/device-reference/venusq2/)
* [Venu® Sq 2 Music](https://developer.garmin.com/connect-iq/device-reference/venusq2m/)
* [Venu® Sq. Music Edition](https://developer.garmin.com/connect-iq/device-reference/venusqm/)
* [Venu® X1](https://developer.garmin.com/connect-iq/device-reference/venux1/)
* [vívoactive®](https://developer.garmin.com/connect-iq/device-reference/vivoactive/)
* [vívoactive® 3](https://developer.garmin.com/connect-iq/device-reference/vivoactive3/)
* [vívoactive® 3 Mercedes-Benz® Collection](https://developer.garmin.com/connect-iq/device-reference/vivoactive3d/)
* [vívoactive® 3 Music](https://developer.garmin.com/connect-iq/device-reference/vivoactive3m/)
* [vívoactive® 3 Music LTE](https://developer.garmin.com/connect-iq/device-reference/vivoactive3mlte/)
* [vívoactive® 4](https://developer.garmin.com/connect-iq/device-reference/vivoactive4/)
* [vívoactive® 4S](https://developer.garmin.com/connect-iq/device-reference/vivoactive4s/)
* [vívoactive® 5](https://developer.garmin.com/connect-iq/device-reference/vivoactive5/)
* [vívoactive® 6](https://developer.garmin.com/connect-iq/device-reference/vivoactive6/)
* [vívoactive® HR](https://developer.garmin.com/connect-iq/device-reference/vivoactive-hr/)
MenuDevice Reference

3. CIQ 2 and fenix3 - Connect IQ App Development Discussion - Connect IQ - Garmin Forums
   URL: https://forums.garmin.com/developer/connect-iq/f/discussion/4058/ciq-2-and-fenix3
   CIQ 2 and fenix3 - Connect IQ App Development Discussion - Connect IQ - Garmin Forums

- Replies 3 replies
- Subscribers 16 subscribers
- Views 497 views
- Users 0 members are here

Options

- Share
- More
- Cancel

Related

# CIQ 2 and fenix3

Will be ever availaible CIQ 2 for fenix3 or there are some HW limitations? Thank you.

- Sign in to reply
- Cancel

The Fenix3 will be on a 1.x VM - 2.x requires more memory, etc. Some of the 2.x functions have been moved back to 1.3 (and you use the 2.x SDK to build for 1.3).See https://developer.garmin.com/index.php/blog/post/connect-iq-2-the-biker-has-arrived

Thank you for the answer. Is there any place where can I see the list of functions moved to 1.3 from 2.x? Or to be more exact, I am interested in difference between 1.2 and 1.3, (I found just list of supported devices, not list of changes).

Here is a general list of what's on 1.3 vs 2.x: https://developer.garmin.com/index.php/blog/post/connect-iq-2-the-biker-has-arrived For specific functions, in the api documentation, you'll notice "since..." on things. If they are Since: 1.3.0 you can use them on 1.3 and 2.x but things flagged Since: 2.1.0 aren't available on 1.3

4. Device API levels - Connect IQ App Development Discussion - Connect IQ - Garmin Forums
   URL: https://forums.garmin.com/developer/connect-iq/f/discussion/354168/device-api-levels
   Device API levels - Connect IQ App Development Discussion - Connect IQ - Garmin Forums

- State Not Answered
- Replies 9 replies
- Subscribers 20 subscribers
- Views 5007 views
- Users 0 members are here

- apilevel

Options

- Share
- More
- Cancel

Related

# Device API levels

Is there any way to know when and which version is available to devices?

The "Compatible Devices" page seems to be way behind? As I understand it

the API level shown there is the max level. E.g. the devices with the most recent API

(4.2) is still showing 4.2.0 there, when 4.2.1 was reported at least as early as June to

be working on a number of devices ...

Cheers

- Sign in to reply
- Cancel

## Top Replies

- TL;DR for any given device, compiler.json in the SDK device folder has the minimum required CIQ version for that device, which is also the maximum expected CIQ version for the app dev.--Open the SDK…

## All Replies

TL;DR for any given device, compiler.json in the SDK device folder has the minimum required CIQ version for that device, which is also the maximum expected CIQ version for the app dev.

--

Open the SDK's devices folder, and navigate to compiler.json for the device of interest.

On Windows, the devices folder is at %appdata%\garmin\connectiq\devices. This folder contains a separate folder for each device (e.g. fr265).

Each device folder has several files, including compiler.json, has a partNumbers array containing information about each part number (this is not the same part number that's shown on the box or listed on the website).

Newer devices may only have one part number, while older devices may have different part numbers for worldwide (WW) and Asia-Pacific (APAC) devices. The value for worldWidePartNumber will indicate which partNumber is WW (which means that its CIQ version will always be newer or equal to the APAC CIQ version.)

Each partNumbers element has the following fields:

connectIQVersion: e.g. "4.2.3"

firmwareVersion: e.g. 1616

number: the actual part number e.g. "006-B4257-00"

connectIqVersion and firmwareVersion are actually the minimum versions an app built with device file can expect to see when deployed to a device. This is enforced when the user tries to download the app - if the device has a lower CIQ or firmware version than the minimum, the user will be prompted to updated.

Since those are the minimum required versions for the user, they are also the maximum expected versions for the app dev. e.g. If we know every user has 4.2.3 or higher, then we can't assume they have anything higher than 4.2.3.

Thanks,

So ... do the compiler.json files represent what's been pushed out to actual devices?

It's the minimum api level that the device can have to install an app, not what may be on the device today.

Also note that you may see multiple part numbers in the same file, with the common case being APAC and Word Wide devices, where the APAC version may be lower than the WW version.

Look at using "has" to see if something is supported or not

No, and you're welcome to vote on this "feature" (documentation) request: forums.garmin.com/.../improve-documentation-add-api-levels-and-system-levels-to-device-reference

I'll add that any "available" information (documentation, compiler.json) only has information about what would be the max api level if a certain kind of device was upgraded to the latest available firmware. There's no information on the minimum possible. Even when you think you have that information it's not really that. When you look at a certain device family, and then split it by part numbers then you'll only know what would be the minimum api level of that device family if all the devices would be ugraded to the latest firmware version. The problem is that once there is a new FW version the json is updated to indicate the CURRENT minimum version, but if a device doesn't upgrade the FW then they still have an older CIQ with older api versions... And I am not aware of any official documentation that would tell what would be the lowest version of a part number if the FW wasn't upgraded since the 1st item that came out of the factory.

BTW I made some effort to collect the data, and it may be correct for devices that came out since I started the project (but not necessarily, because it depends on the json files in the devices directory, that might or might not be correct, and more importantly I am not checking every day if there are new versions of the devices in the sdk manager so I might have skipped/missed some) The idea is that I have a script that scans the device files and extracts the min, max CIQ version for the devices, and it ADDS the newly available versions to a list, but also KEEPS the older versions in the csv files: https://github.com/flocsy/garmin-dev-tools(look at the files under csv/)

Interesting, thanks.

So I am drawing the conclusion that when the ciq version is updated in the compiler.json, then it's also possible for users to update real devices (timing difference between sdk update and real device update, earlier or later)?

Devices can. and often do, get a CIQ version update before you see it in compiler.json. The last digit (the "3" in 4.2.3 for example) can just indicate a bug fix level. It might still show as 4.2.1 in compiler.json. as that's the minimum level a user needs to have to install your app. If the user has a level less that 4.2.1, they will be told they need a firmware update to install your app, but they don't need to have 4.2.3 -just 4.2.1 or later..

flocsy🤠 said:

I'll add that any "available" information (documentation, compiler.json) only has information about what would be the max api level if a certain kind of device was upgraded to the latest available firmware. There's no information on the minimum possible. Even when you think you have that information it's not really that.

I don't agree with this. Based on other threads and personal experience, if an app is built against a given device file, then the user will not be able to install it unless their device has the CIQ API version and firmware version specified in the device file, at a minimum. You will see that the exported .IQ file (zip archive) contains a manifest XML file which has the CIQ/firmware version for each device (and the naming scheme is something like "minApiVersion" which indeed suggests it's the minimum version.)

This means a device file does indeed specify the minimum possible CIQ version (*) for any given device, for apps that are built against that version of the device file. The only use case which isn't covered by looking at the latest device files is when you have an *old* app which hasn't been built again the latest device files. In this case, if you have a copy of the exported IQ file, you should be able to look at manifest to determine the minimum CIQ/firmware versions for that version of the app.

(* which is also the maximum CIQ version that you can safely *assume* is present)

Some anecdotal evidence: look at all the threads complaining that users can't install Spotify on their device because it has old firmware. There's also another thread that directly addresses this topic, but I don't have a link to it at the moment.

You can also test this for yourself by hand-editing a device file to increase the API version or firmware version to be greater than what's installed on your real device, uploading a beta app built against that device file, and observing what happens when you try to install it.

By the way, as far as what's in the manifest.xml file, this is what I pretty much always have:

minApiLevel="1.2.0"

if an app is only for devices with 3.x or higher, that is determined by what targets I add for the app. I just don't include any CIQ 1 or CIQ 2 devices.

The TL;DR is that the firmware version and CIQ version in a device's compiler.json are in fact the minimum versions your app will see on the device, when your app is built against that version of the device file; if the device doesn't have those versions, the store will prevent the user from installing the app.

This is the cause of the infamous complaints about being unable to install Spotify (for example) without a device update.

But yes, it is possible for a device to have a lower or higher version. If the version is lower, then they will be asked to update their app. If the version is higher, the app will install without any problems.

5. SDK version vs connect iq API version ? - Connect IQ App Development Discussion - Connect IQ - Garmin Forums
   URL: https://forums.garmin.com/developer/connect-iq/f/discussion/357697/sdk-version-vs-connect-iq-api-version
   SDK version vs connect iq API version ? - Connect IQ App Development Discussion - Connect IQ - Garmin Forums

- State Not Answered
- Replies 11 replies
- Subscribers 22 subscribers
- Views 5629 views
- Users 0 members are here

Options

Related

# SDK version vs connect iq API version ?

Hello + apology for this stupid question - but I am a bit confused:

as per

the SDK and the Connect IQ API are 2 different things, which I find confusing, since I thought they were the same (as in 'Connect-IQ SDK API version X', just like 'Java SDK version X') ,

which apparently is not the case; but then - following that - and assuming that the API I have been using in my watchfaces has been that if the Connect-IQ rather than the (apparently different thing called) SDK, my next question is what is the SDK used for ?

And while on the topic of confusion - what is this thing with the so-called 'system', e.g. 'system 7' mention here: https://forums.garmin.com/developer/connect-iq/b/news-announcements/posts/welcome-to-system-7

I.e. are 'System' and 'SDK' and 'Connect IQ API' all different things/software ? e.g. given the following statement from the system-7-news link above:

The`has` operator allows you to check if a symbol exists in a class or module. In the past, this compiled as a runtime check, but it will now be evaluated at the compile time in the System 7 SDK when possible. This allows the optimizer to eliminate the branch and unnecessary code, as well.

how do I know what 'system' a given device X (e.g. Fenix 7/Epix2/etc) has/is planned to get so i could tell if it would benefit from that improvement/optimization ?

- Sign in to reply
- Cancel

## Top Replies

I.e. are 'System' and 'SDK' and 'Connect IQ API' all different things/software ? e.g. given the following statement from the system-7-news link above:

It's just two things…

flowstate thank you very very much for your patience and kindness and willingness to take the time to clarify this arguably-confusing (to the newbies among us) topic and with such clarity and full details…

- As dpawlyk said, each version of the SDK gives you access to features in a given CIQ API level. Some devices may require a certain minimum SDK version, as well. If you always use the latest SDK version…

## All Replies

I.e. are 'System' and 'SDK' and 'Connect IQ API' all different things/software ? e.g. given the following statement from the system-7-news link above:

It's just two things.

"Connect IQ API" is what the devices support (software running on the device). Soon to be 5.x.x).

"SDK" is the software used to develop IQ programs (software running on your PC). Soon to be 7.x.x (AKA "System 7).

Put another way, SDK 7.x.x provides access to the "Connect IQ API" 5.x.x.

how do I know what 'system' a given device X (e.g. Fenix 7/Epix2/etc) has/is planned to get so i could tell if it would benefit from that improvement/optimization ?

This is a feature of the software running on your PC (the SDK; AKA "System 7"). It's describing how the device code is being created. That is, all the devices will see the result.

As dpawlyk said, each version of the SDK gives you access to features in a given CIQ API level. Some devices may require a certain minimum SDK version, as well. If you always use the latest SDK version, you will be able to build for all devices (regardless of the API level on the device.)

In the past, API levels and SDK versions were aligned in the sense that if you wanted CIQ API Level 4.2.6 features (for example), you needed CIQ SDK 4.2.6 (*). But CIQ SDK 4.2.6 is able to build software that runs on all devices with API level <= 4.2.6.

(* I am glossing over the fact that 3.X devices are still receiving new firmware versions, with new CIQ API levels in the 3.X "track", which means that the CIQ 4.0.1 SDK, for example, doesn't support CIQ API Level 3.3 features. See explanation of System levels below.)

Now it seems that they are aligning the CIQ SDK version number with the System level.

It's still the case going forward that if you want features available with a certain API level (or to build for a device whose support starts at a given API level), you will need a certain version of the CIQ SDK. It's just that the SDK version no longer aligns with the API level version.

I.e. are 'System' and 'SDK' and 'Connect IQ API' all different things/software ? e.g. given the following statement from the system-7-news link above:

The`has` operator allows you to check if a symbol exists in a class or module. In the past, this compiled as a runtime check, but it will now be evaluated at the compile time in the System 7 SDK when possible. This allows the optimizer to eliminate the branch and unnecessary code, as well.

how do I know what 'system' a given device X (e.g. Fenix 7/Epix2/etc) has/is planned to get so i could tell if it would benefit from that improvement/optimization ?

TL;DR Garmin has indicated that most or all of the current CIQ API Level 4.2.x devices will receive CIQ 5, which corresponds to System 7.

Is there a list of which devices will get System 7 support? Surely VENU 3 and VA5 is on the list right?

We'll be updating the announcement with the full list, but it should be all 4.2.x devices . The Venu 3 and Vivoactive 5 will be getting System 7.

If you're curious, a (not-so-brief) history of CIQ System levels:

Originally, the System level was a poorly-documented way of "communicating" to devs and users that CIQ API changes had 2 parallel tracks, starting with the introduction of CIQ 4.0.

Garmin wanted to reserve CIQ 4 for new devices (with significant hardware changes), which meant that CIQ 3 devices would stay on API level 3.X forever. However, they also wanted to implement various wide-ranging changes to both CIQ 3 and CIQ 4. Thus, the CIQ "System" versioning scheme was born.

- CIQ System 4 means: for CIQ 3 devices, API level 3.2. For CIQ 4 devices, API level 4.0

- CIQ System 5 means: for CIQ 3 devices, API level 3.3. For CIQ 4 devices, API level 4.1

- CIQ System 6 means: for CIQ 3 devices, API level 3.4. For CIQ 4 devices, API level 4.2

I could write a whole blog post about the various problems with the scheme, not the least of which is that most end users and reviewers do not understand it. Other problems:

- the info in the bullet points I typed above isn't documented anywhere

- a feature will be listed in the docs as "since API level 3.3" (for example), when they really mean "since System 5".

- minApiLevel in manifest.xml can't be used to select system levels. e.g. if I wanted to select System 5, I could try to set minApiLevel to 3.3 but that would incorrectly include 4.0. I could set it to 4.1 but that would incorrect exclude 3.3. This is somewhat mitigated by the fact that the CIQ SDK device files are defined (and constantly updated) such that devices are required to have a recent firmware/CIQ version in order for apps built against said device files to be installed at all. (Meaning once CIQ 4.1 was widely available for a device, new apps built against the updated device files would not install at all on a device with the old CIQ 4.0 firmware)

It's not 100% clear to me, but it seems that CIQ System 7 will only refer to API level 5.0, and many (or all?) existing 4.2 devices will get CIQ 5, which marks a few changes from the previous way of doing things:

- Existing devices will get a new major CIQ API level version bump (this never happened before)

- System 7 will only refer to a single "version track"

- 3.X devices won't be part of System 7. Does this mean they won't get new features going forward? ¯\_(ツ)_/¯ If this is the case, as someone else pointed out, it would've been a great time to align the System level and CIQ API level so that all 3 version could be aligned (SDK, API level and System level.) Or just get rid of the System level concept altogether. But who knows, maybe they will split the firmware into 2 tracks again in the future. Or maybe CIQ 3.X will still get System 7 features, idk.

flowstate thank you very very much for your patience and kindness and willingness to take the time to clarify this arguably-confusing (to the newbies among us) topic and with such clarity and full details !

Truly appreciated :)

It's very confusing and difficult to know what matches up. Could they not just have also included the SDK version in this list? Compatible Devices | Connect IQ | Garmin Developers If someone could tell me what SDK version is compatible with API level 3.3.0 I'd appreciate it. Thanks :)

Hi, to be simple, always download the latest SDK, it will always cover all the API..

Thanks :)

In the API doc, there are two things to look for.

Since:

API Level 2.1.0

Supported Devices:

[view]

(this is for FloorsClimbed" in the ActivityMonitor)

The first thing to note is it's not available on devices that are running on an device with a CIQ version before 2.1.0 - the forerunner 23x for example.

But with "View Devices" you'll also see that devices with a higher level of CIQ, up to the latest, might not support this function. In this case, you'll see it's not supported on the vivoactive5 for example. The va5 doesn't have a baro altimeter, and can't count floors.

In general, you want to run the latest SDK (today, 7.3.1), and it will build for any device, with any CIQ level, but you must be careful not to try to use something that's not available on a device you are targeting. One way to handle this is to use "has" in your code, or you could use jungles.

and similar if somewhat different, look at this feature request: forums.garmin.com/.../improve-documentation-add-api-levels-and-system-levels-to-device-reference

You still want to use the API doc, unless your doc includes things like what API calls are available on each device. I mentioned ActivityMonitor and floors, but there you also have other things like calls related to wheelchair mode, variations to what's in SensorHistory and even if Toybox.Weather is available (API level isn't enough). These are just the first ones that came to mind.

I will also add to this discussion that the latest devices which run CIQ 5.* require one of the more recent SDKs for apps to build properly. This is a general rule - there may be some specific cases where you can get away with using an older compiler, but I don't want to get into that.

e.g. fr955, with a connectIQVersion of 5.0.0 in its compiler.json device definition file (*), requires at least SDK 7.1.0.

(* this means that any app built with that compiler.json file will not install on fr955 unless it's been updated to a version of firmware that supports CIQ 5.0.0)

fenix8solar47mm (and other fenix8* devices), with a connectIQVersion of 5.0.1, requires at least SDK 7.3.0.

- Good news: there is a version check built into the compiler which is supposed to prevent old SDKs from building newer devices

- Bad news: the version check is broken in SDKs 6.*. These SDKs incorrectly think they can build for CIQ 5.* devices. Furthermore, SDKs 7.1.0 and 7.1.1 incorrectly think they can build for CIQ 5.0.1 devices (like Fenix 8), even though those devices actually require SDK 7.3.0.

- Worse news: Garmin has no plans to fix this issue. (They really can't do anything except re-release all the old SDKs, which they won't).

This is another reason that it's usually advisable to use the latest SDK to build your project. (Unless you have no plans to support the latest devices.)

6. Difference between CIQ and API version - Connect IQ App Development Discussion - Connect IQ - Garmin Forums
   URL: https://forums.garmin.com/developer/connect-iq/f/discussion/420567/difference-between-ciq-and-api-version
   Difference between CIQ and API version - Connect IQ App Development Discussion - Connect IQ - Garmin Forums

- State Not Answered
- Replies 6 replies
- Subscribers 18 subscribers
- Views 887 views
- Users 0 members are here

Options

Related

# Difference between CIQ and API version

Just wondering, in the compiler.json file for each device, there is a "connectIQVersion" with a version number. In the https://developer.garmin.com/connect-iq/compatible-devices/ page, it shows a API level that is somewhat but not always the same as the CIQ version. I assume the "connectIQVersion" means the exact CIQ version the device has the API is what the device is compatible with, right? However, some devices like the VenuD (Mercedes, I believe), has a CIQ of 3.2.6 and yet its API is 3.3, Shouldn't be API 3.2?

Also, what happens to CIQ 4? All I see with that CIQ level are System6 and System7 "previews". Anybody knows why?

- Sign in to reply
- Cancel

CIQ version and API version mean the same thing. [*]

However, the compatible devices page you linked only shows the first two version components (e.g. 3.2) and not all three components (e.g. 3.2.6).

To answer your other questions quickly:

- venud (the ciq device) isn't in the compatible devices page. venu is though.

Ofc it's hard to tell from that page, but you'll note that venud is indeed a Mercedes-Benz variant of Venu (1st gen), yet the compatible devices page doesn't have the phrase "Mercedes-Benz" in the description for Venu.

Also note that display name for venu/compiler.json is "Venu®" , which *exactly* matches what's on the compatible devices page.

- All CIQ 4 devices have been upgraded to at least CIQ 5.0

---

[*] There was actually a time when the SDK version was in sync with the CIQ/API version, which is why minApiLevel in manifest.xml used to be called minSdkVersion, and why ConnectIQ/SDKs/SDK_VERSION/bin/compilerinfo.xml has an element called targetSdkVersions, but it really means targetApiVersions. Btw you can look at compilerinfo.xml:targetSdkVersions to see the "official" mapping from system level to API level.

Iirc, when the SDK and CIQ versions were in sync, there wasn't even a concept of API level. That was only introduced once the SDK version went out of sync with the CIQ version. Possibly at the exact same time that the concept of System Levels was introduced. The reason for system levels was to support both CIQ 3 devices and CIQ 4 devices at the same time, with new CIQ versions and features. CIQ 3 devices wouldn't get all the new features, but they would get some new features. (To be clear, the rule was that no CIQ 3 device would ever get CIQ 4; CIQ 4 was only for newer devices. But Garmin wished to continue to support CIQ 3 devices with new CIQ releases)

So when CIQ 4.0 was released (for new devices only), Garmin needed a way to group that with existing CIQ 3 devices, which would be receiving a CIQ 3.2 update, with some new features. So they invented the system level concept and defined System 4 as CIQ 3.2 for CIQ 3 devices, and CIQ 4.0 for newer devices.

System 5 was CIQ 3.3 / 4.1.

System 6 was CIQ 3.4 / 4.2.

But System 7 is CIQ 5.0 only. All CIQ 4 devices received CIQ 5.0 and CIQ 3 devices were left behind.

System 8 is CIQ 5.1

Ofc Garmin doesn't explain any of this. And they rarely explained what each system level meant. There was a lot of confusion amongst bloggers, users and devs around this topic, even devs who thought they understood.

You'll also note that it isn't possible to select a system level (for levels 4, 5 and 6) using minApiLevel in manifest.xml.

For example, say you wanted to target System 6 when it was new. You couldn't use minApiLevel of 4.2, as that would incorrectly exclude CIQ 3.4 devices. But you couldn't use minApiLevel of CIQ 3.4, because that would incorrectly include CIQ 4.1 devices. This is kind of a moot and abstract point, as CIQ 3 and 4 devices were mostly being updated to the latest CIQ (for their respective branches) anyway, although we can can see from the compatible devices page / compiler.json that not all of them have the latest. It really has been made moot since all previously CIQ 4 devices are now on CIQ 5, so you really can use a min API level of CIQ 3.4 now, to target system 6 (or higher).

This is also a problem for the docs - if a doc says something like available since CIQ 3.4, that really means available since CIQ 3.4 (for CIQ 3 devices) and available since 4.2 (for CIQ 4 devices) but that isn't explained anywhere. This is also a moot point now.

I assume the "connectIQVersion" means the exact CIQ version the device has the API is what the device is compatible with, right?

I assume you are referring to "connectIQVersion" in the partNumbers array in ConnectIQ/Devices/DEVICE_ID/compiler.json

The "connectIQVersion" / "firmwareVersion" for a given part number isn't the exact CIQ version for that part number has. Users aren't forced to update their firmware, so it's impossible for Garmin to guarantee that.

Furthermore, some users have beta firmware, so they may have a newer [for that device *] version of Connect IQ which isn't widely released yet.

[* here when I say device, I speak of a generic customer-facing device/model, not a specific CIQ device ID that you select in manifest.xml or see in ConnectIQ/Devices.]

When I want to speak specifically of "CIQ devices" - as in the device IDs in manifest.xml / folders in ConnectIQ/devices, I will say "CIQ device". A CIQ device also maps 1-to-1 with a hardwarePartNumber, so we can consider these to be unique hardware platforms.]

[1/x]

Actually "connectIQVersion" / "firmwareVersion" for a given part number in a CIQ device's compiler.json is just the *minimum* CIQ / firmware combo that's guaranteed to be present on the device, if you build an app now (with the current contents of compiler.json.

When you export your project, the compiler puts `firmwareVersion` for each part number into the manifest as minFirmwareVersion (or something similar), and when a user tries to install your app (or update to the new version you built), the store will check to make sure they have at least that firmware version.

Since Garmin always updates compiler,json so that connectIQVersion and firmwareVersion are in sync, this also means that connectIQVersion will be the minimum guaranteed CIQ version on the device, for newly built apps.

This is why users with old firmware are unable to install apps that were updated recently, but they can still install old apps

[2/x]

Also, to be clear, Garmin never updates connectIQVersion / firmwareVersion until the firmware in question is 100% rolled out and has been out for a while.

So:

- connectIQVersion is not necessarily the latest version of CIQ on a given device

- connectIQVersion is the min CIQ version your app will see on a given device, if you export the app today. (because users with an older firmware / ciq version will not be allowed to install your app)

[3/x]

However, some devices like the VenuD (Mercedes, I believe), has a CIQ of 3.2.6 and yet its API is 3.3, Shouldn't be API 3.2?

I think the simple explanation in this case is that the device referred to in CIQ as venud (displayName = "Venu® Mercedes-Benz® Collection") is not in the compatible devices page at all.

What you see in the compatible devices page for "Venu" is probably the venu CIQ device. Note these are separate CIQ devices. (For later generations, the regular Venu X and Mercedes-Benz Venu X are multiple part numbers grouped under the CIQ device like venu2, which has 4 part numbers - Venu 2 WW, Venu 2 APAC, Venu 2 Mercedes-Benz WW, Venu 2 Mercedes-Benz APAC)

Furthermore, like many other devices which have WW/APAC variants, the CIQ version for venud's WW part number is not the same as the CIQ version for its APAC part number.

Unlike other devices, venud's WW part number is actual behind its APAC part number: WW has 3.2.6 while APAC has 3.3.6.

Regardless, they are different which again sort of highlights the limitations of the compatible devices page. That page does not break devices down by part number / APAC vs WW variants, either. It just has a bunch of high-level "customer-facing" model names without specifying which CIQ devices / part numbers they refer to. (Although you can guess that each variant roughly corresponds to a single CIQ device.)

------

Speaking of mapping part numbers to actual customer-facing models, I wrote a bunch of stuff about that here:

The TL;DR is you can use this API to see the description in the store website for a given part number (as seen in the compatible devices (*) tab):

You can also use it to get the store url which shows only apps for that device (*). This is handy for devices like Fenix 8 whose urls couldn't be guessed (ppl assumed there were no specific store urls for that family of devices).

I've said this before, but I don't like that CIQ revolves so much around CIQ device IDs, each of which corresponds to a single hardware part number, and each of which can have 1 to many (software) part numbers (which CIQ also revolves around), but they don't explain any of this stuff at all.

Like what the info in compiler.json means, how to map part numbers to customer-facing product names, or any of the related stuff.

Yet iirc, various sections of the docs refer to part numbers (without explaining them), and so does the compiler.

Speaking of the ambiguity with the word "device", the compiler refers to devices and part numbers interchangeably during the export process.

But ofc, elsewhere, a CIQ device (as in fr935, fenix6 or fenix6pro) is referred to as a "device" (or sometimes a "product").

Not only the nomenclature not explained, it's also not consistent.

7. SDK change log - Connect IQ App Development Discussion - Connect IQ - Garmin Forums
   URL: https://forums.garmin.com/developer/connect-iq/f/discussion/4309/sdk-change-log
   SDK change log - Connect IQ App Development Discussion - Connect IQ - Garmin Forums

- Cancel
- More
- German Forum
- Beta Program
- Developer
- Pilots
- Sports & Fitness
- Outdoor Recreation
- Apps & Software

- Users 0 members are here
- Views 1127 views
- Subscribers 15 subscribers
- Replies 5 replies

Options

- Cancel
- More
- Share

Related

# SDK change log

Where I can see sdk changes from 1.3 to 1.4?

- Cancel
- Sign in to reply

If you want to see the changes to the ConnectIQ SDK, you can open up the README.html included with the SDK distribution. It lists the changes between SDK versions all the way back to version 0.0.1 If you want to find functions that are available to devices support for version 1.4 of the ConnectIQ API, you have to search the documentation or diff it against the previous version. As far as I can tell, the only functionality changed for 1.4 was that String.toNumberWithBase() was back-ported from 2.1.0. Travis

I try to download latest sdk from https://developer.garmin.com/downloads/connect-iq/sdks/connectiq-sdk-mac-2.2.2.zip And have error "Not found"

With this being a holiday weekend, Garmin probably won't do anything about the link until next week.What version of the SDK do you currently have? Like Travis, the only 1.3.x to 1.4.x CIQ change I've seen is the backporting of toNumberWithBase()(convert a string to a number, using a "base" -hex, octal, etc) in 1.4.x. Any 2.x.x SDK should be fine if you don't use that one call.Here's the 2.2.1 changelog, and this is the SDK that had the 1.4 changes (but the toNumberWithBase() call isn't listed, as it's pretty minor)`v2.2.1General ChangesUpdate the compiler to include warnings when a module and class share the same name.Prevent zero/negative width characters in custom fonts.Fixed directory name build exclusion bug. Now excluding “source_fenix3” won’t also exclude “source_fenix3hr”.Fix compile time error with using clauses when trying to use a previously defined ‘using’ label in another ‘using’ label.Fix bugs in the “Not all code paths return a value” and “Variable used before being initialized” error detection logic.Update the Windows monkeydo script to prevent shortening of PRG file names.Enable limited Selectable functionality in data-fields; the Highlighted state is not possible in this mode due to input restrictions. Remove support for Buttons and View.setKeyToSelectableInteraction() when in data-fields.Various fixes related to stability and security.Updated Programmer’s Guide, UX Guide and API documentation with fixes and new additions.Simulator ChangesFix issues which may cause a crash when trying to download FIT files.Fix a crash that occurred when clicking a progress bar.Add an ANT+ sensor dialog that shows ANT+ sensor and allows pairing and unpairing.Add menu item to clean up persisted content storage within the simulator.Fix “pen” set-up issues to draw primitive shapes correctly.Update monkeydo.bat to support /t and -t, and correct the Programmer’s Guide to specify use of -t for Run No Evil commands.Fix vivoactive HR swipe direction definitions.Fix NumberPicker / isSleepMode missing on Connect IQ 1.x simulated devices (fenix 3, Forerunner 920xt, etc).Add a 240x240 Round Device.Deprecate Round Watch, Square Watch, Semi-Round Watch and Tall Watch generic devices. If one of these generic devices is detected in a manifest file at compiler time a warning is printed indicating the device will be removed in the future.`

They had to switch from .zip to .dmg on MacOS, and failed to update the link. If you already have the SDK installed, you can use the SDK manager to get the latest version. Otherwise, you can acquire it here... https://developer.garmin.com/downloads/connect-iq/sdks/connectiq-sdk-mac-2.2.2.dmg Travis

Travis is correct ... the new MacOS SDK is shipped in DMG format, and we'll get the links updated ASAP. You can either use: https://developer.garmin.com/downloads/connect-iq/sdks/connectiq-sdk-mac-2.2.2.dmg OR the SDK manager to download the new version. Either should work fine and Happy Holidays!

8. Configure Developer Environment for API level 1.4.0 - Connect IQ App Showcase - Connect IQ - Garmin Forums
   URL: https://forums.garmin.com/developer/connect-iq/f/showcase/268224/configure-developer-environment-for-api-level-1-4-0
   Configure Developer Environment for API level 1.4.0 - Connect IQ App Showcase - Connect IQ - Garmin Forums

- Cancel
- More
- German Forum
- Beta Program
- Developer
- Pilots
- Sports & Fitness
- Outdoor Recreation
- Apps & Software

- Users 0 members are here
- Views 1583 views
- Subscribers 7 subscribers
- Replies 3 replies

- monkey c

Options

- Cancel
- More
- Share

Related

# Configure Developer Environment for API level 1.4.0

Hey Guys,

I just got my hands on a Fenix 3 HR watch and I love.

I appear to be a software developer (Embedded C, C++, but also Algorithms, C# .NET etc) and just found out that I could customize my watch with new apps, faces, widget and data fields using Monkey C which should not be a big challenge for me.

Particularly, as a surfer and kitesurfer I have some ideas that I'd like to try and I could not find stuff implemented in the store (wave and wind prediction reporting with windy or windguru, or try implementing a kitesurf application with jump height etc if I feel ambitious enough ;-) ).

The thing is that my watch only supports API Level 1.4.0 (quite old if I understand well) so I would like to know where to start to develop for MY watch:

- Where can I find template apps or example to begin with ?
- Will Dev environment setup for current SDK (v 4.0.4) work for me?

Thanks for any help you could give me,

Best regards,

Pierre

- Cancel
- Sign in to reply

Try: developer.garmin.com/.../

Thanks for the answer. I had already checked that when I asked the question, since then I found the VSCode Monkey C Extension by Garmin which is amazingly simple to use. https://marketplace.visualstudio.com/items?itemName=garmin.monkey-c&ssr=false#overview

Just have to be familiar with CTRL+SHIFT+P in vscode ;-)

And this videos : https://www.youtube.com/channel/UCXZe72HkNZwYy_t0_MTI2Qg which helped me also.

Building for the Fenix 3 HR is quite transparent, the versions appear to be handled automatically.

The current SDK is 4.0.4, and there is also the Eclipse 4.0.4 CIQ plugin. I find Eclipse easier to use. And make sure you download the device files with the SDK Manager.

With it you can build for any CIQ device, and the API level will be defined correctly. If you're using code you pulled from some place, it may include things you can't use on a CIQ 1 device. The API doc as "since X.Y.Z" so you can see what's not available for a CIQ1 device.

Device Reference