Low-Cost SBCs Could Revolutionize Robotics Education

For my entire life, my mother has been a technology trainer for various educational institutions, so it’s probably no surprise that I ended up as an engineer with a passion for STEM education. When I heard about the Raspberry Pi, a diminutive $25 computer, my thoughts immediately turned to creating low-cost mobile computing labs. These labs could be easily and quickly loaded with a variety of programming environments, walking students through a step-by-step curriculum to teach them about computer hardware and software.

However, my time in the robotics field has made me realize that this endeavor could be so much more than a traditional computer lab. By adding actuators and sensors, these low-cost SBCs could become fully fledged robotic platforms. Leveraging the common I2C protocol, adding chains of these sensors would be incredibly easy. The SBCs could even be paired with microcontrollers to add more functionality and introduce students to embedded design.

rover_webThere are many ways to introduce students to programming robot-computers, but I believe that a web-based interface is ideal. By setting up each computer as a web server, students can easily access the interface for their robot directly though the computer itself, or remotely from any web-enabled device (e.g., a smartphone or tablet). Through a web browser, these devices provide a uniform interface for remote control and even programming robotic platforms.

A server-side language (e.g., Python or PHP) can handle direct serial/I2C communications with actuators and sensors. It can also wrap more complicated robotic concepts into easily accessible functions. For example, the server-side language could handle PID and odometry control for a small rover, then provide the user functions such as “right, “left,“ and “forward“ to move the robot. These functions could be accessed through an AJAX interface directly controlled through a web browser, enabling the robot to perform simple tasks.

This web-based approach is great for an educational environment, as students can systematically pull back programming layers to learn more. Beginning students would be able to string preprogrammed movements together to make the robot perform simple tasks. Each movement could then be dissected into more basic commands, teaching students how to make their own movements by combining, rearranging, and altering these commands.

By adding more complex commands, students can even introduce autonomous behaviors into their robotic platforms. Eventually, students can be given access to the HTML user interfaces and begin to alter and customize the user interface. This small superficial step can give students insight into what they can do, spurring them ahead into the next phase.
Students can start as end users of this robotic framework, but can eventually graduate to become its developers. By mapping different commands to different functions in the server side code, students can begin to understand the links between the web interface and the code that runs it.

Kyle Granat

Kyle Granat, who wrote this essay for Circuit Cellar,  is a hardware engineer at Trossen Robotics, headquarted in Downers Grove, IL. Kyle graduated from Purdue University with a degree in Computer Engineering. Kyle, who lives in Valparaiso, IN, specializes in embedded system design and is dedicated to STEM education.

Students will delve deeper into the server-side code, eventually directly controlling actuators and sensors. Once students begin to understand the electronics at a much more basic level, they will be able to improve this robotic infrastructure by adding more features and languages. While the Raspberry Pi is one of today’s more popular SBCs, a variety of SBCs (e.g., the BeagleBone and the pcDuino) lend themselves nicely to building educational robotic platforms. As the cost of these platforms decreases, it becomes even more feasible for advanced students to recreate the experience on many platforms.

We’re already seeing web-based interfaces (e.g., ArduinoPi and WebIOPi) lay down the beginnings of a web-based framework to interact with hardware on SBCs. As these frameworks evolve, and as the costs of hardware drops even further, I’m confident we’ll see educational robotic platforms built by the open-source community.

Member Profile: Scott Weber

Scott Weber

Scott Weber

Arlington, Texas, USA

Scott said he started his Circuit Cellar subscription late in the last century. He chose the magazine because it had the right mix of MCU programming and electronics.

He has always enjoyed mixing discrete electronic projects with MCUs. In the early 1980s, he built a MCU board based on an RCA CDP1802 with wirewrap and programmed it with eight switches and a load button.

Back in the 1990s, Scott purchased a Microchip Technology PICStart Plus. “I was thrilled at how powerful and comprehensive the chip and tools were compared to the i8085 and CDP1802 devices I tinkered with years before,” he said.

Scott said he recently treated himself to a brand-new Fluke 77-IV multimeter.

