IoDriver PCB Layout

Here’s a timelapse of me laying out the circuit board for my IoDriver project.

Making Makers

The other day I picked up AnnMarie Thomas’s latest book Making Makers. This turned out to be one of those books I get so excited about I inadvertently read the whole thing in one sitting and suddenly it’s 3AM and I’ve done nothing useful all evening. Anyway, this book is about encouraging in kids curiosity, play, resourcefulness, and all the other things that make makers what we are. This is stuff that I’ve been thinking a lot about lately, as I’m trying to transfer into the children’s department at the library. AnnMarie has done a fantastic job with this book, and it’s got me really, really excited to start working with kids again.

Part of what got me so excited about this book is that I’ve been thinking a lot about the same things lately. Since I started teaching electronics at the library, I realize that I really like teaching, although I’m not particularly good at it. I’ve been thinking about new ways to get kids interested in electronics, mostly because that’s what I do, but I realized that I need to get them interested in making, which– because of the funding we have at the library– I’m in a particularly good position to do. Learning has always been very important to me, so I’ve spent a good deal of time thinking about how to make it fun for kids.

It was very interesting to read these maker’s stories and seeing how they became interested, and what’s kept them interested for so long. I was very curious as a child, and was always taking things apart, though I never really got much encouragement from the adults in my life. Fortunately, I was stubborn enough to not listen to them, and kept taking apart, repairing (sometimes destroying), and just learning how things worked. I didn’t get serious about electronics until just a few years ago, but it’s all led to me pursuing an electronics engineering degree right now.

I got excited about this book because I like teaching kids about making. I like teaching because even though there will be some kids who just aren’t interested, there’s always one or two whose eyes light up when they really get it. It’s an incredible feeling to be that adult in a kid’s life who introduces them to making, and encourages exploring and curiosity. Maybe they’ll grow up to be a lifelong maker. I hope so.

Making makers is an excellent book, and I very highly recommend it, especially if you have kids, and especially if they’re curious about the world and how it works. If that involves taking apart their toys, or even animals (as one maker in this book had), we should encourage them. My coworker has a son who already wants to be an engineer, and I’m going to tell her to read this book, she won’t regret it.

AnnMarie has a pretty cool blog, and you should check it out.

Teaching Electronics

What got me involved with the Squishy Circuits program I posted about earlier was an electronics class I started for kids. I convinced my boss to let me do it as a library program (with library funding 😉 ), and  got my first experience in trying to teach to children. This was perhaps not the best idea I’ve ever had, but it’s been a lot of fun anyway.

Since the library is almost attached to the elementary school next door, we used a group of their kids to see how this program would go. The overall result: excellent. I started with a few experiments from the very excellent book Make: Electronics, but by the third group, I’d replaced some of the less interesting ones with my own experiments.

I started out by having the kids put the leads of a AA battery pack on their tongues, more because they found that exciting than for any real demonstrative reason. Then they shorted out their battery pack, and the wires heating up were a good example of resistive heating (though I didn’t go into much detail about that). An unintentionally exciting demo we did with the first group was putting a potentiometer in series with an LED. When they turned the pot down to 0, the LEDs were supposed to just burn out, but the cheap ones I got from China actually exploded, launching encapsulant pieces across the room (obviously I got less explosive LEDs for subsequent programs).

We also did a few short demonstrations of transistors, including one where the held a wire connected to the base, and one to the collector, and I explained that the tiny amount of current going through their body was enough to turn it on, just like pressing the button on the tact switch we used earlier. I also had them build the classic multivibrator blinky LED circuit, which they found pretty interesting. I showed them another version that had pots instead of fixed resistors, and used that to explain the function of the capacitors in the circuit.

Then I had them hook up a 555 buzzer circuit to a simple NPN amplifier circuit, and explained that the 555 was switching the transistor 400 times a second, which they thought was pretty impressive (I guessed 400Hz, as the pitch was somewhere close to A4, but who cares what the actual frequency was?). Just for fun, I also had them stick a pot into the 555 circuit to vary the pitch, which was fun for them, but annoying for me. For first group, I wired up the 555 circuit on their breadboards the day before, but for the last one, I actually put the circuit on a bit of veroboard that plugs into a mini breadboard quite nicely.

Since the kids I was working with were 11-12, I figured I could appeal to their interest in destruction. I brought out a small SLA battery, and shorted out the terminals with a bit of wire. After the smoke and flame, I compared it to the wires on the battery pack heating up from the first experiment, which they seemed to understand fairly well. Just for fun, I did something I experimented with as a kid. I attached some paper clips to the terminals and put a piece of mechanical pencil lead across them. With tens of amps going through a piece of graphite, it burned hot enough to light up the entire room. I took the opportunity to warn them that electricity can be dangerous, and the burning pencil lead could easily be them. I didn’t do the wire demonstration with all of the groups, because of the smoke, so with some others I had them tape some steel wool to a balloon and stick the leads from their battery pack into it. Of course, that caused the steel wool to melt, popping the balloon, which resulted in some screaming and plenty of laughter. The first time we did that, it drew a bunch of kids in from outside the room, which is just fine by me 😉

