My Musicstreamer

Hi everyone,

After months of hard work my second Volumio project is almost finished. The hardware is ready but the software needs some finetuning.

My project is made of a RPI2, Volumio v1.55, O2 headphone amplifier and an ODAC. I build it in an aluminium case with a rotary encoder a 3.2 inch display, some push buttons and an IR receiver. On the backside are inputs for 2 seperated power connectors and cinch outputs for an external amplifier.

Via the rotary encoder I can walk through the menu and choose what I want to do. The push buttons talk for themselves. Everything is also controlable via an IR remote.

Software is written in python (is the first program I’ve ever written in that language) so it took al lot of time to complete it. Some minor things have to be changed before it’s bug free but that’s a problem when the bad weather come’s back :slight_smile: Till then I can work with it.

This is the second version because I was not happy with the first case and it’s front panel. It was to small so I used a case which is a little bit bigger.

Hereby many thanks for the people who created and maintain Volumio.

Below a photo of the project
Streamer1.jpg

Looking really great so far!
Can you tell me how you got the controls with the rotary encoder done?
Thanks!

Hi lavolpe,

In short it works likes this.
When the program starts it contacts mpd (the player program used inside Volumio) and retrieves data about the available albums, artists, album artists etc. Then a menu is displayed and depending of the choice which is made the data from mpd is displayed on the screen. Via the rotary encoder you step through the list. By pushing the encoder or play/pauze button you select the item you want to play. The chosen item is send to mpd and this starts playing the album, playlist or song.
To work with the rotary encoder in python I advise you to visit the next website
bobrathbone.com/raspberrypi_rotary.htm . Here I started also to learn how to deal with python and a rotary encoder. After that I made some changes for better debouncing and to let it work with my alps rotary encoder.

Succes with it.