While I was at ISTE this year, I met Josh Caldwell from code.org. He told me that he’d just gotten a copy of the #bigmakerbook that Aaron and I wrote, and that he was working through the projects with his own kid. (WHICH I THOUGHT WAS SO COOL!) When he mentioned hacking my sewing circuit guitar plushie with Circuit Playground Express, I was intrigued! Aaron and I wrote this book back in 2016, and at that time, those intro boards and MakeCode didn’t really exist yet. So I thought it’d be fun to try out some beginner boards and see how they compare to programming the Lilypad Protosnap board.
When I created this project, I knew I wanted to make a soft plushie guitar that only played music when you played air guitar. After speaking with the folks at Sparkfun (Thanks, Jeff Branson and Angela Sheenan), I landed on using the Lilypad Protosnap board (they’ve upgraded this board since I wrote this project, so now this is the equivalent.)
What I love about this microcontroller is that you can test your code before snapping the components off and sewing your circuits. Being able to run sketches before sewing (and not having to alligator clip them!) was amazing to me as an educator. Since I was still quite an Arduino noob in 2016, Trey Ford from the Denton Public Library helped me write the Arduino code. Together we decided to use the light sensor to pick up when the guitar player was actually playing “air guitar.” One other thing I really wanted was the guitar to play only when strumming and always play the next note when you started to strum. Trey helped me work out how to get that bit of code functional as that was the most complicated problem to tackle. Once we got that going, it was time for the fun of determining what notes to play on the piezo and the duration for each note. I chose Iron Man as the song for the guitar because I thought it would be hilarious to have such a metal song, pinging through a little tiny piezo buzzer. My hope was that if learners wanted to, they could easily change the notes to any song they wanted to play.
My favorite part of creating this though was mapping the circuit traces. It’s no secret that I’m a nerd for sewing circuits, and I loved the challenge of creating circuit traces that were not only functional, but pleasingly aesthetic on the guitar plushie. I loved making it appear as though the conductive thread was part of the guitar design. For me, sewing circuits was a breakthrough in understanding the world of electronics and components. Breadboarding always confused me until I started sewing circuit traces. The act of physically mapping a circuit is a great way for beginners to understand these concepts.
So I still love the original project, but could it be simpler with one of these other boards?
Circuit Playground Express
The Circuit Playground Express hit ISTE last summer and I saw everyone walking around the conference waving magic wands. I was intrigued, but I’d tried the developer board previously because I was hoping it would be a good introductory board and I’d had some difficulty with it. I wasn’t sure how much they updated it.
I’ve tested it since, and the new Circuit Playground Express has improved a lot since the developer board. It can be a fun quick intro to the world of electronics and I love the embedded neo-pixel ring.
It was more complicated to program the song than I wanted in MakeCode, but only because I couldn’t figure out the ratio for the light sensor reading (until I looked back at the original Arduino code Trey helped me write.) After that, programming the music tones was fairly straightforward and I could alter note duration on each code block which I really liked being able to do.
So the coding experience was fairly straightforward, but the sound was a bit wonky (See the video below). My biggest complaint is only that there would be no sewing circuits if I wanted to use this controller instead of my Lilypad board. For me sewing the components is fun.My other worry is the AA battery pack for the Circuit Playground is very large compared to the tiny rechargeable Lipo battery for the Lilypad board. However, this board could still be a great way to get started testing a project idea, especially for beginners.
The code for Micro:bit was very straight forward, but I decided to try using the “on shake” as the event that triggered Iron Man because I thought that would be a good reason for a guitar plushie to start playing a song too! The thing I like most about the Micro:bit is that you can wire a speaker or headphones to it and the sound quality is pretty good. I even liked the idea of using the shake to play the song. But just like the Circuit Playground, the shake started the song and the song wanted to play all the way through.
Being able to wire a speaker does make for a cool extension of the project I’ve been wanting to do for some time. Since the original piezo buzzer is pretty soft, I’ve always wanted to make a soft amp. How adorable would a functional stuffie/plushie speaker be??!?!?
I’m still the happiest with my original project. I like the idea of using a Micro:bit to test and try more ideas, but I am still underwhelmed by this board only having 3 pins. The Circuit Playground and Lilypad Arduino have way more break out options. But I do like both of these beginner boards for testing out ideas. I also like the functionality of the Circuit Playground, it’s just that I personally like sewing the components. It helps me understand how each component works. (Like to make a sensor work, you have to power it, ground it, and assign it a function through a pin. If everything is onboard, and I don’t have to wire it or sew it, how do I learn these things?)
In the end, for you, it depends on what you want to teach! Do you want to teach wiring components? Or do you want to teach if/else statements? What would you want students to learn from a project like this?
Watch all of the board play below: