Kids player (with RFID control)

Hi there. My name is David, I am living in Germany and I would like to present my first Volumio project: a Kids player with RFID control.
There are already some open-source projects (e.g. Phoenibox or Tonuino) and commercial products (e.g. Hoerbert or Tonies) out there trying to enable a smooth interaction between a child and its media player. If the child cannot read, the interaction must work using colors (buttons), images or voices/tones. RFID tags in combination with pictures are an easy way to give your child full control of the player. This solution is chosen by Phoenibox, Tonuino and Tonies. I decided to do the same but using volumio as software platform. This is how it looks.

Housing

Front:


Back:


Hardware

I am using the following hardware components:

  1. RaspberryPi Zero
  2. Hifiberry Miniamp
  3. RFID Reader
  4. RGB LED
  5. Rotary encoder
  6. Speaker
  7. Small breadboard
  8. Colorful arcade buttons

Wiring

The Raspberry Pi pinout was taken from the official Raspberry Pi website.

Power consumption

At the moment the whole setup is powered with a 5V cellphone charger or a power bar. The current drain is approx. 0.3A (1.5 Watts). I would like to integrate the power bar (batteries) into the housing of the player in the future.

Software

I am using the following software:

  1. Volumio 2.834
  2. Volumio plugins
    2.1 GPIO Buttons 0.8.1
    2.2 Rotary encoder 1.2.2
    2.3 Spotify 2.0.2
    2.4 Podcast 0.3.0
    2.5 Volumio Spotify Connect2 1.0.5
    2.6 NFC Reader 0.2.6 Source

Software adaptions

I had to adapt the NFC reader plugin to get it running on my system. I will publish the source code on my GitHub account.
I also added one line of code in the GPIO buttons plugin to get it working with the Volumio Spotify Connect2 plugin.

Features

  • The GPIO Buttons plugin is reacting on the arcade buttons on the top (play, forward, backward).
  • The rotary encoder KY-040 is controlled by the rotary encoder plugin. I am using the built-in switch to mute the player and holding the switch for more than a second to shut down the system.
  • Using the NFC reader plugin you can program different playlists to different RFID tags. If you move the card close to the player, the linked playlist will be started. This works with Spotify tracks as well as web radio stations (I have a web radio station playlist, that can be played with a RFID tag and afterwards you can choose the station with the forward/backward buttons).
  • My kids are using the RFID cards to start their favorite music, radio play or audio book. This works quite well.

Further development

  • The boot-up time is very long. No child would accept such a long boot-up time. If anybody knows how this can be improved, I would be happy to hear about it.
  • I would like to start a podcast using the RFID method (Somehow the episodes of one podcast must be in a playlist).
  • The RGB LED is not yet working (it is just shining blue light). Is there already a plugin capable of controlling a LED based on the ws281x chipset? If not I plan to write a new plugin using the rpi-ws281x-v2 npm module.
1 Like

Happy New Year! Very nice project.

Everything expertly worked and documented. I think also for children very well operable and ergonomically designed!

I am interested in your settings on the GPIO Buttons plugin. Could you upload a screenshot of it?

Hi @beu-ys.

Thank you. I wish you also a happy new year. Here is a screenshot of the settings:

1 Like