Raspberry Pi-Based Network Monitoring Device

In 2012, Al Anderson, IT director at Salish Kootenai College in Pablo, MT, and his team wired the dorms and student housing units at the small tribal college with fiber and outdoor CAT 5 cable to provide reliable Internet service to students. “Our prior setup was wireless and did not provide very good service,” Anderson says.

The 25 housing units, each with a small unmanaged Ethernet switch, were daisy chained in several different paths. Anderson needed a way to monitor the links from the system’s Simple Network Management Protocol (SNMP) network monitoring software, Help/Systems’s InterMapper. He also wanted to ensure the switches installed inside the sun-exposed utility boxes wouldn’t get too hot.

The Raspberry Pi is a small SBC based on an ARM processor. Its many I/O ports make it very useful for embedded devices that need a little more power than the typical 8-bit microcontroller.

Photo 1: The Raspberry Pi is a small SBC based on an ARM processor. Its many I/O ports make it very useful for embedded devices that need a little more power than the typical 8-bit microcontroller.

His Raspberry Pi-based solution is the subject of an article appearing in Circuit Cellar’s April issue. “We chose the Raspberry Pi because it was less expensive, we had several on hand, and I wanted to see what I could do with it,” Anderson says (see Photo 1).

The article walks readers through each phase of the project:

“I installed a Debian Linux distro, added an I2C TMP102 temperature sensor from SparkFun Electronics, wrote a small Python program to get the temperature via I2C and convert it to Fahrenheit, installed an SNMP server on Linux, added a custom SNMP rule to display the temperature from the script, and finally wrote a custom SNMP MIB to access the temperature information as a string and integer.”

Setting up the SBC and Linux was simple, Anderson says. “The prototype Raspberry Pi has now been running since September 2012 without any problems,” he says in his article. “It has been interesting to see how the temperature fluctuates with the time of day and the level of network activity. As budget and time permit, we will be installing more of these onto our network.”

In the following excerpt, Anderson discusses the project’s design, implementation, and OS installation and configuration. For more details on a project inspired, in part, by the desire to see what a low-cost SBC can do, read Anderson’s full article in the April issue.

DESIGN AND IMPLEMENTATION
Figure 1 shows the overall system design. The TMP102 is connected to the Raspberry Pi via I2C. The Raspberry Pi is connected to the network via its Ethernet port. The monitoring system uses TCP/IP over the Ethernet network to query the Raspberry Pi via SNMP. The system is encased in a small acrylic Adafruit Industries case, which we used because it is inexpensive and easy to customize for the sensor.

The system is designed around the Raspberry Pi SBC. The Raspberry Pi uses the I2C protocol to query the Texas Instruments TMP102 temperature sensor. The Raspberry Pi is queried via SNMP.

Figure 1: The system is designed around the Raspberry Pi SBC. The Raspberry Pi uses the I2C protocol to query the Texas Instruments TMP102 temperature sensor. The Raspberry Pi is queried via SNMP.

Our first step was to set up the Raspberry Pi. We started by installing the OS and the various software packages needed. Next, we wrote the Python script that queries the I2C temperature sensor. Then we configured the SNMP daemon to run the Python script when it is queried. With all that in place, we then set up the SNMP monitoring software that is configured with a custom MIB and a timed query. Finally, we modified the Raspberry Pi case to expose the temperature sensor to the air and installed the device in its permanent location.

OS INSTALLATION AND CONFIGURATION
The Raspberry Pi requires a Linux OS compiled to run on an ARM processor, which is the brain of the device, to be installed on an SD card. It does not have a hard drive. Setting up the SD card is straightforward, but you cannot simply copy the files onto the card. The OS has to be copied in such a way that the SD card has a boot sector and the Linux partitioning and file structure is properly maintained. Linux and Mac OS X users can use the dd command line utility to copy from the OS’s ISO image. Windows users can use a utility (e.g., Win32DiskImager) to accomplish the same thing. A couple of other utilities can be used to copy the OS onto the SD card, but I prefer using the command line.

