CHAPTER 8

image

Circuits and Programming for Kids

How young is too young to make things? Obviously, little kids have always made things, and probably everyone’s parents have some strange dried-out thing in a drawer as a memento of past artistic endeavors. Where is the line between “playing” and “making”? Or is there a line, and does it matter?

In this chapter, Joan talks about some of the maker technologies that are aimed at this younger group, or at least at those who have not yet had a class in circuits. For the most part, the official age of entry into electronics, from a manufacturer’s point of view, is 13. That said, we know an entrepreneur who had his own branded line of circuit boards when he was 12. In the United States at least, there are a lot of laws and liability issues when dealing with kids much before high school, and so you will probably find that most U.S. programs require that anyone in them be at least 13 or 14.

The last few years have seen many new definitions of what making is, or what it “should” be. Is an art studio with traditional kids’ project materials in it a makerspace, in the sense of our discussion in Chapter 5? Going farther, is creating a picture with dry macaroni and glue “making”? As a trained engineer who is used to working with things that are visibly technological, Joan’s intuition says no, but it is hard to clearly define why not. This chapter talks about this ambivalence, and you can decide for your own particular situation what level of sophistication makes sense for any young maker in your life. Rich weighs in at a few points with his take on the virtues and problems of starting off at these toy-like entry points into making.

It is worth noting that our experience with the devices we will talk about in this chapter is limited since our focus has been on the Arduino ecosystem and 3D printing. However, we felt we would be remiss if we did not at least acknowledge these devices and give a quick tour. Bear in mind that various entry-level electronics packages are coming on the market all the time now, and this chapter is not exhaustive. We point out a few examples of devices we have heard a lot of excitement about so that you can take a look and evaluate them and similar devices. Don’t take these as final recommendations, but rather as a broad sweep showing the sorts of things that are available. We give you an idea of some options (including some interesting ones that got their start on Kickstarter), and you can go from there.

Crowdfunded Inventions

