WatchApp: GIFTTT Alpha (Garmin device IFTTT trigger)

https://apps.garmin.com/en-US/apps/04890351-a25c-40ad-afae-f3c6907fe05f

GIFTTT is a simple application that allows Garmin devices to trigger IFTTT events via the IFTTT Maker channel (http://ifttt.com/maker). This may not sound all that interesting, but here are a few things it can allow you to do.

  • Open or close your garage door
  • Turn on or turn off a fan or other device
  • Control a programmable thermostat
  • Change the ambient lighting, open/close blinds
  • Text your wife a pre-written message


Anything you could control with IFTTT, you can control with GIFTTT. For actions may require purchase of additional hardware (to control ambient lighting, you'll need lights that are controllable similar to the Phillips Hue system, or to turn on/off a switch you might need to buy something like a Belkin Wemo Switch).

Instructions:
  • To use this app, you'll need to configure an IFTTT account, and activate the Maker channel (http://ifttt.com).
  • Once you've done this, you'll have to get into the application settings for GIFTTT and set the secret key you were given.
  • You will then need to create an IFTTT recipe to connect the services that you wish to use. For instance, if you wish to send your wife a pre-written text message, you would configure the Maker channel as the 'this' portion of the recipe, and iOS/Android Notification as the 'that'.
  • Now that you have a IFTTT recipe in place, you will need to configure one of the tasks in GIFTTT with the name and values you want to feed to the IFTTT recipe. You can do this from the GIFTTT menu for the task you want to modify.
  • To submit an action, you just have to pull it up on screen it and press enter.


Notes:
  • I don't currently have any logic in place to verify your key is correct and I don't check that you've entered one at all. I plan to fix this in the future.
  • The app currently does nothing to tell you that your device is not connected Garmin Connect Mobile. You will get errors when trying to submit requests, not before. I'd like to fix this so users see a not connected page.
  • The app currently displays a 404 error code. This does not mean that the send didn't work, it just means that the IFTTT server responded with data that couldn't be parsed by the devices JSON parser. I need to figure out how to tell IFTTT to send back JSON data.
  • There is currently no support for adding/deleting actions. You can rename and configure the existing ones, but you can't add or delete them. This will be addressed soon.
  • This is currently a watch-app, but I'd like it to be a widget. As soon as I can figure out how to get the widget to let me use the up/down arrows, I'll switch over. I'm considering adding a widget that has only one action (similar to the existing IFTTT Do channel).
  • The user interface is a little clunky. I'll work to refine it in the future.
  • I'd like to be able to send data from the device in place of the hard-coded value strings. For instance, you could send your current position and speed data to IFTTT.
  • If you have ideas on how to improve this app, please feel free to make requests.


Release History:

0.0.2
* Remove my secret key from the default settings.

0.0.1
* Initial Revision
* Supports 920XT with 4.20 firmware (ConnectIQ 1.1.2)
  • please support the F3. if you need some kind of beta-tester - i'd love to ;-)
  • I've given test builds to everyone that has asked, which is at least 5 guys, for testing. Not a single one has contacted me to provide feedback of any kind; not even to tell me if the software works or not. I've run into the exact same behavior with other apps (alti-vario is a prime example).

    I'm going to start time bombing them so they stop working after an 10 minutes of use. If they report back, I submit the port and they can have the released version. Maybe it is too easy to get past the time bomb. Maybe I need the app to self-report or something like that...
  • Make your dev build expire after some server-based time 1 or 2 days after sending out (maybe http://nist.time.gov/ )? Haven't thought through completely, still might be holes. At least would prevent the simple disabling auto-GPS-time and manually setting the time to override.
  • Former Member
    Former Member over 9 years ago
    Setting time on the device manually really only allows changing to a custom timezone offset. If you pick a UTC timestamp that you want to expire your beta and build it into the app there shouldn't be a reasonable way to circumvent it. The only way I can think of would be to do a factory reset on the device, and then never acquire GPS, which would render the device mostly useless. You could probably even block that by checking a start and end time stamp for validity.
  • I've uploaded time-bombed versions of the app for the fenix3 and epix if anyone wants to test.

    http://home.comcast.net/~travis.vitek/connectiq/GIFTTT-0.0.3/IFTTT_epix.prg
    http://home.comcast.net/~travis.vitek/connectiq/GIFTTT-0.0.3/IFTTT_fenix3.prg

    It will work fine until 7/13 (next Monday). If you try to run it after that you'll just see a message indicating that the beta version you have has expired. As soon as I have some evidence that the app works on these devices, I'll upload a new version to the app store without the time-bomb; if I get feedback early enough the public version would be made available before the beta expires.

    If you have feedback of any kind, please feel free to make suggestions. I know the user interface is horrible, I just need some ideas on what to display and how to display it.

    Travis
  • installed on epix secret key inserted trying some recepties
  • Former Member
    Former Member over 9 years ago
    Got it setup on my fenix 3. entered my secret key and a event. I went back into the app after i connected my watch to the laptop to charge and the app lost all my setup ifttt info. Reseting it up now, hopefully it sticks this time.
  • I did find a crash in this app today. I believe there is a problem with dynamic initialization of member variables. I've worked around it and uploaded a new version. I've also added instructions and download links here.

    I'm not sure why you'd have lost your settings. Ever time an edit is made, those changes are persisted. I'm not sure when the app actually writes the information to disk, but I'm sure it happens at app exit at the very least. Did you exit the app before connecting to power?

    Travis
  • Former Member
    Former Member over 9 years ago
    I did find a crash in this app today. I believe there is a problem with dynamic initialization of member variables. I've worked around it and uploaded a new version. I've also added instructions and download links here.

    I'm not sure why you'd have lost your settings. Ever time an edit is made, those changes are persisted. I'm not sure when the app actually writes the information to disk, but I'm sure it happens at app exit at the very least. Did you exit the app before connecting to power?

    Travis


    Awesome Guide!
    i'm not sure if i did exited the app 1st. Really cant get it to work yet. I'm not sure it saving my Secret key. It would be nice if there was a way to have a preview of the secret key once its been entered? For example - when you exit the screen after you enter the Key and and want to make sure you've entered it correctly you can't see it again. When i go back into the secret key screen i get a blank screen and i must reenter the key.