Connect IQ SDK documentation

Hi,

I'm new to Connect IQ SDK and Monkey C, and after going through the documentation, I'm struggling to understand how to perform simple tasks like reading heartbeat intervals or transferring a test program to my watch. The documentation is frustratingly sparse and lacking in massively in examples. While I'm proficient in programming Arduino devices and enjoy it, I can't see myself  at the moment succeeding with Garmin's platform due to the poor documentation.

Comparing Garmin's app store to Samsung's or the Play Store, it's clear that Garmin's platform is deficient. I suppose it's because, for many, it's too difficult to write apps. I find this disappointing, but it aligns perfectly with my experience of the handling of my Garmin device and the corresponding Android app, which I find unnecessarily complicated.  But maybe I'm wrong, what's your experience?

  • For all of you which also do not know how to test a monkey c app on the device. I searched the documentation, asked gemini and copilot. Took me only about three hours. In the end I found it partially here.

    https://garmin.watchfacebuilder.com/garmin-device-app-online-builder-help/comment-page-14/

    This is how it worked for me. I'll break it down Barney style for you:

    Connect your device with the computer

    Make sure your device is selected in the manifest or maybe you can choose it in the built dialog. 

    In VS-Code press crtl + shift + p to open the command palette, type monkey and click on '...built for device'

    In the next dialog choose a random output folder. 

    After built, look up the .prg file in the output folder and copy this to the apps folder on your device (DEVICE_NAME\Internal Storage\GARMIN folder)

    After diconnecting your device, your app should be available on it.

    I would have liked to find an explanation like this in the official documentation. But maybe I just missed it.

    If anyone knows how to display heartBeatIntervals, please share. The documentation on datalistener in combination with heartBeatIntervals wasn’t clear to me, and I would need a working example.

  • A good place to start is the New Developer FAQ

    https://forums.garmin.com/developer/connect-iq/w/wiki/4/new-developer-faq

    And make sure you look through the samples in the SDK.  In VSC, from the command palette,

    Monkey C: Open Samples Folder