Hegel H200 integration not workign

Hi all

I’ve acquired the Hegel 200 amplifier. It should be able to integrate HA to this amp (or not?) according to Hegel Amplifier - Home Assistant.
It can setup the integration when given the IP of the AMP and choosing H190V as model (H200 is the successor to H190V). But after that it can’t do anything, it’s just unavailable.
I get the following in the log:

  File "/usr/src/homeassistant/homeassistant/components/hegel/media_player.py", line 186, in _connected_watcher
AttributeError: 'HegelClient' object has no attribute 'disconnected_event'. Did you mean: 'connected_event'?
  File "/usr/src/homeassistant/homeassistant/components/hegel/media_player.py", line 186, in _connected_watcher
AttributeError: 'HegelClient' object has no attribute 'disconnected_event'. Did you mean: 'connected_event'?
  File "/usr/src/homeassistant/homeassistant/components/hegel/media_player.py", line 186, in _connected_watcher
AttributeError: 'HegelClient' object has no attribute 'disconnected_event'. Did you mean: 'connected_event'?
  File "/usr/src/homeassistant/homeassistant/components/hegel/media_player.py", line 186, in _connected_watcher
AttributeError: 'HegelClient' object has no attribute 'disconnected_event'. Did you mean: 'connected_event'?
  File "/usr/src/homeassistant/homeassistant/components/hegel/media_player.py", line 186, in _connected_watcher
AttributeError: 'HegelClient' object has no attribute 'disconnected_event'. Did you mean: 'connected_event'?
  File "/usr/src/homeassistant/homeassistant/components/hegel/media_player.py", line 186, in _connected_watcher
AttributeError: 'HegelClient' object has no attribute 'disconnected_event'. Did you mean: 'connected_event'?
  File "/usr/src/homeassistant/homeassistant/components/hegel/media_player.py", line 186, in _connected_watcher
AttributeError: 'HegelClient' object has no attribute 'disconnected_event'. Did you mean: 'connected_event'?
2026-09-10 14:33:38.911 DEBUG (MainThread) [homeassistant.components.hegel] Successfully connected to Hegel at 172.16.1.233:50001
2026-09-10 14:33:43.829 DEBUG (MainThread) [homeassistant.components.hegel.media_player] Hegel media player added to hass: media_player.hegel_h200
2026-09-10 14:33:43.830 DEBUG (MainThread) [homeassistant.components.hegel.media_player] Client already connected, performing initial state fetch
2026-09-10 14:33:46.837 DEBUG (MainThread) [homeassistant.components.hegel.media_player] Refresh command -p.?
 failed: 
2026-09-10 14:33:49.838 DEBUG (MainThread) [homeassistant.components.hegel.media_player] Refresh command -v.?
 failed: 
2026-09-10 14:33:52.839 DEBUG (MainThread) [homeassistant.components.hegel.media_player] Refresh command -m.?
 failed: 
2026-09-10 14:33:55.841 DEBUG (MainThread) [homeassistant.components.hegel.media_player] Refresh command -i.?
 failed: 
2026-09-10 16:09:41.439 WARNING (MainThread) [homeassistant.components.media_player] Setup of media_player platform hegel is taking over 10 seconds.
2026-09-10 16:14:02.515 WARNING (MainThread) [homeassistant.components.media_player] Setup of media_player platform hegel is taking over 10 seconds.
  File "/usr/src/homeassistant/homeassistant/components/hegel/media_player.py", line 186, in _connected_watcher
AttributeError: 'HegelClient' object has no attribute 'disconnected_event'. Did you mean: 'connected_event'?

Hope this can reach the devs or someone who knows what’s going on.
Maybe Hegel changed something and the integration needs updating? Or maybe my setup is just bonkers?

This is usually done through a report in GitHub.
Try a reboot, and getting more details in debug mode.

Didn’t manage to make it work yet - posted on GitHub though. Waiting for that :slight_smile:
In the meantime I’ve managed to use the API to get the status’ I want; just the power state for now. That is available through [Preformatted text](http://HEGEL_H200_URL/api/getData?path=powermanager:target&roles=%40all&type=structure). Achieved by “listening” like this:

sensor:
  - platform: rest
    name: Hegel H200 Power State
    resource: "http://172.16.1.233/api/getData?path=powermanager:target&roles=%40all&type=structure"
    value_template: "{{ value_json.value.powerTarget.target }}"
    scan_interval: 5

Thereby, I can get the power state. From there I’ve created a binary_sensor through the UI, that essentially looks like this:

binary_sensor:
  - platform: template
    sensors:
      hegel_h200_power:
        friendly_name: "Hegel H200 Power"
        value_template: "{{ states('sensor.hegel_h200_power_state') == 'online' }}"
        device_class: power

From there I can get the power state and automate :flexed_biceps::flexed_biceps:

Hi Martin,

Your workaround gives it away: /api/getData with powermanager:target is the web API of Hegel’s streaming platform (H150, H200, H400, H600). The built-in Hegel integration is made for the older IP-control models (H190V and earlier, port 50001), so the H200 doesn’t answer it properly.

I built a custom integration for the streaming Hegels: Hegel Connect, available through HACS (add it as a custom repository). It uses that same web API with push instead of polling: power, volume, mute, inputs, playback, now playing with cover art and the stream format.

It’s tested daily on my H150. The H200 should work the same way, but you’d be the first to try it. If you do, please report on GitHub (Issues → Model report), whether it works or not.