A Debian-based distribution of Linux seems to be the most commonly used Linux distribution on the Raspberry Pi, with the Raspbian “wheezy” as the recommended distribution. However, for this project I chose Adafruit Learning Systems’s Occidentalis V0.2 Linux distribution because it had several hardware-hacker features rolled into the distribution, including the kernel modules for the temperature sensor. This saved me some work getting those installed and debugged.

Before you can copy the OS to the SD card, you need to download the ISO image. The Resources section of this article lists several sources including a link to the Adafruit Linux distribution. Once you have an ISO image downloaded, you can copy it to the SD card. The Resources section also includes a link to an Embedded Linux Wiki webpage, “RPi Easy SD Card Setup,” which details this copying process for several OSes.

The quick and dirty instructions are to somehow get the SD card hooked up to your computer, either using a built-in SD reader or a peripheral card reader. I used a USB attached reader. Then you need to format the card. The best format is FAT32, since it will get reformatted by the copy command anyway. Next, use your chosen method to copy the OS onto the card. On Linux or Mac OS X, the command:

dd bs=4M if=~/linux_distro.img of=/dev/sdd

will properly copy the OS onto the SD card.

You will need to change two important things in this command for your system. First, the
if parameter, which is the name the in file (i.e., your ISO image) needs to match the file you downloaded. Second, the of device (i.e., the out file or our SD drive in this case) needs to match the SD card. Everything, including devices, is a file in Linux, in case you are wondering why your SD drive is considered a file. We will see this again in a bit with the I2C device. You can toast your hard drive if you put the wrong device path in here. If you are unsure about this, you may want to use a GUI utility so you don’t overwrite your hard drive.

Once the OS is copied onto the SD card, it is time to boot up the Raspberry Pi. A default username and password are available from wherever you download the OS. With our OS, the defaults are “pi” and “raspberry.” Make it your first mission to change that password and maybe even add a new account if your project is going to be in production.

Another thing you may have to change is the IP address configuration on the Ethernet interface. By default, these distributions use DHCP to obtain an address. Unless you have a need otherwise, it is best to leave that be. If you need to use a static IP address, I have included a link in the Resources section with instructions on how to do this in Linux.

To access your Raspberry Pi, hook up a local keyboard and monitor to get to a command line. Once you have the network running and you know the IP address, you can use the SSH utility to gain access via the network.

To get SNMP working on the Raspberry Pi, you need to install two Debian packages: snmpd and snmp. The snmpd package is the actual SNMP server software that will enable other devices to query for SNMP on this device. The second package, snmp, is the client. It is nice to have this installed for local troubleshooting.

We used the Debian package manager, apt-get, to install these packages. The commands also must be run as the root or superuser.

The sudo apt-get install snmpd command installs the snmpd software. The sudo part runs the apt-get command as the superuser. The install and snmpd parts of the command are the arguments for the apt-get command.

Next we issued the
sudo apt-get install snmp command, which installed the SNMP client. Issue the ps -ax | grep snmpd command to see if the snmpd daemon is running after the install. You should see something like this:

1444 ? S 14:22 /usr/sbin/snmpd -Lsd -Lf /dev/null -u snmp -g snmp -I -smux -p /var/run/snmpd.pid

If you do not see a line similar to this, you can issue the sudo /etc/init.d/snmpd command start to start the service. Once it is running, it is time to turn your attention to the Python script that reads the temperature sensor. Configure the SNMP daemon after you get the Python script running.

The Raspberry Pi’s final installation is shown. The clear acrylic case can be seen along with the Texas Instruments TMP102 temperature sensor, which is glued below the air hole drilled into the case. We used a modified ribbon cable to connect the various TMP102 pins to the Raspberry Pi.

The Raspberry Pi’s final installation is shown. The clear acrylic case can be seen along with the Texas Instruments TMP102 temperature sensor, which is glued below the air hole drilled into the case. We used a modified ribbon cable to connect the various TMP102 pins to the Raspberry Pi.

