Skip to main content

Roomba Wii Shield

I've been working on an Arduino compatible Mini USB Host board. Well, I've had it done for a while now. I've slowly been compiling a bunch of projects for it so I can give it a cool Kickstarter one of these days. To that end, I designed a dedicated shield for controlling a Roomba vacuum with a Wii remote controller so that it might make the entirety of the project more compelling.



I'd already written the firmware and tested it with a chopped and spliced up cable a few months ago. It worked well for a while but one day the entire thing shot craps. My belief is that the on board voltage regulators could not handle the 16V the Roomba outputs (too much voltage to drop with an LDO without good cooling). So, for the dedicated board I decided to put a TO-220 7805 regulator with a heatsink on it. That should protect the main board from damage. I also had the idea of using optocouplers to isolate the Roomba signals from the shield. Optocouplers are ICs that contain an internal LED that turns on when a voltage is applied. That light shines on a photo detector which creates a voltage on the base of BJT opening a channel for current to run. This means two circuits can communicate without having any conductors between them. They isolate distinct circuits in effect. This seemed unnecessary but the board just had enough room and the datasheet gave the impression it would work (foreshadowing).


I built it up and put it together and I got nothing. The multimeter tests I conducted gave me no guidance either. I put voltage on one side of the optocoupler and I get a voltage out on the other side, or so I though. I put it on the oscilloscope and once again learned the value of good tools. The scope showed me that the clear problem was that the optocoupler is slow to respond. It can handle changes at human speeds but not a the speeds I was signalling. The initial speed was something like 300mS to drop off to 0V. That is glacial! The datasheet suggested 3µs was the expected value so I clear did something wrong. I read it closely and saw the RL needs to be 100Ω for that to work like that. 



Time for a little rework.


I bodged up the board and got the voltage dropoff speeds into the 25µs range and was hopeful. I plugged it in and ended up with a Roomba that was, well, drunk. It moved slow and listed to one side. No dice.

I grabbed another board from the bag and built up a fresh one wiring around the optocoupler.



I bundled it up and gave it to my son Zev. Have fun son.
 

Comments

Popular posts from this blog

A Capacitive-Touch Janko Keyboard: What I Did at the 2017 Georgia Tech Moog Hackathon

Last weekend (February 10-12, 2017) I made a Janko-layout capacitive-touch keyboard for the Moog Werkstatt at the Georgia Tech Moog Hackathon. The day after (Monday the 13th), I made this short video of the keyboard being played: "Capacitive Touch Janko Keyboard for Moog Werkstatt" (Text from the video doobly doo) This is a Janko-layout touch keyboard I made at the 2017 Moog Hackathon at Georgia Tech, February 10-12. I'm playing a few classic bass and melody lines from popular and classic tunes. I only have one octave (13 notes) connected so far. The capacitive touch sensors use MPR121 capacitive-touch chips, on breakout boards from Adafruit (Moog Hackathon sponsor Sparkfun makes a similar board for the same chip). The example code from Adafruit was modified to read four boards (using the Adafruit library and making four sensor objects and initializing each to one of the four I2C addresses is remarkably easy for anyone with moderate familiarity with C++), and ...

Onboard Firmware of the Human Brain

Freesiders are continually tinkering with robotics and other such machinery .  Many of these embedded processors and firmware are becoming open source and every-more diversified in the wake of the modern Maker movement . One notable boost to the hackerspace arsenal is the Arduino (an like platforms).  This offers designers an incredible power to devise not just individual devices but even the emergence of complex, integrated systems . This evolutionary pace of modern technological systems may be significantly faster the biologic system development, but there may be a few well learned tricks yet to be mastered.  It seems that studying how nature has managed to solve many development challenges will aid in designing robotics, where efficiently counts just as much. One  challenge, that is particularly interesting, is data processing.  Artificial intelligence is labored with processing data and producing a meaningful and useful output.  When consid...

Freesiders Hackers Collaborate in Medical / Surgical Research

Published in the May issue of the Journal of Foot and Ankle Surgery : " A Novel Combination of Printed 3-Dimensional Anatomic Templates and Computer-assisted Surgical Simulation for Virtual Preoperative Planning in Charcot Foot Reconstruction ." This collaboration of specialties represents an undertaking by members of Freeside Atlanta , Southern Arizona Limb Salvage Alliance , and The Podiatry Institute .  Charcot foot reconstruction remains on of the most challenging procedures in foot and ankle surgery.  These procedures are often lengthy procedures which can be riddled with complications. With the help of Freeside Atlanta Members, institutional researchers used open source Osirix Image viewer and 3D Software such as Newtek's Lightwave or Blender to create simulated surgical reductions as well as 3D printed templates.  Freeside Atlanta members assisted in providing 3D printing solutions and know-how to the project. Experimental test prints were done on a M...