MAKE Volume 27 Web Extras and Downloads

MAKE Volume 27 Web Extras and Downloads

The robots have returned! MAKE Volume 27 features a special package with robotics projects for every age and skill level. They play music; they outwit your pets; they learn from their mistakes! In addition, we’ll show you how to build a special aquarium to keep jellyfish, create pre-Edison incandescent lighting, spy via the internet, and make a go-anywhere digital message board! All this and much, much more, in MAKE Volume 27.


Image (1) glenn-derry-thumb-600x338.png for post 110121

Glenn Derry: Movie Maker

By Bob Parks

This special effects innovator hacks together blockbuster filmmaking tools – and shares his recipe for an indie-budget virtual camera. (Page 32)

More photos

NOTE, July 2011: Glenn Derry is currently working on an all-consuming film project in Malta, and has not yet had a chance to finalize the step-by-step instructions and MotionBuilder plugin for his DIY Virtual Camera, as described in MAKE magazine vol. 27. We apologize for the delay. Please check back soon..

YouTube player


Image (2) yellow-drum-machine.jpg for post 105775

Yellow Drum Machine

By Frits Lyneborg

Build a funky little free-range drumbot that roams, makes beats, and samples. (Page 42)

Check out the full Yellow Drum Machine project build, for suppliers, prices, and other sourcing information.

Download the code files.

CORRECTION: In the AXE20 connection diagram for Yellow Drum Machine (Figure T on page 47), the Digital Output connections at upper right should be indexed 07-00 reading downward, with +5V running down along the right edge. [|Download the corrected diagram].

YouTube player




Roomba Recon

By Raymond Caruso with Evin Papowitz

Turn an old Roomba into a web-controlled wireless remote surveillance vehicle. (Page 49)

Expanded Materials and Tools list

Recommended suppliers, prices, and other sourcing info.


  • Wireless router, Linksys WRTSL54GS — You could use another router compatible with OpenWrt (see for a list), but it might need different drivers.
  • iRobot Roomba robotic vacuum cleaner — These models are known to be compatible with the RoombaCMD code. We used an old Roomba Red 4100 model (Discovery/400 series). Prices range widely online, or you may be able to find a used one.
  • Webcam, compatible with Spca5xx driver — See for a list. We used a cheap Creative Live Cam.
  • USB hub, 4-port, aka splitter
  • TTL to USB serial cable, TTL-232R— We used #TTL-232R-5V from FTDI (
  • 8-pin mini-DIN cable
  • DC power plug, size M coaxial, aka barrel connector
  • 9V battery snap connector
  • Battery holder, 8xAA
  • AA batteries, 2,700mAh (8)
  • Diode, 1N4001
  • Switch, SPDT (single-pole double-throw) toggle
  • Electrical tape
  • Windows computer with wi-fi and internet connection — Other platforms should also work, using their own Telnet/SSH and FTP utilities.