The Adafruit Learning System Releases Bluetooth HID Keyboard Controller

Bluefruit2Adafruit’s Bluefruit EZ-Key enables you to create a wireless Bluetooth keyboard controller in an hour. The module acts as a Bluetooth keyboard and is compatible with any Bluetooth-capable device (e.g., Mac, Windows, Linux, iOS, and Android).

You simply power the Bluefruit EZ-Key with 3 to 16 VDC and pair it to a computer, tablet, or smartphone. You can then connect buttons from the 12 input pins. When a button is pressed, it sends a keypress to the computer. The module has been preprogrammed to send the four arrow keys, return, space, “w,” “a,” “s,” “d,” “1,” and “2” by default. Advanced users can use a Future Technology Devices International (FTDI) chip or other serial console cable to reprogram the module’s keys for a human interface device (HID) key report.

BluefruitEach Bluefruit EZ-Key has a unique identifier. More than one module can be paired to a single device. The FCC- and CE-certified, RoHS-compliant modules integrate easily into your project.

Pricing for the Bluefruit EZ-Key begins at $19.95. For more information, visit The Adafruit Learning System. Bluefruit EZ-Key tutorials are also available.

High-Tech Halloween

Still contemplating Halloween ideas? Do you have a costume yet? Is your house trick-or-treat ready? Perhaps some of these high-tech costumes and decorations will help get you in the spirit.

Recent Circuit Cellar interviewee Jeremy Blum designed a creative and high-tech costume that includes 12 individually addressable LEDs, an Adafruit microcontroller, and 3-D printing.

Skull_Side_Full_IMG_0067

Custom animatronic skull

RavenSide2Armature_IMG_0015

Animatronic talking raven

Looking for Halloween decoration inspiration? Peter Montgomery designed some programmable servo animation controllers built around a Freescale Semiconductor 68HC11 microcontroller and a Parallax SX28 configurable controller.

Peter’s Windows-based plastic skull is animated with RC servos controlled via a custom system. It moves at 24 or 30 frames per second over a custom RS-485 network.
This animatronic talking raven features a machined aluminum armature and moves via RC servos. The servos are controlled by a custom system using Windows and embedded controllers.

Peter’s Halloween projects were originally featured in “Servo Animation Controller” (Circuit Cellar 188, 2006). He displays the Halloween projects every year.

Feeling inspired? Share your tech-based Halloween projects with us.

Designing Wireless Data Gloves

Kevin Marinelli, IT manager for the Mathematics Department at the University of Connecticut, recently answered CC.Post’s newsletter invitation to readers to tell us about their wearable electronics projects. Kevin exhibited his project,  “Wireless Data Gloves,” at the World Maker Faire New York in September. He spoke with Circuit Cellar Managing Editor Mary Wilson about the gloves, which are based on an Adafruit ATmega32U4 breakout board, use XBee modules for wireless communication, and enable wearers to visually manipulate data and 3-D graphics.

MARY: Tell us a little bit about yourself and your educational and professional background.

KEVIN: I am originally from Sydney, Nova Scotia, in Canada. From an early age I have

Kevin Marinelli

Kevin Marinelli

always been interested in taking things apart and creating new things. My degrees are a Bachelor’s in Computer Science from Dalhousie University in Halifax, Nova Scotia, and a Master’s in Computer Science from the University of New Brunswick in Fredericton, New Brunswick. I am currently working on my PhD in Computer Science at the University of Connecticut (UConn).

My first full-time employment was with ITS (the computer center) at Dalhousie University. After eight years, I moved on to an IT management position the Ocean Mapping Group at the University of New Brunswick. I am currently the IT manager for the Mathematics Department at  UConn.

I am also an active member of MakeHartford, which is a local group of makers in Hartford, Connecticut.

MARY: Describe the wireless data gloves you recently exhibited at the World Maker Faire in New York. What inspired the idea?

