Skip to content

A Pebble watchface that shows when the next streetcar/bus/subway will arrive in Toronto

License

Notifications You must be signed in to change notification settings

chesterbr/toronto-transit-time

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Toronto Transit Time

A Pebble application that shows bus/streetcar arrival time predictions for nearby stops in Toronto.

aplite   routes   predictions

It supports all Pebble models - including Pebble Time Round:

routes   predictions

Download

Click here if you are on your mobile phone to install the watchapp (or just to get more info).

Alternatively, you can search for "Toronto Transit App" on the Pebble Time app.

In any case, there is no need to install any companion app, or preload/configure anything. Just install and run.

Rationale and Development Process

This blog post is a deep dive on how the initial idea ended in this app, and on why things were done in this particular way.

Structure

The /app directory contains:

  • The C code of the main application that runs on Pebble (with separate files for the routes and predictions windows and layers, plus a splash screen layer that is shared among them).
  • The JavaScript code that runs on the phone and provides location and internet API request/parsing services to the C app.

The /server directory contains a Rails app that:

  • Pre-fetches the stops from the TTC system.
  • Exposes an endpoint that receives a pair of coordinates and returns the closest stops and the routes served by each of those stops.

That back-end is used only to get the routes/stops list. Check its README for setup informaiton.

Predictions and service messages are gathered directly from the TTC back-end by the watch (from the C app, via the JavaScript app).

Credits / Acknowledgements

  • @cabello for the JavaScript tips and contributions.
  • @bwinton for the color icons.

Also thank you...

  • @bani for help with images, app name and Pebble development resources (not to mention having a physical Pebble Time Round, which forced me to support it 😭).
  • People on the pebbledev Slack for general guidance on my first Pebble app.
  • Toronto Transit Comission (TTC), for offering a service I am pleased to use, and for publishing the APIs that made this application possible.

Legal

The stop locations and predictions come from the TTC Real-Time Next Arrival service. The app or its authors do not have or claim to have any affiliation with the Toronto Transit Commission (TTC).

About

A Pebble watchface that shows when the next streetcar/bus/subway will arrive in Toronto

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •