Sojourn

Garmin app to view trip itineraries

The trip info is loaded from a JSON file created by the companion Sojourn app that is available for Android (manual here) and iOS (available soon) devices.

A trip consists of multiple days and each day consists of multiple events. The available events are:

Sojourn maintains the trip info in the watches memory so that, onece downloaded, it can be viewed at any time, any where.

Sojourn is licensed under the GPL V3.0. The latest source tree is available for browsing here and tarballs for the latest and older versions are located at the following links:

Main display

The startup screen show: Selecting (tapping on watches with touch screens or pushing the select button on older watches) brings up a Detail page showing all of the events for that day.

Detail page

This page show a brief summary for each event of the day. The Day at the top of the page shows the day of the trip, counting the first day of the trip as day 1. The actual date and day of the week is shown below this field.

Each event has an icon identifying the event type and the time of day for when the event starts (or the time the events ends if there is no start time, car rental pickups and hotel checkouts are the most common occrences of this situation). Tapping on an event brings up the Event page that shows all of the details about that particular event. The events are sorted based upon the shown time.

Event page

This page shows all of the information about a specific event. There are up to 8 different pieces of info for an event that will need to be scrolled on the watch given the limited amount of display space available (on a touch screen device like a Venu this is pretty easy, on a button only device like a Forerunner 55 this is a little cumbersome but still doable).

Get new itinerary

This get new itinerary page is displayed when you back out of the main page or the app starts with no itinerary. This page allows you to accept a new itinerary from the companion phone app or from a URL that is specified in the setting for the app. This page allows you to obtain a new itinerary and has 3 selectable options:

JSON URL

Garmin has made dealing with JSON encode URL data rather inconvenient. The issue is that Garmin is very picky about the data that it will accept. JSON data files must be tagged as JSON formatted or the Garmin URL code will not interpret it properly and this means that the cloud server supplying the URL (typically something like Google Drive, Dropbox, iCloud, OneDrive) must identify the data as a JSON file. I have not been able to get any of the cloud services that I have access to to specify Content-Type: application/json and, therefore, Sojourn is not able to download an itinery for me. If you can get your cloud service to specify the right content type then it should work for you.

Ultimately, I intend to add a JSON parser to the Sojourn app (I'll have to write it myself since Garmin doesn't provide an API to do this even though their firmware clearly has the capability buried in it somewhere) and then the app will be able to download a text file from any cloud service and then turn that text file into an itinerary.