Older blog entries for shimniok (starting at number 112)

2 Mar 2016 (updated 2 Mar 2016 at 18:07 UTC) »

Sparkfun AVC 2016

Sparkfun announced that the 2016 Autonomous Vehicle Competition will be happening in September this year!

That's good. It'll be cooler than summer, almost certainly sunny and a pleasant 70-80 degrees. Plus we have loads of extra time to procrastinate. Win-win!

The big news is they're making some kind of addition to the AVC involving -- if the pictorial hint is to be believed -- little kids driving around in home made go-karts?!? Or... I really don't know...

What does it mean!?!?!?
Maybe autonomous road racing? That'd be sweet. Maybe kids will race with bots? Maybe robot kids will... nevermind.

What about me? Though life has been leaving boot prints on my backside for the better part of the last year, IF the AVC additions are super-interesting, Data Bus may have to make a comeback.

I haven't forgotten about rovers. In fact, I've been working on some Rover-related goodies in the meanwhile...

RoverPower [github] is ready for field testing. I wanted to eliminate the quirks of Data Bus' old switched regulator and this new design should do so with extreme prejudice.

It provides rovers with 5V, 1A from an automotive-grade LM2940 5V 1A regulator  [datasheet.pdf] with 6-26V input and low dropout voltage. The current design supports up to 3S battery.

With over-voltage, over-current, over-temperature and reverse polarity protection, not to mention the ability to effortlessly shrug off massive voltage spikes from inductive loads, the LM2940 will survive the worst a Rover can throw at it without breaking a sweat.

And speaking of which, the board's efficient thermal dissipation design mean you get to use all 1A out of the regulator without thermal overload. Filtering capacitors ensure plenty of clean, stable power for sensitive rover electronics.

During initial tests, an earlier version of this design solved spurious resets due to motor voltage spikes on my RedBot (Magician) robot. We saw these symptoms on robots entering the Parker Rover Rally and Data Bus' old regulator would shut down at odd times. This board should solve all of these issues.

RoverPower sits between Battery and ESC with 4 pairs of 5V/GND pins for clean, simple wiring.

This configuration also sets the stage for an I2C-based voltage/current sensor, RoverMeter [github], based on the INA138 (or INA168) sensor IC that monitors voltage drop across a shunt resistor.

Where it's different from the rest of the pack is the addition of an ATtiny onboard that will provide signal processing and an I2C interface so you get stable, accurate measurements.

Good ol' RoverMux is still available on Tindie and in its current revision, is as easy as can be to hook up, while remaining dead reliable. It's been saving Data Bus' bacon since 2011.

My RoverGyro will need a redesign. The chip it was based on was prematurely declared EOL. What to pick instead? A few folks on the DIY Rovers list have been raving about the Bosch BNO055 [datasheet.pdf] which is actually a 9DOF IMU system-on-chip featuring a built-in ARM Cortex M0 performing sophisticated sensor fusion.

I've been tinkering with a few other Rover boards too. Now that the AVC is announced, I guess I better get busy and get these designs finished, tested, and available to buy on Tindie. :)

Hopefully, too, OpenMV Cam rewards will ship in a few months and go on sale, so folks wanting to employ machine vision will be able to do so.

Syndicated 2016-03-02 00:00:00 (Updated 2016-03-02 17:45:55) from Michael Shimniok

Chinese Robot Kit

Kids can build robots, sure, but... which robot kit should be their first?

Lego Mindstorms? Pololu 3pi or Zumo? What would you recommend?

Every time I show my robots to elementary school kids that are really interested in building their own, I realize that I can't recommend a good starter robot kit. Why not?

I feel prospective roboteers deserve a kit that is low cost, can do two or more interesting things, is expandable, and is accompanied both by quality learning material and programming software that younger kids can understand and use.

So, I want to roll my own kit. But, where to start? Maybe... here:

I searched for a low-cost chassis and found vendors on AliExpress selling a robot kit.

It includes an Arduino clone, sensor shield, battery holder, motor driver / regulator board, motors, encoder discs, wheels, caster, and an acrylic chassis.

All for a ridiculously low price. Was it any good? Read on...

Kit Review

What you actually get in the kit is a good start, but you'd need some additional bits to make it all work.

The motors come with wires, mounting brackets and hardware, and encoder discs, but no encoder boards. The chassis and hardware are very similar to the Sparkfun's now-retired
Magician robot chassis.

Pan-Tilt bracket
There's a pan-tilt head similar to the one sold by Adafruit, but the kit includes only one of the required two 90g micro servos. Fortunately I had an extra laying around. The bracket is supposed to clip into some unknown FPV camera, I think.

The power board includes an H-bridge motor driver IC (L298N) with robust heat sink, and a 7805 linear 5V regulator.

However, for all the boards, you must supply the standoffs and mounting hardware and you get to drill your own holes, unlike the Magician. A sonar sensor is included, though with no mounting bracket.

Still, it's a good starting point. Even after you add the missing pieces, total cost should be far south of $100.

You can always add on Sharp IR distance sensors, line following sensors, a robot firefighting apparatus, a claw, or various other things.

