Custom Concert Penlight
Penlight that has a gyroscope sensor and can interface with an addressable LED strip for interesting
displays or animations
Here's a list of quick links either for downloads or references to other websites.
Schematic
Layout
Components used
-
C1,C2 : Capacitors, used to smooth the voltage rail and filter any noise, these are placed as close as possible to the
microcontroller's voltage input pins.
- C3,C4 : Capacitors, needed as specified by the gyroscope's datasheet
- R3 : Resistor, needed as specified by the gyroscope's datasheet
-
U2 : Microcontroller, MSP430FR2355 by Texas Instruments. The MSP430 family is touted as best suited for
battery applications. Mainly chosen since I know this microcontroller can be programmed using only two
wires. This saves a significant amount of board space.
-
U3 : Gyroscope sensor : I3G4250DTR. Mainly chosen since it has SPI communication. Previously I was using
a gyroscope that only had I2C communication. Comparatively SPI is faster.
- J1 : 2x1 male header pin, connects to the programmer to upload code.
-
J2 : 3x1 male header pin, can be used for serial communication to the PC for possible debugging or test
new features.
- J2 : Connector header, connects to a battery pack.
- J3 : Connector header, connects to the LED either a single or an array.
-
J4, J6, J7 : 2x1 male header pin, wired to external buttons. The buttons will be mounted on the physical
handle.
- TP1,TP2,TP3,TP4 : Test Points, allows a way to measure the SPI communication traces.
- TP5,TP6 : Test Points, allows another way to connect a supply voltage to the board.
Additonal Comments
You see these a lot at concerts especially when a Japanese band or singer comes to town. So I thought, what
features can I add that are completely unnecessary. The first thing that came to mind was automatically
changing the color whenever you flick the penlight.
Another feature is the penlight reacting to sound using a microphone. It wouldn't store audio, just
measure the sound and some processing, the most impressive part would be if I can implement a DFT (Discrete
Fourier Transform)