API limitations to implement even simple logic

Former Member
Former Member
Hello!

First: sorry for whine, but, maybe this give some ideas to garmin developers.

I have ideas for two applications, I'd like to implement for fun. These apps don't relate to fitness, just exploiting the fact that I use fr920 as
everyday watches and it would be nice to use them for something more than just pedometer and time. I use them for running and biking too, but 80% of my time -- it's just a watch.

First app is to use fr920 as pomodoro timer (http://en.wikipedia.org/wiki/Pomodoro_Technique) -- just a simple timer which counts down 25 minutes, buzzes and counts 5 minutes of rest time. I implemented a prototype as widget in a couple of hours and discovered than widgets just cannot be shown longer than 1 minute. And I have no way to change that -- after 1 minute watch just switch back to watch face. I don't want to implement this simple thing as a full-featured watch face, I'm pretty happy with default face. So stupid limits with even simplest problem! The only way to implement it is to make a custom training -- pomodoro. But it's not very convenient and logical.

Second app idea is to create a sleep tracker using accelerometer events to wake me up in fast sleep mode. And again, it's not possible by several reasons:
1. accelerometer events don't available to custom applications
2. there is no such thing as 'background app' and foreground widget have no way to work more than 1 minute.
Fail, again.

Hm, that's not funny, really. So, I'm stopping wasting my time and trying to do something for this 'platform'.

Guys, you're making great sport gadgets, but if you want to compete with apple and other watch manufacturers (which will steal all your ideas in a year-two) you need to be more flexible for developers. Struggling with your limitations is not a good investment.
  • First app is to use fr920 as pomodoro timer (http://en.wikipedia.org/wiki/Pomodoro_Technique) -- just a simple timer which counts down 25 minutes, buzzes and counts 5 minutes of rest time. I implemented a prototype as widget in a couple of hours and discovered than widgets just cannot be shown longer than 1 minute. And I have no way to change that -- after 1 minute watch just switch back to watch face. I don't want to implement this simple thing as a full-featured watch face...


    This sounds like a perfect use case for an application--not a watch face or a widget. You should be able to simply change the app type in Eclipse and re-build as an application with no other changes. It will change where you will find the app on the watch (in the app list with Run, Bike, etc.), but it won't have the short timeout.

    Second app idea is to create a sleep tracker using accelerometer events to wake me up in fast sleep mode. And again, it's not possible by several reasons:
    1. accelerometer events don't available to custom applications
    2. there is no such thing as 'background app' and foreground widget have no way to work more than 1 minute.


    We've discussed the lack of accelerometer support elsewhere in the forums, but the main issue is that while we want to provide accelerometer access, we plan to wait until we can do it correctly. :) It's definitely something we plan to do.

    Background apps are not available primarily to protect battery life, which is paramount for our devices. You might be able to use an application-type app for this kind of purpose, but without accelerometer support, I realize that the idea you have isn't viable right now.

    I apologize that some of these features aren't available or work quite the way you expect. We're taking all of the feedback that we receive very seriously, though, so your comments are definitely appreciated. Connect IQ will keep growing over the coming months and years, so even if you're unable to do what you'd like now, I hope you check back in the future to see whether we meet your expectations.
  • Former Member
    Former Member over 10 years ago
    This sounds like a perfect use case for an application--not a watch face or a widget. You should be able to simply change the app type in Eclipse and re-build as an application with no other changes. It will change where you will find the app on the watch (in the app list with Run, Bike, etc.), but it won't have the short timeout.


    I'll check this, thanks! Today, while I was rereading pdf manual I had a thought that watch widgets have a different use case -- just a quick glance of some information stored in flash. In that perspective, widget timeout looks logical. Sadly, there is no (or I just haven't seen yet) clear comparison between different extension kinds and their intended use cases.
  • Here's a pretty good breakdown of the intention behind the four different app types:

    http://developer.garmin.com/connect-iq/what-you-can-build/

    The User Experience Guide PDF included with the SDK also has a more in-depth description of the four app types starting on page 3. If there's anything you believe needs clarification, let me know--we're always willing to revise documentation to make it better. :)
  • I mean, this is an 8-year old thread. It is too bad that Garmin hasn't been shy about breaking links, even in another case where Garmin blog content still exists and is linked to and from an existing forum thread.

    Anyway, try this instead:

    [https://developer.garmin.com/connect-iq/connect-iq-basics/app-types/]

  • @FlowState any active community for developers? because quick responses help a lot 

  • This is it haha. There's no discord or slack, although people have tried in the past

  • People have tried in the past, and it faded away fairly quickly.

    Understand that you posted your question in the middle of the night for people in the US, so even with a different forum, it wouldn't have been seen by a large number of users