Building a MintDuino

All the components to build your own Arduino-compatible device – except the instructions.

A few months ago, I noticed that the Radio Shack closest to my home had begun stocking a larger assortment of “maker/hacker”-style kits: Arduinos, robotics kits, and that sort of thing. This is the sort of behavior I like to encourage in local businesses, so I made a point of picking up a few items even though I could have gotten them online just as easily.

Unfortunately, it appears that my patronage was not enough to stave off the wolves at the door. Now there’s nothing left but an empty space and a “For Rent” sign. So it goes.

The last time I was there, I picked up the Mintronics: MintDuino kit. I wanted another Arduino because one of mine was basically stuck in the middle of my BOE-Bot robot, and this looked like a change of pace. The MintDuino is a kit to build an Arduino on a breadboard – it comes with all the components, including the breadboard. It’s not quite the same as building an Arduino-compatible completely from scratch, since the microcontroller is preconfigured with the Arduino bootloader and the usual default “blink” program, but it’s close.

Testing out the voltage regulator and power distribution.

I figured that putting this together would be a fun diversion that would give me a chance to walk through the support circuitry for an Arduino and see exactly what does what. I was mostly correct, but there were some annoying problems along the way.

The MintDuino page at Maker Shed hosts a number of frustrated negative reviews caused by two issues. The first is documentation: there is none. Like a lot of these sorts of projects, there’s a card inside with the URL to go to for instructions. That’s a great idea because it means the instructions will always incorporate the latest errata. It’s a terrible idea if the web page changes and the link no longer has the needed information.

That’s apparently what happened here: The URL on the card points to the page at Maker Shed that contains the negative reviews of other poor lost souls who went there looking for documentation and couldn’t find it.

Happily, Google rewarded my supplications, and I found a copy of the appropriate documentation here. Once you have them, the assembly instructions are actually quite good – highly detailed and well-illustrated. Operating instructions? Not so much, but I’ll explain that later.

The other source of reviewers’ ire is that, unlike current Arduinos that all have USB interfaces, the MintDuino requires a TTL-level serial interface (e.g. an FTDI cable). This fact is not mentioned on the exterior of the packaging, which says that the MintDuino is “Easily programmable from almost any computer.” The requirement is listed on the card with the documentation URL, but you’ll only see that after you’ve gone home and opened it up. This is a pretty major failing for something that’s trying to be a retail product.

I was at least vaguely aware of the requirement because I’d seen the MintDuino online before. Also, I already had the necessary FTDI cable because I’d picked one up to use with my Project:65 computer. I was all set.

It was easier on my fingers to get all the wires in place before dealing with the high-profile components.

The actual assembly process was simple, but more time-consuming than I expected. New breadboards tend to have really tight contacts, and I had a lot of trouble getting the wires in place. After I’d gotten the power regulator section put together, I decided to change the order around. I put most of the wires in place first, so that I could get them into position without the other components getting in the way. Then I went back through and added the resistors, capacitors, LEDs, and so on. I had to be really careful not to miss anything, but it was physically a lot easier to build that way.

That’s kind of a pity, because the instructions presented everything in nice, functional groups. There’s the power supply, and then the clock circuit, the reset switch, the serial interface, and so on. It was really informative to see how it all went together.

One more frustration with the kit was that I actually ran out of the included hookup wire. There were a few times that I cut a piece too long and had to trim it down, but I don’t think I wasted that much. There really should have been a couple more inches of both red and black wire.

I wish the documentation included more information about why the components are set up the way they are. For example, I don’t know what the capacitors connected to the clock crystal are for, though I’ve seen similar designs elsewhere. There’s another interesting section with the way the RTS line from the serial connection passes through another cap to get to the microcontroller’s RESET pin. I think I understand what’s going on (when RTS goes low, RESET is briefly pulsed low), but it’d be nice to have it clearly explained.

I was able to test the power regulator of the circuit early on, and once I finished construction I hooked up a battery so I could watch the MintDuino run the default program that blinks an LED on digital pin 13, just like on every other Arduino. The next step was to hook it up to my computer and try to program it, but at that point the instructions left me high and dry, with no information about using it whatsoever.

The MintDuino includes a 6-pin header for the serial connection. The pinout is the same as my FTDI cable, though that wasn’t explicitly stated anywhere. I looked at the pinout diagram for the microcontroller chip to see which pins were Receive and Transmit, and Ground was obvious enough. RTS connects to the reset pin, while the cable’s power and CTS aren’t connected to anything. It turns out that I just had to plug the cable in, and as long as I had it the right way around (with ground next to the end of the breadboard) I was fine.

The first time I tried talking to the MintDuino from the Arduino IDE, uploading programs to it didn’t work. That was also something the instructions didn’t talk about. With some quick Googling, I learned that I had to change the Board setting in the IDE’s Tools menu. My other Arduinos are both Unos, but for this one I had to change the setting to “Arduino Duemilanove w/ ATmega328.”

After making that change, I was able to upload new sketches to the MintDuino. I used my modified TinyBasic to put it through its paces, and now it seems to be running just like any other Arduino. Hurray, success!

In the end, I think this was a worthwhile project, but one that was more frustrating than it needed to be. Better operating instructions, better description on the package label, and fixing the link to the Fine Manual would go a long way toward improving the end-user experience. Even so, I definitely wouldn’t recommend this kit for a first Arduino experience. Get the real thing first, and try this out if you want to see how it’s put together.

The MintDuino hooked up to the shift-register circuit that I had left over from last week. I’m so glad this actually worked!