npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

homebridge-onkyo

v2022.18.1

Published

Homebridge plugin for Onkyo Receivers

Downloads

89

Readme

homebridge-onkyo

npm npm

NPM Version Node.js CI CodeQL

Homebridge plugin for Onkyo Receivers Should work for all supported models as listed in the eiscp/eiscp-commands.json file. If your model is not listed, try TX-NR609.

Description

This is an enhanced fork from the original/unmaintained homebridge-onkyo-avr plugin written by gw-wiscon. Existing users of my original fork or gw-wiscon's be sure to update the "platform" config to "Onkyo".

Changelog

Changes are tracked via Github Releases.

Volume Control

For Siri Control of Volume, Mute, and Input - Use an app like EVE which has control sliders and create scenes for "Volume Mute" or "Volume Unmute", and/or various volume level scenes like "Volume Low" or "Volume Loud", or for inputs like "input network" or "input fm". It may be easiest to set the volume or Input first using the OnkyoRemote3 app and then creating the scenes so the volume or input is pre-set (without using the slider).

For Alexa Control of Volume, Mute, Input - (if using the Alexa plugin) - create DummySwitches (homebridge-dummy) and setup an automation to run the scene created from above. "Alexa, turn on Volume Loud."

Installation

As a prerequisite ensure that the Onkyo receiver is controllable using the OnkyoRemote3 iOS app.

It is recommended to install and configure this plugin using homebridge-config-ui-x, however you can also install manually using the following manual tasks:

  1. Install homebridge using: npm install -g homebridge
  2. Install this plugin using: npm install -g homebridge-onkyo
  3. Update your configuration file. See the sample below.

Configuration

Example accessory config (needs to be added to the homebridge config.json):

"platforms": [{
       "platform": "Onkyo",
       "receivers": [
           {
               "model": "TX-NR609",
               "ip_address": "10.0.0.46",
               "poll_status_interval": "3000",
               "name": "Receiver",
               "zone": "main",
               "default_input": "net",
               "default_volume": "10",
               "max_volume": "40",
               "map_volume_100": false,
               "inputs": [
                   {"input_name": "dvd", "display_name": "Blu-ray"},
                   {"input_name": "video2", "display_name": "Switch"},
                   {"input_name": "video3", "display_name": "Wii U"},
                   {"input_name": "video6", "display_name": "Apple TV"},
                   {"input_name": "video4", "display_name": "AUX"},
                   {"input_name": "cd", "display_name": "TV/CD"}
               ],
               "volume_dimmer": false,
               "volume_speed": true,
               "switch_service": false,
               "filter_inputs": true
           }
       ]
   }]

Config Explanation:

Field | Description ----------------------------|------------ platform | (required) Must always be "Onkyo". receivers | (required) List of receiver accessories to create. Must contain at least 1. Receiver Attributes | ----------------------------|------------ name | (required) The name you want to use for control of the Onkyo accessories. ip_address | (required) The internal ip address of your Onkyo. model | (required) Must be a valid model listed in config.schema.json file. If your model is not listed, you can use the TX-NR609 if your model supports the Integra Serial Communication Protocol (ISCP). poll_status_interval | (optional) Poll Status Interval. Defaults to 0 or no polling. default_input | (optional) A valid source input. Default will use last known input. See output of 3.js in eiscp/examples for options. default_volume | (optional) Initial receiver volume upon powerup. This is the true volume number, not a percentage. Ignored if powerup from device knob or external app (like OnkyoRemote3). max_volume | (optional) Receiver volume max setting. This is a true volume number, not a percentage, and intended so there is not accidental setting of volume to 80. Ignored by external apps (like OnkyoRemote3). Defaults to 30. map_volume_100 | (optional) Will remap the volume percentages that appear in the Home app so that the configured max_volume will appear as 100% in the Home app. For example, if the max_volume is 30, then setting the volume slider to 50% would set the receiver's actual volume to 15. Adjusting the stereo volume knob to 35 will appear as 100% in the Home app. This option could confuse some users to it defaults to off false, but it does give the user finer volume control especially when sliding volume up and down in the Home app. Defaults to False. zone | (optional) Defaults to main. Optionally control zone2 where supported. inputs | (optional) List of inputs you want populated for the TV service and what you want them to be displayed as. filter_inputs | (optional) Boolean value. Setting this to true limits inputs displayed in HomeKit to those you provide in inputs. If false or not defined, all inputs supported by model will be displayed. volume_dimmer | (optional) Boolean value. Setting this to false disables additional Dimmer accessory for separate volume control.

Troubleshooting

For Troubleshooting look in the homebridge-onkyo/node_modules/eiscp/examples directory and see if you can run 3.js. "node 3.js". It should output all available commands.

You can find the output also in the wiki.

EISCP Dependency

This plugin depends on an EISCP library. As the needed package does not reside on NPM installation of this dependency caused various problems. As a workaround, the library was copied into this project in the eiscp folder. As the library was not updated for years it is unlikely that this project misses updates on the library. Please note that the EISCP library is not covered under the license of of homebridge-onkyo and comes with its own license in the EISCP folder. The original Github repository is untitledlt / eiscp.js.