Scott is building devices that can communicate through USB to MS Windows programs. “I don’t have in mind any specific system to control, it is something to learn and have fun with,” he said. “This means learning not only an embedded USB software framework, but also Microsoft Windows device drivers.”

“Embedded devices are popping up everywhere—in places most people don’t even realize they are being used. It’s fun discovering where they are being applied. It is so much easier to change the microcode of an MCU or FPGA as the unit is coming off the assembly line than it is to rewire a complex circuit design,” Scott said.

“I also like Member Profile Joe Pfeiffer’s final comment in Circuit Cellar 276: Surface-mount and ASIC devices are making a ‘barrier to entry’ for the hobbyist. You can’t breadboard those things! I gotta learn a good way to make my own PCBs!”

Member Profile: Tom Freund

Tom Freund

Tom Freund

West Hartford, CT, USA

Tom has been a member for four years.

Tom says he enjoys machine learning; algorithm design; embedded, prognostic, and diagnostic systems; and eLua and C programming.

Tom recently bought a Femtoduino board and a Texas Instruments TMP102 sensor breakout board.

His current microcontrollers of choice are the STMicroelectronics STM32 32-bit ARM Cortex and Atmel’s ATmega328.

Tom is working on PicoDB, an open-source, NoSQL database tool for 32-bit microcontrollers written in Lua. (To learn more, visit www.lua.org/wshop12/Freund.pdf.)

Tom says when he thinks about embedded technology’s future, just one phrase comes to mind: “the Internet of things.”

“In 10 to 15 years time, we will look back and think of Facebook, Twitter, and (yes) even Google as the ’Model T’ days of global networking,” he says. “That is because everything will be connected to everything at various levels of security. We and our infrastructure will be ’minded’ by unseen digital butlers that help us cope with life and its unpredictability, as well as protect that which should be kept private.”

Member Profile: Dean Boman

Dean Boman

Dean Boman

Chandler, AZ

Dean has been a subscriber for about  20 years.

Dean enjoys designing and building home automation systems. His current system’s functions include: security system monitoring, irrigation control, water leak detection, temperature and electrical usage monitoring, fire detection, access control, weather and water usage monitoring, solar hot water system control, and security video recording.

A Microchip Technology debugger.

Dean is currently designing a hybrid solar power system to power his home automation system. “The power system will use a processor-controlled dual-input power converter design to harvest the maximum energy possible from the photovoltaic cells and then augment that with utility power as necessary to support the load,” he explained. “The system will be a hybrid between an on-grid and an off-grid system. The hybrid approach was chosen to avoid the regulatory issues with an on-grid system and the cost of batteries in an off-grid system.”

“As more and more capability is being made available to the embedded world, the design opportunities are endless. I particularly find it exciting that network connectivity can now be so easily added to an embedded system so various embedded systems can communicate with each other and with the outside world via the Internet. I am concerned that so many of the new embedded parts are designed with extremely fine pitch leads, which makes DIY assembly with hand soldering a challenge,” he said.

Q&A: Joe Grand – Engineer to the Core

From his grade-school Atari obsession and his teenage involvement in the L0pht Heavy Industries hacker group, to co-hosting Discovery Channel’s Prototype This! and starting his own company, Grand Idea Studio, Joe Grand has always maintained his passion for engineering. Joe and I recently discussed his journey and his lifelong love of all things engineering.—Nan Price, Associate Editor

NAN: Give us some background information. When and how did you discover electronics. What was your first project?


Joe Grand

JOE: I got involved with computers and electronics in 1982, when I was 7 years old. My first system was an Atari 400 computer, an Atari 810 floppy disk drive, and an Atari 830 acoustic coupler modem. I spent every waking hour playing computer games, trying to write my own programs, and connecting to local bulletin board systems. I was continually experimenting and questioning. I remember learning hexadecimal by poking around with a binary editor and figuring out how to replace names on game title screens with my own.
My brother, who is six years older than me, was also interested in computers and electronics. He would repair audio equipment, build telephone and computer gadgets, and disassemble broken electronics to scavenge them for parts. He had a cabinet that served as a junk bin for components and broken boards. When I did chores for him, like doing his laundry or cleaning his room, he’d let me pick something from the cabinet.

