Connect IQ 1.2.1 SDK Available!

It's official! The Connect IQ version 1.2.0 SDK beta has attained it's final form, and is now available for download as the 1.2.1 SDK!

There are two ways to get your hands on it:



Be sure to update the Connect IQ plug-in in Eclipse to v1.2.1, by clicking on the Help menu and choosing Check for Updates. If you have trouble with this, review the configuration described in the Getting Started section of our Programmer's Guide.

Lastly, get the latest device firmware updates for your devices to ensure they have full support for all of the great Connect IQ 1.2.1 features!
  • The current work around is to copy the build command from the console in Eclipse and run it at the command prompt.


    Thank you! It is little uncomfortable but it works! :-)
  • 1.2.1. has broken my code

    1.2.1. has broken my code :-(

    Comm.makeJsonRequest("api.openweathermap.org/.../weather",
    {"lat"=>lat, "lon"=>lon, "APPID"=>"33b43a459f4002b3693aaec3420776ac"}, {}, method(:onReceive));

    that used to work, now I get

    UnexpectedTypeException: Expected null/Number, given null
    onKey in /Users/Documents/OneDrive/dev/connectiq/BigWeather/source/BigWeatherView.mc:32
    makeJsonRequest in /Users/rayburn/1_2_1/mbsimulator/submodules/technology/monkeybrains/virtual-machine/api/Communications.mb:144
    onShow in /Users/Documents/OneDrive/dev/connectiq/BigWeather/source/BigWeatherView.mc:421
  • 1.2.1. has broken my code :-(

    Comm.makeJsonRequest("api.openweathermap.org/.../weather",
    {"lat"=>lat, "lon"=>lon, "APPID"=>"33b43a459f4002b3693aaec3420776ac"}, {}, method(:onReceive));

    that used to work, now I get

    UnexpectedTypeException: Expected null/Number, given null
    onKey in /Users/Documents/OneDrive/dev/connectiq/BigWeather/source/BigWeatherView.mc:32
    makeJsonRequest in /Users/rayburn/1_2_1/mbsimulator/submodules/technology/monkeybrains/virtual-machine/api/Communications.mb:144
    onShow in /Users/Documents/OneDrive/dev/connectiq/BigWeather/source/BigWeatherView.mc:421


    It broke in the simulator, but will still runs on a real device. I tried it by sideloading to the device.
  • What do you mean side loading?

    What do you mean it works on the device? Did you load that VERY code?

    Is Garmin aware the simulator is broken?

    If we cannot test in the simulator then how can we write apps?
  • What do you mean side loading?


    Copying the .prg to the /garmin/apps directory on the device with "build for device"

    What do you mean it works on the device? Did you load that VERY code?

    Not the same code. It's broken for all makeJsonRequests() in the simulator.
    Is Garmin aware the simulator is broken?

    Yes. I reported it myself.
  • If we cannot test in the simulator then how can we write apps?


    For now you can fix it in the simulator by using these options to makeJsonRequest:

    {:method=>Comm.HTTP_REQUEST_METHOD_GET, :headers=>{}}

    These are the defaults for the two given options, but they're not getting set correctly in the simulator. It'll be fixed in an upcoming release.
  • Thank you! It is little uncomfortable but it works! :-)


    I have also encountered this today.
    Mac (El Capitan) with 1.2.1 SDK
  • It's in the README distributed with the SDK. :)
  • It's in the README distributed with the SDK. :)


    It is but your own sample (weather) wasn't updated so it's misleading...

    Comm.makeJsonRequest("api.openweathermap.org/.../weather",
    {"lat"=>latLon[0].toFloat(), "lon"=>latLon[1].toFloat()}, {}, method(: onReceive));

    Trying to understand what the docs are telling you is difficult at times, that's why we have examples, to make life easier. If the example is incorrect then it makes life harder.