22-Oct-2018, 11:00 AM
This How-to is for an mpd player (not LMS)...
Hardware for Lirc..... all you need is the I/R receiver...and 3 dupont cables to connect it...
https://www.ebay.ca/itm/5PCS-38-kHz-Remo...Sw0fhXmbbB
With it held legs down and the dome facing you...the left-hand pin is input and connects to Pi Gpio=27 (physical pin=13) centre pin is Ground (physical pin=14) and right-hand pin is +3.3v (physical pin=1)
Of course a remote is needed and you've probably got a few about....if your chosen one is not in the Lirc database it can be a real headache making a config file so check here first for a working config... then it's just copy and paste in the appropriate file...
http://lirc-remotes.sourceforge.net/remotes-table.html
I use an xbox dvd remote...A couple of bucks at Vinnies or other charity shops..
https://www.lukiegames.com/official-xbox...ayback-kit
Install Lirc and mpc
Edit /boot/config.txt and add these lines ...(where 'xx' is the gpio pin you use for input... eg gpio_in_pin=27)
Edit /etc/lirc/lirc_options.conf and make sure that driver and devices lines are changed to:
Usually Lirc uses /dev/lirc0 though for some as yet mysterious reason it is not working in Snakeoil and after some trial and error I found that /dev/lirc1 is what does work.
If your install won't work with /dev/lirc1 then try /dev/lirc0.
Reboot...
If all went well you should now have a lirc device. Verify this by issuing the following command:
or ls /dev/lirc0 if that is what you used earlier.
This command should return a file named lirc0 or lirc1. If this command doesn’t output go back and verify the configuration once again as the drivers have not been loaded.
Test the IR remote and Receiver to verify that the IR receiver is working as expected:
Point the remote control at the IR receiver and press its buttons. If the IR receiver is configured successfully you will see output similar to this:
space 3662230
pulse 2428
space 594
pulse 1201
space 596
pulse 1230
space 595
pulse 1209
space 590
pulse 1204
(CTRL+C to stop output and return to command line)
Paste your remote config file from the LIRC database into ..
and reboot.
You can now check for the presence of the services and modules with commands...
At this point you can test the configuration created by running :
Point the remote control to the IR sensor and press some of the buttons, you should get an output similar to this (if using an xbox dvd remote
0000000000559aa6 03 KEY_UP Microsoft_Xbox
000000000051cae3 00 KEY_FORWARD Microsoft_Xbox
000000000053cac3 00 KEY_INFO Microsoft_Xbox
This means that the remote is correctly mapped and all should be working fine.
All that is left to do is setup irexec as a service and create a file with the commands irexec should run upon button presses.
Set irexec up as a user service for better security rather than having it run as root.
and add....
then set up the remote's key mapping...
and add for your remote....the format is quite simple as this example for the xbox dvd remote shows.
Key presses will then cause mpc to run the commands to control mpd.
I have mapped several Webstreams to the number buttons and included a shutdown and reboot....
reboot
and your remote should be up and running
Hardware for Lirc..... all you need is the I/R receiver...and 3 dupont cables to connect it...
https://www.ebay.ca/itm/5PCS-38-kHz-Remo...Sw0fhXmbbB
With it held legs down and the dome facing you...the left-hand pin is input and connects to Pi Gpio=27 (physical pin=13) centre pin is Ground (physical pin=14) and right-hand pin is +3.3v (physical pin=1)
Of course a remote is needed and you've probably got a few about....if your chosen one is not in the Lirc database it can be a real headache making a config file so check here first for a working config... then it's just copy and paste in the appropriate file...
http://lirc-remotes.sourceforge.net/remotes-table.html
I use an xbox dvd remote...A couple of bucks at Vinnies or other charity shops..
https://www.lukiegames.com/official-xbox...ayback-kit
Install Lirc and mpc
Code:
sudo apt-get update
sudo apt-get install -y lirc mpc
Edit /boot/config.txt and add these lines ...(where 'xx' is the gpio pin you use for input... eg gpio_in_pin=27)
Code:
# Enable the lirc-rpi module
dtoverlay=lirc-rpi,gpio_in_pin=xx
Edit /etc/lirc/lirc_options.conf and make sure that driver and devices lines are changed to:
Code:
driver = default
device = /dev/lirc1
If your install won't work with /dev/lirc1 then try /dev/lirc0.
Reboot...
If all went well you should now have a lirc device. Verify this by issuing the following command:
Code:
ls /dev/lirc1
This command should return a file named lirc0 or lirc1. If this command doesn’t output go back and verify the configuration once again as the drivers have not been loaded.
Test the IR remote and Receiver to verify that the IR receiver is working as expected:
Code:
sudo systemctl stop lircd
mode2 -d /dev/lirc1
space 3662230
pulse 2428
space 594
pulse 1201
space 596
pulse 1230
space 595
pulse 1209
space 590
pulse 1204
(CTRL+C to stop output and return to command line)
Paste your remote config file from the LIRC database into ..
Code:
sudo nano /etc/lirc/lircd.conf.d/lircd.conf
and reboot.
You can now check for the presence of the services and modules with commands...
Code:
dmesg | grep lirc
ls -l /dev/lirc0
ps aux | grep lirc
Code:
irw
0000000000559aa6 03 KEY_UP Microsoft_Xbox
000000000051cae3 00 KEY_FORWARD Microsoft_Xbox
000000000053cac3 00 KEY_INFO Microsoft_Xbox
This means that the remote is correctly mapped and all should be working fine.
All that is left to do is setup irexec as a service and create a file with the commands irexec should run upon button presses.
Set irexec up as a user service for better security rather than having it run as root.
Code:
sudo systemctl edit irexec
and add....
Code:
[Service]
User=pi
Group=pi
then set up the remote's key mapping...
Code:
sudo nano /etc/lirc/irexec.lircrc
Key presses will then cause mpc to run the commands to control mpd.
I have mapped several Webstreams to the number buttons and included a shutdown and reboot....
Code:
begin
prog = irexec
button = KEY_SELECT
config = mpc toggle
end
begin
prog = irexec
button = KEY_RIGHT
config = mpc next
end
begin
prog = irexec
button = KEY_LEFT
config = mpc prev
end
begin
prog = irexec
button = KEY_PLAY
config = mpc play
end
begin
prog = irexec
button = KEY_PAUSE
config = mpc pause
end
begin
prog = irexec
button = KEY_STOP
config = mpc stop
end
begin
prog = irexec
button = KEY_1
config = mpc clear; mpc add http://5.152.208.98:8058; mpc play
end
begin
prog = irexec
button = KEY_2
config = mpc clear; mpc add http://psn1.prostreaming.net:8095/stream; mpc play
end
begin
prog = irexec
button = KEY_3
config = mpc clear; mpc add http://radionz-ice.streamguys.com:80/national.mp3; mpc play
end
begin
prog = irexec
button = KEY_4
config = mpc clear; mpc add http://178.33.232.106:8014/stream; mpc play
end
begin
prog = irexec
button = KEY_5
config = mpc clear; mpc add http://streaming.radionomy.com/acidbarrett?lang=en-US%2cen%3bq%3d0.5; mpc play
end
begin
prog = irexec
button = KEY_6
config = mpc clear; mpc add http://206.217.213.16:8430/; mpc play
end
begin
prog = irexec
button = KEY_7
config = mpc clear; mpc add http://rock70s.stream.ouifm.fr/ouifmseventies.mp3; mpc play
end
begin
prog = irexec
button = KEY_8
config = mpc clear; mpc add http://rock60s.stream.ouifm.fr/ouifmsixties.mp3; mpc play
end
begin
prog = irexec
button = KEY_8
config = mpc clear; mpc add http://rock60s.stream.ouifm.fr/ouifmsixties.mp3; mpc play
end
begin
prog = irexec
button = KEY_9
config = mpc clear; mpc add http://streaming.radionomy.com/feelingtheblues?lang=en-US%2cen%3bq%3d0.5; mpc play
end
begin
prog = irexec
button = KEY_0
config = mpc clear; mpc add http://streaming.radionomy.com/Peace-Radio?lang=en-US%2cen%3bq%3d0.5; mpc play
end
begin
prog = irexec
button = KEY_TITLE
config = sudo shutdown -h now
end
begin
prog = irex
button = KEY_INFO
config = sudo reboot
end
begin
prog = irexec
button = KEY_UP
config = mpc seek +00:00:10
end
begin
prog = irexec
button = KEY_DOWN
config = mpc seek -00:00:10
end
reboot
and your remote should be up and running