Thursday, January 30, 2014

TOTT Bot, OpenMV, RoverPower, and more

I'm still working on TOTT Bot, the robot that takes out the trash. I've built a chassis with Actobotics parts, but want to rework it before I post more.

The more I think about it, the less I like the idea of grabbing and tilting or even lifting the trash can. I'd kind of like to explore turning my trash cans into trailers that the robot can hook up to and drag to the curb.

I'm also working with the creator of OpenMV to bring them to market as it were. We'd both love to see a really low cost machine vision module in the hands of hobbyists. One that is capable of 25fps face detection, real time color blob detection, USB support and more. Look for more updates over the next several weeks.

That's not all...

Tuesday, January 28, 2014

Debugging mbed, progress so far

I've been working on the code for Data Bus, my autonomous rover, in particular inserting FreeRTOS into the mix. Doing so made hardware debugging a necessity.

I've made a little progress with that and thought I'd share. Ideally I'd like to integrate debugging with Eclipse but have had to settle for command line for now.

You may recall I'm using the LPC1768 mbed. The mbed project recently implemented CMSIS-DAP which is a standardized interface to the ARM core's debugging hardware.

One can use a fork of OpenOCD that speaks CMSIS-DAP (until they merge those changes in). I used this fork. OpenOCD implements a gdb server to which your gdb command line client can connect.

I also found it immensely helpful to use pyOCD which takes care of launching the OpenOCD gdbserver for you. Follow the readme instructions on the pyOCD repo. You'll need python, of course, libusb (apt-get install python libusb for distros using APT), and pyUSB.

Apparently you can also write python scripts with pyOCD to interact with CMSIS-DAP (details here).

I haven't gotten Eclipse integration sorted out just yet...

Thursday, January 23, 2014

Diagnosing a Broken Oscilloscope

Analog oscilloscopes practically diagnose themselves. Without ever taking off the cover, here's how I tracked down a new problem on my primary oscilloscope.

I bought my BK Precision 1590A* quad-trace oscilloscope a few years ago because I liked the new-fangled blinky lights and pushbuttons, knowing full well I'd regret it some day.

It quickly became my primary oscilloscope due to small size and big features and soon it was my only scope as I sold off the others.

Then "some day" became today. The fancy blinky-lights and buttons on the CPU-controlled 1590A are spazzing. Some buttons don't work and those that do activate totally unrelated functions. I'm left wishing for mechanical switches. Drat.

Where do we start? I'll tell you...

Tuesday, January 21, 2014

Two RFM12B Arduino Clones

Funky V2, picture from Martin's Corner on the Web
The Funky v2 is an Arduino Leonardo clone with RFM12B radio module, much like the JeeNode I've posted about before, but considerably smaller at 22mm x 22.8mm.

It's meant for low power, battery operated, remote sensing. It also has a USB interface. I've never tried one but perhaps one day. I'm still trying to find the time to finish my mailbox sensor project.

Unfortunately, neither Funky is in stock as of this writing and I'm not sure that availability is great as Martin makes these by hand with extra PCBs from his projects.

MegaRF modules from Heye's Shop

Similarly, the megaRF on is currently out of stock. It's based on an ATmega168 and RFM12B. The module is made by Heye out of Germany.

I'm curious, dear reader, do you want, need, or use wireless sensor modules?

Thursday, January 16, 2014

Check this out: LPC800-MAX

Have you heard of the LPC800-MAX? Arduino shield-compatible, mbed-enabled, and LPCXpresso pin-compatible one one board. Costs about US$20.

LPC800-MAX image from
Perhaps you saw one of the reviews, maybe the, erm, editorial from Olimex? What are your thoughts on this board? Here's my summary...

Monday, January 13, 2014

AVC Planning with SHARC!

SHARC (our local robot club) had an awesome AVC planning meeting Sunday at Deep Space in Parker. Big thanks to Sparkfun for talk and pizza and RoboRealm for paying our meeting fees!

AVC? The annual Sparkfun Autonomous Vehicle Competition. Air and Ground vehicles compete in a fully autonomous race, drawing competitors from around the globe and thousands of spectators.

Sparkfun presented on the AVC, Scott Harris (2 time AVC winner) and I did an impromptu talk about our robots, and everyone was jazzed about the AVC.

Then SHARC founder George announced our top secret AVC entry. It's going to be huge! We have a number of very smart folks signed up to help. But, it's a little too early to reveal the secret. If all goes well I'll do so later.

If you want to find out what we're planning, subscribe to this blog's RSS feed.

Meanwhile I'm continuing to work on my own AVC entry, Data Bus, for 2014. 

Some of the SHARC attendees

Thursday, January 2, 2014

Check this out: DIP ARM with BASIC

Did you know there was an ARM in DIP form factor? The LPC1114. Well, not only that but you can program it in BASIC. Coridium is selling a 50MHz LPC1114 in DIP form factor for a measly $10 for just the MCU or $42 for the eval kit shown below. My very slow BASIC Stamp II cost about $50 ten years ago.

The ARM BASIC was released awhile ago, but I don't think it got the press it deserves. I played with mine a little but still haven't had a chance to do a project and write-up.

Programming it reminds me of the Stamp's BASIC. One neat feature the Stamp didn't have: you can access any native MCU register so you have quite a lot of control over the device's peripherals.