Integration - Onkyo

Hello everyone,

Following @mutmut’s request in my progress report on integrations, here is a new external integration: Onkyo :speaker_high_volume:

Repository: GitHub - prohand/gladys-onkyo: Gladys external integration to connect onkyo devices in Gladys · GitHub

Supported Devices

  • Onkyo audio-video amplifiers connected to the network (cable or Wi-Fi)
  • Recent Integra and Pioneer models that use the same protocol (eISCP)
  • Main zone, zone 2, and zone 3: one Gladys card per zone

What it does

  • Commands: power on/standby, volume (in %), volume +/−, mute, input selection
  • Main zone in addition: listening mode (Stereo, Direct, Dolby, DTS…), radio preset, play/pause/stop/next/previous for network, USB, or Bluetooth player, and « currently playing » (artist – title)
  • Inputs bear the names you gave them on the amplifier (recent models)
  • The displayed status is the one confirmed by the amplifier. Changes made via the remote, on the front panel, or in the Onkyo app are immediately reflected (no polling)
  • Adjustable maximum volume: no slider, button, or scene can exceed it. Your speakers thank you :wink:

Scenes (Gladys 5.1+)

Triggers

  • An amplifier input has changed: someone has selected a different input (remote, front panel, app). Filter by zone and input. Gladys commands do not trigger this (no loop).
  • A new track is playing: title, artist, and album available in the scene
  • An amplifier is connected or disconnected

One event per change, and a Gladys restart does not re-trigger your scenes.

Actions

  • Play an input on an amplifier: turns on the zone if needed, waits for it to be ready, selects the input, and sets the volume. All in one card.
  • Mute the sound: cut / restore / toggle
  • Change the listening mode
  • Send an ISCP command: for everything else not covered (the amplifier’s response is usable in the rest of the scene)

Example: « every morning at 7 a.m. → play the FM input in the kitchen (zone 2) at 25 % ».

Dashboard Widget

The Onkyo Amplifier widget displays a zone:

  • volume and input
  • status: power, current track, sound, listening mode, connection
  • buttons: power on/standby, volume −, volume +, mute

100 % local

  • eISCP protocol, port 60128, directly on your network
  • No account, no cloud, no Internet
  • A badge per device indicates if the amplifier is reachable

Getting Started

  1. On the amplifier, enable network standby (Setup > Hardware > Power Management > Network Standby). Without it, Gladys loses the amplifier as soon as it goes into standby.
  2. Install the integration from the Gladys store
  3. Open the Discovery tab and add your amplifier
  4. Set the volume scale (80 on most models, 200 on recent ones) and the maximum volume
  5. Amplifier on another network or VLAN? Enter its IP in « Amplifier Addresses »

Full documentation: gladys-onkyo/docs/fr.md at main · prohand/gladys-onkyo · GitHub

Not yet supported

  • Navigation in the network player menus (Internet radios, Spotify…)
  • Fine-tuning of sound (bass, treble, subwoofer level)
  • Older Pioneer amplifiers that use port 8102 (different protocol)

Testers welcome :folded_hands:

I don’t have an Onkyo amplifier on hand, so your feedback is very valuable (@mutmut first :wink:). Please indicate:

  • your model (e.g. TX-NR686)
  • if discovery, commands, zones, scenes, and the widget work
  • if the displayed volume matches the amplifier’s volume
  • logs in case of issues (with « Detailed Logs » enabled), without IP or MAC address

Thanks!

Thanks @prohand :raising_hands:

Well, I’ll test it tomorrow because it’s getting late to push the watts :sweat_smile:
In any case, I can already say that my TX-NR686 is well discovered with the 2 zones (I only use one) and the widget displays correctly.

By creating a device with all the features, I was able to see that turning off the amp with the switch is not immediately synced with the widget. The latter takes 1 to 2 seconds to update.

I’ll come back for the rest :wink:

Thanks @mutmut for this first feedback :slightly_smiling_face:

I’m glad that the TX-NR686 is properly detected with its 2 zones and that the widget is displayed.

For the 1 to 2 second delay when turning off, it’s normal. The integration only displays a status once the amplifier has confirmed it. It never displays it as soon as the command is sent. When you turn off the amplifier:

1.	Gladys sends the standby command.
2.	The amplifier goes into standby (you hear the relay), then responds that it is off.
3.	The integration publishes the status and asks Gladys to refresh the widget.

The amplifier takes the most time. This choice prevents the widget from announcing a false status if the command is lost or if the amplifier refuses it.

Note: Gladys accepts at most one widget refresh every 10 seconds. If you have just changed the volume, turning off may therefore take a bit longer to display in the widget. The device switch, on the other hand, updates immediately.

I look forward to the rest of your tests, enjoy your listening tomorrow :speaker_high_volume: