Adapted Music Player.
Read this completely before starting, as this is not instructions as much as it's documenting all the various sources.
I have a special needs daughter, with autism and some other disabilities. She is ambulatory, but has challenges with fine and gross motor skills. Adaptive toys are expensive, incomplete ideas, or to complex in some cases to suit our needs. We have several children karaoke machines that are 15+ years old and starting to no longer function and are her favorites. My goal was to build a new device combining the core features: Simple (2-3 buttons max), a audible and visual response (light and sound). The sound needed to be music and the lights need to run as long as the music is playing, similar to a Christmas light show, but not something that would overstimulate and create a seizure.
I have a background in Information Technology and programming over the years, but not as hands-on as I used to be. This is where I need to give credit to several on adafruit. Specifically, the Ruiz Brothers and Phillip Burgess. I stumbled upon their Learning Guides on my journey and their how-to's greatly accelerated my efforts and reduced my trial and error.
Disclaimer: I also found similar solutions out here using Raspberry Pi and Arduino, but these presented very expensive solutions and limited battery life because of the horsepower involved. I chose the M4 Express and CircuitPython because of the tutorials and battery capability.
I combined the following into a new solution:
-
NeoTrellis Sound Board Tutorial - https://learn.adafruit.com/neotrellis-soundboard/
- The end result is largely this solution with some modifications.
-
The tutorial provided by Ruiz Brothers using an Adafruit Feather M4 and Prop-Maker FeatherWing to make a portal NeoTrellis soundbox really fit the bill after a lot of research. Play and trigger motion activated audio samples with CircuitPython. What is was missing was storage for WAV files or MP3 files. I've played with both. The native version handles WAV files, but the Prop-Maker has an MP3 decoder.
- The end result is largely this solution with some modifications.
-
SD Card Breakout - I needed to store music files since the Express and other microcontrollers are limited on space - https://learn.adafruit.com/adafruit-microsd-spi-sdio
-
NeoTrellis Feather Case Assembly - https://learn.adafruit.com/neotrellis-feather-case-assembly
- At the time of writing this, I purchased this kit so I could get the microcontroller and supporting hardware since much was out of stock at the time.
- Personally, I like the laser cut approach of the acrylic instead of the 3d printed approach for durability but the size of this is too small to reuse. I will eventually replace the 3d print with the acrylic.
- At the time of writing this, I purchased this kit so I could get the microcontroller and supporting hardware since much was out of stock at the time.
Instructions
- Follow the NeoTrellis Sound Board Tutorial ( https://learn.adafruit.com/neotrellis-soundboard/ ) as closely as possible.
- As you progress through the tutorial, you will become familiar with the J type connectors. Using this same idea, connect the SD Card Breakout card
Here's where and how connected the SD Breakout:
- The SD Card breakout is connected to the Feather-Wing Prop-Maker on the inner-span of soldering connections.
- Since the SD Card is supported by the M4 Express, the tutorial for the card is https://learn.adafruit.com/adafruit-microsd-spi-sdio/using-sdcardio
- By default, the SPI interface default connections for SCK, MOSI, and MISO on the M4 Express from the tutorial, although the tutorial does not call out the M4 explicitly, it is supported.
- The tutorial focuses on the connection D10 for the CS (Chip Select). Since this is used by the NeoTrellis and sound capabilities, this was moved to A4.