I Make Projects . com
On the right project, some bad rust looks better than some good paint.

Main | Projects | About | Contact and Services

This is an older site. For my professional site and contact information, visit AE Innovations. You can also visit my new site at It Came From The Workshop.

The Haunted USB Cable!

This prank device is a clever way to make someone go from pulling out their hair, to scratching their head...

What Is This?

It looks like just a cable with a chopped-off end, but there is much more to this cable than meets the eye... it's Haunted! A ghost inside this little cable messes with any machine it's plugged into! While plugged into a machine, it will randomly toggle tHE CAPSLOCK, randomly insert a Spa ce, a Delet, a Tab, and other mischief!

Just to be clear - the purpose of this device is to bewilder and amuse. It's not intended to be one of those devices whose sole purpose is to anger or annoy others.

Once the Haunted USB cable is plugged into a computer, the CAPS LOCK light will be blinked once after a 10-second delay to let you know it's working.

From then on it begins to randomly turn on CapsLock, Insert, and NumLock modes. It also randomly inserts a Space, Backspace, Tab, or Delete.

It does this at random times, waiting up to 30 minutes between each random event.

The Haunted USB Cable's software and hardware is Open Sourced.

To use:

    1. Plug it into a computer.
    2. Tuck the cut end of the cable in among existing cables, or under peripherals.

Like any good prank, it's not too obvious. It's just enough to drive someone mad at what appears to be a malfunctioning keyboard.

Eventually your victim will decide something is wrong. Sooner or later they will start trying to find the problem, and when they do they'll find the mystery of a decapitated USB plug with an empty cable! Even techies will be scratching their heads in confusion over it. How could an empty cable cause such problems?

Of course you will know the answer: it's Haunted!

Cutaway view, showing hidden electronics inside.

Or... maybe it's not really as empty as it looks?

Neat! How Do I Get One?

You can make your own with the instructions given below.

They make great gags and excellent gifts!

How Does an Empty Cable Become Haunted by the Ghost of a Decapitated USB Keyboard?

It's very simple. You start on a Full Moon.

Then you take an ordinary USB keyboard and plug it into a computer with the date and time set to 6:66pm on October 31st. Now comes the hard part.

While loading up a text by H.P. Lovecraft, you must suddenly unplug the USB keyboard while invoking the name of HID (the many-tentacled elder god of corrupted device drivers) exactly at the stroke of midnight.

Then precisely at the moment the connection is broken but before the keyboard loses all power, you must decapitate the keyboard by cutting through the cable - preferably with a rusted multitool, but a mail-order ceremonial dagger is acceptable. Don't worry about making a clean cut. In fact, the messier the better.

The ghost of the keyboard becomes trapped inside the cable at the moment of "death", causing it to forevermore haunt any machine it is connected to with phantom keyboard signals...

And that is how a Haunted USB Cable is made.

Those Directions Didn't Work For Me!

Are you sure it was done precisely at midnight during a full moon? That's a common mistake.

Er, Have You Got Any Other Directions?

Hmph. Well -- and I warn you that it's not nearly as interesting -- but I suppose you could use this schematic and this .hex file to make your own. The fuses for the ATTINY45 should be set to BODLevel=2.7v, CDIV8 disabled, and SUT_CKSEL to PLL Clock.

You're on your own for cramming it into a USB plug housing, though! You're going to need a steady hand and a fine eye.

(This isn't a beginner's project, but if you are a beginner and you're interested in the AVR you might want to check out this Quickstart Tutorial.)

Source code for this project is available here (a zipped AVRStudio project). It uses the Objective Development USB library for AVRs.

This project's design and source code are open sourced, licensed under the GPL (in accordance with the licensing requirements of the Objective Development library).


The programming I did for this project was helped along greatly by Garrett Mace's Steath USB CapsLocker (from whose code I learned a lot about how to use the USB library) and of course Objective Development's EasyLogger which uses their USB library for AVRs and makes implementing USB much easier. For the physical appearance, while I did hatch the idea of a sheared-off cable to complete the look on my own, such a design also appears in this extremely clever Sawed-off USB Key project from which I got some good inspiration about what did and didn't look good about a messily sheared-off cable!

Main | Projects | About | Contact and Services

Original Content - Copyright 2010 (Except where specified)