Tested and released new version.
version 0.4.1 released 2016-04-21
- Added missing files to package.json
Pioneer AVR Control plugin
Tested and released new version.
version 0.4.1 released 2016-04-21
I did some minor changes to make the plugin pimatic 0.9 compatible.
Changes are pushed to develop branch: https://github.com/saxn-paule/pimatic-pio-remote.git
After I found some time to update my productive Pimatic to 0.9 I released the 0.9 compatible version of pio-remote too.
version 0.5.0 released 2016-10-03
version 0.5.1 released 2016-10-03
version 0.5.2 released 2016-12-14
If you have buttons and a dimmer for changing the volume and you want to keep the dimmer in sync to the currently set volume, create a variable with the min volume based on your brand (in my case -80.5) and add a rule like this:
when $avrsensor.vol changes then dim vol-slider to (($min-volume - $avrsensor.vol) / -0.5)
Of course the formula is based on your brand. For more information look at the README.MD
Because of a question in github, these are the relevant parts of my config. I hope I didn’t miss anything.
{
"devices": [
{
"class": "AVRSensor",
"id": "avrsensor",
"name": "Display",
"attributes": [
{
"name": "display"
},
{
"name": "vol"
},
{
"name": "status"
}
],
"xAttributeOptions": [
{
"name": "vol",
"displaySparkline": false,
"hidden": false
},
{
"name": "status",
"displaySparkline": false,
"hidden": true
}
]
},
{
"class": "DummyDimmer",
"id": "vol-slider",
"name": "Volume"
},
{
"id": "change-volume",
"name": "Steuerung",
"class": "ButtonsDevice",
"buttons": [
{
"id": "sound_as",
"text": "AS"
},
{
"id": "sound_ES",
"text": "ES"
},
{
"id": "vol_down",
"text": "Vol -"
},
{
"id": "vol_up",
"text": "Vol +"
},
{
"id": "vol_mute",
"text": "mute"
}
]
},
{
"class": "DummySwitch",
"id": "dummy",
"name": "Dummy"
},
{
"id": "avr-presence",
"name": "AVR",
"class": "PingPresence",
"host": "192.168.0.15",
"interval": 30000
},
{
"buttons": [
{
"id": "avr-input-dvd-button",
"text": "DVD"
},
{
"id": "avr-input-bdr-button",
"text": "HTPC"
},
{
"id": "avr-input-tv-button",
"text": "TV"
},
{
"id": "avr-input-hmg-button",
"text": "HMG"
}
],
"id": "avr-input",
"name": "Input",
"class": "ButtonsDevice"
},
{
"id": "avr-switch",
"name": "Power",
"class": "DummySwitch"
}
],
"rules": [
{
"id": "avr-switch-status-on",
"name": "avr-switch-status-on",
"rule": "when $avrsensor.status = 1 then turn avr-switch on",
"active": true,
"logging": false
},
{
"id": "avr-switch-status-off",
"name": "avr-switch-status-off",
"rule": "when $avrsensor.status = 0 or avr-presence is absent then turn avr-switch off",
"active": true,
"logging": false
},
{
"id": "avr-switch-turn-off",
"name": "avr-switch-turn-off",
"rule": "when avr-switch is turned off then sendAvr \"power.off\"",
"active": true,
"logging": false
},
{
"id": "avr-switch-turn-on",
"name": "avr-switch-turn-on",
"rule": "when avr-presence is present and avr-switch is turned on then sendAvr \"power.on\"",
"active": true,
"logging": false
},
{
"id": "change-vol",
"name": "change vol",
"rule": "when $vol-slider.dimlevel changes then sendAvr \"volume.set.$vol-slider.dimlevel\"",
"active": true,
"logging": false
},
{
"id": "volume-down",
"name": "Volume down",
"rule": "when vol_down is pressed then sendAvr \"volume.down\"",
"active": true,
"logging": false
},
{
"id": "volume-up",
"name": "Volume up",
"rule": "when vol_up is pressed then sendAvr \"volume.up\"",
"active": true,
"logging": false
},
{
"id": "volume-mute",
"name": "Volume mute",
"rule": "when vol_mute is pressed then sendAvr \"volume.mute\"",
"active": true,
"logging": true
},
{
"id": "sound-es",
"name": "Sound ES",
"rule": "when sound_ES is pressed then sendAvr \"sound.extStereo\"",
"active": true,
"logging": true
},
{
"id": "sound-as",
"name": "Sound AS",
"rule": "when sound_as is pressed then sendAvr \"sound.autoSurr\"",
"active": true,
"logging": false
},
{
"id": "avr-input-hmg",
"name": "AVR Input HMG",
"rule": "when avr-input-hmg-button is pressed then sendAvr \"input.hmg\"",
"active": true,
"logging": false
},
{
"id": "avr-input-dvd",
"name": "AVR Input DVD",
"rule": "when avr-input-dvd-button is pressed then sendAvr \"input.dvd\"",
"active": true,
"logging": false
},
{
"id": "avr-input-tv",
"name": "AVR Input TV",
"rule": "when avr-input-tv-button is pressed then sendAvr \"input.tv_sat\"",
"active": true,
"logging": false
},
{
"id": "avr-input-dvr-bdr",
"name": "AVR Input DVR BDR ",
"rule": "when avr-input-bdr-button is pressed then sendAvr \"input.dvr_bdr\"",
"active": true,
"logging": false
},
{
"id": "set-vol-slider-on-vol-change",
"name": "set-vol-slider-on-vol-change",
"rule": "when $avrsensor.vol changes then dim vol-slider to (($min-volume - $avrsensor.vol) / -0.5)",
"active": true,
"logging": false
}
],
"pages": [
{
"id": "avr-page",
"name": "AVR",
"devices": [
{
"deviceId": "avr-switch"
},
{
"deviceId": "avrsensor"
},
{
"deviceId": "avr-input"
},
{
"deviceId": "change-volume"
},
{
"deviceId": "vol-slider"
}
]
}
],
"variables": [
{
"name": "min-volume",
"value": -80.5
}
]
}
Looks like this, except the subwoofer switch:
thanks for sharing!
I’m able to get the display working with your config.
Though i’m unable to send command’s to it.
Within the logs i’m seeing:
**No plugin found for device "avr-presence" of class "PingPresence"!**
Do i need any additional plugins ?
Hi,
you also need the ping plugin to detect whether your avr is available in the network or not.
@SaxnPaule said in Pioneer AVR Control plugin:
Hi,
you also need the ping plugin to detect whether your avr is available in the network or not.
ping installed, though i think my pimatic is toasted.
2017-02-04 10:23:47error [pimatic]: A uncaught exception occured: Error: Resource temporarily unavailable
at Error (native)
at Socket.onRecvReady (/home/pi/pimatic-app/node_modules/pimatic-ping/node_modules/net-ping/node_modules/raw- socket/index.js:86:13)
at emitNone (events.js:67:13)
at SocketWrap.emit (events.js:166:7)
This is most probably a bug in pimatic or in a module, please report it!
Think I need a new sd card and reinstall the whole thing.
So don’t think it’s something to do with your plugin,
@passie The error tells you that the ping plugin is not working. That doesn´t mean that your SD is toasted. Or do you have other messages like this?
Did you restart Pimatic after installing Ping?
But having a “replacement SD” is always a good Idea for a Raspberry Pi
well had some other issue’s as well. Not sure what happend with the pi and pimatic
try to remove the ping plugin from the node_modules folder and start pimatic again.
maybe this will solve the issue, since pimatic will install the ping plugin again.
what you need to do :
sudo service pimatic stop
sudo rm -rf /home/pi/pimatic-app/node_modules/pimatic-ping
sudo service pimatic start
pimatic v0.9 has been released!
Support Pimatic and get some free stickers
Like us on Facebook
make it so !
Today I got my new VSX-831. What should I say. It’s no real Pioneer any longer. It’s more an Onkyo than a Pioneer.
Unfortunately my plugin also doesn’t work with the 2016 models and newer.
So I need to write a new plugin “pimatic-onkyneer-remote”
I don’t know when I’ll find the time
@SaxnPaule Yes, you have an Onkyo receiver with Pioneer label. The telnet service (port 23 by default) should be available on port 60128. The command layout slightly differes, but you should be able to adapt to it easily. See also https://forum.pimatic.org/topic/428/dhow-to-control-onkyo-receiver
"It always takes longer than you expect, even when you take into account Hofstadter's Law.", Hofstadter's Law
The used eiscp library supports only “real” ONKYO receivers. The commands.yml doesn’t include the Pioneer models. So the AVR isn’t detected in the network.
BUT: I found a working library. https://www.npmjs.com/package/onkyo.js
version 0.5.3 released 2017-03-19