KEVIN: The idea was initially inspired 20 years ago when using a Polhemus 6 Degree-of-Freedom sensor for manipulating computer graphics when I was at the University of New Brunswick. The device used magnetic fields to locate a sensor in three-dimensional space and detect its orientation. The combined location and orientation data provides data with six degrees of freedom. I have been interested in creating six degrees of freedom input devices ever since. With the Arduino and current sensor technologies, that is now possible.

Wireless data gloves on display at World Maker Faire New York. (Photo: Rohit Mehta)

Wireless data gloves on display at World Maker Faire New York. (Photo: Rohit Mehta)

MARY: What do the gloves do? What applications are there? Can you provide an example of who might use them and for what purpose?

KEVIN: The data gloves allow me to use my hands to wirelessly transmit telemetry data to a base station computer, which collects the data and provides it to any application programs that need it.

There are a number of potential applications, such as manipulating 3-D computer graphics, measurement of data for medical applications, remote control of vehicles, remote control of animatronics and puppetry.

MARY: Can you tell me about the data gloves’s design and the components used?

KEVIN: The basic design guidelines were to make the gloves self-contained, lightweight, easy to program, wireless, and rechargeable. The main electronic components are an Adafruit ATmega32U4 breakout board  (Arduino Leonardo software compatible), a SparkFun 9d0f sensor board, an XBee Pro packet radio, a LiPo battery charger circuit, and a LiPo battery. These are all open hardware projects or, in the case of the battery, are ordinary consumer products.

The choice of the ATMega32U4 for the processor was made to provide a USB port without any external components such as an FTDI chip to convert between serial and USB communications. This frees up the serial port on the processor for communicating with the XBee radio.

For the sensors, the SparkFun 9dof board was perfect because of its miniscule size and

Top of glove

Top of glove

because it only requires four connections: two connections for power and two connections for I2C. The board has components with readily available data sheets, and there is access to working example code for the sensor board. This reduced the design work greatly by using an off-the-shelf product instead of designing one myself.

The choice of an 800-mAh LiPo battery provides an excellent lightweight rechargeable power supply in a small form factor. The relatively small battery powers the project for more than 24 h of continuous use.

Palm of glove

Palm of glove

A simple white cotton glove acts as the structure to mount the electronics. For user-controlled input, the glove has conductive fabric fingertips and palm. Touching a finger to the thumb, or the pad on the palm, closes an electrical pathway, which allows the microcontroller to detect the input.

For user-selectable input, each fingertip and the palm of the hand has a conductive fabric pad connected to the Adafruit microcontroller. The thumb and palm act as a voltage source, while the fingertips act as inputs to the microcontroller. This way, the microcontroller can detect which fingers are touching the thumb and the palm pads. Insulated wires of 30 gauge phosphor bronze are sewn into the glove to connect the pads to the microcontroller.

MARY: Are the gloves finished? What were some of the design challenges? Do you plan any changes to the design?

KEVIN: The initial glove design and second version of the prototype have been completed. The major design challenges were finding a microcontroller board with sufficient capabilities to fit on the back of a hand, and configuring the XBee radios. The data glove design will continue to evolve over the next year as newer and more compact components become available.

Initially I was designing and building my own microcontroller circuit based on the ATmega32U4, but Adafruit came out with a nice, usable, designed board for my needs. So I changed the design to use their board.

SparkFun has a well-designed micro USB-based LiPo battery charger circuit. This would have been ideal for my project except that it does not have an On/Off switch and only has some through-hole solder points for powering an external project. I used their CadSoft EAGLE files to redesign the circuit to make it slightly more compact, added in a power switch and a JST connector for the power output for projects.

The XBee radios were an interesting challenge on their own. My initial design used the standard XBee, but that caused communication complications when using multiple data gloves simultaneously. In reading Robert Faludi’s book Building Wireless Sensor Networks: With ZigBee, XBee, Arduino, and Processing, I learned that the XBee Pro was more suited to my needs because it could be configured on a private area network (PAN) with end-nodes for the data gloves and a coordinator for the base station.