Bot Thoughts Electronics?

PIPduino has I2C, SPI,  servo headers.
For my kit, I think I'd rather use in-house, Bot Thoughts electronics. My Uno-compatible PIPduino lends itself nicely to robotics, for example.

My RoverPower regulator board is a good fit, too. I'd need to design a motor driver board, though.

Or, perhaps source a nice switching supply and motor driver from Pololu instead.

The basic kit would have to include encoder sensors and some multi-purpose environment sensing. Expansion kits could be added for specific purposes like maze solving, firefighting, sumo, and line following.


For programming, I know the Lego Mindstorms visual programming language seems to work, because the robot club at my daughter's elementary school use it with success.

EV3 Visual Programming
Scratch for Arduino might be an option; it's for ages 6 and up and is popular, apparently. Or, Minibloq, the first Kickstarter I backed, developed by folks who regularly teach robotics to kids.

For older kids I'm thinking MicroPython would be ideal. Or ... (looks around nervously) ... BASIC, which is what I learned on. The Coridium ARM BASIC chip is an option.

There is something to be said for simple syntax, no semicolons, and no curly-braces...

Well, what do you think? Worth doing? What would your kit look like? Let me know in the comments or click the "Contact Me" link on my blog page.

Syndicated 2016-02-24 00:00:00 (Updated 2016-02-24 00:00:09) from Michael Shimniok

30 Nov 2015 (updated 30 Nov 2015 at 18:12 UTC) »

Cyber Monday 2015

Updated with lots more sales going on!


Bot Thoughts

20% off - 80CFB16
10% off - 6B54471


  • Hackabot Nano, Arduino Robotic Kit, $30 off (coupon code : 8882BB8)


  • 10% off all products with F3E57A2 from Black Friday to Cyber Monday


30% off of selected products with 849EA4C


And my flagship, new 2016 model





Happy Thanksgiving from Pololu! Our Black Friday/Cyber Monday sale is almost here! We will be offering huge discounts on hundreds of products and automatically upgrading you to the next best price break for everything else. We will also have some great limited-quantity doorbusters. The special offers become active Wednesday morning (November 25) at midnight PST (3:00 AM EST/08:00 UTC), and the sale runs through Cyber Monday (November 30), ending at 11:59 PM PST. More information is coming soon, including a full list of the doorbusters and sale items, but for now, here is a sampling of the discounts.


Cyber Monday and all its glory is nearly upon us! For this year's celebration of festively-timed discounts, we're putting a huge selection of some of this year's best-selling and most popular products on sale for one day only – from 10-40% off! Check out our Cyber Monday page to get the scoop on the day's special deals!

GHI Electronics

Let's get right to our Black Friday through Cyber Monday Sale.
  • $1 Holey board
  • $3 Holey Moley board (limited edition, only available during this sale)
  • $8.88 mBuino mbed
  • 50% OFF
    • Cerberus boards (Cerb40, Cerbuino, Cerberus)
    • G120HDR
    • G30HDR
    • FEZ Spider Mainboard
  • 20% OFF
    • FEZ Reaper Tinker Kit
    • all NETMF Development Systems
    • all Raspberry PI HATs
    • BrainPad .NET
The sale is available for 4 days but the stock may not, so place your order now!

Electronics Goldmine

$5 flat rate shipping, lots of things on sale--too many to list.

Check them out here: www.goldmine-elec.com

Ham Radio Outlet

Lots of rigs on sale, check them here: hamradio.com

A Main Hobbies

Electronic kits 10% off, 15% off all else.


Today Only: Particle Sale

30% Off Your Favorite Particle Products

Ah Cyber Monday—the nerdy younger sibling of Black Friday. It’s one of our favorite shopping holidays here at Particle, and we couldn’t help but to get in on the fun. For today only we're offering 30% off some of our favorite Particle products like the Internet Button and Photon Kit. The ideal gifts to get for the engineer in your life, your favorite colleague, or, let's be honest...yourself.

Syndicated 2015-11-30 14:23:00 (Updated 2015-11-30 17:18:20) from Michael Shimniok

25 Nov 2015 (updated 25 Nov 2015 at 17:11 UTC) »

Cyber Monday, 2015

Bot Thoughts

20% off - 80CFB16

10% off - 6B54471

Coupons good per sale for any one item from Monday, Nov 30 thru Friday, Dec 6, 2015.


Happy Thanksgiving from Pololu! Our Black Friday/Cyber Monday sale is almost here! We will be offering huge discounts on hundreds of products and automatically upgrading you to the next best price break for everything else. We will also have some great limited-quantity doorbusters. The special offers become active Wednesday morning (November 25) at midnight PST (3:00 AM EST/08:00 UTC), and the sale runs through Cyber Monday (November 30), ending at 11:59 PM PST. More information is coming soon, including a full list of the doorbusters and sale items, but for now, here is a sampling of the discounts.


Cyber Monday and all its glory is nearly upon us! For this year's celebration of festively-timed discounts, we're putting a huge selection of some of this year's best-selling and most popular products on sale for one day only – from 10-40% off! Check out our Cyber Monday page to get the scoop on the day's special deals!

