What would you build if you could design any kind of tech device for $35? Would you bypass the costs of major cellphone providers and build your own smartphone? Would you build a bartending robot to mix your favorite cocktails perfectly each time? Would you relive your youth and create a retro video game console that cuts out the need for those pesky, dust-prone game cartridges?
This month, 15 Johns Hopkins students are learning the ins and outs of a versatile device capable of these and infinitely more functions: the Raspberry Pi, a small, green single-board computer capable of fitting inside an Altoids tin.
Raspberry Pi is a revolution in computer hardware, enabling users to build their own computers and smart devices. Developed in the United Kingdom, Raspberry Pi costs as little as $35 and has become a worldwide phenomenon, with global sales surpassing 15 million units last year. These bare bones, accessory-compatible minicomputers have become especially popular in fields relating to home automation, data visualization, robotics, and Internet-capable devices.
The Raspberry Pi DIY Intersession course, offered by the Department of Electrical and Computer Engineering in the Whiting School of Engineering, provides students with not only the Pis but also a fleet of peripheral devices such as LED light panels, Google-compatible voice kits, and a series of sensors and circuits enabling them to build their own devices. Students are guided through setup and programming before being unleashed to pursue their own Pi-powered projects.
Instructor Bryan Bosworth, a postdoctoral fellow in Electrical and Computer Engineering, says these minicomputers and their capabilities represent autonomy and freedom.
"You don't have to take what The Man gives you," he says half-seriously to the class in their second meeting. "When you master this kind of computer engineering, you won't be beholden to anyone—you can get these devices to do what you want."
He speaks from experience—he's owned more than a dozen Raspberry Pis since the tool's release in 2012. On display in the class computer lab is a Pi-powered LED panel he built himself: A cross between a Doppler radar weather map and a Lite Brite, the device displays a minute-by-minute heat map of crime in Baltimore City, with pinpoints of light blinking when a new crime is reported, then slowly fading away.
He also uses the minicomputer to automate some of his creature comforts at home. A Raspberry Pi with voice command serves as his enhanced and personalized virtual assistant to stream videos and music, and he recently paired Pi technology with LED light panels arranged in a cube to look like a Halloween pumpkin that intermittently blinks and yawns. He has aspirations to reprogram it to appear like a Rubik's cube and wants to add a motion sensor to the rig so that users can command each twist of the Rubik's cube with a wave of their hand.
"I view computing devices and the software that runs on them as an essential freedom," Bosworth says. "You have to be able to know what's going on under the hood, especially when more and more of modern-day life relies on these things. You have to be able to poke at it and make changes to suit you."
For many of the students in the class, this is their first time working with computer hardware.
"I've known how to code for a while, but I've never done hardware," says first-year student Vivek Gopalakrishnan, a biomedical engineering and electrical engineering double-major. "I thought learning how to use a Raspberry Pi would be a good idea for learning how to build my own devices."
Others want to build on skills they already have. Second-year biomedical engineering major Julia Costacurta says she used a similar open source computer hardware device called Arduino for a prosthetics project last summer.
"I figured this would be a really good way to get more hands-on experience with computer hardware," she says. "I have a lot of plants in my apartment, so I want to build a Raspberry Pi that's able to sense when they need to be watered and remind me."
First-year computer engineering major Anderson Adon has worked with Raspberry Pi before but says the workshop setting will give him a more formal introduction to the minicomputer's capabilities. He too already has a plan for his final project: He says he wants to pair his Raspberry Pi to a digital thermometer in his residence hall and program it to automatically tweet the university whenever the temperature in his room dips below a certain point.
By the end of the first class meeting, he's set up his Raspberry Pi—in less time than it took him to set up his Twitter account.