One planned future change is to switch to the surface-mount version of the XBee Pro. This will reduce both the size and weight of the electronics for the project.

The current significant design challenge I am working on is how to prevent metal fatigue in the phosphor bronze wires as they bend when the hand and fingers flex. The fatigue problem occurs because I use a small diamond file to remove the Kapton insulation on the wires. This process introduces small nicks or makes the wires too thin, which then promotes the metal fatigue.

A third version is in the design stage. The new design will replace the SparkFun 9dof board with a smaller single-chip sensor, which I hope can be mounted directly on the Adafruit ATmega32U4 board.

MARY: What new skills or technologies did you learn from the project, if any?

KEVIN: Along the way to creating the gloves, I learned a great deal about modern electronics. My previous skills in electronics were learned in the ’70s with single-sided circuits with through-hole components and pre-made circuit boards. I can now design and create double-sided circuit boards with primarily surface-mounted components. For initial prototype designs, I use double-sided photosensitized circuit boards and etch them at home.

Learning to program Arduino boards and Arduino clones has been incredible. The fact that the boards can be programmed using C in a nice IDE with lots of support libraries for common programming tasks makes the platform an incredibly efficient tool. Having an enormous following makes it very easy to find technical support for solving problems with Arduino products and making Arduino clones.

Wireless networking is a key component for the success of the project. I was lucky to have a course in wireless sensor network design at UConn, which taught me how to leverage wireless technology and avoid many of the pitfalls. That, combined with some excellent reference books I found, insured that the networking is stable. The network design provides for more network bandwidth than a single pair of data gloves require, so it is feasible to have multiple people collaborating manipulating the same on the same project.

Designing microcontroller circuits using EAGLE has been an interesting experience. While most of the new components I use regularly in designs are available in libraries from Adafruit and SparkFun, I occasionally have to design my own parts in EAGLE. Using EAGLE to its fullest potential will still take some time, but I have become reasonably proficient with it.

For soldering, I mostly still use a standard temperature controlled soldering iron with a standard tip. Amazingly, this allows me to solder 0402 resistors and capacitors and up to 100 pitch chips. When I have components that need to be soldered under the surface, I use solder paste and a modified electric skillet. This allows me to directly control the temperature of the soldering and gives me direct access to monitoring the process.

The battery charger circuit on my data glove is hand soldered and has a number of 0402-sized components, as  well as a micro USB connector, which also is a challenge to hand solder properly.

MARY: Are there similar “data gloves” out there? How are yours different?

There are a number of data glove projects, which can be found on the Internet. Some are commercial products, while others are academic projects.

My gloves are unique in that they are lightweight and self-contained on the cotton glove. All other projects that you can find on the Internet are either hard-wired to a computer or have components such as the microcontroller, batteries, or radio strapped to the arm or body.

Also, because the main structure is a self-contained cotton glove; the gloves do not interfere with other activities such as typing on a keyboard, using a mouse, writing with a pen, or even drinking from a glass. This was quite handy when developing the software for the glove because I could test the software and make programming corrections without having the inconvenience of putting the gloves on and taking them off repeatedly.

MARY: Are you working on any other projects you’d like to briefly tell us about?

KEVIN: At UConn, we are lucky to have one of the few academic programs in puppetry in the US. In the spring, I plan on taking a fine arts course at UConn in designing and making marionette puppets. This will allow me to expand the use of my data gloves into controlling and manipulating puppets for performance art.

I am collaborating on designing circuit boards with a number of people in Hartford. The more interesting collaborations are with artists, where they think differently about technology than I do. Balam Soto of Open Wire Labs is a new media artist and one of the creative artists I collaborate with regularly. He is also a member of MakeHartford and presents at Maker Faires.

MARY: What was the response to the wireless data gloves at World Maker Faire New York?

KEVIN: The response to the data gloves was overwhelmingly positive. People were making comparisons to the Nintendo Power Glove and to the movie “Minority Report.” Several musicians commented that the gloves should be excellent for performing and recording virtual musical instruments such as a guitar, trumpet and drums.

