Onkyo smart home integration, free and open source

Control Onkyo, Integra and Pioneer network AV receivers: power, volume, inputs, zones.
This integration drives Onkyo network AV receivers from Gladys, as well as the Integra and recent Pioneer models that speak the same protocol (eISCP).
Everything stays local: Gladys talks to the receiver directly on your network (port 60128). No account, no cloud, no Internet.
Before you start
- The receiver must be on the network (cable or Wi-Fi).
- Turn on Network Standby on the receiver:
Setup→Hardware→Power Management→Network Standby→On(the wording varies a little between models). Without it the receiver drops the network in standby: Gladys loses it and cannot switch it on. - Give it a fixed IP in your router (recommended, not required: if the IP changes, the integration finds the receiver again by its MAC address).
Some older models accept one connection at a time: if the Onkyo Remote app is open, the receiver may refuse Gladys. Close the app and wait a minute.
Adding a receiver
- Install the integration from the Gladys store.
- Open the Discovery tab: Gladys looks for receivers on the network.
- Add the one(s) that show up. One device is created per zone.
The receiver does not show up? It may sit on another subnet or a VLAN: type its IP in Receiver addresses (several separated by commas), save, then run the discovery again.
Settings
| Setting | What it does |
|---|---|
| Receiver addresses | Only for a receiver the discovery does not find. E.g. 192.168.1.40, 192.168.1.41 |
| Zones | Automatic: the zones the receiver declares (the main zone alone on older models). Or force 1, 2 or 3 zones. |
| Volume scale of the receiver | The highest volume value the receiver shows: 80 on most models, 200 on recent ones that step by 0.5. "Test the connection" tells what the receiver declares. |
| Maximum volume (%) | Gladys never sends a volume above it, whatever a slider, a button or a scene asks. 80 % by default. |
| Detailed logs | Logs every message exchanged with the receiver. Turn it on to understand a problem, then off again. |
The volume is a percentage of the scale: 50 % on a scale of 80 shows 40 on the receiver.
What you get
Main zone
- Power (on / standby)
- Volume (slider, in %), Volume up, Volume down, Mute (toggle)
- Input: the list of inputs, with the names you gave them on the receiver (recent models) or the standard names (BD/DVD, CD, NET…)
- Listening mode: Stereo, Direct, Dolby, DTS…
- Tuner preset (1 to 40)
- Play, Pause, Stop, Previous, Next: for the network, USB or Bluetooth player of the receiver
- Now playing: artist and title
Zone 2 and zone 3
Power, volume, mute, volume up/down, input. The "Main zone source" input makes the zone follow the main one.
Every change made on the remote, the front panel or another app shows up in Gladys at once: the receiver reports it, Gladys does not need to poll.
Scenes (Gladys 5.1+)
Triggers
- The input of a receiver changed: someone picked another input (remote,
front panel, app). Filter by zone and by input. Variables:
source(code) andsource_name(name). Gladys' own orders never fire it (no loop). - A new track is playing: the network or USB player moved to another track.
Variables:
title,artist,album. - A receiver went online or offline: the link dropped (unplugged, network standby off) or came back. A restart of Gladys never fires it.
Actions
- Play an input on a receiver: switches the zone on if needed, waits for it, picks the input, then sets the volume (optional). Made for "the radio in the kitchen at 7:00".
- Mute a receiver: mute, unmute or toggle.
- Set the listening mode of the main zone.
- Send an ISCP command: any command of the Onkyo protocol, for what the other actions do not cover. The receiver's answer is available to the next actions.
Example: "when the TV switches on → Play the TV input at 35 %".
Dashboard widget (Gladys 5.1+)
The Onkyo receiver widget shows one zone (picked in its settings, or the first receiver's main zone):
- volume and input;
- status: power, track playing, sound, listening mode, link;
- buttons: on/standby, volume down, volume up, mute.
Configuration buttons
- Test the connection: one line per zone (connected or not, power, input, volume) and the typed addresses that answered nothing.
- Send an ISCP command: try a command before putting it in a scene.
Examples:
PWR01(on),MVL20(volume),SLI23(CD input),LMDQSTN(which listening mode?).
Troubleshooting
| Problem | Hint |
|---|---|
| The receiver is not in Discovery | Network standby on? Same network as Gladys? Otherwise type its IP in "Receiver addresses". |
| "Unreachable" as soon as it is in standby | Turn on network standby (see above). |
| The volume does not match the display | Set "Volume scale of the receiver" (80 or 200 most of the time). |
| An input is missing from the list | Older models do not announce their inputs: the standard list is used. Use "Send an ISCP command" with SLIxx. |
| Play/Pause do nothing | These keys drive the receiver's own network/USB/Bluetooth player, not an HDMI source. |
For a bug report, turn on Detailed logs, reproduce the problem and attach the logs without IP or MAC addresses: https://github.com/prohand/gladys-onkyo/issues
Configuration settings
These are the settings Onkyo asks for in its configuration screen in Gladys.
| Setting | Type | Required | Description |
|---|---|---|---|
| Getting started | section | No | The receivers are found on your network: open the Discovery tab and add them. Everything stays local (eISCP protocol, port 60128), no account, no cloud. On the receiver, turn on Network Standby (Setup > Hardware > Power Management), or Gladys loses it as soon as it goes to standby. |
| Receiver addresses | string | No | Only for a receiver the Discovery tab does not find (another subnet, a VLAN): its IP address, several separated by commas. A fixed IP in your router is recommended. |
| Zones | select | No | One Gladys device per zone. Automatic: the zones the receiver declares (the main zone alone on older models). |
| Volume scale of the receiver | select | No | The highest volume value the receiver shows. 80 on most models, 200 on recent ones that step by 0.5. "Test the connection" tells what the receiver declares. |
| Maximum volume (%) | number | No | Gladys never sends a volume above this, whatever a scene or a slider asks: protects your speakers and your ears. |
| Detailed logs (debug) | boolean | No | Log every message exchanged with the receivers. Turn it on to understand a problem, then off again: it is verbose. |
How to install Onkyo in Gladys
- In Gladys, open Integrations: Onkyo appears in the catalog, next to the native integrations, with a community badge.
- Click Install. Gladys pulls the Docker image (
ghcr.io/prohand/gladys-onkyo:1.0.1), starts it in a sandbox isolated from the core, and generates the integration's interface (devices, discovery and configuration). - Open the Configuration screen of the integration, fill in the settings, and save.
- You can also install it directly from its repository URL: https://github.com/prohand/gladys-onkyo.
Onkyo requires Gladys >=5.1.0. The catalog inside Gladys refreshes every hour, so a new version becomes available at most one hour after its release.
Not running Gladys yet? It is free and open source: follow the installation guide to get started.
About external integrations
Onkyo is an external integration: a community integration packaged as a Docker container and published on GitHub, that Gladys installs in one click and runs in a sandbox isolated from its core. It is published and maintained by prohand, not by the Gladys core team.
- Browse all external integrations
- Discover the native integrations built into Gladys
- Build and publish your own external integration
- Source code on GitHub — source of this documentation