OpenMBTA
OpenMBTA is a free, open-source platform for delivering public transit schedules and real-time data to commuters in the Boston metro area. OpenMBTA is being actively developed for Bostonians by Bostonians, with a lot of help and encouragement from our first-rate public servants at the MBTA.
OpenMBTA for Android
You can get OpenMBTA for Android for free by clicking here.
OpenMBTA for the iPad
You can get OpenMBTA for the Apple iPad from the iTunes App Store for free by clicking here.
OpenMBTA for the iPhone
You can get the OpenMBTA iPhone app from the iTunes App Store for free by clicking here. The current version is 1.3. The new version introduces a new scrolling schedule view and multitasking support.
OpenMBTA will show you today's scheduled and real-time arrival times for MBTA buses, subway trains, commuter rail lines, and ferries. (Real-time information is available for certain buses and subway lines.) It also shows you the latest service delay announcements from the MBTA.
This application is under continual development. If you find any bugs or have a good feature or user interface suggestion, please let us know on the Support & Feedback Page.
How to use the app
These instructions are primarily for the iPhone app, but should carry over easily to the iPad and Android apps.
Let's just run through a basic use case. Say you're somewhere in Cambridgeport, and you want to know where the nearest stop for the Number 1 Bus to the Boston side of the Charles River is and when it's going to arrive next.
Starting at the main menu, you want to press Bus.
The next screen will show you all the bus routes with trips still scheduled today, ordered by number. If the bus you're interested in has a high number, you can navigate to it more quickly using the number index along the right. In this case, we don't need to do that because Bus 1 is at the top of the list.
For every bus route, you'll see all the headsigns for that route. Usually this means that there is one headsign for each direction, but some routes are more complicated and have more than two headsigns. For each headsign, you'll also see the number of trips left for today.
Please note that if a bus route isn't in service today, it won't show up at all on this list.
We've found Bus 1 going toward Boston, so let's tap that.
The next screen is the heart of the application. It is actually two views. By default, you'll see the map view. If you tap on the "Schedule" button, you'll see a scrollable schedule. The map view will show real-time information when a real-time data feed for that route is available; otherwise, it shows next scheduled arrival times. The schedule view always presents scheduled arrival times.
Here is a guide to what the colored pins in the map view mean:
|
A red pin is a stop. You can tap on any pin to show the stop name and the next few arrival times. If there are no more arrivals for the day, you'll see a message saying so. |
|
A green pin is the starting point of a trip. A route might have more than one starting point if trips start from different places at different times of the day. |
|
A purple pin is a stop where a bus is just about to arrive according to the MBTA schedule or according to the real-time data feed if available. You can take this as a rough indicator of where a bus is, or at least should be. |
|
|
If you've allowed the app to use your iPhone's location, a blue dot will drop onto the map showing your current location if it's close to the route or the line you're looking at. When the blue dot appears, the pin for the nearest stop should automatically show its callout with next arrival times. |
You can also bookmark routes using the bookmark button the top of the map or schedule screens. Bookmarked routes will show up at the top of the main menu.
Finally, check out the T-Alerts and the Twitter #mbta feed screens.
An important note on arrival times
The arrival times displayed in the app are approximations rather than than guarantees. Service delays due to traffic and other conditions can change the actual arrival times. Please visit the T Alerts section of this app (from the Main Menu) to see if there are any serious service delays or changes for any of the routes or lines you're waiting for.
Also, there may be kinks in the GTFS data or in the way that OpenMBTA's data server interprets it that could result in wrong schedule information. With the help of user bug reports, these will be ironed out over time.
Tips for handling the map
In the map view, you can quickly zoom into an area of interest by double-tapping on a spot on the map. You can also pan around the map by dragging it, and zoom in or out by stretching and pinching the map with your fingers.
OpenMBTA for Mobile Browsers
A beta version of OpenMBTA for mobile web browsers is now available. Visit this URL on your mobile browser to use it:
To save typing, you can also visit:
OpenMBTA is an open source project
The code for OpenMBTA is open source. Developers based in other metro areas who would like to adapt the source code for OpenMBTA to produce free iPhone apps for their own public transit systems are especially welcome to use the code base.
Source code:
- iOS client: http://github.com/danchoi/openmbta.
- Android client: https://github.com/hyoun98/openmbta-android.
- Back-end server: http://github.com/danchoi/openmbta2.
A Google Group has been set up for OpenMBTA project development: OpenMBTA Google Group.
The iPhone client is written in Objective-C. The Android client is written in Java. The data backend is written in Ruby, using Ruby on Rails, and uses the PostgreSQL database.
Goals for the next release
You can help determine next features through user feedback. Please leave your suggestions on the Support & Feedback Page.
FAQ
Q: Why is the iOS app rated 17+?
A: Because the Apple App Store approval process is very time-consuming and unpredictable, we were worried that Apple would reject us for showing the Twitter stream for #mbta. These tweets sometimes contain language that is inappropriate for young children.
Q: How can I support OpenMBTA?
A: The more people who use OpenMBTA, the more time we'll spend developing it. So please tweet about it, demo the app for others, and give the app a not unkind review in the Apple App Store and Android Marketplace.
Credits
The idea for this mobile app was born during Open Government Hack Day at Betahouse in Central Square, Cambridge, MA on September 27, 2009.
Chris Dempsey and Joshua Robin of the Massachusetts Department of Transportation were tremendous sources of encouragement and answered lots of questions. They pushed the MBTA to open up its data and make apps like this possible.
Michael Smith of NextBus helped OpenMBTA access real-time bus data.
Eric Richmond helped create the mobile web interface for OpenMBTA.
Braulio Carreno also provided this project with useful insights into the GTFS dataset.
Hoony Youn created the Android client for OpenMBTA.
Daniel Choi created that iOS clients and the Ruby/PostgreSQL back end.
OpenMBTA is maintained by Kaja Software, a software company based in Cambridge, Massachusetts.
