[PLUGIN] IR Remote Controller feedback thread

To my knowlegde: No.

At least not with your “lircrc” which has the command /usr/local/bin/volumio toggle assigned to KEY_MENU (as well as to KEY_PLAY :wink: ). You would have to find a command that calls the top level menu of Volumio and change your “lircrc” accordingly.

But like all good things, its still not totally done…

…and it never will be. You’ll soon start itching for more and more…!

@Old_Duffer …… it has already begun……

Now that I understand things a bit more I have a couple things I want to confirm and some questions.


  1. The lircd.conf file reads the signal coming from each button
  2. The lircrc file assigns that button to an action in Volumio
  3. Changing this line affects the action taken by the button config = /usr/local/bin/volumio volume minus, in this case reducing volume (worthless for me since I will be using a HiFiBerry dac w fixed level output)

Here is my main question

  1. Can you create a new button in the lirc.conf file that combines the same button information twice say a double Right Button press and assign that to another action?
    • Example: Double Right is next track, single right is forward in the navigation menu
  2. Is there a list of actions for Volumio similar to the Microsoft object library documentation, or am I on my own to parse through other configuration files for what other actions can be taken?

The reason I am asking is I realized that the Apple remote I got, while nice looking, does not have enough individual buttons for what I need lol….

I want to be able to navigate the menu options, select them with enter, and then still have forward and backward.

So up/down move within the nav menu (instead of volume up and volume down)

Single left/right move within the nav menu (new functionality assigned to the single IR press)

Double Left goes to the previous track/reverses the song to beginning (what it does currently)

Double right moves to the next track (what it does currently)

Enter/Ok selects a thing

Menu enters the user interface

Play/Pause remains the same

See…. I’m down the rabbit hole :man_facepalming:

After all your efforts, you must be good at it now. I’d ditch the Apple remote, go in for one of your multi button ones and have a good google re. lirc, it does a lot…

Lol yeah that was another thought too. I’d prefer something nice looking (IE my other two junky plastic ones are not up to snuff lol) and I was going to start by looking at the ones already populate as references.

I’ve often thought that it would be good to have a thread where people can share the ‘not so obvious’ things that you can do with lircrc.

Looking at some of the Xbox One remotes like the below.

Option 1

Option 2.

  1. They have more buttons than the Apple but not an obnoxious amount
  2. Have dedicated Nav buttons independent of Skip buttons
  3. Includes XYAB buttons which I could use later for other things
  4. About same price
  5. Look decent

The Pi is hooked to a preamp with its own remote and while I could go all in with a Harmony, that’s MUCH more work than I want (right now).

Also I am going to put one of these in my 1950 Motorola tube stereo console downstairs.

The tube preamp can accept line level, but will be stealth hiding a Volumio pi in it.

Remote for simple play/pause/next track would be nice, and I can hide the IR inside a hole in the grill material.

So the GPIO ribbon cable came in to hook up my HiFiBerry DAC+ Pro and for some reason the “magic smoke” got let out and I’m 99% positive the DAC is toast.

Before I order and then screw up another DAC (this time the Dac 2 Pro, or Digi 2 Pro), can someone look at this for me and let me know if I did something wrong.

I had everything connected like the below, just add in a 40 pin GPIO ribbon cable on the middle slot, which was connected to the HiFiBerry DAC+ Pro.

I previously had connected the screen to the 5v output from the HiFiBerry DAC+ Pro , but figured I didn’t need to do that anymore and could use the GPIO extension header. The wiring was setup as follows:


  • IR connected to pins 1 (3v3), 11 (GPIO17), 25 (Ground)
  • 7" Touchscreen connected to pins 2 (5v), 6 (ground)
  • HiFiBerry connected to:
    • pins 3 (GPIO2), pin 5 (GPIO3) → audio configuration
    • pins 12 (GPIO18), 35 (GPIO19), 38 (GPIO20) and 40 (GPIO21) → sound interface
  • Per HiFiBerry Pin 27 (ID_SD) and 28 (ID_SC) are always reserved for an ID EEPROM on the Raspberry Pi. Independently which card you use, these pins are always reserved and should never be used to connect external components.

I’m not too sure what messed up.

I’ve included a picture of the damaged area below, with the screwdriver pointing to it, and the documentation from HiFiBerry

Here is where the screen previously was connected


The HiFiBerry support page also lists this information:


We know that many people like to add additional hardware components (LCDs, buttons, etc.) to their Raspberry Pi. We provide this documentation to help you with this. However:

  • We do not guarantee interoperability with any other add-on card. Even if another card is not using the same GPIOs, there are many other things that might prevent interoperability. The Raspberry Pi GPIOs are not designed as a bus system (even the I2C bus can’t be simply used by multiple cards as there might or might not be the right pull-up resistors on every I2C slave).
  • Soldering on the HiFiBerry board voids warranty. There is no replacement for boards that have been modified.
  • There is no support from us. You can ask questions in our community area. There are already interesting projects and other users might help you.
  • Do not use more than a few mA from the 3.3V line. If your circuit requires 3.3V, use the 5V power rail of the Raspberry Pi with an additional voltage regulator.
  • Pin 27 and 28 are always reserved for an ID EEPROM on the Raspberry Pi. Independently which card you use, these pins are always reserved and should never be used to connect external components.


GPIO2-3 (pins 3 and 5) are used by our products for configuration. If you are experienced with I2C, you might add other slave devices. If you a a novice, we don’t recommend this at all.
GPIOs 18-21 (pins 12, 35, 38 and 40) are used for the sound interface. You can’t use them for any other purpose.

Just to drop in yet another lirc.conf file, I created one today for the PDP Gaming Remote Control: Xbox Series X|S, Xbox One, Xbox. The existing Xbox One Remote did not work. And this file looked more like the others I’ve seen, unlike the A2194 one I created.

# Please make this file available to others
# by sending it to <lirc@bartelmus.de>
# this config file was automatically generated
# using lirc-0.9.0-pre1(default) on Fri Oct 15 16:09:39 2021
# contributed by 
# brand:                      PDP Gaming Media Remote Xbox Series X|S, Xbox One 
#                             home/volumio/XboxOne_lircd.conf
# model no. of remote control: B08FCVG5DX
# devices being controlled by this remote:

begin remote

  name  /home/volumio/XboxOne_lircd.conf
  bits           16
  eps            30
  aeps          100

  header       8977  4567
  one           596  1687
  zero          596   531
  ptrail        596
  repeat       8978  2273
  pre_data_bits   16
  pre_data       0x11B
  gap          108399
  min_repeat      1
#  suppress_repeat 1
#  uncomment to suppress unwanted repeats
  toggle_bit_mask 0x0

      begin codes
          KEY_POWER             0x26D9
          KEY_ZOOM                 0x7689
          KEY_TITLE                 0xF609
          KEY_UP                   0x7887
          KEY_DOWN                 0xF807
          KEY_LEFT                 0x04FB
          KEY_RIGHT                0x847B
          KEY_OK                   0x44BB
          KEY_X                    0x16E9
          KEY_Y                    0xE619
          KEY_A                    0x6699
          KEY_B                    0xA659
          KEY_REWIND               0xA857
          KEY_FASTFORWARD          0x28D7
          KEY_PLAY                 0x0EF1
          KEY_BACK                 0xC43B
          KEY_MUTE                 0x708F
          KEY_VOLUMEUP             0x08F7
          KEY_VOLUMEDOWN           0x8877
          KEY_CHANNELUP            0x48B7
          KEY_CHANNELDOWN          0xC837
      end codes

end remote