Syndicated 2015-11-25 13:00:00 (Updated 2015-11-25 16:50:01) from Michael Shimniok

22 Sep 2015 (updated 3 Feb 2017 at 02:07 UTC) »

Fixing Flaky LCD Monitor with ESR Meter

My Dell E2210H LCD monitor was really wonky.

Powering up from sleep, it would only occasionally come back to life, usually after resetting itself several times.

More often, it would power off or go into power saving mode, leaving the front panel buttons inoperative.

Occasionally it would reset or power off while operating normally.

Here's how I fixed it, using my DIY ESR test harness to find a bad capacitor without desoldering.

You can find disassembly videos and tutorials out on the web specific to your monitor. Remember, safety is your responsibility so please learn how to safely deal with dangerous high voltages, how to safely discharge capacitors, etc.

Low voltage drop; low ESR.
Meanwhile, after disassembling, I used my
Equivalent Series Resistance (ESR) Test Harness to identify bad aluminum electrolytic power supply capacitors.

The device sends a 1.0 Vp-p, 1kHz - 250kHz square wave through a capacitor on the board while the oscilloscope displays voltage drop across the capacitor.

You turn on the ESR harness, connect Channel 1 to the Probe BNC and Channel 2 to the Trigger BNC.

Then touch the red/black probes to the positive/negative capacitor terminals while they are on the board. Which is nice; you don't have to desolder every cap.

High voltage drop; high ESR.
The harness incorporates a voltage divider, so you can compute ESR based on voltage drop and the harness' series resistance.

But usually it's really obvious when you find a bad capacitor.

What you should see is a very low voltage drop across the capacitor as pictured above right.

A capacitor with overly high ESR will drop far more voltage as shown in the bottom right picture.

And that is just what I found on one of the 100uF supply capacitors on the main driver board for the LCD. The rest of the capacitors tested ok.

The bad cap looked fine but tested bad.
The test harness I built uses a 6.8 ohm series resistor so the ESR is computed as:

Normal ESR for good capacitors of similar size are orders of magnitude less than that.

With such a high ESR, the capacitor was slowly charging and discharging, likely confusing whatever circuit or MCU was controlling the main power.

After replacing the capacitor with a good one, the monitor works normally, as expected. All with a minimum of work and the very low cost of a capacitor.

Admittedly, I somehow missed the bad capacitor the first time I tested so I ended up buying a power supply board. Now I have a spare. Oops.

Syndicated 2015-09-22 00:00:00 (Updated 2017-02-03 01:06:38) from Michael Shimniok

Automated OLED Test Jig: eeZee MicroSD

How does one test boards one sells on Tindie?

With a fancy-pants, standalone, OLED-equipped, high-zoot test jig, of course.

At least, that's what I built for testing my eeZee MicroSD boards. They're microSD breakouts for breadboard Arduinos. They've got the microSD socket plus 3.3V regulator, level-shifter IC, and various passives.

The test jig features an Arduino on the top of a two-layer permanent breadboard apparatus. Power is supplied by convenient USB connector. I manually place the board onto good ol' pogo pins soldered into the D10-D13 positions (plus power and ground).

A red and a green LED indicates overall status, while the Digole Serial OLED displays pass/fail status for each of the tests: initializing the card, creating a file, and removing a file, with an overall board status.

The test takes just a few hundred milliseconds to complete. The test jig is ready to go at any time. Just plug in a USB cable for power I can run through dozens of boards in a few minutes.

Here's the source code for the test jig: TestJig.ino

Syndicated 2015-08-06 14:30:00 from Michael Shimniok

Redlink Connection Refused

Trying to launch LPCXpresso Redlink server, getting a "connection refused" because a shared library is missing? Online forum threads like this one don't help?

Here's the real answer: actually troubleshoot and solve the problem on your unsupported Linux distro. It's easy, just read on...
If you see the error "could not load shared redlink object" then run strace to see what library the server is trying to open. 

strace /usr/local/lpcxpresso/lpcxpresso/bin/redlinkserv 

Look through the output for open() syscalls like this one.

open("/usr/local/lib/libudev.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)

The problem is that redlinkserv cannot find libudev.so.1 because the 32-bit version of libudev is named something different on your distro. (I'm using Mint 13, for example). First, you have to find the i386 library. Use find to search for the file. Specify -type f to ignore softlinks. Search in /lib, /usr/lib (try other directories if you don't find it in these):

$ find -type f /lib /usr/lib -name 'libudev.so.*' -type f

If you don't find it, you'll need to install it (apt-get install libudev0 or equivalent)

You want the 32-bit version. Use ls to find out which is a valid link/file. Then soft link to this from /usr/local/lib:

cd /usr/local/lib
sudo ln -s /lib/i386-linux-gnu/libudev.so.0.13.0 libudev.so.1

And all should be well.

Syndicated 2015-03-24 13:00:00 (Updated 2015-08-06 14:21:23) from Michael Shimniok

OpenMV: Counting Pips on Dice

One of our backers, Damage, had a great project idea for OpenMV Cam: count a dice roll visually. Here's what I ended up with.