We like to give kids something at the end of our programs to keep them interested and wanting to come to the next one. The first group got the blinky LED circuit and 555 buzzer on little bits of veroboard. Let me tell you, it was an enormous pain in the ass to hand-wire ten of those stupid buzzers. So much in fact, that for the last group I actually had some PCBs fabbed for the buzzer circuit. Unfortunately, that ate enough of the budget that we couldn’t give them the blinky LED board, but they didn’t seem to mind. Though, I didn’t check my PCB design very well, and the holes for all the caps and resistors were far too small for the leads. I ended up sort of surface-mounting them onto the pads. I’m still not happy with it, but it worked well enough.

Once word got out about this program, all of the local elementary schools wanted us to come, and I went to two schools out of town. My boss wants to do this program again in the fall, but this time we’ll open it to the public. I like that idea, because with the school visits, they’re a captive audience. Not all of the kids were interested in electronics, although there were a few who really got into it. Hopefully, if we open it to the public, only people who are interested will sign up for it.

I really like sharing my hobby and my passion with these kids. Plenty of them weren’t at all interested, and that’s alright, people have different interests. There was about one or two kids in each group who really got into it, asked tons of questions, and started experimenting on their own while I was helping the other kids. It’s an amazing feeling to see that, and I sincerely hope I’ve inspired a future hobbyist or engineer. At some point during this, I realized that I’ve been tinkering with electronics since I was their age.

This has been an incredible experience for me. We’ve not done any programs this summer, because the Summer Reading program takes literally all of the library’s attention and manpower (over 2000 kids signed up this year!!!). I’m looking forward to doing more school visits and programs this fall, and I’m toying with the idea of an Arduino class for teens, we’ll have to see how that pans out.

Blinking and Buzzing for Kids

I work at the public library, and I’ve recently become very involved with the children’s department. One of the things I’ve done is whip up a neat project for a summer reading program. The theme for summer reading this year was science, and a coworker and I came up with the idea to do the squishy circuits activity that Dr. AnnMarie Thomas came up with at St. Thomas University. Basically squishy circuits is play-dough that’s been formulated to conduct electricity reasonably well (in the range of kOhms per square inch). You give the kids a battery and an LED, and it’s a great way to demonstrate how electricity flows through a circuit. Since it’s basically play-dough, the kids can get really creative, and make sculptures with the dough, then create a circuit out of it. One of the kids at a school visit made some roses, and one group made an alligator with light-up eyes (which didn’t work very well, unfortunately).


In some of the St. Thomas documents, they used an arduino to change the color on an RGB LED and another to change the pitch of a little speaker. Basically, the ADC reads the resistance across a lump dough, and sends a value to tone() or analogWrite() based on that. On the first school visit we did, I used two Leonardo clones I had lying about, and those were a big hit. However, for the summer reading program, there’d be upwards of 40 kids, so two boards wasn’t enough, and we couldn’t afford to buy full-blown Arduinos (nor was that actually really necessary).

My solution was to make a tiny board based on the Attiny45. All that’s on the board is the Attiny, some resistors, a bypass cap, and a 78L05. I got the board size small enough that they cost something like 50 cents each at OSHPark, which fits nicely into a library budget. Total they were two or three dollars each, which I’m pretty pleased with. I even managed to squeeze the library’s logo onto the back of the board, which amused my coworkers to no end.


(You’ll have to forgive the ugly soldering, I thought it’d be a good idea to do 0603’s by hand with lead-free)

It was interesting to get these things working. There’s no ISP connector, so I had to come up with a jig to program the boards. I used another board with some pogo pins soldered onto the appropriate pads, and kind of sandwiched the boards together while I programmed them. This didn’t work quite right; I had to apply some lateral pressure to get the contacts to correctly. It’s not too bad for a one-off product. I don’t have any pictures of the programming adapter, unfortunately. It got dismantled and turned into one of the buzzers.

However, I ran into some trouble getting the LED program to fit on the Attiny. It’s only got 1K of flash, and I was over by just a few bytes, which was entirely maddening. It took me about an hour to figure out that the code was using floating point numbers, and the compiler seemed to be inserting a software implementation of floating point math. The hack to get it working was to remove the floating point numbers by multiplying them all by 100, then dividing by 100 at the end of the calculations. It’s not particularly elegant, but it works well enough for a bunch of 8 year olds.

The summer reading was a wild success, by the way, and all the kids from the school visits keep begging us to come back. It’s a hell of a lot of fun getting kids into electronics, it’s almost enough to make me want to transfer to the children’s department. Almost, but not quite 😉


Update: I decided to (or rather, finally got around to) make this an open-source project. Everything can be found on my GitHub page.

© 2016 Brant Martin

Theme by Anders NorenUp ↑