XWWT writes "A few weeks ago Make offered to send us a sample of its Raspberry Pi Starter Kit to see if we would do a review of the product. Samzenpus asked around the engineering team to see if there was someone who would be willing to do an on-camera review of the device. With all of the buzz about Raspberry Pi, I was very excited to get hands-on time with the device so I could more closely examine the platform. At first we wanted to do this piece as a video but quickly realized that a) it would probably be boring to see some blinky lights and push buttons working on a sample project, and b) the amount of audio that would need to be bleeped to cover my frustration with parts of the kit would be annoying. On a personal note, I also wanted to document all of my experience here as I thought it would be beneficial for newcomers to the maker technology and sometimes having someone else’s experience documented can help you avoid pitfalls and mistakes. (Full Disclosure: I am the Director of Engineering for Slashdot Media. We were given a review copy of the Make: Raspberry Pi Starter Kit. We were not paid for this review but had fun doing it.)" Keep reading for the rest of Wes's review.Unpacking the Box:
The box was nicely packaged with lots of little pieces parts in baggies and was well assembled. I immediately pulled out the Pi board and all of the packaged elements to see what was included. It became apparent that the shipping box would be useless to keep all the parts together once I unpacked it and found an old small plastic tool box to keep the parts in for future use and transport.
Included in the box was the 512MB Pi unit, 1A USB charger (underpowered for big projects), Pi Cobbler kit, Pi enclosure, 4GB Class 4 SDHC card, breadboard, a trimmed down version of the Medtronics kit, short HDMI cable, jumper wires (male) and the Getting Started with Raspberry Pi book. They seemed to be packed well as subassemblies so I tried to keep them together as such until later so I wouldn’t lose or mix parts.
The Medtronics kit had LEDs, resistors, capacitors, diodes, pushbuttons, switches, jumpers and some timer chips; all fun toys. Basically it is a collection that anyone doing electronics work would need in order to do a handful of projects. Most of these parts are cheap when bought in bulk, but getting variety collections like this tend to be expensive as you are buying only a couple of parts so it was nice to see them included. I was disappointed that I didn’t see any male-to-female jumpers in the box as these are useful in connecting pins but realized that was the point of the Pi Cobbler Kit.
After I had looked over the board itself, I thought it best to actually try to follow instructions since I was supposed to review the kit. I opened the included Getting Started with Raspberry Pi book and reviewed the first two chapters to get an idea of what was actually on-board the Pi itself and to see how the “Getting Started” would work for a first timer. Typically I find that getting started books from Make try to appear like How-To manuals blended with a lab book and they don’t do well being either. That was certainly the case with this book as I progressed.
The first chapter was really helpful as it laid out what the main components were on the board and what the actual available processing power. The board is an ARM11, 32bit, 700MHz processor. We happened to get the B version so it has 512MB of available RAM. The physical size of the board is a little larger than a stack of credit cards, with all of the components it is about the total size of a mans pocket wallet (about 3”x2”x1/2”). I examined the physical joints on the board and all were machine done (expected) and seemed to be in good order. The first problem I noticed though was that the joints for the HDMI and Audio/Video jacks would not be sufficient to keep them from being broken off the board. Additionally the joints holding the power unit seemed shaky if the unit were plugged in/out too frequently (the book and blogs confirmed that suspicion). The Ethernet port on the board seemed to be in good shape as did the GPIO and Display and Camera Serial Interfaces.
I was pleased to see that there were some status LEDs on-board for simple debugging. Those of us that are used to solving boot problems with status indicators like LEDs or audible tones know that these are important when you just can’t get a board to respond.
I then examined the enclosure case assembly which still had the protective wrapping on it and stunk of cutting fluid. There were no instructions on assembly for that so I set it aside. There seemed to be small parts in that package and I didn’t want to lose them, so I left it sealed.
Setting up Raspbian:
I wanted to validate quickly that there were no problems with the board so I ran through the steps of flashing the SD card with a copy of Raspbian. I actually tried both the dd tool installation under UNIX and the Win32DiskImager to see if there were significant differences in the experience. While the dd process seemed straight-forward the Win32DiskImage was just as easy. I found the documentation here to be the simplest to follow. Some might argue that having a pre-loaded SD card would have been best but I think the point of doing this yourself helps you to better learn the process and get more comfortable with the device.
I then plugged in the HDMI cable to the Pi and dug up a USB mouse and keyboard. Next, I plugged in the USB power supply and SD card. Immediately I made a note to use a powered USB port next time as it would reduce the number of times I would have to torque the onboard USB ports. When I went to plug the HDMI into my monitor I realized that I only had DVI ports and had to scrounge around in my toolbox for a HDMI to DVI converter. (DVI converters are inexpensive and would have been a nice addition to the kit.) I also made a mental note at this point to DX the 1.5m HDMI cable for something longer. I put the board on a non-reactive surface (notebook) so the contacts would not short and then booted the device. I followed all of the default options laid out in the Getting Started book just to make it simple. All-in-all the experience in booting and setting up Raspbian for the first time was satisfying.
Make: Pi Enclosure:
When I first looked at the Pi Enclosure it was pretty easy to see how it was supposed to go together. What I didn’t realize was the amount of swearing it would take to actually get it done. There are only nine parts in the V1 assembly and it should be easy to do, but without instructions it might as well have had a million parts. There is a delicate balance between each of the parts and the tolerance is very low compared to the profile of the board. You also need to torque the enclosure parts to get them to fit together while balancing the assembly in one hand and not drop the Pi. Not at all optimal. In the end I broke a connector slot on the enclosure which required a little superglue to fix. Once I had the board in the enclosure I realized that the opening for the power port was off enough that it would require modification to accept the USB power cord. After taking the enclosure apart I used a project file to widen a couple of the openings (power, GPIO) and tried again, this time adding in the 26 pin ribbon for the Cobbler kit knowing I didn’t want to have to take this apart again just to add that in later. It was even more difficult to put the pieces together with the ribbon cable, but I got it to work. (BTW: Make sure colored ribbon is on pin 1 which is on the same end as the Pi power port.). The how-to for assembling the enclosure here seems to work fine, but doesn’t account for adding the ribbon cable. (I looked over the V2 of this box which uses bolts and nuts to hold together and I see there are problems with how you hold the nuts in place for assembly. I can only imagine the frustration with that version and the number of times nuts are dropped into the box only to have to open it and retrieve them to try again.) Better option: Make your own project box out of LEGOs.
Ada Fruit Cobbler Kit:
Basically the Ada Fruit Cobbler Kit is a simple device to connect the GPIO of the Pi to a breadboard making experimentation a little easier. The kit includes a PCB, socket, 26 pin ribbon and header pins. Assembly was pretty straightforward except for separation of the header pins. My kit came with the header pins in one stick with about 36 pins. You only need 26 (2x13) so breaking this down, while simple, still takes some care. I should have used jewelry pliers or side cutters which would have made sure I didn’t break it into 12, 13 and the balance. Adding back in one header pin is never fun and I should have known better.
Soldering was simple. First I soldered the socket to the PCB so I was working from the inside joints to the outside joints. Turning the assembly upside down worked well for this and my iron was still at a good temperature. I started from one end and worked my way down each set of pins, checked the joints and cleaned up one or two that were messy. Next I placed the 12 and 13 pins into a breadboard, set the PCB on that and worked from the middle pins out and then added the lone pin back in. (2x13 sticks would have made this much easier.) The header pin plastic melted a little because I was being aggressive, but a few tweaks and I was able level the socket with the pins so it didn’t look like my youngest child completed the work. It would have been a better experience if I had a soldering iron with temperature adjustment, smaller soldering tip and smaller diameter solder. My desolder tool helped when I found I had to reset a head pin that I accidentally pushed on with my iron.
I think assembly of the Ada Fruit Cobbler kit will be the most intimidating part of the kit for someone new to electronics. The kit calls out that you will need soldering skills and this is as basic a soldering job as you can get, but still some might shy away from it. I understand that more recent versions actually have the kit pre-assembled for those who don’t want to solder.
Good assembly instructions can be found here.
Working with the OS:
The Raspian OS is Lightweight X11 (LXDE) with Openbox. For non-Linux users this may seem a little scary but there is a whole body of work around this and outside of the scope of this review.
Configuring and setting up the OS on my home network was typical for a Linux install. I wish I had a wireless USB though so I didn’t need to rely on the Ethernet adapter and fear of having a cable pulled and dropping the device. Connectivity completed, I wanted to play with some programming on the device.
I was happy to see Python and IDLE in the install as it made writing a simple program to tinker with the system easy. Additional modules can be downloaded and installed easily. Sample programs are easy to find or write and are typical. At this point I had a working Linux desktop computer, the size of my wallet, connected to my network and a breadboard for experimenting with IO.
I have yet to run this headless but will do so at some point.
Working with IO:
After I completed the assembly items and tinkering, I picked out a project for the breakout board to see if there was something cool that I could show. I worked on the first simple IO example in the book and quickly found that the documentation is really poor for a first-timer.
The first example of GPIO work in the Getting Started book lays out that you should use male-to-female adapters, then promptly tells you that the Pi Cobbler makes it easier to experiment and then continues the experiment with mtf adapters, which aren’t included in the kit. It tries to compensate for this by using a really bad drawing of the GPIO pins that aren’t completely labeled and have caveats about versions of the board. So before wiring the board I had to do a little investigation about the version of the board which you can tell only by booting the device (a nice stamp on the board would have been nice). Fortunately I have a version 2 board making the wiring a little easier to follow. (More information on Pin IO can be found here.) I checked for errata on the book to see if some of it has been sorted out but didn’t see this addressed at the time I was setting the project up.
Note on IO projects: You should really make sure you have your circuits setup and buffered when working with external experiments. It is also important to understand how a breadboard works and which terminals are tied out. Basically if you aren’t careful and paying attention you can accidentally feed power back to your Pi and end up blowing it out. (Mixing the 3V3 and 5V will do that in an instant.) For a $35 board that isn’t too expensive of a lesson, but would probably cause a newbie to be quickly discouraged.
The ‘Hello World’ examples in the Getting Started for IO include lighting an LED and reading from a pushbutton. The setup for these circuits is pretty simple but the author of the experiment doesn’t explain well how the powerbus works on the breadboard which could easily lead to a project discouragement. Additionally, the diagrams are set for mtf jumpers so matching that to the Cobbler kit and making sure you get the correct pins there can be a problem. Reading IO in the samples was easy and was simply a matter of running as su and setting the direction of the pin and then echo or cat the value to set/read its state.
Other sample projects assume you have a PowerSwitch tail relay sitting around, which I don’t, so turning off an external device (table lamp) was out of the question in my first couple of experiments. I would have been nice to see either all of the experiments focused at what was in the kit, or to include all of the items needed for the experiments in the kit.
I tinkered with GPIO and Python to automate some of the work and it was all quite simple to do. Samples in the Getting Started were fine but as with most programming examples, there were some small typos.
I think for someone coming to this the first time the experiments in the book are pretty simple but assume some experience with electronics. For new electronics users I would recommend a copy of Make: Electronics as it does a good job of laying out Electricity 101 in straightforward terms. You will also want to start assembling some other break out tools which can be easily had from lots of sources.
I picked up a copy of Raspberry Pi Users Guide by Upton and Halfacree for more project ideas in the future and look forward to reading and working those projects. I also ended up getting a couple of other books about the Raspberry Pi to see what they have in them and will likely do a book review at some point about their content.
For $35 the Pi is a great buy but the problem is finding the companies who are selling it for that price; Make sells theirs for $50. The added project items needed in this kit seem to be a little pricy, causing the overall price to get it up to the $130 range. Ada Fruit Cobbler kits are running $8, Pi enclosures are running $15, USB chargers run about $7, 4GB cards run about $6, solderless breadboards about $15 and probably $10 for the extra parts in the box, $10 or so for the book. If you are already doing electronics hobby work, I would find a different sourced board and skip the extras here. If you are new and want to give this a try or want to one-stop the parts, then buy the kit.
There is a great deal of an IKEA effect by having you participate in the assembly and feel like you just made something cool. It was largely fun putting the parts together and I am thinking about project applications almost daily. One of our developers belongs to a racing club and we were thinking that these would be a cheap means of tracking and relaying car speed/vitals to a central unit. I am also curious to see if these would be a better solution for tracking car performance for those into hypermiling. In any case, I plan on trying a number of projects and continue to develop with the board.
- A) Find a project box or assemble one of the nice Lego Pi Enclosures described out on the Internet. The project enclosure in the kit is fragile and difficult to assemble. There is a nice example made by a German Scout named Biz and can be found here. Or, if you are clever, you can make something bigger and better. As there is no heat-sink on board, I would avoid enclosures with a lid so you can vent any thermal from the board.
- B) The enclosed book is ok, but there are other resources that were more valuable in the setup.
- C) Get a powered USB device to control your mouse/keyboard, etc. There are only a couple of open slots on the Pi.
- D) An HDMI to DVI adapter is helpful.
- E) Get a longer HDMI cable to make this practical for experimenting.