Interactive Very Hungry Caterpillar With RFID and Button Input - Assistive Tech
by bergmaad in Circuits > Assistive Tech
43 Views, 1 Favorites, 0 Comments
Interactive Very Hungry Caterpillar With RFID and Button Input - Assistive Tech



Based on the iconic children's book by Eric Carle, this cozy homemade caterpillar was created to enhance the joy of reading for children with extensive support needs at the Campus School at Boston College. This build was designed in close conversation with the staff at the campus school to maximize accessibility, durability, and fun.
This was created for an assistive technology project submission for the Physical Computing course taught by Prof. John Gallaugher at Boston College.
Supplies
Circuitry Components
- Raspberry Pi Pico
- Terminal Block Shield
- 3.5mm Plug Speaker
- Light strand (this build uses 15 LEDs)
- 13.56MHz RFID stickers x5
- MFRC522 RFID Module
- Portable Battery Pack
- Tactile Button
- 3.5mm mono jack (female) x2
- 3.5mm mono cable (male)
- USB-A to micro-USB cable
- Micro Connectors Micro-USB 5V/2.5A Power Adapter with on/off Switch for Raspberry Pi
- Cables
- Soldering iron
Crochet Components
- Light green yarn (I used this one in Forest Whispers)
- Dark green yarn (I used this one in Dark Spring Green)
- Red yarn (I used this one in Cherry Red)
- Yellow yarn (I used this one in Lemon Meringue)
- Brown yarn (I used this one in Toasty Temptation)
- 5.50 mm crochet hook (hook size recommended by the Instructable user who created the pattern, I used a smaller hook)
Assembly
- Fruit stickers (note the attached file is formatted for a sticker printer)
- Polyester fiberfill stuffing (poly-fil)
- Darning or tapestry needle
- Sewing scissors
- Light-touch button STL file (credit to Makers Making Change for making this CAD file freely available)
- Wire strippers
- Hot glue
- 1/4" Acrylic
- PLA filament
Solder & Wire Components


Soldering
My RFID module and Terminal Block Shield required some initial soldering. There may be more expensive pre-soldered options available on the market if you'd like to skip this step.
Once these components were soldered, I placed my Pico in the Terminal Block to make my build more durable.
The video above was helpful in soldering the terminal block.
Pinouts for wiring components
The diagram above provides a wiring visualization, using a breadboard instead of a terminal block. You can secure your wires to the terminal block easily with a very small screwdriver.
Mono jack for audio
- Signal (red) --> GP15
- GND (black) --> GND
Mono jack for button
- Signal (red) --> GP16
- GND (black) --> GND
RFID:
- 3.3v --> 3.3v
- GND --> GND
- SCK --> GP2
- MOSI --> GP3
- MISO --> GP4
- SDA --> GP5
- RST --> GP6
- *IRQ will be unconnected in this build
Light strand
- 5V --> VSYS
- Data in/signal --> GP0
- GND --> GND
Code
Import the attached Circuit Python code onto your board's code.py file.
Libraries
The attached code uses many additional libraries. You'll want to make sure that all of these are in your Raspberry Pi's lib folder. You can download mfrc522.py from the file attached.
Sound
There are 5 .wav files to import from the file provided. I used an AI text-to-speech tool (ElevenLabs) to create the sounds and Audacity to convert these to .wavs (.wav files take up less space on your board than .mp3 files do).
When you put them on your board, add them to a folder named "Fruit." Otherwise, you will have to change this line of your code to the correct file path.
Other Considerations
- The LED light strand that I purchased recognizes color tuples in GRB (not RGB) model.
- Use any button to test the above code. Step #4 provides instructions for making a light-touch button.
- You WILL need to adjust the code with the UIDs of your RFID stickers. Keep a list of these and designate your stickers so that you know sticker is associated with each fruit.
Temporary Disassembly to Prepare for Crocheting
Once you have tested your code, you can remove the LED strand by unplugging the wire connector, the RFID by unscrewing the wires from the terminal block, and the button from the button jack. Leave your Raspberry Pi in the terminal block with all the other wires intact.
Crochet





