Open Source Robotics With WireBeings

Everyone needs a cute robotic buddy, right? [Matthew Hallberg] created WireBeings, an open source 3D printed robotic platform. Looking like a cross between Wall-E and Danbo, WireBeings is designed around the Arduino platform. We do mean the entire platform. You can fit anything from an Arduino micro to a Mega2560 stacked with 3 shields in its oversized head. There’s plenty of room for breadboards and custom circuits.

WireBeings is designed to be 3D printed. All the non-printable parts are commonly available. Gear motors, wheels, the ubiquitous HC-SR04 ultrasonic sensor, and a few other parts are all that is needed to bring this robot to life. Sketches are downloaded via USB. Once running, WireBeings can communicate via an HC-06 Bluetooth module.  If the Arduino isn’t enough power for whatever project you’re working on, no problem. [Matt] designed WireBeings to carry a smartphone. Just connect the robot and phone via Bluetooth, and let the phone’s processor do all the heavy lifting. What if you don’t have a spare phone? Check our report on hacks using prepaid Android Smartphones.

We could see WireBeings as the centerpiece for a “learn Arduino” class at a hackerspace. Start with the classic blinky sketch on one of the robot’s eyes. Build from there until the students have a fully functioning robot.

There is definitely room for improvement on the WireBeings project. [Matt] made the rookie mistake of going with a single 9-volt battery to power his creation. While a 9V is fine for the Arduino, those motors will quickly drain it. [Matt’s] planning on moving to a LiPo in the future. Why not stop by the project page and give him a hand?

Continue reading “Open Source Robotics With WireBeings”

Bela: Real-Time BeagleBone Audio/Analog Cape

Bela is a cape for the BeagleBone Black that’s aimed at artists and musicians. Actually, the cape is much less than half of the story — the rest is in some clever software and a real-time Linux distribution. But we’re getting ahead of ourselves. Let’s talk hardware first.

First off, the cape has stereo input and output as well as two amplified speaker outs. It can do all of your audio stuff. It also has two banks of analogue inputs and outputs, each capable of handling eight signals. In our opinion, this is where the Bela is cool. In particular, the analog outputs are not Arduino-style “analog outputs” where it’s actually a digital output on which you can do PWM to fake an analog signal. These are eight 16-bit outputs from an AD5668 DAC which means that you can use the voltages directly, without filtering.

Then there’s the real trick. All of these input and output peripherals are hooked up to the BeagleBone’s Programmable Realtime Units (PRUs) — a hardware subsystem that’s independent of the CPU but can work along with it. The PRU is interfaced with the real-time Linux core to give you sub-microsecond response in your application. This is a big deal because a lot of other audio-processing systems have latencies that get into the tens of milliseconds or worse, where it starts to be perceptible as a slight lag by humans.

The downside of this custom analog and audio I/O is that it’s not yet supported by kernel drivers, and you’ll need to use their “Heavy Audio Tools” which compiles Pd programs into C code, which can then drive the PRUs. Of course, you can write directly for the PRUs yourself as well. If you just want to play MP3s, get something you have a bunch of simpler, better options. If you need to do responsive real-time audio installations, Bela is a way to go.

The project is open-source, but we had to do a bunch of digging to find what we were looking for. The hardware is in zip files here, and you’ll find the software here. The demo projects look/sound pretty cool and their Kickstarter is long over-funded, so we’re interested to see what folks make with these.