Update (21/Aug): A walkthrough of how to fix the problem.
I don’t know about you, but the thing that stays with me from my Christmas mornings when I was a child is the feeling of ripping the wrapping paper from my presents. Not necessarily the presents themselves, but the feeling of discovery, and then the disappointment of finding out that your parents have forgotten to buy the right batteries.
As an adult we rarely experience that feeling, probably because it’s our responsibility to buy the batteries, but right now there are a number of Kickstarter backers that are probably feeling something similar.
The MicroView is a tiny chip-sized, breadboard compatible, Arduino with a built-in OLED display, and along with a number of other people I received my boards yesterday as part of the latest shipment to their Kickstarter backers.
But there was a problem, while the on-board tutorials ran fine I couldn’t use the USB Programmer to upload new code getting a ‘programmer not responding’ error from the board.
Anyone that’s played around with Arduino boards for a while knows that there could be half a dozen explanations as to why this error was happening, and most of them didn’t mean there was anything wrong with the board. Most of them in fact meant I was doing something wrong. However, looking at the comments starting to pop up on the MicroView getting started pages it looked like the problem was fairly widespread.
We’ve talked to Marcus Schappi—the CEO of GeekAmmo, and co-creator of the MicroView—before, so I dropped him an email to find out what was going on, and yes there was a problem.
I’ve just received word that on the 18th of July the test code used by SparkFun to quality control the MicroView was modified, and by mistake MicroViews since this time were not flashed with a bootloader.
Unfortunately this is a real problem. Normally with an Arduino board you could just flash the a new bootloader onto the board using the ICSP pins. However the MicroView isn’t designed to be disassembled, and in any case due to their size of the board it doesn’t use the standard 2 by 3 pin layout for the ICSP header.
We talked to Marcus and asked him some questions about the problem,
How did you first hear there was a problem with the MicroView?
We started to get a trickle of emails suggesting that there were faulty MicroView out there. As you’d know from your years of playing with Arduino the stk500 problem can be caused by many things.
What was your first reaction?
What’s causing the issue! Many MicroViews had shipped already and we’ve been only hearing awesome feedback. My thoughts were centered around: Could it be a hardware or is it a software issue? If it’s a software issue why didn’t we have this trouble with the first batch of shipments. Perhaps somebody loaded the wrong reel of oscillators on the pick and place machine, or perhaps SparkFun received a batch of counterfeit parts from their supplier. We have to get our hands on some of these faulty units.
We ended driving hundreds of kilometers but we were able to get a couple of bad units and determine that it was a bootloader issue, and not a hardware issue.
How did you go about figuring out what was wrong?
From our experience with Arduino, our first suspect was the bootloader. Arduino’s bootloader that is used by MicroView, is the software that is being executed first upon power up or reset. This software will wait for a predefined delay waiting for the programmer to issue bootloader command in order for it to enter into bootloading mode. The bad MicroView showed a symptom of not waiting or delaying after power up or reset, it immediately runs the demo without any delay.
How widespread is the problem?
We think there are as many as 1,934 Microview units without a bootloader
What will you do to rectify the problem?
Yes naturally! Backers who are part of the defective batch will receive two units: one that has a broken bootloader (now and in the coming days) and a second replacement that works.
So while an official announcement—both on their Kickstarter page, and by SparkFun—will follow in a few days, Geek Ammo know there’s a problem. If you have a defective MicroView, like me, they’ll be shipping you a new one to replace it as soon as they can—free of charge. Which is what you’d expect.
On the other hand it does leave you with an opportunity, while they aren’t designed to be taken apart, we’re makers, and while they’ll never go back together again I do sort of wonder if I can get mine working. So look out for a post over the next couple of days on that.
Update (21/Aug): Along with pretty much everyone else I’ve been seriously impressed with the response by Geek Ammo—the company behind the MicroView—and by SparkFun—who are manufacturing it—to the problem. However it turns out to be pretty easy to fix the problem yourself, and I’ve provided a walkthrough to do just that.