C4FCM/MBTA Hackathon

Mission
To create applications for the web, phone, and other technologies using recently-released data from MassDOT and MIT.

For more information, please go to our Eventbrite page.

LED Sign
Ben Resner's LED sign has been cloned. The plans for the new sign are to make it work with live prediction data for the Saferide shuttles and install it near the Student Center.

Since Saferide is only operational after 6, we can't test it yet! But we think it works =)

Next steps:
 * Figure out how to make the sign not scroll but display 4 fixed messages in turn
 * Talk to Anna's or other student center businesses to see if they could use the sign.

T Explorer Project
Team members: Phoebe Post, Christina Xu, Brennan Moore

The user will input an address and a desired radius (0.1 mi to 1 mi). We will geocode the address into lat/long (probably using Google), and then query the database of stops for all the points within the radius given (probably using Postgres. Once we have a collection of stops, we then query the database for all the routes that those bus stops give you access to, and map the routes onto a map which we display.

WATCH
OpenWatch

Minimal Project
 * watch receives time of next bus(es) for hardcoded station id

ToDo -> [ ] how? -> [ ] what?
 * [x] computer --bluetooth--> watch
 * [ ] phone --bluetooth--> watch
 * [ ] firmwear on watch?
 * send data over bluetooth


 * Project suggestions

note: futzing with the watch's bluetooth, and the general brainstorming that occurred at the beginning, convinced me to buy an arduino microcontroller plus a wireless shield. i highly recommend this path (also look into xbee client->server->computer route). more information here: http://github.com/diN0bot/ProcrasDoCoder ~lucy.

MassDOT Data
All the MassDOT feeds and documentation are located at the MassDOT Developers page.

MIT NextBus
Documentation about the MIT NextBus feed is available in this document, including how to access the various feeds.

Fossil Watches
From David Rosales of Fossil: "Regarding communicating with the watches, there's a nice piece of Android software

with an API:

...that can help you get an android application working with a watch very fast.

If you want to understand the watch's command set - I attached some documents to help clarify what the watch understands and expects.

Here's a short primer, or as short as I can make it :)

It's important to note that these watches were design for Sony Ericsson, so some of the software decisions on the watch are Sony Ericsson centric. Our goal was to make the watch as generic as possible, and we probably only got 80% there because of these decisions. Still, it's the most flexible connected watch on the planet today (and we have much more in the works).

The watches use the Bluetooth Serial Port Protocol (SPP) to communicate. Once paired to a Bluetooth device, the watch will automatically connect and open an SPP session and start sending an initialization sequence using AT commands.

The init sequence is detailed in the XLS for version 1 (MBW-100 and Fossil/Abacus) and version 2 (MBW-150).

The trace*.log are the details of a command session between an MBW-200 watch and a Sony Ericsson phone.

Once the init sequence is compete, there are a set of commands the watch understands to synch time, enter display mode, vibrate, display text, display graphics, and exit display mode. These display commands are common across the watches.

The MBW-150 and MBW-200 watches have music functions that send additional commands when music control buttons are pressed. Again, these are a little Sony Ericsson specific and not perfect for hacking, but they are still very useful.

The official Sony Ericsson AT command pdf document gives more details on how each command is implemented."

Here's an additional matrix showing all the Bluetooth commands--more condensed than the PDF by a long shot.