Instead of using Volumio or Daphile, I installed Armbian_21.05.1_Rk322x-box_buster_legacy_4.4.194 to a MXQ Pro box. The box was shipped with Android 7, and I installed Devinfo to check if it is eMMC or NAND. It is lucky that my box equipped with eMMC, so I installed the OS easily. After that, I did some following steps: 1- Run rk322x-config: I select CPU 3228B-1.4 Ghz, board 322x MXQ, wifi ssv6X5X 2- Run nmtui to setup wifi connection 3- Armbian-config: to add something such as infra red 4- Set default sound card: hai@rk322x-box:/etc$ aplay -l **** List of PLAYBACK Hardware Devices **** card 0: DWI2SHDMI [DW-I2S-HDMI], device 0: 100c0000.i2s0-i2s-hifi i2s-hifi-0  Subdevices: 1/1 Subdevice #0: subdevice #0 card 1: SPDIF [SPDIF], device 0: 100d0000.spdif-dit-hifi dit-hifi-0  Subdevices: 1/1 Subdevice #0: subdevice #0 card 2: DAC [USB Audio DAC], device 0: USB Audio [USB Audio] Subdevices: 1/1 Subdevice #0: subdevice #0 card 3: ANALOG [ANALOG], device 0: 100b0000.i2s1-rk3228-hifi rk3228-hifi-0  Subdevices: 1/1 Subdevice #0: subdevice #0 It means that my USB Audio DAC is card 2. I revised /etc/asound.conf to make it contain only 2 lines defaults.ctl.card 2 defaults.pcm.card 2 You can verify with alsamixer : it should display USB DAC as default. 5- Install mpd and edit /etc/mpd.conf … # I will use usbstick to store the songs music_directory "/mnt/usb" … #you can set static IP for music server or add “any” as the address bind_to_address "any" The other lines can be left as default 6- Automount USB Edit /etc/fstab to add the following line UUID=689E-CF4D /mnt/usb vfat defaults 0 0 Youn can find your usbstick UUID with sudo blkid 7- The most difficult section is configuring infra red. Now lirc and /dev/lirc0 have been obsolate. We will have to deal with gpio_ir_recv (you can check with lsmod) There are 2 steps here: a- Map the key name with keycode of your remote controller. b- Config a daemon to do the action you want while received the keycode. At first, you should know which device is belong to your ir receiver. hai@rk322x-box:/dev/input$ ll /dev/input/by-path/ total 0 lrwxrwxrwx 1 root root 9 May 21 21:17 platform-200a0000.hdmi-event-mouse -> ../event0 lrwxrwxrwx 1 root root 9 May 21 21:17 platform-30120000.usb-usb-0:1:1.2-event -> ../event2 lrwxrwxrwx 1 root root 9 May 21 21:17 platform-gpio-keys-event -> ../event1 lrwxrwxrwx 1 root root 9 May 21 21:17 platform-ir-receiver-event-mouse -> ../event3 In this case, /dev/input/event3 is my ir And then I can run this command to check ir code: hai@rk322x-box:/dev/input$ ir-keytable --device /dev/input/event3 -t -v Opening /dev/input/event3 Input Protocol version: 0x00010001 Testing events. Please, press CTRL-C to abort. 1845.720102: event type EV_MSC(0x04): scancode = 0x113 1845.720102: event type EV_SYN(0x00). ^C It will wait for you to push a RC button and show the code (0x113). After that, you can create a file to map keyname with keycode. I edited /lib/udev/rc_keymaps/samsung.toml [[protocols]] name = "samsung" protocol = "nec" variant = "nec" [protocols.scancodes] 0x140= "KEY_POWER" There are many *.toml files in the same directory, you can refer them to find the correct keynames. Next, to make it consitent, you can edit /etc/rc_maps.cfg (its header guided you very clearly) Add this line: gpio_ir_recv * /lib/udev/rc_keymaps/samsung.toml Regarding step b, you should install triggerhappy. To config it is very easy. Just create a file under /etc/triggerhappy/triggers.d (any filename) My file contains only one line: KEY_POWER 1 /usr/sbin/init 0 (use key power to shutdown the box) Finally, you can test sudo ir-keytable -c -w /lib/udev/rc_keymaps/samsung.toml --device /dev/input/event3 Old keytable cleared Wrote 1 keycode(s) to driver sudo thd --trigger /etc/triggerhappy/triggers.d/ /dev/input/event3 If it can work well, you just need to reboot the box! Important note: If you use MXQ as an audiophile music box, you must connect it to a linear power supply. Never use its equipped power adapter or any other pulse power supply.