One of the challenges that seem to keep coming up when working with an Arduino is where to put it so that it won’t get banged up on the workbench or tossed off the dining room table to make space for dinner. I’ve written about using wood, and my books give examples of various types of enclosures (everything from PVC tubing to pro-grade test instrument enclosures), but what other options are available? Is there an off-the-shelf solution? Turns out there is, if you have an R2 or R3 type Uno (or Duemilanove), and best of all it’s inexpensive.
As promised earlier, here is a description of a plastic case for an Arduino R3 Uno, along with some tips for making it work for your next Arduino project. Here’s one without an Ardunio installed (yet):
I’ve been buying mine from a seller on eBay. The listing can be found here. The eBay listing has much nicer images than this (I was lazy and used my phone instead of the DSLR, so there are lighting issues). The thing that looks like a key (found inside the box when it first arrives) is a tool for reaching the reset button on a R3 Uno. It actually does come in handy.
And here is what it looks like when it’s opened up:
See those funky-looking little clear plastic bits glued into the inside of the top cover (on the right, they’re a little hard to see at first)? Those are light pipes for bringing out the LEDs on the Arduino. They work, too, as we’ll see in just a bit.
Now for the Uno PCB. Below you can see how it snugly fits into the case:
This case is made specifically for an R3 Uno. It will work with an R2 style PCB, but the reset button isn’t in the same place as with an R3. The light pipes do line up correctly, however (at least with my Duemilanove, I don’t currently have any R2 Uno boards available). A Leonardo will fit, but the light pipes don’t line up, and the micro-USB connector the Leonardo uses interferes with the opening in the case for a ‘B’ style USB connector. A little quality time with a Dremel (or other rotary tool) would fix this, but I have enough R3 Uno boards in stock that I don’t need to tap into my supply of Leonardos just yet.
There’s a drawback to all this happiness, however (but hey, I’m an engineer, I expect that to happen, don’t you know). The case isn’t tall enough to permit a shield to be mounted on the Uno under the cover, and when the Uno is seated into the case the headers along the sides of the PCB sit almost 10 mm below the top of the case. Unless a shield has really long pins it won’t connect securely to the Uno from the outside. The solution is to plug in some stacking headers to bring the connections out above the top of the case.
But beware (or, caveat emptor, as they used to say in Rome), because not all stacking headers are created equal. Some are taller than others, and the extension headers really need to be all be close to the same height for a solid and reliable connection (and not look really wonky, if you care about aesthetics). Here is a photo of what I’m talking about:
Both headers have the same number of pins, but notice how the header on the right has some extra plastic where the pins come out. If you plug these into an Uno you will end up with the following situation:
What you want is something like this:
So, to install extension headers for an Uno you will need one 10-pin header, one 6-pin, and two 8-pin headers, and they all need to be the same height. You can use the taller headers and that won’t hurt anything (but it might look odd), but I prefer the short headers. I try to buy them in quantities of 10 or more when I find them, so I don’t have to worry about running out. You could also trim off the ends of the pins, but I would use a shear for this instead of a pair of wire cutters. But, I’m too lazy to set up the shear for something like this, so I just get the short headers and plug them in.
Now with the short headers installed and the case closed up, it will look like this:
And just for completeness sake, here is what the light pipes look like when the LEDs on the Uno are active (before the extension headers were installed):
And, lastly, here is what a case with a couple of shields installed looks like:
If you are willing to do some major surgery you can always cut out the top of the case to make room for a shield and dispense with the extension headers. I don’t recommend that, however, even if you do happen to have a CNC router or vertical mill handy. If you are going to go to that much trouble you may as well just build your own case from flat stock or use something like this:
It’s another eBay item, and it goes for about $12 or so. I’m using one to house a CHIP single-board computer, and I’ll probably use another for my Raspberry Pi. Not as rugged as the types with metal panels, but the plastic front and rear panels are easier to work with.
I mentioned in an earlier post that the Uno cases have screw head cut-outs on the rear for wall mounting. That’s great and all, but I’m not thrilled about having shields hanging off the front of the box. If anyone ever asks me what I’d like to see different about these cases, I would have to say that I would like them to come in a range of heights. Maybe a shorter version so that the stacking extension headers aren’t necessary, and some other types with vertical room inside for 1, 2 and maybe even 3 shields.
If you happen to know who makes the Uno cases in China, please pass this along. I would appreciate it.