In germany there are incredibly popular "Tonieboxes" which aren't much more than an rfid reader with a speaker that then plays kids audio content from an internal storage when a certain rfid figure is placed on the box.

There are great DIY projects like http://phoniebox.de/ which use a raspberry pi to build an all in one system to emulate a toniebox. But these have their own speakers and are thus a bit larger and more power hungry.

But I already have airplay speakers in most rooms including my kids room which are in turn synced up via logitech media server. So I wanted to make an rfid reader that doesn't have its own speaker and has a smaller form factor.

What I came up with is this:

https://preview.redd.it/5vt5ltiiysg81.jpg?width=4032&format=pjpg&auto=webp&s=8009bbaae02bd0fb2252e24ca3a3033dc9340dc3

https://preview.redd.it/zre17tiiysg81.jpg?width=4032&format=pjpg&auto=webp&s=9587f5db3a0082bae73e48d01591c3e0e1e62d17

Its basically a firebeetle esp32 running esphome which is hooked up to a RC522 rfid reader, some arcade buttons and a 18650 battery.

The esp32 goes into deepsleep when not in use giving me really great battery life. Once a button is pressed the system wakes up and connects to an mqtt server. (takes about 2 seconds)

Then an rfid tag/card can be placed onto the box which in turn makes an appropriate call to lms to play a certain playlist/song/spotify/whatever. A pack of 50 rfid cards is less than 10€ here.

The buttons of course control the media.

Once the controller is not used for more than 10min it goes back to deep sleep until woken up again.

This is not strictly homeassistant, but ha is the digital glue that makes this all work.

I'm just really happy how this turned out and how well esphome and homeassistant play together to make something like this possible for a person with zero coding knowledge.

I'm already thinking about how to improve this, like maybe using ble to sense what room the remote is in and then control the closest speaker.

Really fun project overall. Maybe someone will be inspired by this to build something similar.