For the demonstration, I showed a custom application; which allowed both hands (or two people) to interactively manipulate points and lines on a drawing. Many people were encouraged to use the gloves for themselves, which enhanced the quality of the feedback I received.

The gloves are large-sized to fit my hands, which was quite a challenge for younger children to use because their hands were “lost” in the gloves. Even with the size challenge, it was fun watching younger children manipulating the objects on the computer screen.

I look forward to the Maker Faire next year, when I will have implemented the newer design for the data gloves and will have additional software to demonstrate. I plan on trying to put together a presentation on some form of performance art using the data gloves.

Q&A: Krystal Horton, the Raspberry Pi Kid

Eben Upton and Krystal met in October at the Broadcom MASTERS

Krystal Horton is the clever kid behind the blog Raspberry Pi Kid: An 11-Year-Old’s Adventures with Raspberry Pi.  Since starting her blog in January 2013, her entries have covered everything from unpacking her first Pi, to projects she has created with the SBC, to her recent dinner with Eben Upton, founder and trustee of the Raspberry Pi Foundation, and his wife, Liz Upton, who oversees the foundation website.

Krystal met the couple in October 2013 in Washington, D.C., as one of 30 finalists competing in the 2013 Broadcom MASTERS, a national science, technology, engineering, and math competition for middle school students.  (At the competition, Krystal was named one of two Rising Stars students who will represent Broadcom MASTERS at the 2014 International Science and Engineering Fair, the world’s largest international high school science fair competition.)

“They also gave each of the finalists their own Raspberry Pi,” Krystal says in her October 2 blog entry from Washington, D.C.  “I’m hoping to have each of the finalists guest post on my blog after they’ve had a chance to try out the RPi.”

Liz Upton describes Krystal as “brilliant.” Recently, Circuit Cellar Managing Editor Mary Wilson asked the seventh-grader several questions about her interest in the Raspberry Pi and the blog she created to complement it.

Krystal and her oak borer beetle infestation science project.

Krystal and her oak borer beetle infestation science project.

MARY: Tell us a little bit about yourself and why you became interested in working with the Raspberry Pi.

KRYSTAL: I am an 11-year-old seventh-grader in Southern California. I have been interested in science and technology ever since I can remember. My cousin got a Raspberry Pi for Christmas and my uncle saw how curious I was. So, he gave me one for New Year’s. He gave me some basic lessons on how to hook it up, turn it on, and type into Vim. That and some YouTube videos, tutorials, and eBooks and I was off and running. I now blog at http://raspberrypikid.wordpress.com and sometimes I tweet through @kid_pi.

MARY: Why did you decide to start your blog Raspberry Pi Kid? What type of feedback/comments have you gotten from visitors to your site? Will you rename the blog and keep posting when you’re 12?

KRYSTAL: I’ve learned so much from other people’s blogs, but they’re written for adults and are very hard for a kid to understand. So, I thought that I could put things in kid language and in simple steps so that other kids would be inspired and learn from what I’ve done. I want to give back to the Raspberry Pi and blogging communities.

On my blog, I’m often talking about problems that I’m having (I still haven’t figured out analog to digital conversion) and a lot of people offer to help me out. Others congratulate me and wish that they’d had an RPi when they were my age. I’ve also heard from other kids my age who are learning to code. I put my dad’s email address on the account and he gets invitations for me to Skype with CoderDojos and to guest blog for people. I have over 52,000 views to my blog right now. I hadn’t even thought about whether the name would change when I turn 12, but I’ll definitely keep blogging.

MARY:  Was the SBC difficult to set up? What was the first project you worked on with it?

KRYSTAL: The only hard thing about setting it up is all of the accessories that you need. It doesn’t even come with a power supply, keyboard, or mouse. My uncle gave me some of the stuff (power supply, wireless keyboard/mouse, breadboard), I had some stuff at home (memory card, network cable), and I bought some stuff from Adafruit’s very useful website (wireless adapter, ADC chip, breadboard accessories).

