• Welcome to Connect IQ System 5

    Today, Garmin announced Connect IQ System 5. This version of the Connect IQ system is focused on helping you make better, faster and stronger Connect IQ apps. Let’s take a quick look at some of the features.

    Visual Studio Code Monkey C Extension 1.0.0

    Last year, we announced the Visual Studio Code Monkey C extension and released the first beta. Today, we released version 1.0.0 with debugging support. With this release, we now recommend Visual Studio Code for Connect IQ development. The extension requires Connect IQ SDK 4.0.6, which you can get with the SDK Manager.

    We are not deprecating the Eclipse plug-in at this time, but we also are not planning any future enhancements for the plug-in. All new development will be focused on the Visual Studio Code extension.

    Improved App Settings

    We know mobile app settings are important to your app experience, and we are giving you some new options for structuring your settings presentation.

    Groups allow you to group a collection of related settings together. In mobile applications, they are editable in a sub-page, while in Garmin Express, they will be grouped together. You can also allow a group to be enabled and disabled by a Boolean setting. Groups can have a description string to explain the settings contained within.

    Growable lists allow the user to edit a list of records. The user can add records up to a predetermined size or remove them from the list. In your app, they will show up as an array of dictionaries.

    These features will all use the same back-end across mobile, Express and the Connect IQ SDK to reduce variance.

    Here is some sample resources XML for how to use the feature:

    <settings>
    
        <setting propertyKey="@Properties.recordInformation" title="@Strings.recordInformation">
            <settingConfig type="boolean" />
        </setting>
    
        <!-- 
            Here is the syntax for creating a group. This group has a
            dependency on the setting above being enabled with the
            "enableWithTrue" attribute.
        -->
        <group id="recordInfo" 
            title="@Strings.recordInformation" 
            description="@Strings.recordInfoGroupDescription" 
            enableIfTrue="@Properties.recordInformation">
            <!--
              The two settings are visually grouped together. In mobile
              they will be on their own page. In Express they are put within
              a visual grouping
            -->
            <setting propertyKey="@Properties.recordZoneGraph" title="@Strings.recordZoneGraph">
                <settingConfig type="boolean" />
            </setting>
    
            <setting propertyKey="@Properties.recordTimeInZones" title="@Strings.recordTimeInZones">
                <settingConfig type="boolean" />
            </setting>
        </group>
    
        <!-- 
          This is the syntax for a variable sized list group.
          In the properties.xml "customZones" is of type "array".
          The "maxLength" attribute puts a cap on how many items
          the user can create.
        -->
    
        <setting propertyKey="@Properties.customZones" title="@Strings.customZones" maxLength="6">
            <setting type="string" title="@Strings.zoneName">
                <settingConfig id="zoneName" type="alphaNumeric"/>
            </setting>
    
            <setting type="number" title="@Strings.speedCutoff">
                <settingConfig id="speedCutoff" type="numeric"/>
            </setting>
    
        </setting>
    
    </settings>

    Activity Simulation

    We have revamped the simulation interface for the Connect IQ simulator. Now you can set where in your workout you want to add a simulation and have better control of the simulation events.

    Profiler

    We are also adding a new Connect IQ profiler to better measure app performance and see where to focus your attention. The profiler captures time spent in total within a function and for the code within a function and lets you examine the different call stacks profiled. The profiler is integrated into the simulator, and the devices will allow hardware profiling, as well.

    New Guidelines

    We want you to be able to make apps that feel native to the Garmin device experience. To help you design for all our products, we have revamped our user experience guidelines to document our device family personalities and help you make more native-feeling apps.

    In addition, we’ve updated our app review guidelines to better help your apps get through review.

    More Data

    We are adding lots of new metrics and data access to the Connect IQ API:

    In Toybox.ActivityMonitor:

    • Body Battery
    • Stress
    • Remaining recovery time

    In Toybox.UserProfile:

    • VO2 Max
    • Activity history

    In Toybox.Sensor:

    • Magnetometer
    • Gyroscope

    This gives more insight to the user and will look great on a watch face.

    Coming in 2022 - Revamped App Store Analytics

    Next year, we plan to give the app analytics in our app store a total overhaul. Once this update is released, you will be able to see your total installs, your installs broken down by version and device, and the estimated percentage of users that currently have your app installed. This feature will be coming in 2022.

    Try it Today

    You can get the beta of Connect IQ System 5 from the Connect IQ SDK manager. To try the new version, you will need to download the SDK, as well as the following devices:

    1. fēnix® 6 Pro System 5 Preview
    2. Venu 2 System 5 Preview

    These downloads will let you try out the new APIs on simulated devices. We look forward to your feedback!

    • Oct 13, 2021
  • Garmin Developer Virtual Conference Breakout Registration is Open!

    GDVC Breakout Registration is Open!

    The Garmin Developer Virtual Conference (GDVC) is back on October 13, 2021.  Together, we’ll explore how the latest updates and features for Connect IQ, Garmin Connect Developer Programs and ANT can shape the possibilities for our developer community.

    The event will start with a State of the Union Keynote Session, followed by a set of nine breakout sessions. The State of the Union session will only be available live.

    Our live hosted breakouts allow developers to take an in-depth look at the latest updates and features announced during the State of the Union keynote session while offering developers a chance to engage in Q&A with the Garmin team. Breakout session presentations will be made available post-conference.

    See what’s becoming possible with our three tracks: Intro, Connect IQ, and Business. The Intro track is intended for people new to the Garmin developer ecosystem; the Connect IQ track is intended for those focused on Connect IQ app design and/or development; the Business track is intended for individuals and organizations interested in partnerships with Garmin.

    Register for multiple breakout sessions or view individual ones below.

     

    Intro Track 

    Connect IQ Track 

    Business Track 

    11:00 AM - 12:00 PM CT

    Introduction to the Garmin Developer Programs

    Connect IQ User Experience Guide

    Real Estate on Garmin Devices: Your Brand Experience

    12:00 PM - 1:00 PM CT

    ANT® Technology: Exploring the Basics

    Connect IQ Tools and Performance Tips

    Garmin’s Latest API: Enabling Training and Insights for Women

    1:00 PM - 2:00 PM CT

    Garmin Connect Developer Program: An Inside Look at API Integrations

    Connect IQ App Review Guidelines

    Activity Profiles: Elevating the User Experience 

    For more information on the Garmin Developer Virtual Conference visit developer.garmin.com/GDVC

    • Sep 9, 2021
  • Connect IQ 4.0.5 SDK Now Available!

    We released version 4.0.5 of the Connect IQ SDK this afternoon, which addresses several bugs. See the release notes below for details!

    General Changes

    • Fix typing issues with WatchUi.Bitmap.
    • Fix Comm.checkWifiConnection not properly checking Wi-Fi connection is available.
    • Add new Wi-Fi connection status enum values.
    • Add Communications.startSync2().
    • Improve typing of the BackgroundTimer sample.
    • Fix a bug that prevented creating barrel projects in the Visual Studio Code Extension.
    • Add documentation for application scope type checking, including information on how to disable the check if necessary.

    Simulator Changes

    • Prevent the simulator from locking up when launching a new app while debugging.
    • Add the SEND command to mdd for sending files to the simulator.

    Compiler Changes

    • Apply the –Eno-invalid-symbol command line option to undefined symbol checking done during type checking.
    • Improve type checking to update local variable types after if statements based on the if conditions.
    • Improve how poly types are printed in compiler error and warning messages.
    • Fix misspelling in compiler warning message generated when a Connect IQ project consumes a Monkey Barrel that supports languages unsupported by the project.
    • Fix bug in try / catch block code generation which potentially caused accessing invalid portions of the stack.
    • Fix a code generation bug for function calls followed by an array access that caused a Monkey C intermediate representation parsing error.
    • Add if-splitting to while and for statements in the type checker.
    • Improve if-splitting logic on nested if-else statements.
    • Fix bug in type checker if-splitting logic, which was caused by not factoring in “else if” cases.
    • Improve type check errors when a statement is not reachable and when a variable is not initialized in a try-catch statement.
    • Fix type check error when assigning variable to itself in an if statement.
    • Aug 24, 2021
  • Garmin Developer Virtual Conference 2021 - State of the Union Registration Now Open

    Join us in a virtual realm of possibilities. Register for the GDVC 2021 State of the Union, held October 13, 2021 at 9 AM CT.  

    The State of the Union is the Garmin Developer Virtual Conference keynote event that provides an in-depth look at our developer programs. Together, we’ll explore how the latest updates and features for Connect IQ, Garmin Connect Developer Programs and ANT can shape the possibilities for our developer community. Similar to last year, the State of the Union will only be available for those who attend the event live.  

    Register Now! 

    Registration for Breakout sessions will open August 2021. Join our mailing list or register for the State of the Union to be notified when registration for Breakout sessions is open.  For more information on the Garmin Developer Virtual Conference visit developer.garmin.com/GDVC  

    See you on October 13th!  

    • Jul 28, 2021
  • Connect IQ Developer Award Winners

    The winners of the 2020 Connect IQ Developer Awards have been posted. You can see the winners on the Garmin Blog. Congratulations to the winners!

    • Jul 23, 2021
  • Upcoming App Store Outage on July 14th

    The app store will undergo scheduled maintenance on July 14th from 1-5 PM Central Time. During that period, the app store will not accept any new apps or app updates from developers. We will post an announcement on the forum when the app store maintenance is completed.

    • Jul 12, 2021
  • Connect IQ 4.0.4 SDK Now Available!

    We released version 4.0.4 of the Connect IQ SDK this afternoon, which addresses several bugs. See the release notes below for details!

    General Changes

    • Fix a bug that resulted in bad links for references to enum types in generated documentation.
    • Fix a problem with monkeydoc that caused it to stop processing input if a typedef inside a class declaration was encountered.
    • Fix a bug where the “Glance View” menu state isn’t updated when entering full view mode.
    • Add new option to monkeydoc that allows the api.mir file to be provided to avoid warnings for references to API classes.
    • Update symbol references in generated documentation to show partially qualified names.
    • Improve typing of Json Data Resources, Menu 2, and Picker sample apps.
    • Fix a bug where web or image requests made via Wi-Fi can be canceled by the same app running in different modes, such as background mode.
    • Fix a bug where clearing a palettized BufferedBitmap with transparent color would cause visual artifacts.
    • Fix multiple typos in API documentation.
    • Add type checking for options passed to Picker.setOptions().
    • Fix an invalid error thrown for ANT apis when invoked from data fields.
    • Set the return type for the Mailbox Iterator next() function.
    • Fix an issue that caused an exception to be thrown when requesting SensorHistory data for a short period.

    Simulator Changes

    • Fix invalid Average and max cadence values during FIT simulation and playback.
    • Improve error message in the simulator’s app settings editor for a missing settings file.
    • Fix a bug where the initial focus item was set incorrectly for some menu items.
    • Fix a bug where switching a progress bar from “busy” mode to “progress” mode did not work correctly.
    • Fix a bug where screenshots taken in apps running on devices with soft menu bars would be stretched.
    • Fix a bug where the simulator would crash if an app uses a custom media button but doesn’t implement getState() or getText().
    • Fix a simulator crash that occurred when attempting to edit an animation resource in the application storage viewer.

    Compiler Changes

    • Add compiler error when compiling for a device that requires a newer API Level.
    • Fix type checking error when a poly type is assigned to a non-poly type.
    • Generate a warning if a bitmap resource defined in a layout will override a bitmap resource with the same id and different data in another layout.
    • Improve type check warnings for symbols not found on poly types and fix bug in if-splitting logic for non-local assignments.
    • Fix bug in code generation for RunNoEvil test functions that have ‘assert’ at the beginning of the function name.
    • Fix a compiler bug that caused an ‘Unable to detect scope’ warning when using the ‘$’ symbol.
    • Jul 7, 2021
  • Reminder on New Bug Reports

    Hello everyone!

    I just wanted to put out a quick reminder when it comes to creating bug reports to please provide as detailed of information as possible.

    Recently there's been an increase in reports that have little information provided, which makes it difficult for us to reproduce the issue presented in the report. This can lead to frustrations for you, the developers, when/if we are unable to reproduce the issue that you have seen. So in order to alleviate that frustration, please remember to look over the "What information should be included in a new issue report" section of the Bug Reports FAQ page. The more information you are able to provide to us, the quicker we will be able to reproduce and identify the issue and get it sent to the appropriate project team.

    Also, for your confidentiality, you can always send information about your bug report (apps, prgs, etc.) to our [email protected] email. If a ticket was already created for your issue, please put the ticket number in the subject line; or put the Title of your bug report as the subject.

    • Jun 8, 2021
  • Forerunner 55 and Forerunner 945 LTE Device Configurations Now Available

    Happy Global Running Day! Today, Garmin announced two new Connect IQ System 4 devices: The Forerunner® 55 and Forerunner® 945 LTE.

    Forerunner® 55 is the GPS running smartwatch that goes beyond pace and heart rate stats. Personalized training guidance helps you keep improving your fitness, while advanced wellness tracking puts you in tune with your body.

    Forerunner® 945 LTE has all the advanced physiological features to help maximize your training, plus the power of LTE connectivity to bring phone-free safety and tracking features right to your wrist. Should you need assistance, your watch can send your name and location to your emergency contacts or connect you to the Garmin IERCC, a 24/7 emergency response center.

    Use the Connect IQ SDK Manager to update your device library and add Forerunner® 55 and Forerunner® 945 LTE support to your apps.

    • Jun 2, 2021
  • Connect IQ SDK 4.0.2 and Descent Mk2S Now Available in Connect IQ SDK Manager

    Today Garmin announced the DescentTm Mk2S. This smaller, watch-style dive computer features multiple modes as well as multisport training and smart features. We are also releasing Connect IQ SDK 4.0.2 with updates and fixes to the developer tools.

    Use the Connect IQ SDK Manager to update your SDK and device library.

    • May 19, 2021