IP Over QR Codes

We’ve seen networks built over some interesting mediums, but QR codes has to be a new one. [Eric Seifert] decided to try to use QR codes to make an IP connection. He used these visual codes to create a bi-directional connection between two camera-equipped computers. He’s a persistent chap, because it works: in one of his videos, he shows an SSH connection between two devices.

He faced a number of challenges on the way. Although there is plenty of code to read QR codes, the data that can be encoded and read from them is limited. There is a binary mode that can be used with QR codes, but it is really inefficient. [Eric] decided to use base32 coding instead, packing the data into each frame as alphanumeric text. Each QR code image that is created and received is numbered, so the system can keep track and request any lost images. He also had some problems with keeping the data consistent between the encoded and decoded versions, so he had to add some packing to the data before it would work.  It uses Python-pytun to create a TUN/TAP device that carries the data.

The speed of the connection is rather slow: in his demo video, the two computers take over a minute to exchange keys for an SSH connection, and [Eric] measured the speed of the connection at about 100 bits per second. But even getting something like this working at all is a significant achievement. He has published his code on GitHub.

We’ve featured the work of [Eric] before: he created a data connection using an iPod FM transmitter.

Continue reading “IP Over QR Codes”

E Pluribus Unix, QR-Style

It’s been a long time since we’ve logged into a UNIX mainframe (other than our laptop) but one of our fond memories is the daily fortune: small, quirky, sometimes cryptic sayings that would pop up on the login screen if your system administrator had any sense of humor.

Apparently, we’re not alone. [Alastair] made his own fortune clock which gives you a new “fortune” every second instead of every login. There’s a catch, of course. It’s a QR clock — the fortune is encoded in a QR code instead of being displayed in human-readable form. You have to take a picture of the tiny OLED screen to know what it says. (Watch it sending him Shakespeare sonnets in the video below.)

You probably know QR codes are good for conveying URLs, but their use as general-purpose text containers is underappreciated in our book, so we’re glad to see this example. Now, we’ve seen QR clocks before (here, and here), and this version does have the disadvantage that you can actually tell what time it is. But we’re grateful for the trip down memory lane.

Continue reading “E Pluribus Unix, QR-Style”

Downloading Data Through The Display

HIPAA – the US standard for electronic health care documentation – spends a lot of verbiage and bureaucratese on the security of electronic records, making a clear distinction between the use of records by health care worker and the disclosure of records by health care workers. Likewise, the Federal Information Security Management Act of 2002 makes the same distinction; records that should never be disclosed or transmitted should be used on systems that are disconnected from networks.

This distinction between use and disclosure or transmission is of course a farce; if you can display something on a screen, it can be transmitted. [Ian Latter] just gave a talk at Kiwicon that provides the tools to do just that. He calls it ThruGlassXfer (TGXf), and it does exactly what it says on the tin: anything that can be displayed on a screen can be transmitted. All you need are the right tools.

Continue reading “Downloading Data Through The Display”

Hackaday Links: December 15, 2013


Want to get a hold of a gaming controller attachment for iOS at a rock bottom price? [Dark GOD] learned that Amazon is closing out the Gameloft DUO Gamer hardware for $6 because the hardware is no longer supported by the operating system. He shows how to make it work using a Cydia app. [Thanks ProMan]

[Frank Zhao] had a cheap HDMI switch which had problems with a sagging power rail. His solution was to hack in a USB port to inject some power.

This security hack uses an Arduino with LCD screen to display a QR code. Scan it with an Android device and you no longer need keys! Here’s the code repo and a demo video.

It’s interesting to see how many places the WS28xx pixels are popping up. Here’s a crowdfunding campaign that uses a matrix of the pixels as a portable gaming display. Look somewhat familiar? We’ve seen [Retro Brad’s] earlier hardware (made to play Super Pixel Bros.) that used an LED module instead. This is probably a lot easier to drive since it uses serial data instead of multiplexing.

Next is some robot building inspiration. [IronJungle] has been hard at work building a rover that uses compass bearings for navigation.

We liked seeing a drop-in replacment uC for Ikea Dioder projects, but if you need more power under the hood, take command of those colored lights with a Raspberry Pi.

Those lucky enough to have access to a laser cutter will find this Inkscape extension for living hinges useful.

Finally, POTUS threw down the gauntlet, encouraging everyone to learn how to program by pointing them toward the Hour of Code program. We’ve long thought that everyone should have some level of coding education. Do you agree with us? Of course, getting something like this into schools is a monumental challenge, so it’s nice to see extra-curricular offerings. We also believe that Hackerspaces are among the best driving forces for getting kids a tech education. [via Adafruit]

Making QR Codes in Google Docs


[Jordi] sent us this great tip on how to generate QR codes inside Google Docs. This can be super handy if you ever need to make a lot of them at one time, plus they update on the fly!

In his example he set up the code to create vCards so he could transfer contacts to his phone quickly and easily. The code pulls in a Google API QR generator and provides you with a QR code as an image! The following is his code, which can be easily modified to suit your needs:

=image("https://chart.googleapis.com/chart?chs=200x200&cht=qr&chl=BEGIN:VCARD%0AN:" & A2 & "%20" & B2 & "%0ATEL;CELL:" & C2 & "%0AEMAIL:" & D2 & "%0AEND:VCARD")

Or if you just want the bare bones:

=image("https://chart.googleapis.com/chart?chs=200x200&cht=qr&chl=<strong>YOUR CELL</strong>")

And if you need a full walkthrough, there is a video after the break. Those wanting to tinker around with more QR code hijinks will enjoy forming images from QR codes and milling QR codes into your copper layers.

Continue reading “Making QR Codes in Google Docs”

LCD-based QR clock

Here’s a new take on the QR clock concept that uses an LCD display. The concept comes from the work [ch00f] put into his two versions of a QR clock (both of which used LED arrays). The time of day is encoded using the Quick Response Code standard. This version generates a new code each second which encapsulates date, hour, minute, and second information. If you look at the image on the left you’ll notice the code is not centered. Take a look at the video after the break and you’ll see that’s because it’s bouncing around the LCD like a screensaver. Watch a little longer and you’ll see the psychedelic effects shown in the image on the right.

A PIC32 is driving the display. It’s connected to a DCF77 radio module which feeds the system atomic clock data. The color plasma effects are used to show when the device has locked onto the radio signal.

Continue reading “LCD-based QR clock”

Making a QR clock bigger, cheaper, and better

With the massive response and blog cred from his QR Code clock, [ch00f] felt it was time to step up his game and update his design to a proper commercial product. His new QR clock is bigger, brighter, cheaper, and in every way better than the old version, but these improvements came at a cost.

The LED matrices [ch00f] used in his earlier, smaller version weren’t very aesthetically pleasing. He wanted the lights to shine a brilliant white, and also be somewhat attractive when not illuminated. The 8×8 LED arrays [ch00f] picked up from Futurlec had a disgusting yellow coating on each LED that turned light emitted by the blue LEDs inside to a brilliant white. This simply wouldn’t do for a commercial product with [ch00f]’s name on it, so he turned to the one place in the universe where everything was for sale: alibaba.com.

After some trials and tribulations with component manufacturers in China, [ch00f] had the perfect LED matrix; not too expensive, very good quality control, and something that looked really good when both unpowered and illuminated.

Now that his boards are being spun up, [ch00f] hopes to sell his QR clock on Tindie. Each 24×24 LED matrix should cost less than $100, a pretty good deal if you ask us. He’d like to know if anyone out there has any feature requests, to which we can only say he should get rid of the PCB border. Tiling a few of these displays and controlling them via serial would be much cooler than a QR Code clock.