A lot of the technologies for the younger set that I talk about in this chapter got their start in academic labs. The Lifelong Kindergarten Group at the MIT Media Lab (https://llk.media.mit.edu) launched the Scratch programming environment. MaKey MaKey by Jay Silver and Eric Rosenbaum got its start in the Lifelong Kindergarten Group.

Many learn-electronics sets also have passed through Kickstarter (www.kickstarter.com) as crowdfunding projects. Table 8-1 gives some of the statistics for projects that began on Kickstarter and are discussed in this chapter. LightUp—magnetically-connectable circuit components plus a training application—started as a project in the Transformative Learning Technologies Lab at Stanford (https://tltl.stanford.edu). Founders Josh Chan and Tarun Pondicherry took it from there with a successful Kickstarter. The Hummingbird robot controller board comes from Bird Brain Technologies (www.birdbraintechnologies.com), which has a team with its roots in the CREATE (Community Robotics, Education And Technology Empowerment) lab at Carnegie Mellon University (www.cmucreatelab.org). The Hummingbird Duo was a recent Kickstarter to integrate a regular Arduino-compatible controller into the company’s robot controller, the idea being that students could gradually use more functionality.

Circuit Scribe’s (www.electroninks.com) Kickstarter sold a pen that dispenses conductive silver ink, intended to allow people to just draw circuits (although not aimed at young makers per se). Some young maker toys or kits have just been developed by engineers who did not like what was already in toy stores, including the Goldieblox, another Kickstarter discussed in Chapter 10, and the KitHub (http://kithub.cc) series of kits from engineers Tara Tiger Brown and Luz Rivas.

Table 8-1. Some Crowdfunded (Kickstarter) Projects Discussed in This Chapter

Project

Number of Backers

Amount Raised ($)

MaKey MaKey

11,124

568,106

Hummingbird Duo

255

42,074

LightUp

1,034

120,469

Circuit Scribe

12,277

674,425

Goldieblox

5,519

285,881

If you are interested in what sorts of new things people are coming up with, you can always cruise the crowdfunding platforms like Kickstarter or Indiegogo (www.indiegogo.com). Just be aware that backing a Kickstarter project is not ordering a product. It is pledging money to a group that hopes to be able to reward you for backing them. So you need to read their pitch carefully and decide how likely they are to deliver. Kickstarter does not give people any money if they do not raise their minimum. Indiegogo has some options for their project leaders. Be sure to read the project descriptions and what their plans are for various levels of money raised before pledging any of your money. Note, too, that most Kickstarter campaigns are run by people who have not done anything similar before, so the delivery date may be woefully optimistic, too.

Learning Programming

I learned the programming language BASIC in high school (a precursor of several modern languages, or an oversimplified backwater, depending on whom you ask), but the world has changed a lot since then. The Scratch programming language and community came out of a project started in 2003, and according to the project website (http://scratch.mit.edu), there are about 8.7 million projects built in the environment so far. Scratch allows children (they suggest ages 8 to 16) to create interactive stories and games by dragging around tiles with actions for a character to perform. Scratch is free and open source (see Chapter 9). It is a good way to learn how to break down actions into small code-able fragments without exposing children to the frustrations of coding (which can involve very picky formatting and spelling requirements).

Once a kid has mastered Scratch, what is a natural next step? It depends on what the next activity is going to be. Good bets would be using an Arduino (see Chapter 2) or other processors in that family and learning a programming language like C, Python, or Java (all similar and closely related — C is the actual language used by Arduinos). Arduino is a big step from Scratch, however, and if that is too much, just taking example Arduino programs and altering them methodically might be a way to learn by doing, perhaps with a reference book about C if you need it. There are graphical interfaces available, but they limit the functionality of the Arduino, as Rich describes later in the chapter.

Learning About Hardware

As noted in Chapter 2, getting started with Arduino can be challenging, because you have to learn about hardware and coding more or less in parallel. If that seems like it will be too much at the outset, there are several “learn about circuits” kits out there that are well below an Arduino in user complexity (although the hardware that hides the complexity from the user may need to be a lot more complicated to accomplish that). In Chapter 7, you saw how to create circuits by sewing them. This section talks about creating circuits using other means to connect them. Some of these have very limited applicability in terms of the types of problems that can be solved, but they have interesting niche applications.

MaKey MaKey

It is hard to describe a MaKey MaKey (www.makeymakey.com) if you have not seen one. Fundamentally, it is an add-on partial keyboard for your computer that talks over a USB port and emulates certain keys on the keyboard. But that is not the point. What it lets you do is interface anything conductive—a banana, a piece of celery, a heavily drawn pencil line, a line drawn with water—to your computer in place of a few keys (up-down/left-right arrows, spacebar, and mouse click). When coupled with a program that expects inputs from those keys, like, for instance, a six-key piano coded in Scratch, available at www.makeymakey.com/piano, you can make a celery piano. Hence the name MaKey, since you are making other things into keys for your computer keyboard.

Figure 8-1 shows a MaKey Makey as it is attached to a computer through a USB cable. The computer recognizes it as a keyboard with just six keys (you can daisy chain them for more options, but we will not get into that here). The next step is that you need to provide the ground for the MaKey MaKey (Figure 8-2). I like to do this by attaching the ground connector to some metal object that is easy to hold. (In this case, I used a metal spoon.)

9781484209059_Fig08-01.jpg

Figure 8-1. MaKey MaKey and alligator clips

9781484209059_Fig08-02.jpg

Figure 8-2. Grounding a MaKey MaKey user

Next, connect the remaining alligator clips to six conductive objects that will correspond to the up, down, right, and left arrow keys, spacebar, and a mouse click. Keep the MaKey MaKey grounded (by holding on to the spoon, in this case) and touch one of the conductors. The version in Figure 8-3 used damp celery. You will hear a sound, or whatever the programmer assigned to that key. You don’t have to use celery. Anything reasonably conductive will do, including people—if you have six friends hold the MaKey MaKey alligator clips, you can high-five them to play a tune. Be sure you keep the MaKey MaKey grounded, though, by hanging on to the grounding object with one hand and touching your friends with the other. Otherwise you are not completing a circuit, and it will not work.

9781484209059_Fig08-03.jpg

Figure 8-3. The celery piano

Image Tip  There are various other ways to play around with circuits by using whatever conductive material is at hand. Whether you play with it in conjunction with a MaKey MaKey or not, you can also make circuits yourself out of various kinds of conductive and nonconductive dough. These so-called squishy circuits use two different dough recipes, one conductive, one not, to develop electrical connections (or resistive components). Squishy circuits were popularized by AnnMarie Thomas, now at University of St. Thomas; see http://courseweb.stthomas.edu/apthomas/SquishyCircuits/.

Drawing Circuits

If building circuits out of dough or playing pianos made out of food does not sound like your thing, you could try drawing circuits with conductive-ink pens and attaching components with magnets. Several groups have been working to come up with a quick-drying conductive ink, and after a successful Kickstarter, ElectronInks (www.electroninks.com) is now selling a pen and magnetic conductor components. The pen, called the Circuit Scribe, allows you to draw the circuit interconnections (with conductive ink) that you would normally need to use wire to make. The way it works is that you have a metal sheet and magnetic components. You lay down the metal sheet, then a piece of paper, and then your components. Lastly, you draw your circuit on the paper between the components. The pen and a couple of magnetic components are shown in Figure 8-4; I backed the Kickstarter and have been trying to find time to seriously play with my purchases!

9781484209059_Fig08-04.jpg

Figure 8-4. Circuit Scribe pen and magnetic components

Magnetic-Connector Circuits

LittleBits (www.littlebits.cc) was one of the first companies to create circuit components that snapped together with magnetic connectors, thus removing the need to wire up a circuit at all. However, this requires that you purchase modules that have these connectors, and depending on how the modules were designed, your flexibility may be limited. LittleBits is an open source standard, and it maintains a public collaboration forum, Bitlab (http://littlebits.cc/bitlab) to encourage invention.

An extension of the concept is LightUp (www.lightup.io), which adds a magnetic-connector Arduino-based board (Figure 8-5) to its set of component modules that include things like a buzzer, temperature sensor, or switch. Libraries have been added to make programming activities with the LightUp board and the available components a bit simpler than the standard Arduino would be.

9781484209059_Fig08-05.jpg

Figure 8-5. Some LightUp components: a temperature sensor, “wire,” an LED, and the programmable board

A twist that LightUp adds is a machine-readable icon on each module. The user takes a picture of a circuit made with LightUp modules. If the circuit is put together in a way that will not allow current to flow, the LightUp phone app circles where the problem is and allows the user to fix it. If the circuit is put together correctly, it shows how electricity is flowing. In some ways, this feels like a best of several worlds, because it simplifies the hardware part without overly constraining the software. However, the system is relatively expensive compared to a standard Arduino and components, and you are limited to the components that LightUp has made available. Using LightUp also involves downloading software for the board (on a laptop or desktop) and installing a smartphone app for the circuit-debugging capability.

Figure 8-6 is a comparison of some of the different approaches to components discussed so far, two magnetic connector LEDs (ElectronInks and LightUp), and peel-and-stick LEDs from Chibitronics, called Circuit Stickers (www.chibitronics.com). Expect to see a lot more variety as more and more people get into making!

9781484209059_Fig08-06.jpg

Figure 8-6. Different approaches: LEDs from LightUp (bottom left), ElectronInks (top), and Chibitronics (bottom right)

Robot Kits with Programmable Microprocessor Boards

The granddaddy of kits in the robotics sphere is LEGO Mindstorms (www.lego.com/en-us/mindstorms/), which has an entire ecosystem of its own with big competitions (such as FIRST Lego League, www.usfirst.org/roboticsprograms/fll). This chapter focuses more on paths toward Arduino and wearable-tech style “making,” which are a bit different from kit-oriented projects that use LEGO’s proprietary processor. But if you are looking for robot kits to explore, Mindstorms is definitely another (though rather pricey) area to look into. Chapter 4 discusses other robotics projects at a more sophisticated level, so you can look there for ideas as well if you are interested in robotics.

Many (relatively) easy-to-program microprocessors are available for student projects in addition to Arduinos, although many of them are actually Arduinos with some sort of twist, as we just saw with LightUp. Another such board is the Hummingbird (www.hummingbirdkit.com), which is an attempt to simplify the Arduino toolchain for children. It comes pre-programmed with a simple program that allows the user to use a graphical, mouse-based interface to make programs that run on a computer and use the attached microcontroller board for input and output functions. In doing so, it limits what you can do, with specific pins confined to certain functions and minus their inherent versatility. It does this by simply translating signals for the USB connection with its default program, though this program can be replaced for more autonomous functionality (it is, after all, built around an Arduino-compatible design).

The Hummingbird can be programmed using normal Arduino tools, but using it that way just makes it just an expensive Arduino board. The Software page for the Hummingbird lists a number of choices (possibly too many) for programming it, but unless you really love the Hummingbird’s CMU CREATE Lab software, there’s nothing there that can’t be used with any other Arduino-compatible board. On the plus side, Hummingbirds are intended to be used in simple robotics applications and are sold with kits of parts for robots and some software intended to ease the learning curve.

Image Rich’s view  Personally, I think that visual programming interfaces for beginners are a bad idea because they require learning to use a strange interface that you will never need for real programming, in addition to learning actual programming techniques. The same goes for languages like Logo that jump through hoops to try to make programming statements look like English sentences but only manage to make the exact syntax easier to get wrong. If you want to try graphical programming, it’s probably better to make Scratch programs on your computer first. Scratch can be extended to provide functionality similar to the Hummingbird with S4A (Scratch For Arduino, http://s4a.cat/), or you can try Ardublock (http://blog.ardublock.com) to use a similar interface to program the Arduino itself. But I think that anyone interested in learning to program will outgrow these interfaces and be ready to move on to real code in less time than it takes to learn to use them.

What Do You Need to Know to Get Started?

One common criticism (from the technologist side of the fence) is that things like MaKey MaKey do not actually teach anything other than that a computer is not intimidating, which presumably most people under the age of 18 know anyway. One could suspect that these technologies are perhaps made more to bridge teachers and parents into making than students. Is it a good idea to take flexible, powerful technologies and remove almost all the functionality (and raise the cost in the process)? That is a question you will need to ponder if you are thinking about using one of these systems.

Concerns about physically handling materials and soldering are valid ones when students are very young, but by and large we imagine that most kids will be 13 or so before they have the focus to write significant code anyway (the writer of our Foreword being the exception that perhaps weakens this rule).

Magnetic-connector systems have obvious advantages for younger children or environments (such as museums or school programs) where an Arduino and a breadboard just would not survive very long, but these systems tend to be relatively expensive. Drawing circuits to connect components on stickers is an interesting idea for quick prototyping, as long as the components you want are available on stickers. Making dough circuits is a bit messy and qualitative, but it is very cheap.

In short, you can do some qualitative experiments with some of these to get a feel for how things work, but if you want to lay the groundwork for something more sophisticated, you might be better served by taking the plunge into Arduinos when students are old enough rather than linger in the younger-set technologies. A lot of it comes down to what you are trying to teach or accomplish. If you have thought through a project that works with one of these simpler systems, then that might be adequate for experimentation. But think about where you are going and consider that the shortest path to the top might have an initial steep bit of trail.

The systems described in this chapter range from one-off systems (like MaKey MaKey), which pretty much just requires you to read the instructions, to systems that start off more or less as playing with blocks and build to Arduino programming (LightUp). Given that, read the instructions (typically on a website or, increasingly often, a smartphone app) and go from there.

Image Tip  In general, it is never a waste to take a software package through “Hello world” (or in the case of an Arduino, through “blink”)—the standard first step in coding. It can be frustrating to take the next steps. If you feel a bit trapped between the world of the simplified interfaces in this chapter and the technologies discussed in earlier chapters, take a look at our discussion in Chapter 15 about learning incrementally.

What Does It Cost to Get Started?

Basically the farther you get from buying a bare Arduino and finding parts for a project on your own, the more it costs. In Chapter 2, we gave some prices for base Arduinos, and in Chapters 6 and 7 for sensor-using and wearable projects. Here you are paying for someone to package these technologies for you in one way or another. If the packaged version takes you where you want to go and allows you to go places you might not have had the time to get to yourself, then it may be worth it for you.

However, if you want to learn a bit more deeply, and if your participants are old enough to handle it, you will probably save money and learn more by taking the paths in Chapters 6 and 7. Sparkfun (www.sparkfun.com), Adafruit (www.adafruit.com), and the Makershed (www.makershed.com) all sell kits that might be a middle ground between buying component by component and buying kits that are closer to toys.

As a few data points, MakeyMakey kits currently sell at $69.95. LightUp has two kits: the Edison, with just the magnetic blocks ($49.99), and the Tesla ($99.99), which also includes the “Arduino-based” board. Hummingbird robotics kits ($159) are intended to be used to control simple robots and come as kits along with parts to make a robot.

If you are a school administrator who is looking at paying for teacher training, of course, the tradeoffs may be different. As noted in the beginning of the chapter, new things pop up in this sphere every day, and our picks were somewhat arbitrary based on items that had caught our eye on Kickstarter or that we had been asked about often enough that we thought we should investigate. We have not played extensively with the items in this chapter, because, as we note elsewhere, our focus is on the steeper-curve, but (we feel) ultimately more rewarding, Arduino path.

Summary

This chapter talked about some of the types of products that are aimed at learning how to make circuits and associated software. Most of these products are focused on circuit basics, or robotics. We talked about the MaKey MaKey, which is a way to interface a computer with almost any conductive physical object. We reviewed the tradeoff you make with these systems, which usually involves a shallower learning curve and potentially higher costs. The simpler systems also usually require you to learn an intermediary interface before jumping to the types of projects we have seen in the chapters up till now.

This is the last chapter that describes different types of technologies. The next two chapters talk about the open source community that underlies a lot of the developments we have seen so far. Then Chapter 10 looks at ways people are trying to interest girls in making. The balance of the book explores what scientists do and then ties together the world of the maker and hacker that you have seen so far with that of the scientist and engineer.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.135.194.251