Where to find Connect-IQ API release-notes/what is new ***for non-latest major version*** ?

Hello,

Following the answer about Version history for SDKs, aka what's new in each version and where to find it

It seems that the history/what-is-new has some gaps,

E.g. connectiq-sdk-mac-4.0.9-2022-01-24-2154651d3/README.html seems to 'jump' from 'v3.2.5' to 'v4.0.0' - which means it skips at the least 2 minor versions AFAIK: 3.2.6 and 3.2.8;

And since my f6xpro only got ciq3.28 as its system-5-upgrade rather than ciq4, I would like to know what API changes/additions are in ciq3.28 in order to (possibly) use some of that new API.

Does anyone know where one could find this information ?

  • Don't confuse SDK versions with what changes are in the firmware for a device (and maybe not all devices).  A new version in the FW could be for something that happens in the FW and not in the sim.

    The SDK version jumped to 4.0.x when the venu2 was introduced.  It was the first device to have 4.0.x in the FW.  The hardware for 4.x devices has differences form devices that have 3.2.x today.

    "System 5" devices have/will have either 3..3.x or 4.1.x on the device itself.  If you look at the 4.1.0-beta1 API doc, you'll see "since API level 3.3.0" for some of the new System 5 API calls, and some will be "since API level 4.1.0" for things that today have 4.0.x on the devices.  If it's "since API level 3.3.0, it's available on devices with a 3.3.x VM or a 4.1.x VM, but if something is "since API level 4.1.0, it's only for devices with a 4.1.x VM or higher..

    As FW (seems to be beta FW at this point) rolls out, you'll see VM levels with 3.3.x and 4.1.x meaning the newest features are there for testing using sideloads.  You can't build iq files for upload to the store with a beta SDK (4.1.0-beta1 for example)  Nothing with 3.2.x has any of the new features

    If this is all confusing or you are new to CIQ, stick with the 4.0.10 SDK (the latest production one) and don't include anything new in the 4.1.0-beta1 SDK - wait for a production release of a 4.1.1 SDK.

    With 4.0.10 you can build and publish for any device, be it CIQ1, 2, 3, or 4, just not anything that uses "System 5" specific API calls..

  • Hello,

    Thank you and yet I do not think I am confusing the multiple software elements in this particular question I am asking:

    While my f6xpro 'about' shows various versions for the various software elements it has (e.g. it currently reports s/w version 20.50, gps 5.30, wifi 2.60, ciq 3.2.8, bmx 2.0.4, ...),

    My understanding is that a *watchface* app related code is built-around a garmin-SDK-framework a.k.a.garmin-CIQ-framework or 'CIQ' for short as it is referred to in my f6xpro above, i.e. you cannot just take my/your watchface code and run it on its own since e.g. the app/view classes of our watchface apps extend the garmin-SDK/CIQ-framework Toybox.Application.AppBase/Toybox.WatchUi.WatchFace classes respectively; and same goes to e.g. the Toybox.Graphics.Dc framework class - it is a part of the SDK/CIQ-framework;

    And so,

    Given my/your watchface app code is tightly integrated-with and relies-on the SDK/CIQ-framework available to it,

    And given that this SDK/CIQ-framework gets upgraded to include new features/API, e.g. the Toybox.Weather API has been added in SDK-framework 3.2.0,

    And given that my f6xpro has had its CIQ upgraded from 3.2.6 to 3.2.8,

    My question is where chan I find the changes/additions between SDK/CIQ-3.2.6 and SDK/CIQ-3.2.8 ?

    p.s. another example to show what I am after:

    class Toybox.Graphics.Dc of the SDK/CIQ-framework has been modified to include a new API - the method 'drawOffsetBitmap(...)' which has been added in SDK/CIQ-framework  4.0.0; and my question is where could we find a list of those additions for e.g. 3.2.8.

  • The last part of a CIQ version, (the 6 or the 8 here) typically means bug fixes, and if there's no associated SDK, that typically means it's a fix in the FW, and no new SDK is needed.  If you are using the 4.0.10 SDK (the latest production SDK), it's got all the bug fixes up to that point in the SDK.  The readme in an SDK contains all the SDK change logs from when CIQ first came out.

    There are only bug fixes between 3.2.6 and 3.2.8, no new APIs.  There are new APIs between 3.2.x and 3.3.x however, but in that case there is no 3.3.x SDK and won't be.  That's the 4.1.x SDK but you can build for devices with 3.3.x with it.

    In the case of drawOffsetBitmap, if you look at the API doc, it's "Since: Api level 4.0", which means it's only available on devices with CIQ 4.x.y, like the venu2, 2+, F7 series and Epix2.  Even though you may build using a 4.0.x SDK, the api level on the device, in the case of the f6 today, is only 3.2.8 and therefore that api isn't available on that device.

  • The last part of a CIQ version, (the 6 or the 8 here) typically means bug fixes

    Thank you for this clarification and for taking the time to do so

  • Hello again, just FYI to emphasize the point of this thread -

    my VA4 got upgraded to system 5 w/ API 3.3.1 (a minor upgrade from its 3.2.something) 

    And, AFAIK, 3.3.1 does contain some API changes (some new API added) - but then again - how is one supposed to find them ?

  • 3.2.x to 3.3.x is a big change, in that 3.3.x is "System 5".  3.2.6 to 3.2.7 is a minor change.

    Here's the basics of system 5, including some of the new features:
    https://forums.garmin.com/developer/connect-iq/b/news-announcements/posts/welcome-to-connect-iq-system-5

    You'll also find some info from the breakout sessions from the GDVC last Oct:

    https://www.youtube.com/playlist?list=PLZQteomUj15MQqG975moFkSdxz2_KhHkT

    The new stuff in in the 4.1.0-beta1 SDK as the documentation in that SDK.  It's a beta SDK so you can't use it to publish to the store.

  • If you look in the readme file in the 4.1.0-beta1 SDK you also see this:

    v4.1.0.beta1

    General Changes

    • Add new APIs to the sensor module for getting magnetometer and gyroscope data at 25hz. Note that simulation for this feature is not yet available.
    • Add new APIs to the WatchUi module to support drag and flick events.
    • Add new API to drawables that allows you to set whether it should be visible or not.
    • Add new API in system stats to get battery life in days.
    • Add new APIs to the weather module to get the sunrise and sunset times based on location.
    • Add new APIs to the user profile module to get running and cycling VO2 max.
    • Add new APIs to the user profile module to get user activity history.
    • Add new APIs to activity monitor info to get current recovery time and respiration rate.
    • Add new APIs to activity monitor modle to get body battery history.
    • Add new APIs to activity monitor module to get stress history.
    • Add support for debugging apps through the visual studio code extension.
    • Add support for profiling Connect IQ apps.
    • Relax screen burn-in protection rules for Venu 2 and future AMOLED products products to only require using less than 10% of screen pixels.
    • Add support for new app settings features.

    Simulator Changes

    • Fix an issue that caused strings returned from CustomButton to be displayed incorrectly if they contained an embedded newline.
    • Update app settings editor to be modeless.
    • Add support for new FIT simulation and playback dialog.
    • Fix a bug where the sim would crash switching between glance mode and full app mode.
    • Add an option to enable live updating of the memory window.
    • Update activity monitor info dialog to be modeless.
    • Fix a bug where the data field menu can be enabled for non data-field app types.
    • Add support for setting the battery days left and simulating body battery history, stress history, and activity history.
    • Add MonkeyC code profiler dialog.
    • Fix a bug where position, track, and heading could sometimes not be reset when switching FIT files for playback.
    • Fix an issue that allowed multiple HTTP traffic dialogs to be shown.
    • Add a dialog to set the user profile information.
    • Add recovery time and respiration rate to the Activity Monitor Info dialog.

    Compiler Changes

    • Fix an issue that caused projects compiled with the monkeyc or barrelbuild scripts to display multibyte UTF–8 strings incorrectly.
    • Support type checking on Monkey Barrels that are dependent on other barrels.
    • Add new command-line option (-k) to build a PRG with support for profiling enabled.
    • Add support for array properties to resource compiler.