NAD Smart-Home-Integration, kostenlos und Open Source

NAD amplifiers and receivers, local over telnet: power, volume, mute, source.
Die Dokumentation dieser Integration wird von ihrem Autor geschrieben und ist bisher nur auf Englisch verfügbar.
Control your NAD amplifiers and receivers that have a network control port (T 758, T 778, T 787, C 338, C 368, C 658, M10…) from Gladys, locally, without any cloud: power on, standby, volume (capped), mute and source.
Important. This integration has never been tested with a real device: it was written from the
nad_receiverlibrary (the one Home Assistant uses) and tested against a fake device only. Your feedback is welcome. Unofficial integration, not affiliated with NAD Electronics.
Setup
- Connect the device to your network and give it a fixed IP address in your router (reserved DHCP lease).
- On the device, enable the network standby (or "IP control" / "network control", depending on the model), so it still answers in standby and can be woken up.
- In Gladys, install the NAD integration, then open its configuration.
- Type the IP addresses, separated by commas (for example
192.168.1.50, 192.168.1.51). The control port is 23 (telnet); for another one, add it:192.168.1.50:53. - Choose the volume cap in dB (-20 dB by default) and, if you want, the lowest volume (-80 dB by default).
- The devices appear in the Discovery tab: create them.
The integration keeps one connection open with each device: changes made on the device or its remote show in Gladys right away. The states are also read again every minute.
Only the network port is supported: the RS-232 serial port is not (a Gladys integration runs in a container without serial port access).
What you get
| Feature | Gladys type | Note |
|---|---|---|
| Power | binary state (read only) | 1 on, 0 in standby or unreachable |
| Power on | button | Main.Power=On |
| Standby | button | Main.Power=Off |
| Volume | music / volume (0 to 100) | 0 % = lowest volume, 100 % = the cap |
| Mute | button (television / mute) | each press reads the state, then sets the opposite |
| Source | dropdown | the inputs of the device; the list only grows |
On purpose, no switch: an "everything off" or "everything on" from a voice assistant or a scene neither wakes nor cuts your amplifier.
Volume cap
NAD devices count their volume in dB (for example -35 dB). In Gladys, the volume goes from 0 to 100 %: 0 % is the lowest volume of the configuration (-80 dB by default), 100 % is the cap (-20 dB by default). Gladys (dashboard, scene, voice assistant) can never set a volume above the cap. The cap is read again just before sending: a new value saved applies at once.
The volume set on the device itself (knob, remote) is not changed by the integration (above the cap, Gladys shows 100 %), except in the two cases where Gladys would make it heard:
- Unmute: when the volume of the device is above the cap, it is set to the cap first, then the mute is removed. When the volume cannot be read, nothing is sent; when the device does not confirm the lower volume, the mute is kept.
- Power on: after the wake-up, the volume is read again and set to the cap when above it, until the device confirms a volume at or under the cap. When the device is slow to wake up, the integration checks again a few times for about 15 seconds, and lowers a volume the device reports above the cap during that time; after that the volume is not corrected.
A command counts as done only when the device answers the value asked.
Sources
The inputs are numbers (1, 2, 3…). Their names are read from the device when
it tells them (Source1.Name…); otherwise, type them in the configuration,
for example 1=CD, 2=Tuner, 3=TV. An input the device switches to is added
to the list.
Commands
Every command is answered within 4 seconds (Gladys waits 5 seconds). A command that left for the device without confirmation is reported "sent, without confirmation"; the line written by the device then shows what it did. A command that could not leave is reported "nothing sent": so is any command, Standby included, to a device that is not connected. Standby goes before every command waiting, and cancels a Power on still waiting.
Reconnection
A device that does not answer (off, network standby disabled, unplugged) shows its power at 0 and is named in the integration status. The integration connects again after 10 s, then at intervals doubled after each failure, up to 5 minutes. Two polls in a row without an answer close the connection, then the same spaced reconnection applies.
Configuration button
- Check the devices: the connection, power, volume (in dB), mute and source of each device, and the volume range in force.
Data and privacy
The integration asks for no account and no password: the NAD control port
has none. It keeps in /data/nad.json the list of the known devices
(address, model, sources). Nothing leaves your local network.
Known limits
- One zone (the main one); no tuner, speakers A/B, dimmer, sleep or listening mode.
- Some models (for example the C 356BEE) cannot report or set an absolute volume, only step it: the volume stays unknown there.
- The binary protocol of the D 7050 / D 3045 (port 50001) is not supported.
- Home Assistant uses port 53 by default for this protocol,
nad_receiverport 23: if your device does not answer on 23, try:53. - Never tested with a real device: the real answers may differ.
Konfigurationseinstellungen
Diese Einstellungen fragt NAD in seinem Konfigurationsbildschirm in Gladys ab.
| Einstellung | Typ | Pflichtfeld | Beschreibung |
|---|---|---|---|
| Your NAD devices, on your local network | section | Nein | Power on, standby, volume, mute and source of each NAD amplifier or receiver with a network control port (telnet, port 23: T 758, T 778, T 787, C 338, C 368, C 658, M10...), without any cloud. The RS-232 serial port is not supported. Give each device a fixed IP address in your router and type it below; the devices then appear in the Discovery tab. 100 % in Gladys is the volume cap below, never exceeded. Enable the network standby of the device so it can be woken up. Never tested with a real device. Unofficial integration, not affiliated with NAD Electronics. |
| IP addresses of the devices | string | Nein | Separated by commas, for example 192.168.1.50, 192.168.1.51. Port 23 by default; add :port for another one. |
| Volume cap (dB) | number | Nein | The loudest volume Gladys may set, in dB as shown by the device (from -80 to 0, -20 by default): it is 100 % in Gladys. A scene, a voice assistant or the dashboard can never go above it. The volume set on the device itself (knob, remote) is not changed. |
| Lowest volume (dB) | number | Nein | The volume of 0 % in Gladys, in dB (from -99 to -21, -80 by default; at least 10 dB under the cap). |
| Source names (optional) | string | Nein | For the models that do not tell the names of their inputs: number=name, separated by commas, for example 1=CD, 2=Tuner, 3=TV. |
So installierst du NAD in Gladys
- Öffne in Gladys Integrationen: NAD erscheint im Katalog neben den nativen Integrationen, mit einem Community-Badge.
- Klicke auf Installieren. Gladys lädt das Docker-Image (
ghcr.io/lm1lc3n7/gladys-nad:0.1.1) herunter, startet es in einer vom Kern isolierten Sandbox und erzeugt die Oberfläche der Integration (Geräte, Erkennung und Konfiguration). - Öffne den Bildschirm Konfiguration der Integration, fülle die Einstellungen aus und speichere.
- Du kannst sie auch direkt über die URL ihres Repositorys installieren: https://github.com/LM1LC3N7/gladys-nad.
NAD benötigt Gladys >=5.1.0. Der Katalog in Gladys wird stündlich aktualisiert, eine neue Version ist also spätestens eine Stunde nach ihrer Veröffentlichung verfügbar.
Du nutzt Gladys noch nicht? Es ist kostenlos und Open Source: folge der Installationsanleitung, um loszulegen.
Über externe Integrationen
NAD ist eine externe Integration: eine Community-Integration, die als Docker-Container verpackt und auf GitHub veröffentlicht wird. Gladys installiert sie mit einem Klick und führt sie in einer vom Kern isolierten Sandbox aus. Sie wird von LM1LC3N7 veröffentlicht und gepflegt, nicht vom Gladys-Kernteam.
- Alle Integrationen durchsuchen, native und aus der Community
- Deine eigene externe Integration bauen und veröffentlichen
- Quellcode auf GitHub — Quelle dieser Dokumentation