I was 13 years old when I hand-etched my first circuit board to make a “ring-busy device.” The device was simply a resistor across the tip and ring of the telephone line that had an RJ-11 plug for easy insertion/removal. It would make the telephone switch at the central office believe your phone was off the hook (thus, providing a busy signal to any incoming caller), but would still enable you to make outgoing calls. It was a fun, mischievous device, but also very practical to prevent annoying phone calls during dinner.

Right from the start, I had a strong emotional connection to all things electronic. I could just understand how technology was working even if I was unable to explain why. I knew early on that I wanted to be an electrical engineer. I wore this proudly on my sleeve, which didn’t help my ranking in the social hierarchy of elementary school!

NAN: What have been some of your influences?

JOE: In the early 1990s, when I was still a teenager, I joined a group called L0pht Heavy Industries (pronounced “loft” and spelled ell-zero-ph-t, http://en.wikipedia.org/wiki/L0pht). The L0pht was a clubhouse for Boston-area hackers who had met on local bulletin board systems and it was one of the first publicly known “hackerspaces.” The L0pht simply started as a place to store computer equipment, tinker with technology, and hang out, but it ended up as seven close-knit friends changing the face of computer security vulnerability research and disclosure.

We would examine networks, software applications, and hardware products for security flaws. If we discovered a vulnerability, we would challenge the vendor to not only acknowledge the problem, but to fix it. This is now common practice, but back then, it was a feat practically unheard of.

I looked up to the other guys in the group. All were at least six years older than me and they became my mentors (whether they knew it or not) for nearly the next decade. They helped me to focus my energy on projects that would have positive impacts for other people. They also helped reinforce the hacker mindset—that is, not being afraid to try unconventional solutions to problems, pushing the limits of technology, being dedicated to learning through constant experimentation, and sharing my passion with others. Being involved in the L0pht was a very special time for me and shaped much of how I view the world.

NAN: You grew up and went to school in Boston. How did you end up in California?

JOE: Being in Boston for nearly 28 years left me with a lot of history (both good and bad). Everywhere I looked, I had a story, a feeling, or a connection to a time or event. I needed a clean slate. I had just left @stake, a computer security consulting firm that we started out of the L0pht, and my wife (girlfriend at the time) had just finished graduate school. She was also looking for new adventures, so we packed up our stuff and drove across the country not really knowing what we were going to do when we got to California. We lived in San Diego for a few years and ultimately settled in San Francisco when I started work on Discovery Channel’s Prototype This! television show.

San Francisco was a natural fit for us, and when the show ended, we decided to stay. Being close to Silicon Valley and its electronics stores (e.g., Jameco Electronics, WeirdStuff Warehouse, and HSC Electronic Supply) is quite useful, and I always get a thrill driving by the offices of chip vendors I use on a daily basis.

NAN: You started your own product design firm, Grand Idea Studio, in 2002. Tell us about the company.

JOE: Grand Idea Studio (www.grandideastudio.com) is a product design and licensing firm specializing in consumer/household devices and modules for electronics hobbyists. I started the company to create an environment that suited me best and would enable me to focus on what I loved to do. The majority of my work stems from ideas developed in-house or with my industrial design/mechanical engineering partners. I prefer to design simple, effective devices that serve a specific purpose. I’m all for using technology—but only where it’s needed—to make a product better.

Much of my time is spent building prototypes or proof-of-concepts of ideas (though many of those don’t ever see the light of day) that are sold and/or licensed to suitable partners. Some projects I’ll release as open source (usually through a Creative Commons Attribution license), so others can learn from my experiences and build upon my work to make something better.

I also teach a hardware hacking course at public and private events (www.grandideastudio.com/portfolio/hardware-hacking-training). The course focuses on teaching board-level hardware hacking and reverse-engineering techniques and skills. It’s a combination of a lecture and hands-on exercises covering the hardware hacking process, proper use of tools and test measurement equipment, circuit board analysis and modification, embedded security, and common hardware attack vectors. The course concludes with a final hardware hacking challenge in which students must apply what they’ve learned to defeat the security mechanism of a custom circuit board. Design engineers and computer security researchers don’t often join forces. Being both, I feel like it’s part of my responsibility to help make that connection.

NAN: Tell us about your engineering experience prior to Grand Idea Studio.

JOE: My most relevant and memorable engineering experience was when I worked for Continuum (formerly Design Continuum, www.continuuminnovation.com), a design and innovation consultancy based in West Newton, MA. I had worked on and off at the company during college and took a full-time engineering position in 1998. I was one of only two electrical engineers. We worked very closely with industrial designers, mechanical engineers, manufacturers, and clients to create innovative new products. Some key projects I contributed to were the A.T. Cross iPen (an early digital writing tablet) and the FluidSense FS-01 portable infusion pump (voted one of the best inventions of 2000 by Time magazine). It was during my time at Continuum that I learned about the product development and production manufacturing processes and sharpened my skills as an engineer.

NAN: Tell us about your experience working on Discovery Channel’s Prototype This! television show. Do you have a favorite project?


Prototype This! Giant Boxing Robot

JOE: Prototype This! (http://en.wikipedia.org/wiki/Prototype_This!) was a short-lived engineering entertainment show that followed the real-life design process of a unique prototype each episode. Although we only filmed for one season (comprising 13 episodes), the show gained a “cult” status of sorts among engineers and makers. It aired on Discovery Channel in the US in late 2008, but is now airing elsewhere throughout the world. The show is also available on Netflix, making it accessible to viewers who may have missed the show the first time around.

To be clear, I’m an engineer to the core, and I never had any intention of being in front of a camera as part of my job. But, the opportunity to show off engineering to the world in a way that was fun, entertaining, and somewhat educational seemed too good to pass up. Producing the show turned out to be a difficult and frustrating process, as we not only had to be on-screen television hosts trying to convey complex, technical builds in a way most viewers would understand, but we also had to actually engineer, design, build, and test the prototypes.

Prototype This! The PyroPack

We ended up building ridiculously crazy contraptions including “Mind Controlled Car” (Episode 1), giant 10’ “Boxing Robots” (Episode 2), and a “Traffic Busting Truck” that could elevate itself over other traffic and move in any direction (Episode 3). Each build had its own special flavor and design challenges and I actually enjoyed working on all of them. From an engineering point of view, I was most proud of the AirTrax control system (Episode 3), the PyroPack (Episode 6: “Robotic Firefighter Assistant”), and the underwater ROV controller (Episode 10: “Virtual Sea Adventure”). All of the documentation for my contributions to the builds, including schematics, source code, and development notes, is available at www.grandideastudio.com/prototype-this.

Ultimately, the show proved to be unsustainable (from financial and time perspectives), but it was an unforgettable experience. The best thing is how the show continues to inspire future engineers. Nearly every day I receive e-mails from viewers asking for details about a particular build or what it takes to become an engineer, and I do my best to point them in the right direction.

NAN: You’ve designed dozens of things—from computer memory-imaging tools to children’s products to medical devices. Tell us about your design process. Do you have a favorite project?

JOE: I think my design process is very typical. I start by identifying and sourcing key components for the project. I’ll put together a preliminary block diagram and then build a proof-of-concept or prototype using a breadboard or PCB (depending on complexity and/or other constraints).

If the design is an embedded system that requires firmware, I’ll start writing it as soon as the prototype hardware is ready. This lets me validate that each hardware subsystem behaves as required and, if necessary, I can easily make changes to the design.

Once the hardware design has been sufficiently proven, I’ll move to a production design and form factor. Then, I’ll finish up the firmware, refine my documentation (which I work on throughout the process), and either release the design or move to production. If things go wrong, which they can sometimes do, then I may make multiple iterations of a design before it’s ready for production.

When I’m in the throes of the design process, I’m obsessed with the work. I think about it constantly—on my daily runs, in the shower, at bedtime, and sometimes while sleeping. I try to anticipate worst-case scenarios, component tolerances, failure modes, and how the end user will interact with the device (both correctly and incorrectly).

Every project I work on is currently my favorite and each project comes with its own challenges, successes, and failures. As soon as I’m done with one project, I’m looking for the next thing to do.

DEFCON 17 Badge

I’m particularly fond of my work on the DEF CON badges. Held every summer, DEF CON (www.defcon.org) is the largest and oldest continuously running hacker event of its kind. It’s a mix of good guys, bad guys, government officials, and everyone in between, all having fun, sharing information, seeing old friends, and learning new things.

For five years (2006–2010) I had the honor of designing the official conference badges, which were artistic, fully functional electronic devices. I believe we were the first large-scale event to provide electronic badges to attendees. It changed what people have come to expect from a conference badge. The challenge was to create something that scrutinizing hackers would enjoy, appreciate, play with, and modify, while staying within the budget (around $10 per badge in 10,000-unit quantities).

The various badge designs have displayed custom scrolling text messages, turned off your television, transferred files over infrared, pulsed to music using fast Fourier transforms (FFTs), and provided USB functionality for computer control. They have incorporated technologies such as capacitive touch, RGB LEDs, microelectromechanical systems (MEMS) based microphones, “zero power” cholesteric LCDs, and microcontrollers ranging in size from tiny six-pin devices to powerful 64-pin behemoths. The physical PCBs used extremely complicated mechanical outlines, multiple layers of custom solder mask colors, and laser etching onto single-sided aluminum substrate PCBs.

DEFCON 18 Badge Backside

DEFCON 18 Badge close-up

Full details about the badges, along with schematics, source code, pictures, attendee hacks, and related articles, are available at www.grandideastudio.com/portfolio/defcon-x-badge (where x = 14, 15, 16, 17, 18).

NAN: Are you currently working on or planning any projects? Can you tell us about them?

JOE: There will (hopefully) never be a shortage of cool projects to work on. I like to keep multiple plates spinning at one time, though I can only talk about some of those plates.
At the recent 2013 DESIGN West conference, I released the JTAGulator (http://jtagulator.com), which is an open-source, Parallax Propeller-based hardware tool that assists in identifying on-chip debug (OCD) and/or programming connections from test points, vias, or component pads on a target device. Discovering available interfaces is a common step in hardware hacking or reverse engineering, as they are usually left unprotected and can be used to extract memory or affect the state of a system on the fly.
A few similar tools exist, but they are either incomplete, closed source, or proof of concept. I wanted to create something that could be used in actual, real-world situations and that would help new people get involved in hardware hacking. The tool will also help to highlight the insecurity of leaving OCD interfaces enabled in production devices and hopefully serve as a catalyst for change in the engineering community (where convenience often trumps security). The JTAGulator currently supports JTAG and I will be making continued refinements to the firmware to add support for additional OCD protocols.

Last year, I finished up the Emic 2 Text-to-Speech module (www.grandideastudio.com/portfolio/emic-2-text-to-speech-module), which has just started to appear in lots of interesting projects. The module is a self-contained, multi-language voice synthesizer that converts a stream of digital text into natural-sounding speech. It’s based on the Epson S1V30120 text-to-speech (TTS) IC, which uses the familiar DECtalk engine and is easy to interface to any microcontroller through a standard serial interface. Though embedded speech synthesis has been around for a while, there was no small form factor, low-cost solution readily available. So, I made one. A search for “Emic 2” on YouTube will result in various projects that use the module, including a tweet reader, a color-to-voice converter, a talking thermometer, an interaction with Apple’s Siri, and some singing demonstrations.

Some other projects I have planned include experimenting with PCB reverse-engineering techniques, hacking with a BeagleBone Black and OpenCV, and designing a new RFID system.

NAN: What do you consider to be the “next big thing” in the embedded design industry?

JOE: I’ve been increasingly concerned with the improper and (sometimes) socially unacceptable use of technology. From cameras at every street corner to mobile devices tracking your every move to Facebook and Google (among others) controlling your personal data, privacy has become something we’re slowly (and willingly?) losing. It’s a slippery slope that I don’t think many people will notice until it’s too late. The problem is largely driven by our society’s mass adoption of technology and taking that technology for granted. As an engineer and hacker, I strive to educate others about the unintended consequences of blindly using technology and hope it will make them more aware.