Introduction: Data Over Light: a Laser Modem Prototype
This project was motivated by a desire to analyze and discuss the shortcomings of our dependence on corporate communication networks.
As we keep delegating more and more of our daily lives to fewer and fewer digital platforms, using wires and towers owned by a handful of telecommunication companies, and watched over by an even smaller number of agencies, it becomes important to consider practical and conceptual alternatives for our affections.
On one hand, a laser modem provides a very direct, secure and personal communication channel that can be built to connect points at distances much greater than WiFi could cover.
On the other hand, the point-to-point nature of the link and the fact that it relies on a very thin beam of light to transmit data make it very susceptible to misalignment, interruptions and interference.
A most tenuous connection indeed!
As this is mostly a proof of concept and art installation, we focused on getting one-way communication working, but the circuits could easily be replicated to build two-way transceivers.
Step 1: Some References
A couple of other groups and individuals thinking about similar issues:
Ronja: This design from a group in the Czech Republic uses car brake lights to transmit data at 10Mbps.
Laser gun game: This is the most interesting for this kind of prototype, but we couldn’t get the tone decoder PLL ICs in time, and designing the filters can make for an interesting second version. We decided to focus on a simpler version of this.
Laser Transceiver Instructables: This is a good starting point, but we couldn’t get it to work at distances greater than 1 meter, much less 345 meters. There’s no way a 5mW laser and a single photodiode produce enough current, with low enough noise, for the ATmega168 to pick up. I also don’t think a 5mW laser with crappy optics can go 345 meters.
Step 2: Circuits and Materials
The transmitter circuit gets connected to the serial Tx pin on one of the RaspberryPis, and the receiver circuit to the serial Rx pin on the other Pi. You can have both a transmitter and a receiver on each RaspberryPi, you just have to double the amount of components.
Step 3: Assembly
No secrets here. One thing to note is that we used 6 photodiodes in parallel. This increased the area of “contact” for the receiver and also increased the amount of current being generated by the photodiodes. We also discovered that by covering all the photodiodes with a semi-transparent plastic also increased the reception area and improved the receiver’s resilience to movements.
We also attached the laser pointers to a mini tripod ball-head to help hold it in place.
Step 4: Code
Since the transmission happens over UART serial, all the code has to do is write/read to/from the Tx/Rx pin. Simple code for testing the connection is up on github.
There’s also a bit of code there for fetching and transmitting content from an XML file over the laser connection.
There’s also code for testing the circuits on Arduinos instead of Raspberry Pis.
Step 5: Testing
A short video showing the laser modem prototypes being tested with a simple message.
This worked reliably at 18 meters and 14kbps. It could do 57kbps at 5 meters.
We didn’t test it past 18 meters because that’s how big the room was, and 18 meters was enough for our purposes. Seeing how speed decreased with distance (probably due to noise), we don’t think this setup would work at 50 meters.
Step 6: Installation
The installation consisted of a modified WiFi router perched up high in a church that has been converted into an exhibition space and cultural center. The router keeps track of what kinds of sites and data people are accessing over the WiFi network and transmits that information via laser down to a projector.
The idea was to make a connection between former structures of power and knowledge and contemporary mechanisms of control. A most tenuous connection indeed! Despite all our scientific advances, we still look to the sky with reverence, for answers.