IR Remote Controller Plugin and extra remote controll

Hi There!

I tried to add my Qnap remote control to the IR Remote Controller plugin list.

I added a new folder to /data/plugins/system_controller/ir_controller/configurations and placed the remotes specific lircd.conf and lircrc files there.

The IR Remote Controller plugin list showed my new remote and I was able to activate it.
The remote worked so far. But after rebooting the system Volumio didn’t react to any of the remote actions.

The remote starts to work again if I activate it again via the IR plugin.
Needs the plugin to be modified at some point to remember my additional entries?
The plugin version is 14-11-2017.

It seems that there is a newer version that will not be automatically updated and needs to be installed by hand via shell commands.
But this is a little to complicated for me. I tried it but it didn’t work out at all.

Any Ideas?

my configuration is:

RasPi 3B+
PiFi Digi Board (with build in IR receiver - not used)
Remote Pi Board (with IR receiver - in use) and the Volumio Remote Pi plugin.

Thanks!

1 Like

After you have already downloaded the files of the newer plugin version from github it should not be complicated. As the newer version installs the plugin in /data/plugins/accessories/ instead of /data/plugins/system_controller/ you have to uninstall the old plugin first. Make sure that the folder of the old plugin is removed from /data/plugins/system_controller/ then run volumio plugin install from the folder where you have saved the files of the new plugin version.

In case the plugin gets updated in the plugin store you can just uninstall the manually installed plugin (if necessary at all) and then install from the plugin store again.

I have exactly same problem. I will try new plugin from github. Thanks :slight_smile:

Ok, its seems that I haven’t expressed myself exactly enough. I wasn’t even able to download the files of the newer plugin version because I don’t know how… :frowning: My Linux skills aren’t that great.

Meanwhile I managed to install lirc and my remote works, but I think that all my settings will be gone if I make the next system update.

So, can you tell me what is the exact command to download the newer plugin version?

Thanks so far!

1 Like

Ok, after connecting to Volumio via ssh try the following:

  1. Download the plugin package

wget https://github.com/volumio/volumio-plugins/raw/gh-pages/plugins/volumio/armhf/accessory/ir_controller/ir_controller.zip The zip file only lacks the german translation.

  1. Create a directory for unzipping the plugin package
mkdir ir_controller
  1. Unzip the plugin package to the newly created directory
miniunzip ir_controller.zip -d ir_controller
  1. Change into the directory with the unzipped files
cd ir_controller
  1. Install the plugin
volumio plugin install

WOW!
Thank You!

I will give it a try tonight !

Good luck!

… and don’t forget to remove the old plugin at first :wink:

Hell Yeah! It works! :smiley:

@gvolt: your step by step Tutorial did it. This IR plugin version seems to be much more stable. I was able to add my own remote data and to activate it via the plugin. And it still works after reboot.

Thank you!

One more Question:

My remote still has one button left that has no function yet.
So, I thought about to add a web radio station from “my web radio” or at least a specific playlist.

If this is possible what command in lircrc needs to be added to “config =” ?

begin prog = irexec button = RADIO config = ??? end

1 Like

Great! :sunglasses:

I think you could use the WebSocket APIs https://volumio.github.io/docs/API/WebSocket_APIs.html. I would put together a node.js script and call the script like this from lircrc config = /usr/local/bin/yourscript.js "yourwebradio"
The script could contain something like posted here https://volumio.org/forum/few-useful-node-scripts-t6247.html#p30667. See the third example for playing webradio. Maybe a shorter timeout suffices but I had no time to test the code at all.

I successfully tested the following code:[code]#!/bin/node

var io = require(‘socket.io-client’);
var socket = io.connect(‘http://localhost:3000’);
socket.emit(‘clearQueue’);
var fs = require(‘fs’);
var content = fs.readFileSync(’/data/favourites/my-web-radio’);
var webradios = JSON.parse(content);
var radio = webradios.find(o => o.name === process.argv[2]);

if (radio == null) {
socket.disconnect();
} else {
socket.emit(‘addPlay’, {‘service’:radio.service,‘title’:radio.name,‘uri’:radio.uri});
socket.on(‘pushState’, function() { socket.disconnect(); } );
}

setTimeout(function() { socket.disconnect(); }, 500);

[/code]
To create a .js file with the code above in e.g. /usr/local/bin connect to volumio via ssh and open the nano editor:

nano /usr/local/bin/yourscript.js

Copy and paste the code into nano then close nano saving the file:

Ctrl+x y Return
The script needs socket.io-client. If it has not been installed yet run npm install socket.io-client
After that lircrc can call the script with the name of the desired webradio station (which has to be be added to “My Web Radios” before of course) as parameter:

config = /usr/local/bin/yourscript.js "yourwebradio"

Edit:
The example above covers selecting a radio station from my web radios and not from radio favourites. But that is easily possible, too. Just change “var content = fs.readFileSync(’/data/favourites/my-web-radio’);” to var content = fs.readFileSync('/data/favourites/radio-favourites'); and “socket.emit(‘addPlay’, {‘service’:radio.service,‘title’:radio.name,‘uri’:radio.uri});” to socket.emit('addPlay', {'service':radio.service,'title':radio.title,'uri':radio.uri});

Thanks gvolt! This was just what I wanted. :slight_smile:

Good to see, it’s helpful. :slight_smile:

can you help me about web radios i couldnt do it :frowning:

reason is ;

1 Like

Please can u help me :slight_smile:

1 Like

You need to run npm install socket.io-client first.

First off all thank u so much to your answer i am very glad to see your post :slight_smile: last night a few hours tried to solve but i can’t
I already did it but i think some problem during install

[code]npm install socket.io-client
npm WARN saveError ENOENT: no such file or directory, open ‘/home/volumio/package.json’
npm WARN enoent ENOENT: no such file or directory, open ‘/home/volumio/package.json’
npm WARN volumio No description
npm WARN volumio No repository field.
npm WARN volumio No README data
npm WARN volumio No license field.

  • socket.io-client@2.3.0
    updated 1 package in 6.961s
    [/code]

Looks just like warnings. Did you try running your script nonetheless?

How can i run?

CLT-L09 cihazımdan Tapatalk kullanılarak gönderildi

2 Likes

I did everything assign a button lirc folder but button not work how can i run the script in putty

CLT-L09 cihazımdan Tapatalk kullanılarak gönderildi

1 Like

Like you already tried: node /usr/local/bin/yourscript.js

1 Like