WatchApp: Activity Recorder




https://apps.garmin.com/en-US/apps/be468042-047e-4181-ae6f-e82a3f50b04e

A simple application that allows users to record activities like the built-in apps, but with more choices of activity type and sub-type. Activities that are uploaded to Garmin Connect have the specified activity type, so you don't have to go back and edit them after the fact. Supports three user-selectable data fields on a single page; Timer, Lap Time, Heart Rate, Average Heart Rate, Calories, Time of Day, Distance, Pace, Avg, Pace, Speed, Avg, Speed, Cadence, Avg. Cadence, Elevation, Ascent, Descent, Laps, Temperature fields are available. Allows users to enable/disable sensors and GPS for each activity type/sub-type.

*Note*: You have to enable sensors and GPS in the app if you want to record the data that they provide. i.e., if you want to go on a trail run and record your track, you have to select the activity type Run/Trail Running, and then enable GPS on the options page. All sensors default to off for all activity types. You must enable them explicitly.

*Note*: The list of activity sub-types is limited due to a ConnectIQ bug that affects most devices. The most requested activity sub-type is Strength Training, and unfortunately that one is affected by this bug. I will update the app as fixes are deployed with device firmware updates.

If you have a problem or question, post it in the forums thread (https://forums.garmin.com/showthread.php?239790) so I can respond.

Revision History:

0.9.6
* Added auto-save prompt 3 seconds after recording is stopped, much like you'd experience with the built-in activity applications.
* Added support for additional data fields, reorganized the data field selection to match up with the 920xt apps.

0.9.5
* Initial Revision
* Supports 920XT w/ 3.20 firmware and VivoActive w/ 2.70 firmware. Please post if you have success with earlier firmware versions.
  • I've mentioned before that I'm not sure how useful this app is on the fenix3 since you can create custom activity profiles for most activity types. If you think it would be useful, all I need is someone to test a debug version.


    When you create a custom activity on F3 you actually copy one. And the activity always get the activity type from the one copied from.
    If you want an "walk" app you copy say the hike app and save it as walk. But when you upload to gc it's still a hike activity. :(
  • OK... So... Hey! Can I have your source code??? Just curious! It would save me the time of getting started in my own app. As with others, I'd like something sailing specific. Well, specific to the types of races I participate in. To make that happen, I have to write it. I'm more than happy to work with you and credit you! Yes, I see your space limitations. I'm looking at paring the app down to one activity but expanding what it does in that activity quite a bit!

    Or I can just stop being lazy and start fresh on my own ;)

    cheers!
  • Former Member
    Former Member over 10 years ago
    What swim features are you looking for exactly? I read your review, and feel that I need to say, the vivoactive can't do heart rate for underwater activities with a heart rate strap. The ANT+ signals from a heart rate monitor don't travel far under water.


    Hey, thanks for answering :)
    The ANT+ signal travels a short distance and I have been using my old Vivofit successfuly on the same wrist as the Mio Link HR monitor. I didn't have any signal drops. I was mostly interested in not losing the stroke and distance info. I can always use the watch in a mode that allows HR but then i lose the specific info.
  • Right. The MIO is the only device that I currently know of that 'works'. I'm guessing that the heart rate data field built into the app will work with that just fine. I can do some tinkering tonight and see if the swim stroke stuff can be easily done or not. Of course, another option for you is to see about using a simple ConnectIQ Heart Rate data field in the normal swim mode. I'm pretty sure this setup will offer more functionality than what I'm providing.

    Travis
  • Former Member
    Former Member over 10 years ago
    Morning Travis,

    Thanks for all your hard work on this and giving back to the community. I was delighted to see your app on connect IQ as it looks perfect for my indoor strength and HIIT sessions.
    I'm running v0.9.8 on a VA on 2.7.

    I went to use it this morning for a strength session - and despite enabling HR under sensors (and wearing my HR strap) the HR data didn't show up in the HR field on the screen?
    But when I went into a stock Garmin app, the HR sensor picked up straight away and started showing.

    I understand that you have to enable the HR sensor each time with your app - but I couldn't seem to get it to work. Do you know if there's an issue/work-around here?
    Presumably the HR data should show in the field before I've actually pressed start for the activity?

    Any help much appreciated.

    Thanks again.
    Paul
  • went to use it this morning for a strength session - and despite enabling HR under sensors (and wearing my HR strap) the HR data didn't show up in the HR field on the screen?

    What activity type did you pick when doing your strength session?

    I discovered this morning that enabling some sensors in some activity types or on some devices just doesn't work. For example, enabling a bike power sensor on a vivoactive has no absolutely no effect. As far as I can tell, support for this sensor type is just not available on that device.

    I understand that you have to enable the HR sensor each time with your app - but I couldn't seem to get it to work. Do you know if there's an issue/work-around here?

    Once you've setup the sensors for an activity type, they should be remembered. Any time you select that activity type again, the sensors you used last time should be enabled. When the app starts up and when the activity type changes, I make a request for the sensors you wanted for the given activity type. I've tested this on a 920 with a handful (maybe a dozen) activity types and had no issues.

    Presumably the HR data should show in the field before I've actually pressed start for the activity?

    For heart rate, yes. For other sensors, maybe. I've learned a lot about this in the last 24 hours.

    I learned that the ConnectIQ environment doesn't appear to simply enable all of the sensors that are requested and provide/record data for them. It appears to make some decisions about what sensors are available in what activity types, and I may have no control over that. It does report which of the requested sensors were available, but it doesn't tell you which ones it isn't even going to bother trying to connect to.

    I also learned that on some devices, some sensors report they are available when they weren't. For example, in the Activity Recorder app, you might have the activity type set to cycling, and the view might be set to show a cadence field. Prior to pressing start, you might see some cadence numbers, but after pressing start, cadence data might not be available anymore. It appears that this is happening because the cadence value reported is based on the accelerometer built into the device and not a separate speed/cadence sensor like would be used on a bike. Once the activity is started, the system realizes it needs to report bike cadence and not run cadence, and then things go wonky.

    So, to make my app a little more user friendly, I'm going to need to go through every sensor type with every activity type/subtype on every physical device and see which work and which don't. Ugh...
    Once I have that matrix, I have to code it into the app to only allow supported device/activity/sensor combinations so as to not misguide the user into thinking that some sensor data is being recorded when it is not. Additionally, it seems that I need to improve the sensor code to detect that a sensor is detected, and maybe even try to connect to the sensor periodically until it is either found or too much time has passed.

    I think I have a lot of work to do...
  • Former Member
    Former Member over 10 years ago
    Hi Travis,

    Thanks for the reply.

    I picked activity type: Training/unspecified
    And, if I go to sensors and enable HR sensor, then start and record an activity (HR is not shown).
    Then back out the app and go back, HR sensor has defaulted back to disabled.

    If there's an activity type that you do know works with the HR sensor, let me know and I can test it.

    Hope this helps with your debugging.
  • Former Member
    Former Member over 10 years ago
    Of course, another option for you is to see about using a simple ConnectIQ Heart Rate data field in the normal swim mode. I'm pretty sure this setup will offer more functionality than what I'm providing.

    Travis


    You'd think that would work, yes. Unfortunately there are no HR related fields in the Connect IQ swim app and they don't even allow custom HR data fields. The sensor might even be disabled completely?
  • Former Member
    Former Member over 10 years ago
    HI Travis,

    Just downloaded this app which I have been waiting for a long time. I am just wondering on the TRAINING TYPE the only sub type it shows areunspecified and flexibility training but from your parameters used in your app it includes cardio training and strength training.

    I am using vivoactive.

    Great Effort Travis!!! YOu are Great!
  • When you create a custom activity on F3 you actually copy one. And the activity always get the activity type from the one copied from.
    If you want an "walk" app you copy say the hike app and save it as walk. But when you upload to gc it's still a hike activity. :(


    So as is now.. it's a bit annoying.. to config a custom app.. that behaves as one of the orignal apps.. and uploads as the original app.. just other settings for displayfields and autolap and such..