I modified this wonderful crochet tutorial from fellow Instructable user VACH. HUGE thanks to them! In the step of this Instructable, you will do Steps #1 and #3 of VACH's pattern. You'll hold off on Step #2 until the final assembly (next step of this Instructable)
Throughout these steps, periodically test your code to make sure that everything is connected as expected..
Note: SC = single crochet (US-terms)
1) Head + RFID
Crochet according to the pattern. Before stuffing with poly-fil, put your soldered RFID inside the crochet with the antenna facing out. The antenna is circled in the attached photo of the RFID.
Poke all the wires through so that they go parallel to the front of the head (i.e., out the right side towards the bottom, in one cluster). Fill the head with poly-fill and sew to close.
2) Body Segments 1-4 + LEDS
Body segment 1: At round 8, 21 SC. Then, secure your LED strand, making sure that the end of the LED with the pins going into your Raspberry Pi are outside of the segment. I secured mine by integrating the wire into my SCs, using the same technique used previously to secure the Head and Body Segment #1 together as well as conceal the wire. Finish the round as written.
For Round 9, SC as written until you get to the first LED in your strand. Then, stick the LED into one of the SCs. Make sure that the other side of the wire is secured on the outside of your segment. Continue the pattern as normal for the rest of the Round, as well as Rounds 10-17.
Body segments 2-5 At round 8, 21 SC. Then, integrate the exposed wire from the previous body segment into your into the next 3 SCs. I also directly crocheted into the outside of the previous body segment to secure the two together and to conceal the wire. Continue Round 8 as normal.
For Round 9, integrate the wire into your SCs and then secure the LEDs as you did previously, adding one additional LED into each successive body segment (i.e, 2 LEDs into segment #3, 3 LEDs into segment #4, 4 LEDs into segment #5, and 5 LEDs into segment #6). After the last LED, make sure sure that your wire is secured on the outside of your segment. Continue the pattern as normal for for Rounds 10-17.
3) Fruit Pouch + Raspberry Pi Pico
Using HayHayCrochet's "simple crochet fruit drawstring pouch" pattern, I made a lemon-shaped pouch to store the pico and hide the wiring. I followed the pattern closely except for the following modifications:
Pouch:
Rounds 1-9: As-is
Rounds 10-13: Sc in each st until the end of the round
Round 14: *Sc 7, dec, *rep until the end of the round.
Rounds 16-17: Sc in each st until the end of the round
At this stage, I undid the wiring on the pico, placed it on the wrong-side of the pouch, wove in the wires, and re-secured them to the pico before continuing.
Round 18: Sl st into the first sc of the round, ch 1, sc into that same st, ch 2, sk 2 sts, *sc, ch 2, sk 2 sts, *rep until the end of the round (you should end with a ch 2).
Round 19: Sl st into the first st of the round, ch 1, sc into that same st, sc 2 in ch space you created in the previous round, *sc, sc 2 in ch space, *rep until the end of the round, sl st into first sc of the round.
Leaf drawstring: As-is
Assemble





Sewing the Caterpillar Components
Sew the head and the body segments together. Sew the head and the first body segment to the pouch to secure it.
Light-touch button
3D print the light-touch button and assemble, following the awesome video tutorial above. This will require additional soldering.
Now, you can plug your this button (or any button with a male mono cable end) into your button jack as an input option for the caterpillar.
RFID Fruits
Print the fruitstickers.pdf file for the 5 fruits. Use the FruitStickers_forlaser.AI file to laser cut the sticker mounts onto 1/4" clear acrylic. Once the stickers have dried, place them on the acrylic mounts. Then, add the RFID sticker for each respective fruit.
Now, you have another input option for making your caterpillar come alive.
Decorating the Caterpillar (Step #2 of VACH's pattern)
For the eyes, nose, and antennae, I modified VACH's pattern as follows (US terms):
Eyes x2 (green and yellow yarn):
With green yarn
R1: CH 3, ss together
R2: 1 inc in each ch around. (6 SC), ss together
Switch to yellow
R3: 1 inc in each stitch around. (12 SC)
Fasten off. Leave a long tail for attaching. Set aside.
Nose (green yarn):
R1: CH 3, ss together
R2: 1 inc in each ch around. (6 SC), ss together
Fasten off. Leave a long tail for attaching. Set aside
Antennae (Brown Yarn):
CH 15
Fasten off. Leave a long tail for attaching. Set aside.
Sewing
Using the long tail of each piece, sew the eyes, nose, and antennae to the head.
Enjoy!
Have fun!! Let me know if you tried this - tag me in any builds or reach out with questions on Bluesky!