Eclipse to VSC?

Is CIQ/MonkeyC development generally stable and full-featured in Visual Studio Code? What (if any) features are still missing? When SDK 4 comes out of preview mode, will VSC support it at the same time as Eclipse?

Looking forward to making the switch, but will wait until it is ready.

Thanks!

  • To update the CIQ plugin in Eclipse:

    Help > Check for Updates

  • Now I'm really stuck!

    I have used the new SDK manager in Eclipse and my code fails to compile under 4.0.1

    So I reverted to 3.1.9 and the Simulator crashes.

    Prior to installing the new SDK manager, the sim crashed and I had to start it from the command line, 

    Now, when I revert to 3.1.9 the sim once again fails to start(the IQ icon appears in the apps strip 

    But 

    As before.

    But... When I try my fix, and start the sim from the command line, the sim crashes:

    Is it possible to revert to the old SDK manager?

    I really don't want to be spending all this time getting the tools to work!

  • I have a work-around. I tried with Connect IQ 3..2.1 and the app compiles and runs in the sim.

    Now I have to work up through the versions to find when my code fails to compile! 

  • Since the whole new SDKManager and it's usage seems new to you, maybe this post when 3.2 was introduced may help:

    https://forums.garmin.com/developer/connect-iq/b/news-announcements/posts/connect-iq-3-2-now-available

  • I guess I skipped that because I'm supporting the Vivoactive HR and ist was not on the list

    Maybe I misinterpreted "Legacy Series"

  • Those are the devices that were getting 3.2 FW.  The 3.2 SDK would build for all devices.

    "Legacy" devices here are special versions of the va4/4s when it comes to CIQ.

  • I guess I skipped that because I'm supporting the Vivoactive HR and ist was not on the list

    By the same logic, you would never have upgraded past Connect IQ SDK 2.4.x, since Vivoactive HR doesn't support anything higher than Connect IQ 2.4.1/2.4.2.

    But as Jim pointed out, newer SDKs still build for older devices. 

    The point of getting a new SDK is:

    - To get bug fixes for devices which are still receiving updates

    - To get new features for devices which are still receiving updates

    - To support new devices which aren't supported by older SDKs

    e.g. Since you are still on Connect IQ SDK 3.1.x, you can't support (if I recall correctly):

    - Enduro

    - Venu Sq

    - Venu 2, 2S

    and maybe some others that I forgot about.

    If you're having problems with SDK 4.0.1, you could stick with SDK 3.2.5 (the latest pre-4.x.x SDK), but you won't be able to support Venu 2 and 2S.

    Maybe I misinterpreted "Legacy Series"

    [https://www.google.com/search?client=firefox-b-d&q=garmin+legacy]

    https://discover.garmin.com/en-CA/legacy/saga-series/

    buy.garmin.com/.../695447

    Legacy Series watches are Star Wars and Avengers-branded versions of the Vivoactive 4/4S.

  • Speaking of new devices and old SDKs, I've filed the following bug report (Venu 2 and Venu 2S apps crash on SDK 3.2.x, instead of simply failing to build as you'd expect -- Venu 2 and Venu 2S require SDK 4.x.x):

    forums.garmin.com/.../sdk-3-2-x-builds-for-venu2-venu2s-successfully-but-app-crashes-at-runtime-expected-build-to-fail

  • Guys, I hear the exasperation in your voices, but try to see it from my perspective.

    I have a single, quite complex real-world project that, over the years, I have attempted to implement on a range of platforms: Windows laptop, Android phone, Pebble watch, Garmin Vivoactive HR, Apple Watch/iPhone and now back to Garmin watches. 

    My primary activity is developing algorithms to interpret yacht racing manoeuvres by analysing the recent set of location data that I'm getting from the GPS and racing courses downloaded from my course management web site.

    [EDIT] Oh, yes, and building a UI that works in bright sunlight, through salt-encrusted sunglasses, wearing wet gloves in the high-pressure, wet environment of yacht racing.

    I have settled on the Garmin platform to implement the project because it's head and shoulders above the rest of the pack, which, as you can see, I have sampled quite extensively!

    All this extra work getting the development tools to work is a total distraction from my primary project. When I do have to delve into changes to the development environment, I approach it as a new user without any of this "assumed knowledge" . 

    All I ask for is understanding from Garmin that some of their developers are using their platform as a means to an end, not an end in itself.



  • Guys, I hear the exasperation in your voices, but try to see it from my perspective.

    Believe me, I'm not exasperated (anymore).

    I'm just trying to explain how Garmin SDK versions work. And suggesting that you stick to the latest version of CIQ 3.2.X if CIQ 4.x.x crashes for you. That way at least you get a couple of new devices and maybe a few bug fixes.

    New SDKs build for all devices, including old devices (with firmware that's stuck on old CIQ versions). Certain old devices don't get new CIQ versions. If you use the latest SDK, you should be okay to build on all devices (in general).

    Somehow I thought this would be obvious for anyone who's ever developed an app that supports devices on both CIQ 2 and CIQ 3, since CIQ SDK 3.x.x clearly supports both CIQ 2 and CIQ 3 devices (as well as CIQ 1 devices).

    Just outlining the reasons why you would want to upgrade to a new SDK. If you don't want to support new devices or get bugfixes/new features for existing devices which are still supported, then you don't have to get the new SDK.

    All this extra work getting the development tools to work is a total distraction from my primary project. When I do have to delve into changes to the development environment, I approach it as a new user without any of this "assumed knowledge" . 

    Well maybe that's where some of the earlier exasperation comes into play. You have obviously been developing on Connect IQ for a couple of years (apparently as a source of income), so maybe there's an assumption that you would have picked up a couple of things. e.g. "Developer Credentials". Sure, I could've explained what developer credentials are in my comment. I also could've explained what "Connect IQ" and "Monkey C" are -- at some point, there's a certain level of assumed knowledge given the fact that you have developed and submitted Connect IQ app(s) in the past.

    Could Garmin have been more clear about what "Developer Credentials" are in the new SDK Manager setup wizard? Probably. I imagine if you've never submitted an app before, "Developer Credentials" would be meaningless. They should probably explain what it is, but of course in your case, I kinda expect you to know what they are. Otherwise you would have no way of ever submitting another update for your app, unless your account stays logged-in forever.

    But I didn't develop the new SDK Manager or write the documentation.

    As I mentioned, you're getting help for free here. I have a day job, Connect IQ is just a weird hobby for me because I like Garmin sports watches (for some reason) even though there's way better uses for my free time.

    The way it comes across to me is that you want free community support for your for-profit project, and you're annoyed that it isn't perfect. Maybe some of the exasperation also comes from the fact that this is sort of the same vibe that I've gotten from your past posts.

    All I ask for is understanding from Garmin that some of their developers are using their platform as a means to an end, not an end in itself.

    We're not Garmin though.

    I can't dispute that the Garmin platform has a lot of issues. I found (yet another) bug based on the discussion in this thread.

    But see it from the perspective of someone trying to help you on a forum:

    You're asking for help migrating from Eclipse to VS Code or upgrading to CIQ 4, and complaining about things that don't make sense, that are broken, or introduce too much friction. While these may be valid complaints, nobody is forcing you to update SDKs or to migrate to VS Code. You could actually stay on Eclipse and CIQ SDK 3.1.9 forever, if you want. You just won't be able to able to get new features or devices.

    On the other hand, if your rationale for wanting to be on CIQ SDK 4 is to support Venu 2 / 2S, get new features for existing devices, or get new compile-time SDK features that work with all devices, then I guess you have to upgrade to CIQ SDK 4. We can try to help you with that, but I'm not going to apologize for Garmin's issues. I've probably complained about Garmin more than anyone else on this forum.