The New Industrial Revolution
January 31st, 2010
For the past few days, I’ve been jumping-out-of-my-shoes excited from reading the cover story of the February 2010 issue of Wired magazine entitled “The New Industrial Revolution,” by long-tail theorist Chris Anderson, and the related issue of Make magazine, the theme of which is “Desktop Manufacturing.”
Building Boarduino
April 26th, 2008
I recently soldered up a Boarduino from Adafruit Industries. Boarduino is simply an Arduino clone with a smaller form factor, designed to plug directly into a breadboard rather than giving you the female headers of the original. I thought I’d post a few photos of the process.
I really like the idea of the Boarduino, because I found I was doing almost all of my prototyping on a breadboard, and it seemed like I was always trying to figure out new and different ways to anchor the big Arduino down.
Soldering Tutorials
April 14th, 2008
My Weller WES51 arrived today (w00t!), and in celebration, I thought I’d compile a list of my favorite soldering tutorials around the web.
How to Solder Correctly: An excellent starting point, thanks to a detailed seven-minute video and lots of close-up images.
Soldering Tips (PDF, 284K): Ten pages of required reading by Tom Hammond, with advice on tool selection, tip tinning, component positioning, and solder types. Lots of great diagrams for all of us right-brained learners.
Basic Soldering Guide: From Everyday Practical Electronics magazine, discusses tool selection, soldering methods, and — perhaps more importantly — de-soldering!
Soldering Basics: This detailed tutorial from SparkFun.com includes several short videos and lots of pictures, then lets you really get your hands dirty with step-by-step instructions on soldering up a basic RS232 shifter board kit.
Surface-Mount Soldering: More and more components and ICs are shrinking in size and doing away with through-hole pinouts. Just go easy on the coffee and you too can solder SMDs!
Basic SMD Soldering: A whopping 8-part solder-a-thon from SparkFun. Starts with tools, moves into surface-mount soldering techniques, then takes it up a notch with hot-air rework — for when you mess up.
Arduino-Python 4-Axis Servo Control
April 8th, 2008
Although the Arduino platform is ideal for standalone applications, it really comes to life when interfaced with a PC. Connect Arduino to a personal computer and you instantly add a ton of versatility and processing power to your project.
This tutorial will describe how to use Arduino to control a bank of four independent RC servos with your PC (or Mac, or *nix Box), using a USB cable and a modular Arduino-Python software stack.
The following discussion builds upon concepts presented in two previous articles, “Arduino Serial Servo Control” and “Joystick Control of a Servo.” As always, comments, critiques, or suggestions for improving or adapting this code are welcome and appreciated.
Project Outline
The primary goal for this project was to create a software stack that allows simple and flexible control of multiple servos from any type of Python script.
The solution has two basic components: (1) an Arduino sketch that waits for serial input from a connected PC, then moves each servo to its commanded position, and; (2) a Python module on the PC that opens the serial connection and formats the data packets expected by the Arduino.
Any other Python program written to sit on top of these two layers need not worry about the messy details of serial communication, but rather can just say something like, “Move servo #2 to 90 degrees.” Or, more precisely:
servo.move(2,90)
Easy, right? Let’s get started.
Joystick Control of a Servo
December 27th, 2007
detailed information on using a USB joystick to control one or more RC servos.
Inspired by Armadillo Aerospace and their laptop-controlled Pixel rocket, I decided to figure out how to use an Arduino module to achieve wireless remote control of a flight vehicle.
Along the path to development, an achievable intermediate goal would be something like a wireless RC rover with a video camera, monitored and controlled with a laptop and joystick on a WiFi network.
Step one in the process is simple joystick control of a servo over a USB connection. This project builds upon the process documented in “Arduino Serial Servo Control.” I welcome any comments or suggestions for improving or adapting this code.
Behind the Scenes at UGOBE Labs
December 15th, 2007
UGOBE is a small California robotics company that develops life-like animatronic creatures which they call “Life Forms.”
Their first creation is a cute, foot-long, green dinosaur-bot named Pleo. Pleo is an autonomous robot pet which incorporates a range of environment sensors, fluid mechanical movements, and a custom made “Life OS” AI operating system which allows all these elements to work together to simulate a living creature, reacting to and learning from its environment. Far out.
I really enjoyed these short videos, in which Caleb Chung, the toy-creation guru and UGOBE co-founder, gives a short tour of UGOBE Labs and talks about the development of Pleo. Looks like an awesome place to work!
Learn more about UGOBE at http://www.ugobe.com/.
Arduino Serial Servo Control
December 9th, 2007
One of the cool features of the Arduino platform is its ability to talk to other electronic devices using standard protocols. The big draw of physical computing, in my opinion, is the power it gives you to affect a limitless range of real-world objects with your PC, rather than just boring old monitors and printers.
This short tutorial will demonstrate one way to use Arduino to control a servo motor with a PC, using a USB cable and the Arduino’s serial library. It will in no way attempt to be an introduction to asynchronous serial communication, since such topics are better addressed elsewhere.
RC servos are comprised of a DC motor mechanically linked to a potentiometer. Pulse-width modulation (PWM) signals sent to the servo are translated into position commands by electronics inside the servo. When the servo is commanded to rotate, the DC motor is powered until the potentiometer reaches the value corresponding to the commanded position.
Arduino Pulse Width Modulation
December 8th, 2007
The digital pins on the Arduino board can be set (with code) to output either HIGH (5V) or LOW (0V) — essentially ON or OFF. This is great for applications like blinking LEDs or activating relays.
But what if we wanted an output voltage somewhere in between 0V and 5V? This might be useful in applications like controlling the speed of a DC motor, or “dimming” an LED.
Well, the digital pins cannot directly produce an analog voltage; as we’ve said, they’re either HIGH or LOW. But it turns out we can simulate these “in-between” voltages using a technique called Pulse Width Modulation, or PWM.
Open Source Hardware
December 6th, 2007
Check out this cool video from the O’Reilly Open Source Convention (OSCON) July 23-27, 2007 in Portland, Oregon, featuring (two of my heroes) Phillip Torrone, Senior Editor of MAKE Magazine and Limor Fried, founder of Adafruit Industries, discussing the relatively new idea of open-source hardware.
It’s worth a look, if only to see Limor jam all the WiFi in the room with her hand-held Wave Bubble!
Running Arduino on Ubuntu
November 24th, 2007
Arduino is an open-source electronics prototyping platform based on flexible, easy-to-use microcontroller hardware and software. It’s intended for artists, designers, hobbyists, and anyone interested in creating interactive objects or environments.
This short tutorial will guide you through the installation of the Arduino development environment on Ubuntu. These instructions reference arduino-0010 and have been tested on Feisty and Gutsy, both 32-bit and 64-bit installations. Thanks to this post on the Ubuntu Forums for the basic setup.
arduino-0011



