Barcodebeestje voor muziek

Mijn lief heeft nog een boel CDs, en luistert graag ‘een album’. De interface van wifi speakers (Sonos Ikea Symfonisk) is niet ideaal via de telefoon. Maar ik wil wel graag van de oude CDspeler af. Als schoenkadootje heb ik een leuke oplossing voor gemaakt.

Een barcodescanner scant de barcode van de CD. Die barcode wordt via MQTT naar een Home Assistant gestuurd. Een scriptje op die Pi zoekt aan de hand van de barcode het album op bij Discogs. Met die informatie query ik de Spotify API voor een link naar het album in hun collectie. En dat mikt Home Assistant weer door naar de speaker in de woonkamer :slight_smile: Win Win Win dus.

De hardware bestaat uit een barcodescanner-module van de space, met een Pi Pico W (met MicroPython). Niet afgebeeld is een USB-C receptacle voor de stroomvoorziening.

Behuizing getekend in Fusion360. Mocht je dit ontwerpje ook willen, stuur me even een query.


De barcodescanner en de ‘nek’ waar de Pi Pico in woont.


De voet met een opening voor de USB-C connector


De afsluiting van de voet, met ruimte voor het USB-C bordje

De code om het album te vinden

De code op de Pico W om de barcode op MQTT te mikken

En verder wat kleiwerk in HomeAssistant om het allemaal te laten werken :slight_smile: Dat laat ik maar als exercise for the reader.

2 Likes

This is great! I’ll order one right now! I could probably do the same with the M5 Atom once I solve my IR problem (by the way, the problem is GPIO33 is doubled up one the accelerometer but now I can’t seem to get it to reload the new software :frowning: )

1 Like

Well if you want to go M5 ecosystem: ATOMIC Barcode/QR-Code Scanner 2 Base | m5stack-store this one is very affordable.

But if you want, at the space there are a few more of the same module as the one i used available for projects. You just need to modify the cable a bit: it’s a USB cable, and i moved those wires to the serial lines, and cut a wire to make it work.


(i moved pins 9&10 to 5&6 for serial, and i cut the wire at 4 so it’s in serial mode)

I also set it to continuous scanning using this code:

image

Beeper volume to low using this code:

image

And the beeper tone to low using this code:

image

The full datasheet can be found here:

1 Like

I’m not at all married to the m5 after the hours I’ve spent trying to deploy my code to it :frowning: I’ll put this one on my list to do next time I’m in the space instead! :heart_eyes:

1 Like

Spreekt die pico-w usb host, of doet die scanner serieel?

1 Like

Scanner op serieel :slight_smile:

Ik zei het op de space al: dit is best een interessant concept voor bejaarde tehuizen

Oh, dit vind ik echt een hele leuke hack

2 Likes