Controlling Volumio/MPD from Arduino?

My current set up is running Volumio 1.51 on a RasPi B+. I have a HiFiBerry Digi + board for SPDIF out to my DAC. I’ve also managed to get I2S to the DAC working too.

I’ve also got an Arduino Mega with a Ethernet shield, this connects to Volumio/MPD over the network to get current track information and displays the info on a 20x4 LCD, this will soon be updated to Touch TFT screen. I’ve also got an old Apple Remote with a IR receiver working on the Arduino too. Eventually I want to get the Arduino/Apple Remote and Touch screen to control Volumio/MPD, play, pause, forward, etc but I’m not sure of the best way to go about this.

The reason for using the Arduino is the greater flexibility for adding control options and I want to try to keep all control processing away from the Pi. The other reason is my limited knowledge of Linux/Python scripting.

Any thoughts on using the Arduino to control Volumio/MPD? Is it even possible without programming on the RasPi?

OK a little research on MPD and I now have this sort of working, the Apple remote is pausing/playing, previous, next etc. I just need to restructure my Arduino code to make it more reliable. Will update once the code is a little more polished.

Did you get it polished? Would be interested in seeing your code.

I find the mPod/MPad/mpDroid apps handle the music interface satisfactorily. The Apple remotes are nice for play/pause/prev/next as an alternative to picking up the smartphone/iDevice and launching apps etc.

Where the Arduino really shines, in my opinion, is in an implementation like Hifiduino’s ESS Sabre K2M DAC project where it gives you 32-bit volume control and access to all that DAC’s filter options. I used an Adafruit Pro Trinket 3V Arduino clone to implement the Hifiduino K2M code. Works well. Used a 20x4 LCD as well - even implemented backlight dimming via the remote. The Pi, running 1.51 connects via I2S to the ESS K2M.

Would be interesting to look into marrying your code to the Hifiduino code to see if the ‘feature set’ could be expanded. Might need a ‘bigger’ remote but that’s not difficult.

From a couple of months im writing little python scripts to make some features in Volumio and one of those is for control mpd with Arduino over serial interface (RS485 standard with Maxim Max485) using python-mpd2 library.
It’s really simple.

Yes, the code is functioning much better now, still not perfect though. It doesn’t help that I keep adding features as I’m going.

The main reason I want to keep all coding on the Arduino is so that I can use a Pi or BBB and not need any coding changes to switch streaming platforms.

I wrote this experimental Android app and posted it on google play. The idea behind the app was to pair it with an arduino via bluetooth and control relays which would control inputs and attenuate the volume.

It’s right here…

play.google.com/store/apps/deta … ote.JGinfo

You’ll have to write some sort of sketch on the arduino side to turn relays on / off , etc…

Hi Ians1,

Would you mind sharing your code/setup for sending Volumio/MPD data over the network to the Arduino for display on the LCD? I am trying to do the same thing, except using a Pi.
I agree with trying to keep the Pi as bare as possible and not having anything else connected to it.

Cheers!