I really like the idea of programming the computer to do things. So, the first thing I did was start programming in Python through Vim and IDLE. I got a book from the library, read tutorials online, and emailed my uncle questions.

MARY: Can you tell me about some other Pi-based projects you have finished or are working on? Do you have something you would like to do next? Where do you get your ideas? Where do you go for guidance?

Krystal and her robot

Krystal and her robot

KRYSTAL: I love playing Minecraft, so when I saw that there’s a Pi version, I installed it and blogged about it. I’ve also used the Scratch programming language to create games and blink LEDs. I’ve used RPi as a Linux computer with the Wheezy version. I just wish that Midori would play YouTube videos so that I could watch Pi tutorials on my Pi. I have also installed OpenELEC (Open Embedded Linux Entertainment Center) so that I can stream HD video to my TV. I’ve also used PuTTY to control the Pi with a laptop (my uncle showed me that one).

In the future, I want to keep working with Scratch, a free visual programming language for kids from MIT (where I want to go to college). I want to figure out analog to digital so that I can connect sensors. And I want to use the RPi to do a science fair project. I really, really want to get a 3-D printer and connect it to the Pi.  I’m planning to order a MakiBOX soon, but it’ll take six-10 weeks to arrive and then I have to build it and learn how to use it.

When I don’t know how to do something, my dad helps me find answers on YouTube or other people’s blogs. He’s a scientist, not a programmer, so he learns with me sometimes. If he can’t help me, I email my uncle who does know how to program. He has automated his house with a RasPi. If I can’t get in touch with him, then I post a question on a forum and wait for answers.

Close up view of the credit-card sized Pi

Close up view of the credit-card sized Pi

MARY: What were some of the challenges you had to overcome with the Pi? What, if anything, would you change about it?

KRYSTAL: One of the problems I’ve had is when things don’t work for me as the blogs say they should. I had a really hard time getting Wi-Fi to work even though I followed the instructions exactly.

If I could change anything, I’d label the GPIO pins right on the board. I’ve had to look up that diagram soooo many times. There are several versions now, so I’d recommend marking them to make it easier to tell which one it is when getting a case for it. I’ve read stories about people breaking off the connector where the memory card goes. That’s scary, I hope they fix that if they can.

MARY: What do you think are the SBC’s best features?

KRYSTAL: Everyone says that the price and size are the Pi’s best features and I agree. But I also like that it’s so open to let me put any kind of Linux I want on it. Some people have even put the Android Operating System on it. Not me… yet.

MARY: What new skills/tools have you learned about through your Pi?

KRYSTAL: Some of the things I’ve learned through using my Pi are: coding in Python and Scratch, basic electronics (how to use a breadboard, multimeter, LEDs, etc.), and using Linux and all of the absolutely free software for it. These are very valuable skills for anyone to learn. I’ve learned about IP addresses and using a computer without the graphical interface at times also.

MARY: What advice would you give to another kid (or adult tinkerer) who is interested in getting started with the Raspberry Pi?

KRYSTAL: The advice that I’d give is to work on fun projects. This shouldn’t feel like boring work. Also, don’t get frustrated if things don’t work right the first time. That’s just part of coding. Most big cities also have groups of computer users. Find one and connect with them.

MARY: How many other 11-year-old girls do you know who are drawn to the Raspberry Pi? Any thoughts about that?

KRYSTAL: I’ve met online several kids who are using Pi. I spoke through Skype with a group in Washington, D.C., one Saturday morning. There were probably 15 kids and many were girls. I watched a video of a girl who tests all of the Raspberry Pis that get sent back as broken.

I think that computers and technology are going to be incredibly important to my generation. It is very scary that so few (girls or boys) are learning how technology works and how to code. Coders are going to rule the future, and I want be a part of that. All kids should. And their parents need to encourage it.  Websites like code.org and adafruit.com and devices like Raspberry Pi are helping.