Cheap light-based PC to microcontroller communication

We’ve seen some pretty cool projects that use blinking lights on a PC monitor to transfer data to a microcontroller. We did a little research, and here are some example projects we’ve found.

This project uses two photo transistors to read a bar code from the monitor. One handles the clock, while the other has the data. The data is read as the clock changes from black to white.

Here is the same project with a different variation of the transmission system. Instead of bar codes, two small rectangles flash to give the data and clock signals.

A more advanced setup is used by SparkFun’s bracelet kit, and the Blinky POV. Here only one flashing square is used to blink out the data, while the timing is handled onboard the uC.

You can find the blinking transfer software for the Blinky POV here, and for the bracelet kit here.

Join the Conversation


  1. Cool beans, that’s my drawing! Just wanted to point out that our Blinky POV (and the Blinky Grid works the same way for data transmission) kit actually uses two flashing squares, one for clock and one for data, to make the bootloader code as simple as possible.

  2. The whole idea is surprisingly old. I’m actually wearing an old Timex Datalink wrist watch from the mid-90’s right now that has a phototransistor on the clock face. A dedicated pc application would flash the monitor while you point your wristwatch at it and in some tens of seconds, phone numbers, todo lists, notes and one user application would be transmitter to the watch. Unfortunately the application only works with Win95/98 and requires a CRT monitor…

  3. This was even used by my bank back in the late 90ties to sync digital one time pad with the internet banking system. It wasn’t super reliable, though and was later replaced by having to type the challenges into the device manually.

      1. Sorry, I didn’t wanted to be rude on a volunteer with username DP.
        Mistakes can happen as we are humans. Hover mouse on the debated link “research”. You’ll see one sentence is buried in the link url part. The text after the anchor text gone within the href=”” part.
        I’d only suggest DP user to use WYSIWYG instead of HTML. HTML is great but mistakes are more.

Leave a comment

Your email address will not be published. Required fields are marked *

Notify me of followup comments via e-mail. You can also subscribe without commenting.