GPIO - Buttons for Radio Station

Hi! I want to make a small Internet receiver for the kitchen based on Raspberyy. Once I saw a plugin with which you can make several buttons for direct selection of preset stations. Is he gone now? Is it possible to use an encoder to select stations from a pre-set list? Please help me)

There are 3 plugins, please have a look.

I see, thank you!

I didn’t find the web station switching function in these plugins. Only in GPIO Buttons there is a possibility to choose from three preset stations. But not very comfortable. Was there an OldRadio-type plugin somewhere where it was possible to assign several separate buttons for direct station selection?

you can modify index.js of the corresponding plugin, like mentioned here:

I found “Old Radio plug in”, 5 buttons GPIO for direct iternet radio station, in Volumio 2.9.!
As fact, this is very good firmware version, more stable than 3.
, and more convinient web interface (in my opinion).
One problem - in Vol 2.* no OLED plugin )! But I think, at this moment OLED is ussless - only spectrum analisator (I hate it)), an very little infjrmation on it.

Hi, I would like to bring this issue up again.
On my bath-room player I have moved now from Volumio 2 to Volumio 3.396
My Setup:
Premium Plan
Raspi 4 with Amp Hat Clone (Hifiberry Amp).
System changes: NTP Server and systemd-reboot.timer are activated
Plugins: Rotary Encoder II, GPIO Buttons, GPIO Control and MPD OLED, Spotify Plugin
Volume Control is set to Hardware Volume

The following things comes up and maybe the comunity can help?

  1. Debouncing: has the GPIO Buttons plugin some software debouncing like rotary encoder has?
  2. Radio station load: I check that when I use the player after restart or after a long while, sometimes I have to push the button once and it works, but sometimes it does not work, then I push twice after a sec. and it works. It makes no difference for that issue If I play the radio station from a playlist or directly hardcoded in the index.js. I think I need in the code something like trigger the network, request status for the network, when network is ready start the radio station. But Socket.io should have handshake when player is running this makes me confused. This issue is not killing me but could be improved
    Code for that:
//Volume up
GPIOButtons.prototype.volumeUp = function() {
  //this.logger.info('GPIO-Buttons: Vol+ button pressed');
  socket.emit('stop');
  socket.emit('clearQueue');
  socket.emit('volume', 45);
  socket.emit('playPlaylist', {'name':'KEY1'});
};
  1. Spotify: With new Spotify plugin I am able to start a Spotify playlist over the GPIO Buttons plugin. Here I face serious issues. After restart or reboot or no use >12h It does not work, then I push the button 3 times with a short interval delay of 2 sec and then it works. Direct after this action I can pause, play, change to webradio and return back to spotify and it works for some hours. It feels like the upper issue with radio stations but with more pain. Even here a trigger or a pause with some delay and firing twice over the plugin could be the solution? It makes no different if I write the “addplay” comand line twice :slight_smile:
    My Code sniped:
//previous on playlist
GPIOButtons.prototype.previous = function() {
  //this.logger.info('GPIO-Buttons: previous-button pressed');
  socket.emit('stop');
  socket.emit('clearQueue');
  socket.emit('volume', 50);
  socket.emit('setRandom', {'value':true});
  socket.emit('addPlay', {'service':'spop','uri':'spotify:user:spotify:playlist:37i9dQZF1DWYnwbYQ5HnZU'});
};
  1. Random Play: If I play a volumio playlist with server music or direct with spotify playlist, the playlist allways starts at the first song in the playlist. the code: “socket.emit(‘setRandom’, {‘value’:true});” sets volumio to random in the GUI but this changes nothing on the first song behaviour. After first song, or pause/stop action or sometimes after pushing the button again the random of the playlist starts.

  2. addPlay command: @volumio Hi, in the https://developers.volumio.com/api/websocket-api documentation the command “addPlay” is not described but since years the forum is discussing about the addplay function and this is fundamental for streaming services like “webradio” or “spop”. Could you please check if this function could be added in the documentation?

Kind Regards from Frankfurt
Korniman