The XO Telegraph is a project I made for the MAS.110 class at the MIT Media Lab. Our goal was to make a high-low tech telegraph. The telegraph was made using an arduino paper computing kit from the High Low Tech group at the MIT Media Lab. However, we used wires since they were far more reliable and invoked the image of a telegraph. We also added decorative telegraph towers. The towers connected to OLPC XO-1 computers; one was mine and the other was on loan from the Media Lab. The XOs were connected wirelessly via mesh networking.
The system uses 3 systems the MIT Media Lab: an arduino paper computing kits, XO computers, and Legos (kinda). It also draws on the book we read in class: The Victorian Internet
We were not able to get all of the pieces to work:
The arduino reads the input from the switch and transfers it over serial to the XO computers. Our arduinos were not outputting the proper signals over the serial output to either XO or a Mac. We talked to Conner who made an earlier version of the system. He had no clue what was wrong. This was the most frustrating, since we did not know what was wrong. It could be defective wiring or arduinos.
The XOs use a non-standard implementation of Jabber to communicate with each other for mesh networking. We hooked them up to a Jabber server. We were able to register a Mac to the XO mesh and send messages from the Mac to the XO's chat program with both a Jabber client and a python script. However, we could not get an XO to send a jabber message with python, because pyjabber libraries have not been tweaked for the XO.
Also the arduino have no facilities to receive input from the computer. We had to drop plans to have the telegraph output be displayed by an LED on the board.
Also the XOs are very slow to program -> a major pain. Using a Mac is a lot faster.
Still this was a good first experience with hardware; we wish we had more support in integrating the parts
- Arduino Code - Code to put on arguino. Thanks to Conner
- Python Send Code - Code to send a message using Python
- Python Read Telegraph - Code to read the telegraph Thanks to Conner
- Python Read Telegraph and Send - Now put the two together
Notebook has brainstorming and work File:Final Project Notebook.pdf