Piezo Fidget Toy

Fidget

Piezo Fidget Toy
This is a simple Arduino project. It's a fidget toy made from an addressable LED string and piezo sensor. You tap the sensor and it records the force and time, showing as streams of color going up the LED string. Then it plays back the color streams plus the piezo plays each stream as a tone.

It requires a half dozen components:

The completed device includes:

Operation

Design Documents

Schematic Diagramfidget_schematic.pdf
Source CodeView   Download
3D Print Filesfidget_mechanical.zip

Wiring diagram:
Schematic

Build Notes

I had a length of 122/meter LED string with 72 pixels, so I used that. This design should work well with strings from 50 to 100 pixels. Wiring is point-to-point using hookup wire. Zip ties hold everything in place, and a cover plate adds more protection.

The piezo sensor needs a load resistor (R3). The size of the resistor depends on the piezo sensor used, and the value should be between 1M and 10M Ohms. The lower the resistance the less sensitive the sensor will be. I used a 4.7M Ohm resistor with good results.

To get good piezo sensor performance and make good sound the sensor should be mounted to a board. The 3D printed base is designed to optimize the piezo sensor performance. The piezo sensor is glued to the base using 2 part epoxy.

There is a space provided in the base to add weights. I used play sand in plastic bags.

This design has no ESD protection so it is susceptable to ESD damage. Ground out any charge you might be carrying before touching the piezo sensor!

For an absolutely minimal build resistors R1 and R2 can be omitted and it will still work fine. R1 and R2 are there to provide some protection from transients.

Build Pictures

Front

Fidget

Interior
Interior
Sand bags for weight.

Bottom
Bottom