For mean, green LED/acrylic bling (optional):

  • Acrylic/plexiglass sheet, clear, 6″ thick, 36″30″
  • 9V battery snap connectors (2) — in addition to 1 above
  • LEDs, green (4)
  • Resistor, 330Ω
  • Switch, SPST (single-pole single-throw)
  • Machine screws, #10-24, 5″ (16) — These can be cut down to size as necessary.
  • Wing nuts, #10-24 (14)
  • Rod couplings, 3/16″ (14)
  • Machine screw nuts, 6″ (19)
  • Flat bar, about 1/2″ wide (2 pieces)— to secure the USB hub and battery holder. We cut aluminum plate to size, but anything will work — wood, plexiglass, etc. We secured the hub with a bar, 2 machine screws, and wing nuts; and the battery holder with a bar and 2 inverted machine screws, no wing nuts.
  • Hot glue (optional)


  • OSMO/Hacker serial interface (optional) — model 4920 (blue) or 4921 (black) from Protech Robotics (, $30. Check your Roomba’s “born on” date from the serial number printed on the barcode sticker on its underside (you may need to remove the battery to see it). The 9th to 14th characters indicate this date, in YYMMDD format. If your Roomba’s born-on date is before October 2005, you need an OSMO/Hacker to reprogram its firmware (newer Roombas don’t require this step). Our Roomba model used version 2 (model 4921), but older models require version 1 (model 4920).
  • CAT5 network cable, aka Ethernet cable
  • Soldering iron and solder
  • Multimeter
  • Wire strippers
  • Drill and drill bits, for machine screws
  • Screwdrivers, to match screw type
  • Cutter or saw for acrylic (optional) — We used a homemade CNC cutter.

OSMO/Hacker serial command interface (SCI) for Roomba

These devices “unlock” older Roombas to make them hackable. To determine if you need one, check your Roomba’s “born on” date from the serial number printed on the barcode sticker on its underside (you may need to remove the battery to see it). The 9th to 14th characters indicate this date, in YYMMDD format. If your Roomba’s born-on date is before October 2005, you need an OSMO/Hacker to reprogram its firmware.

There are two OSMO/Hacker models: 4920 (blue) and 4921 (black), both $30 from Protech Robotics ( Our Roomba model used version 2 (model 4921), but older models require version 1 (model 4920).

Sequence of commands to install drivers using the ipkg utility:

Issue these commands to the router through an SSH client, we use PuTTY. These steps were created by

Log in to your router @ with your username and password.

Issue the following commands to the router to download and install the necessary files,(commands are in bold)

  • root@OpenWrt:~# ipkg install kmod-videodev
  • root@OpenWrt:~# ipkg install libgcc
  • root@OpenWrt:~# ipkg install libpthread
  • root@OpenWrt:~# wget
  • root@OpenWrt:~# gunzip spca5xx_lite.o.gz
  • root@OpenWrt:~# mv spca5xx.o /lib/modules/`uname –r`
  • root@OpenWrt:~# cat “videodev” >> /etc/modules
  • root@OpenWrt:~# cat “spca5xx_lite” >> /etc/modules

This adds these drivers to the so called “startup folder” but will not run them immediately. Reboot the router or type the following commands to start the drivers.

  • root@OpenWrt:~# insmod videodev
  • root@OpenWrt:~# insmod spca5xx_lite

Instructions to install the camera drivers:

Plug in the camera and type dmesg

You should see some output regarding your camera if it is recognized.

As above, issue these commands through an SSH client. These steps were created by

  • root@OpenWrt:~# wget
  • root@OpenWrt:~# gunzip spcacat.gz
  • root@OpenWrt:~# gunzip spcacat.gz
  • root@OpenWrt:~# chmod +x spcacat
  • root@OpenWrt:~# mv spcacat /usr/bin

Download imagesnap file

Instructions on how to forward your router ports

  1. Navigate to
  2. Select your router type from the list on the homepage (your home router type, not the onboard router you’re using to control the Roomba).
  3. Select the type of service you would like to create a port forward for. In our case we will be setting up HTTP
  4. The website will now display images and instructions on how to forward the correct port (80) and point and incoming internet traffic to our Roomba’s web server.
    • IMPORTANT: When asked for the IP Address to forward to, enter the IP Address we set for the Roomba’s Router. This must be different then your home router IP.
      When finished, make sure you hit Save. Your router will reboot. You can then test to make sure it worked.
  5. Go to to get your external IP Address.
  6. Type http:// [your external IP address] into a web browser to navigate to your Roomba’s control page.

If everything went as planned, you should now be able to control your Roomba from anywhere!

USB Missile Launcher

USB Missile Launcher Linux Driver

ERRATA: In Volume 27’s “Roomba Recon,” the Linsys WRT-SL54GS router is hard to find and resists substitution. We apologize for any frustration, and hope to document an alternative.

Image (2) spazzi-make-volume-27.gif for post 103418


Spazzi: A Solenoid-Powered Dancebot

By Marek Michalowski

Build a cute robotic bobble-head that dances to your music, and even makes some of his own. (Page 56)

Check out the full Spazzi project build for recommended suppliers, prices, and other sourcing information.

Click to see more step shots.

Download the parts files (zip file).

Download the demo patcher (the name of a Max/MSP document) Spazzi.maxpat (zip file).


  • MAKE Spazzi Electronics Bundle — item #MSSPZ from the Maker Shed (, includes: Arduino Uno microcontroller, MakerShield, mini breadboard, jumper wires, transistors, resistors, and diodes.
  • Arduino Uno — Maker Shed #MKSP4
  • MakerShield — Maker Shed #MSMS01
  • Mini breadboard — Maker Shed #MKKN1
  • Jumper wires — Maker Shed #MKEL1
  • Transistors (3), TIP102 — Jameco #32977
  • Resistors (3), 1kΩ — Jameco #690865
  • Diodes (3), 1N4004
  • Solenoids (3), sealed continuous pull, 12V, ¾” stroke — 69905K4 from
  • Cable ties (6), 1.8mm wide — 298-1017-ND from
  • Compression spring, type 302, 0.312″ OD, 0.02″ wire diameter — 9663K19 from
  • Latex rubber cord, 1/16″ diameter — 1775T21 from
  • Electrical Tape
  • Power supply, 12V 2A — Jameco #1950497
  • 3D-printed ABS body parts (3) and eyes (optional, 2) — 3D files for these plastic parts can be downloaded from the project’s page at Use a 3D printer to print them out, or send the files to a 3D printing service such as Shapeways, Ponoko, or i.materialise.
  • Visit Spazzi’s BeatBots page.


    Image (6) teleclaw-600x450.jpg for post 104855

    Teleclaw: Remote Robot Gripper

    By Gordon McComb

    Use a TV remote to grab and release small objects from afar. (Page 62)

    Check out the full project build for recommended suppliers, prices, and other sourcing information, plus power supply options.

    Download the code.

    Running the Telegrip From Just One Power Source

    Radio control servos motors can suck up a lot of current when they move. The telegrip avoids the many pitfalls associated with this problem by using a separate battery pack for the servo.

    Depending on the torque rating and current draw of the specific model of servo you use, and the current capacity of your power supply, you might get by using just one power source. Unless you add voltage regulation for the PICAXE, you must run both circuit and servo from a power source of no more than 5 volts. Options include:

    • Set of three AA- or C-size non-rechargeable batteries (nominal 4.5 volts) in a battery holder
    • Set of four AA- or C-size rechargeable batteries (nominal 4.8 volts) in a battery holder
    • Regulated 5VDC power supply with 1 amp (minimum) output (most plug-in wall transformers are not regulated, so be sure to check)

    You’ll know you have problems when the servo draws too much current, causing the voltage to the PICAXE to sag below its brownout level. When this happens the chip will reset, or may function erratically.


    Teaching Old Toys New Tricks

    By DJ Sures

    Convert toys into surprisingly capable robots. (Page 66)

    See additional images

    Expanded Materials and Tools list

    Recommended suppliers, prices, and other sourcing information.


    • Toy — with moving parts
    • EZ-B.NET Bluetooth Robot Controller V3 — $119 from
    • Computer running Windows 7 or Vista, with Bluetooth transceiver
    • Batteries, AA (5)
    • 2.4GHz wireless camera — I got one on eBay for $19 with an embedded battery that charges off USB.
    • GWS modified servos (2)
    • Servo horns (2) — star-shaped attachments for mounting
    • Small screws

    Optional, for LED and speaker connections:

    • Servo extension wires (2)
    • LED


    • Dremel with cutting wheel
    • Screwdrivers, small
    • Sharpie
    • Masking tape or label maker

    Optional, for LED and speaker connections:

    • Soldering iron and solder
    YouTube player



    Jellyfish Tank

    By Alex Andon

    Convert a regular aquarium into a jellyfish habitat. (Page 82)

    Check out the full Jellyfish Tank build.


    Image (1) ps2you_opener.gif for post 109404


    By Immanuel McKenty

    Go-anywhere, instantly updatable glowing digital message board. (Page 92)

    Check out the full PS/2/You project build for suppliers, prices, and other sourcing information.

    Larger version of schematic diagram.

    Download the code package.

    Please Note:

    Check the IC’s on the back of the LED panels If it says “ht1632c” you need the updated version of the code Simply change line 131 of the MatrixDisplay.ccp file:
    Original code: writeDataBE(8,HT1632_CMD_COMS10,true);

    New code for ht1632c LED panels: writeDataBE(8,HT1632_CMD_COMS00,true);
    Works perfectly! Big thanks to Adam McKenty for tracking down the needed change to the library.




    By Peter Tabur

    Experience pre-Edison incandescent lighting. (Page 104)

    Download the chimney template.


    Image (1) mobile-document-camera-stand.gif for post 106313

    $30 Gobo Arm: Mobile Document Camera Stand

    By Adam Flaherty

    Go hands-free for the price of a clamp. (Page 126)

    Check out the full project build for recommended suppliers, prices, and other sourcing information.



    Wood Gas Camp Stove

    By William Abernathy

    Download the computer, printer, and drilling templates.




    Download the code file.

    Discuss this article with the rest of the community on our Discord server!


    Ready to dive into the realm of hands-on innovation? This collection serves as your passport to an exhilarating journey of cutting-edge tinkering and technological marvels, encompassing 15 indispensable books tailored for budding creators.