ControllerX. Bring full functionality to light and media player controllers

:laughing: OH MY GOD, it’s the eyes that goes first when you go blind WOW, I didn’t even notice, and I was staring at it like crazy!
Thankyou for helping out a poor blind man! :smiley:

1 Like

No worries! 4 eyes are better than 2 :eyes::eyes:

First of all, thank you! This is a fantastic way to get the dimming functionality working with IKEA lights and switches.

When i try to get it working using the entity ID it doesnt work at all. When i press the button i get a message in Zigbee2MQTT that says the entity “light.upstairs_lounge_lights” is unknown.
This entity exists and it is available in HA entities.

So this wont work:

upstairs_lounge_lights_5button:
  module: controllerx
  class: E1810Z2MLightController
  integration: z2m
  controller: sensor.upstairs_lounge_5button_remote_action
  light: light.upstairs_lounge_lights

Out of desperation i used the entity name and it worked fine.

This works:

upstairs_lounge_lights_5button:
  module: controllerx
  class: E1810Z2MLightController
  integration: z2m
  controller: sensor.upstairs_lounge_5button_remote_action
  light: Upstairs Lounge Lights

Its the same for all my lights.
Is this expected behavior?

Hi @KMike ,

Yes, this is expected, you are using E1810Z2MLightController which is a Zigbee2MQTT Light Controller. This means that the controller is expected to be the Zigbee2MQTT friendly name.

However, if you use E1810Controller as a class which is a regular Light Controller, then the controller is expected to be a HA entity (e.g. light.kitchen).

Regards,
Xavi M.

I will preface this with the fact that I am not the best with MQTT devices.

I got a TRUST ZYCT202Z. I managed to pairt it to zigbee2mqtt. This is my configuration in appdeamon/apps/apps.yaml

livingroom_controller:
  module: controllerx
  class: ZYCT202Z2MLightController
  controller: sensor.0x00158d00038e6108_action
  integration:
    name: z2m
    listen_to: mqtt
  light: light.livingroom

I got the controller id from entities page.

What I get is the OFF button being almost the only one that does anything. What it does is that it turns off all my lights, then when pressed again it turns on one light. If I keep pressing the button it turns them on all one by one, and then off again.

Any advice how to debug/configure it?

Hi @BoKKeR ,

Not sure what is turning on/off the lights, but this configuration is not working as it is. These are the problems:

  • controller expects the Z2M device friendly name since you are listening to mqtt.
  • light expects the Z2M device friendly name since you are using a Z2M Light Controller.

In addition, you should have the MQTT broker configuration in the appdaemon.yaml file if you do not have it.

What you can also do is to use the regular Light Controller for this device and not use mqtt:

livingroom_controller:
  module: controllerx
  class: ZYCT202LightController
  controller: sensor.0x00158d00038e6108_action
  integration: z2m
  light: light.livingroom

Finally, I recommend you stopping appdaemon and checkong if lights are turning on/off with the controller. If they do, this means that ControllerX is not turning them on/off, and another automation or external factor is turning them on/off.

Regards,
Xavi M.

Okay I tracked down a script I had running from before that was triggering the lights.
I also noticed that I had never installed appdaemon, so I got the docker container running,
I see all the entities in there and a hello world application but no controllerx, even after reinstalling controllerx and restarting HA a few times.

where should I look for logs? I am assuming controllerx should show up in appdeamon UI as an APP or a plugin.

I am also using the config from above which should just work if I understand correctly without adding MQTT to it.

2022-08-03 18:42:43.106947 WARNING HASS: Disconnected from Home Assistant, retrying in 5 seconds
2022-08-03 18:42:48.109170 INFO HASS: Connected to Home Assistant 2022.7.7
2022-08-03 18:42:48.138960 INFO HASS: Evaluating startup conditions
2022-08-03 18:42:48.140111 INFO HASS: Startup condition met: hass state=RUNNING
2022-08-03 18:42:48.140208 INFO HASS: All startup conditions met
2022-08-03 18:42:48.148042 INFO AppDaemon: Processing restart for HASS
2022-08-03 18:42:48.148156 INFO AppDaemon: Terminating hello_world
2022-08-03 18:42:48.148492 INFO AppDaemon: Initializing app hello_world using class HelloWorld from module hello
2022-08-03 18:42:48.150987 INFO hello_world: Hello from AppDaemon
2022-08-03 18:42:48.151321 INFO hello_world: You are now ready to run Apps!

Hi @BoKKeR ,

Please follow the installation steps in this documentation in order. First you need AppDaemon, then ControllerX.

https://xaviml.github.io/controllerx/start/installation/

Once done, you can restart AppDaemon addon and you will see ControllerX in the logs if you have any configurations in the apps.yaml file.

Regards,
Xavi M.

livingroom_controller:
  module: controllerx
  class: ZYCT202LightController
  controller: sensor.0x00158d00038e6108_action
  integration: z2m
  light: light.livingroom

I managed to make it show up, the problem was that my config was in the wrong file for appdaemon, had to move it to the docker container/conf/apps/apps.yaml

I get the following in z2m when I press a button:

{
    "linkquality": 138,
    "action": "",
    "action_group": null
}

No action :thinking:

I can see controllerX with the config above, but I cant get the lights to turn on/off, any advice?

EDIT: Action is shown in the z2m logs but still no light change. Do I have to tie anything together with a action_group?

Info 2022-08-04 17:39:50MQTT publish: topic 'zigbee2mqtt/0x00158d00038e6108/action', payload 'off'
Info 2022-08-04 17:39:52MQTT publish: topic 'zigbee2mqtt/0x00158d00038e6108', payload '{"action":"on","action_group":24841,"linkquality":114}'
Info 2022-08-04 17:39:52MQTT publish: topic 'zigbee2mqtt/0x00158d00038e6108', payload '{"action":"","action_group":null,"linkquality":114}'
Info 2022-08-04 17:39:52MQTT publish: topic 'zigbee2mqtt/0x00158d00038e6108/action', payload 'on'

I have added another controller for a test

livingroom_ikea_controller:
  module: controllerx
  class: E1743Z2MLightController
  controller: sensor.ikea_button_01_action
  integration: z2m
  light: light.livingroom

Still no result :frowning:

Hi @BoKKeR ,

Could you please share the AppDaemon logs when initializing and when you press a button in the controller? Please, put log_level: DEBUG in the configuration for further details:

livingroom_controller:
  log_level: DEBUG
  module: controllerx
  class: ZYCT202LightController
  controller: sensor.0x00158d00038e6108_action
  integration: z2m
  light: light.livingroom

Do I have to tie anything together with a action_group?

No, there is no need unless you want to customize further, but it should work by default without wxtra configuration.

Could you also check in which path is controllerx installed? If you installed through HACS in places the apps in /config/appdaemon/apps, but I see your AppDaemon path is different. In this case, you will need to either move it or use the manual isntallation specified in this documentation: Installation - ControllerX

Regards,
Xavi M.

Thanks! everything is working fine now. The problem was that I had controllerX installed on HA, and appDaemon as a container. I just used the manual install to install controllerX in the docker appDaemon and everything started working after a restart. Thanks for your patience! Its a little confusing for first time users how it all ties together

I installed Appdaemon as a normal Home Assistant Addon and ControllerX via HACS and everything worked fine from the beginning.

1 Like

yes but my setup is different, I dont have home assistant addons since I am not running HASSIO

I agree, the manual installation is a bit more cumbersome than the HACS one. As @carsten_h said, it is as easy as installing AppDaemon addon and then ControllerX from HACS, no need to open a terminal or anything. However, the first experience for a manual installation is a bit more rough since you need to know also how AppDaemon works.

Anywat, I am glad you got it working and that I could help you out. Let me know if you have more questions :slight_smile:

Regards,
Xavi M.

A question would be if controllerX can handle all six groups that the trust controller supports, and if so what would the config be. I see that the controller returns a different ID for each of the lights present on the controllers interface. Or would I be better at using node-red ?

I want to dim a zigbee group (hue bulbs) from the second button of a Fibaro zwave dimmer. I already made a automation and dimming works, but it’s far from smooth. Even the dimmer button in home assistant jumps back and forth if you use the Fibaro button and so do the lights. It’s like there is a sort of control function which checks if all the bulbs did receive the new brightness value and if some of the bulbs did not, home assistant matches the value of the bulb in the light control. it’s very laggy.

Can I make this work with controllerx?

I like to add a light and switch to my existing setup but get a “not found in namespace default” warning. Tried many things, but it seems I overlook something …

My appdaemon.yaml

---
secrets: /config/secrets.yaml

logs:
  main_log:
    filename: /config/appdaemon/log/appdaemon.log
  error_log:
    filename: /config/appdaemon/log/error.log
  access_log:
    filename: /config/appdaemon/log/access.log

appdaemon:
  latitude: !secret latitude
  longitude: !secret longitude
  elevation: !secret elevation
  time_zone: !secret time_zone
  plugins:
    HASS:
      type: hass
#      namespace: default
http:
  url: http://127.0.0.1:5050
admin:
api:
hadashboard:

My apps.yaml. testing: (the first) is the offending one.

testing:
  log_level: DEBUG
  module: controllerx
  class: E2002LightController
  controller: sensor.tradfri_styrbar_remote_control_N2_1
  mode: single
  integration: z2m
  light: light.tradfri_bulb_e27_1055lm_white_spectrum_1


# +-----+ Press                  Hold
# |  I  | on                     increase luminance
# |-----|
# |  0  | off                    decrease luminance
# +-----+

vide_lamp:
  module: controllerx
  class: E1743Controller
  controller: sensor.tradfri_on_off_switch_1_action
  mode: single
  integration: z2m
  light: light.hue_white_e27_1
  action_delay:
    "off": 3 # wait 3 seconds


#######################################
# +-----+ Press                  Hold
# |  I  | on; switch color/temp  color/temp
# |-----|
# | **  | Preset colors          increase luminance
# |-----|
# |  *  | Preset color temp.     decrease luminance
# |-----|
# |  0  | off                    reverse color/temp
# +-----+

office_ceiling_light:
#  log_level: DEBUG
  module: controllerx
  class: HueDimmerController
  controller: sensor.hue_dimmer_switch_1_action
  mode: single
  integration: z2m
  light: light.hue_color_e27_1
#  light: light.hue_color_candle_2
  multiple_click_delay: 800
  merge_mapping:
    on_press_release:
      - "on"
      - service: input_select.select_next
        entity_id: input_select.office_light_hold_up
      - service: input_select.select_next
        entity_id: input_select.office_light_hold_down
#    off-press$2:
#      - service: input_select.select_next
#        entity_id: input_select.office_light_hold_up
#      - service: input_select.select_next
#        entity_id: input_select.office_light_hold_down
    on_hold: "{{ states('input_select.office_light_hold_up') }}"   # execute hold_color_up or hold_colortemp_up
    off_hold: "{{ states('input_select.office_light_hold_down') }}"  # execute hold_color_down or hold_colortemp_down
    up_press_release:
      - scene: "{{ states('input_select.office_light_color') }}"
      - service: input_select.select_next
        entity_id: input_select.office_light_color
#      service: script.office_light_up_press
    down_press_release:
      - scene: "{{ states('input_select.office_light_temp') }}"
      - service: input_select.select_next
        entity_id: input_select.office_light_temp
#      service: script.office_light_down_press

#######################################
# +-----+ Press                  Hold                   2 press
# |  I  | on                     color temp             on_full_color_temp
# |-----|
# | **  | increase luminance     increase luminance     set_half_color_temp
# |-----|
# |  *  | Pincrease luminance    decrease luminance     set_half_color_temp
# |-----|
# |  0  | off                    reverse color temp     on_min_color_temp
# +-----+

living_reading_light:
  module: controllerx
  class: HueDimmerController
  controller: sensor.hue_dimmer_switch_2_action
  mode: single
  integration: z2m
  light: light.hue_white_ambiance_e27_1
  multiple_click_delay: 800
  merge_mapping:
    on_press_release$2: on_full_color_temp
    up_press_release$2: set_half_color_temp
    down_press_release$2: set_half_color_temp
    off_press_release$2: on_min_color_temp

My appdaemon.log

2022-08-16 23:48:31.034241 INFO AppDaemon: AppDaemon Version 4.2.1 starting
2022-08-16 23:48:31.035320 INFO AppDaemon: Python version is 3.10.5
2022-08-16 23:48:31.036200 INFO AppDaemon: Configuration read from: /config/appdaemon/appdaemon.yaml
2022-08-16 23:48:31.037059 INFO AppDaemon: Added log: AppDaemon
2022-08-16 23:48:31.038090 INFO AppDaemon: Added log: Error
2022-08-16 23:48:31.039010 INFO AppDaemon: Added log: Access
2022-08-16 23:48:31.039936 INFO AppDaemon: Added log: Diag
2022-08-16 23:48:31.579308 INFO AppDaemon: Loading Plugin HASS using class HassPlugin from module hassplugin
2022-08-16 23:48:32.186461 INFO HASS: HASS Plugin Initializing
2022-08-16 23:48:32.187685 INFO HASS: HASS Plugin initialization complete
2022-08-16 23:48:32.189869 INFO AppDaemon: Initializing HTTP
2022-08-16 23:48:32.191730 INFO AppDaemon: Using 'ws' for event stream
2022-08-16 23:48:32.207904 INFO AppDaemon: Starting API
2022-08-16 23:48:32.223014 INFO AppDaemon: Starting Admin Interface
2022-08-16 23:48:32.224787 INFO AppDaemon: Starting Dashboards
2022-08-16 23:48:32.426049 INFO HASS: Connected to Home Assistant 2022.8.5
2022-08-16 23:48:32.611613 INFO AppDaemon: App 'testing' added
2022-08-16 23:48:32.620654 INFO AppDaemon: App 'vide_lamp' added
2022-08-16 23:48:32.626949 INFO AppDaemon: App 'office_ceiling_light' added
2022-08-16 23:48:32.634170 INFO AppDaemon: App 'living_reading_light' added
2022-08-16 23:48:32.638478 INFO AppDaemon: Found 4 total apps
2022-08-16 23:48:32.641762 INFO AppDaemon: Starting Apps with 4 workers and 4 pins
2022-08-16 23:48:32.648375 INFO AppDaemon: Running on port 5050
2022-08-16 23:48:32.771075 INFO HASS: Evaluating startup conditions
2022-08-16 23:48:32.813052 INFO HASS: Startup condition met: hass state=RUNNING
2022-08-16 23:48:32.815060 INFO HASS: All startup conditions met
2022-08-16 23:48:32.933332 INFO AppDaemon: Got initial state from namespace default
2022-08-16 23:48:34.666879 INFO AppDaemon: Scheduler running in realtime
2022-08-16 23:48:34.686120 INFO AppDaemon: Adding /config/appdaemon/apps to module import path
2022-08-16 23:48:34.690832 INFO AppDaemon: Adding /config/appdaemon/apps/controllerx to module import path
2022-08-16 23:48:34.694004 INFO AppDaemon: Adding /config/appdaemon/apps/controllerx/cx_devices to module import path
2022-08-16 23:48:34.705350 INFO AppDaemon: Adding /config/appdaemon/apps/controllerx/cx_core to module import path
2022-08-16 23:48:34.707663 INFO AppDaemon: Adding /config/appdaemon/apps/controllerx/cx_core/action_type to module import path
2022-08-16 23:48:34.709980 INFO AppDaemon: Adding /config/appdaemon/apps/controllerx/cx_core/feature_support to module import path
2022-08-16 23:48:34.716710 INFO AppDaemon: Adding /config/appdaemon/apps/controllerx/cx_core/type to module import path
2022-08-16 23:48:34.719256 INFO AppDaemon: Adding /config/appdaemon/apps/controllerx/cx_core/stepper to module import path
2022-08-16 23:48:34.721703 INFO AppDaemon: Adding /config/appdaemon/apps/controllerx/cx_core/integration to module import path
2022-08-16 23:48:34.888025 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/hello.py - ignoring
2022-08-16 23:48:34.891894 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_const.py - ignoring
2022-08-16 23:48:34.895463 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_version.py - ignoring
2022-08-16 23:48:34.899110 INFO AppDaemon: Loading App Module: /config/appdaemon/apps/controllerx/controllerx.py
2022-08-16 23:48:35.581640 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_helper.py - ignoring
2022-08-16 23:48:35.585280 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_devices/aqara.py - ignoring
2022-08-16 23:48:35.588953 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_devices/osram.py - ignoring
2022-08-16 23:48:35.592716 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_devices/__init__.py - ignoring
2022-08-16 23:48:35.596358 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_devices/aurora.py - ignoring
2022-08-16 23:48:35.600416 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_devices/terncy.py - ignoring
2022-08-16 23:48:35.604688 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_devices/shelly.py - ignoring
2022-08-16 23:48:35.608966 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_devices/rgb_genie.py - ignoring
2022-08-16 23:48:35.613191 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_devices/trust.py - ignoring
2022-08-16 23:48:35.617423 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_devices/lutron.py - ignoring
2022-08-16 23:48:35.622126 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_devices/homematic.py - ignoring
2022-08-16 23:48:35.626800 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_devices/philips.py - ignoring
2022-08-16 23:48:35.631743 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_devices/livarno.py - ignoring
2022-08-16 23:48:35.636566 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_devices/tuya.py - ignoring
2022-08-16 23:48:35.641530 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_devices/ikea.py - ignoring
2022-08-16 23:48:35.645586 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_devices/robb.py - ignoring
2022-08-16 23:48:35.649669 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_devices/muller_licht.py - ignoring
2022-08-16 23:48:35.654344 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_devices/smartthings.py - ignoring
2022-08-16 23:48:35.658427 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_devices/legrand.py - ignoring
2022-08-16 23:48:35.662688 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_devices/linkind.py - ignoring
2022-08-16 23:48:35.667021 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_devices/sonoff.py - ignoring
2022-08-16 23:48:35.671987 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_devices/sengled.py - ignoring
2022-08-16 23:48:35.677959 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/__init__.py - ignoring
2022-08-16 23:48:35.682590 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/release_hold_controller.py - ignoring
2022-08-16 23:48:35.687534 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/controller.py - ignoring
2022-08-16 23:48:35.692529 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/color_helper.py - ignoring
2022-08-16 23:48:35.697278 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/type_controller.py - ignoring
2022-08-16 23:48:35.702421 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/action_type/__init__.py - ignoring
2022-08-16 23:48:35.706828 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/action_type/delay_action_type.py - ignoring
2022-08-16 23:48:35.711286 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/action_type/predefined_action_type.py - ignoring
2022-08-16 23:48:35.715648 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/action_type/base.py - ignoring
2022-08-16 23:48:35.720487 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/action_type/scene_action_type.py - ignoring
2022-08-16 23:48:35.725018 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/action_type/call_service_action_type.py - ignoring
2022-08-16 23:48:35.729467 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/feature_support/__init__.py - ignoring
2022-08-16 23:48:35.733929 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/feature_support/cover.py - ignoring
2022-08-16 23:48:35.738373 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/feature_support/media_player.py - ignoring
2022-08-16 23:48:35.742871 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/feature_support/light.py - ignoring
2022-08-16 23:48:35.747779 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/type/__init__.py - ignoring
2022-08-16 23:48:35.752694 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/type/z2m_light_controller.py - ignoring
2022-08-16 23:48:35.757571 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/type/light_controller.py - ignoring
2022-08-16 23:48:35.762396 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/type/cover_controller.py - ignoring
2022-08-16 23:48:35.767224 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/type/switch_controller.py - ignoring
2022-08-16 23:48:35.771813 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/type/media_player_controller.py - ignoring
2022-08-16 23:48:35.776215 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/stepper/__init__.py - ignoring
2022-08-16 23:48:35.780646 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/stepper/index_loop_stepper.py - ignoring
2022-08-16 23:48:35.785177 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/stepper/stop_stepper.py - ignoring
2022-08-16 23:48:35.790273 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/stepper/loop_stepper.py - ignoring
2022-08-16 23:48:35.795111 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/stepper/bounce_stepper.py - ignoring
2022-08-16 23:48:35.800554 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/integration/lutron_caseta.py - ignoring
2022-08-16 23:48:35.805426 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/integration/__init__.py - ignoring
2022-08-16 23:48:35.810114 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/integration/state.py - ignoring
2022-08-16 23:48:35.814512 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/integration/shelly.py - ignoring
2022-08-16 23:48:35.818939 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/integration/zha.py - ignoring
2022-08-16 23:48:35.823831 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/integration/z2m.py - ignoring
2022-08-16 23:48:35.828314 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/integration/homematic.py - ignoring
2022-08-16 23:48:35.832741 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/integration/mqtt.py - ignoring
2022-08-16 23:48:35.837156 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/integration/deconz.py - ignoring
2022-08-16 23:48:35.841684 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/integration/shellyforhass.py - ignoring
2022-08-16 23:48:35.845477 INFO AppDaemon: Initializing app testing using class E2002LightController from module controllerx
2022-08-16 23:48:35.857558 INFO AppDaemon: Initializing app vide_lamp using class E1743Controller from module controllerx
2022-08-16 23:48:35.867861 INFO AppDaemon: Initializing app office_ceiling_light using class HueDimmerController from module controllerx
2022-08-16 23:48:35.878145 INFO AppDaemon: Initializing app living_reading_light using class HueDimmerController from module controllerx
2022-08-16 23:48:36.275642 INFO testing: 🎮 ControllerX v4.22.0
2022-08-16 23:48:36.288689 DEBUG testing: `light.tradfri_bulb_e27_1055lm_white_spectrum_1` is not recognized as a template
2022-08-16 23:48:36.292509 DEBUG testing: get state: light.tradfri_bulb_e27_1055lm_white_spectrum_1, {} from testing
2022-08-16 23:48:36.305985 DEBUG testing: Entities from `light.tradfri_bulb_e27_1055lm_white_spectrum_1` (entity_id attribute): `light.tradfri_bulb_e27_1055lm_white_spectrum_1`
2022-08-16 23:48:36.314792 DEBUG testing: `light.tradfri_bulb_e27_1055lm_white_spectrum_1` is not recognized as a template
2022-08-16 23:48:36.364103 DEBUG testing: `on` is not recognized as a template
2022-08-16 23:48:36.376219 DEBUG testing: `off` is not recognized as a template
2022-08-16 23:48:36.388240 DEBUG testing: `click_color_down` is not recognized as a template
2022-08-16 23:48:36.401484 DEBUG testing: `click_color_up` is not recognized as a template
2022-08-16 23:48:36.415562 DEBUG testing: `hold_brightness_up` is not recognized as a template
2022-08-16 23:48:36.428501 DEBUG testing: `release` is not recognized as a template
2022-08-16 23:48:36.439209 DEBUG testing: `hold_brightness_down` is not recognized as a template
2022-08-16 23:48:36.450262 DEBUG testing: `hold_color_down` is not recognized as a template
2022-08-16 23:48:36.461951 DEBUG testing: `release` is not recognized as a template
2022-08-16 23:48:36.473168 DEBUG testing: `hold_color_up` is not recognized as a template
2022-08-16 23:48:36.483926 DEBUG testing: `release` is not recognized as a template
2022-08-16 23:48:36.486733 WARNING testing: testing: Entity sensor.tradfri_styrbar_remote_control_N2_1 not found in namespace default
2022-08-16 23:48:36.495952 DEBUG testing: Calling listen_state for sensor.tradfri_styrbar_remote_control_N2_1, {} from testing
2022-08-16 23:48:36.506756 INFO vide_lamp: 🎮 ControllerX v4.22.0
2022-08-16 23:48:36.594432 INFO office_ceiling_light: 🎮 ControllerX v4.22.0
2022-08-16 23:48:36.769313 INFO living_reading_light: 🎮 ControllerX v4.22.0
2022-08-16 23:48:36.963685 INFO AppDaemon: App initialization complete

In Z2M , all seems OK. Any hints or suggestions appreciated :slight_smile:

1 Like

You are not alone, I have the same issue, which I believe is related to updates of HomeAssistant 2022.8.

I’m having trouble getting an IKEA E2002 remote working with Z2M. Any suggestions? In the Logbook I see the sensor.desk_lamp_switch_action triggers whenver it’s pressed. However, that’s not resulting as a desired action in ControllerX.

Error:
2022-08-18 19:11:44.461283 WARNING AppDaemon: Unable to find class E2002LightController in module controllerx - 'study_lamp_controller' is not initialized

apps.yaml:

#Controller X setup

study_lamp_controller:
  log_level: DEBUG
  module: controllerx
  class: E2002LightController
  integration: z2m
  controller: sensor.desk_lamp_switch_action
  light: light.work_desk_lamp

living_room_light_controller:
  module: controllerx
  class: E1743Controller
  integration: z2m
  controller: sensor.0x84fd27fffe3741b4_action
  light: light.living_room_lights
  transition: 5

master_bedroom_light_day_controller:
  module: controllerx
  class: E1743Controller
  integration: z2m
  controller: sensor.master_bedroom_light_switch_action #sensor.0x84fd27fffe3774c2_action
  light: light.bedroom_bedside_lamp
  merge_mapping:
    "on":
      action: "on"
      attributes:
        brightness: 255 # This is the 100% brightness
    "off":
      - service: media_player.media_stop
        data:
          entity_id: media_player.master_bedroom_clock
      - service: light.turn_off
        data:
          entity_id: light.bedroom_bedside_lamp
    off$2: 
      - service: media_player.media_stop
        data:
          entity_id: media_player.master_bedroom_clock
  constrain_start_time: "08:30:00"
  constrain_end_time: "21:30:00"

master_bedroom_light_night_controller:
  module: controllerx
  class: E1743Controller
  integration: z2m
  controller: sensor.master_bedroom_light_switch_action #sensor.0x84fd27fffe3774c2_action
  light: light.bedroom_bedside_lamp
  merge_mapping:
    "on":
      action: "on"
      attributes:
        brightness: 30 # This is the 100% brightness
    "off":
      - service: media_player.media_stop
        data:
          entity_id: media_player.master_bedroom_clock
      - service: light.turn_off
        data:
          entity_id: light.bedroom_bedside_lamp
          transition: 4
    off$2: 
      - service: media_player.media_stop
        data:
          entity_id: media_player.master_bedroom_clock
  constrain_start_time: "21:30:00"
  constrain_end_time: "08:30:00"

appdaemon.yaml

secrets: /config/secrets.yaml
appdaemon:
  plugins:
    HASS:
      type: hass
http:
  url: http://127.0.0.1:5050
hadashboard:
admin:
api:

AppDaemon log:

2022-08-19 22:07:05.158549 INFO AppDaemon: Added log: AppDaemon
2022-08-19 22:07:05.158940 INFO AppDaemon: Added log: Error
2022-08-19 22:07:05.159327 INFO AppDaemon: Added log: Access
2022-08-19 22:07:05.160134 INFO AppDaemon: Added log: Diag
2022-08-19 22:07:05.281606 INFO AppDaemon: Loading Plugin HASS using class HassPlugin from module hassplugin
2022-08-19 22:07:05.444640 INFO HASS: HASS Plugin Initializing
2022-08-19 22:07:05.445333 INFO HASS: HASS Plugin initialization complete
2022-08-19 22:07:05.446094 INFO AppDaemon: Initializing HTTP
2022-08-19 22:07:05.446874 INFO AppDaemon: Using 'ws' for event stream
2022-08-19 22:07:05.450509 INFO AppDaemon: Starting API
2022-08-19 22:07:05.453216 INFO AppDaemon: Starting Admin Interface
2022-08-19 22:07:05.453720 INFO AppDaemon: Starting Dashboards
2022-08-19 22:07:05.469914 INFO HASS: Connected to Home Assistant 2022.8.6
2022-08-19 22:07:05.495579 INFO AppDaemon: App 'living_room_light_controller' added
2022-08-19 22:07:05.507092 INFO AppDaemon: App 'master_bedroom_light_day_controller' added
2022-08-19 22:07:05.508434 INFO AppDaemon: App 'master_bedroom_light_night_controller' added
2022-08-19 22:07:05.509954 INFO AppDaemon: App 'study_lamp_controller' added
2022-08-19 22:07:05.515431 INFO AppDaemon: Found 4 total apps
2022-08-19 22:07:05.516188 INFO AppDaemon: Starting Apps with 4 workers and 4 pins
2022-08-19 22:07:05.519297 INFO AppDaemon: Running on port 5050
2022-08-19 22:07:05.556677 INFO HASS: Evaluating startup conditions
2022-08-19 22:07:05.566566 INFO HASS: Startup condition met: hass state=RUNNING
2022-08-19 22:07:05.567599 INFO HASS: All startup conditions met
2022-08-19 22:07:05.609598 INFO AppDaemon: Got initial state from namespace default
2022-08-19 22:07:07.534836 INFO AppDaemon: Scheduler running in realtime
2022-08-19 22:07:07.537556 INFO AppDaemon: Adding /config/appdaemon/apps to module import path
2022-08-19 22:07:07.538450 INFO AppDaemon: Adding /config/appdaemon/apps/controllerx to module import path
2022-08-19 22:07:07.538837 INFO AppDaemon: Adding /config/appdaemon/apps/controllerx/cx_devices to module import path
2022-08-19 22:07:07.539627 INFO AppDaemon: Adding /config/appdaemon/apps/controllerx/cx_core to module import path
2022-08-19 22:07:07.540190 INFO AppDaemon: Adding /config/appdaemon/apps/controllerx/cx_core/type to module import path
2022-08-19 22:07:07.540694 INFO AppDaemon: Adding /config/appdaemon/apps/controllerx/cx_core/integration to module import path
2022-08-19 22:07:07.541219 INFO AppDaemon: Adding /config/appdaemon/apps/controllerx/cx_core/stepper to module import path
2022-08-19 22:07:07.541779 INFO AppDaemon: Adding /config/appdaemon/apps/controllerx/cx_core/action_type to module import path
2022-08-19 22:07:07.542419 INFO AppDaemon: Adding /config/appdaemon/apps/controllerx/cx_core/feature_support to module import path
2022-08-19 22:07:07.571760 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/occusim.py - ignoring
2022-08-19 22:07:07.572652 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/hello.py - ignoring
2022-08-19 22:07:07.573498 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_const.py - ignoring
2022-08-19 22:07:07.574347 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_version.py - ignoring
2022-08-19 22:07:07.575166 INFO AppDaemon: Loading App Module: /config/appdaemon/apps/controllerx/controllerx.py
2022-08-19 22:07:07.663911 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_devices/phillips.py - ignoring
2022-08-19 22:07:07.665281 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_devices/sonoff.py - ignoring
2022-08-19 22:07:07.666198 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_devices/muller_licht.py - ignoring
2022-08-19 22:07:07.667002 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_devices/sengled.py - ignoring
2022-08-19 22:07:07.667869 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_devices/aqara.py - ignoring
2022-08-19 22:07:07.668728 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_devices/legrand.py - ignoring
2022-08-19 22:07:07.669552 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_devices/trust.py - ignoring
2022-08-19 22:07:07.670429 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_devices/linkind.py - ignoring
2022-08-19 22:07:07.671287 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_devices/__init__.py - ignoring
2022-08-19 22:07:07.672171 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_devices/terncy.py - ignoring
2022-08-19 22:07:07.673162 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_devices/aurora.py - ignoring
2022-08-19 22:07:07.674181 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_devices/ikea.py - ignoring
2022-08-19 22:07:07.675045 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_devices/osram.py - ignoring
2022-08-19 22:07:07.675886 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_devices/livarno.py - ignoring
2022-08-19 22:07:07.676757 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_devices/lutron.py - ignoring
2022-08-19 22:07:07.677605 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_devices/smartthings.py - ignoring
2022-08-19 22:07:07.678435 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_devices/tuya.py - ignoring
2022-08-19 22:07:07.679293 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_devices/rgb_genie.py - ignoring
2022-08-19 22:07:07.680582 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/type_controller.py - ignoring
2022-08-19 22:07:07.681453 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/controller.py - ignoring
2022-08-19 22:07:07.682334 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/release_hold_controller.py - ignoring
2022-08-19 22:07:07.683201 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/__init__.py - ignoring
2022-08-19 22:07:07.684304 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/custom_controller.py - ignoring
2022-08-19 22:07:07.685176 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/color_helper.py - ignoring
2022-08-19 22:07:07.686008 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/type/media_player_controller.py - ignoring
2022-08-19 22:07:07.686861 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/type/light_controller.py - ignoring
2022-08-19 22:07:07.687688 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/type/__init__.py - ignoring
2022-08-19 22:07:07.688524 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/type/cover_controller.py - ignoring
2022-08-19 22:07:07.689532 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/type/switch_controller.py - ignoring
2022-08-19 22:07:07.690558 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/integration/state.py - ignoring
2022-08-19 22:07:07.692137 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/integration/mqtt.py - ignoring
2022-08-19 22:07:07.693051 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/integration/lutron_caseta.py - ignoring
2022-08-19 22:07:07.693889 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/integration/zha.py - ignoring
2022-08-19 22:07:07.695769 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/integration/__init__.py - ignoring
2022-08-19 22:07:07.696931 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/integration/deconz.py - ignoring
2022-08-19 22:07:07.697792 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/integration/z2m.py - ignoring
2022-08-19 22:07:07.698737 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/stepper/stop_stepper.py - ignoring
2022-08-19 22:07:07.699563 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/stepper/loop_stepper.py - ignoring
2022-08-19 22:07:07.700441 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/stepper/bounce_stepper.py - ignoring
2022-08-19 22:07:07.701515 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/stepper/index_loop_stepper.py - ignoring
2022-08-19 22:07:07.702366 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/stepper/__init__.py - ignoring
2022-08-19 22:07:07.703197 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/action_type/call_service_action_type.py - ignoring
2022-08-19 22:07:07.704053 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/action_type/predefined_action_type.py - ignoring
2022-08-19 22:07:07.705137 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/action_type/delay_action_type.py - ignoring
2022-08-19 22:07:07.706408 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/action_type/__init__.py - ignoring
2022-08-19 22:07:07.707253 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/action_type/scene_action_type.py - ignoring
2022-08-19 22:07:07.708669 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/action_type/base.py - ignoring
2022-08-19 22:07:07.710201 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/feature_support/cover.py - ignoring
2022-08-19 22:07:07.711019 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/feature_support/light.py - ignoring
2022-08-19 22:07:07.711841 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/feature_support/__init__.py - ignoring
2022-08-19 22:07:07.712652 WARNING AppDaemon: No app description found for: /config/appdaemon/apps/controllerx/cx_core/feature_support/media_player.py - ignoring
2022-08-19 22:07:07.713419 INFO AppDaemon: Initializing app living_room_light_controller using class E1743Controller from module controllerx
2022-08-19 22:07:07.714860 INFO AppDaemon: Initializing app master_bedroom_light_day_controller using class E1743Controller from module controllerx
2022-08-19 22:07:07.716506 INFO AppDaemon: Initializing app master_bedroom_light_night_controller using class E1743Controller from module controllerx
2022-08-19 22:07:07.718302 INFO AppDaemon: Initializing app study_lamp_controller using class E2002LightController from module controllerx
2022-08-19 22:07:07.719645 WARNING AppDaemon: Unable to find class E2002LightController in module controllerx - 'study_lamp_controller' is not initialized
2022-08-19 22:07:07.786619 INFO living_room_light_controller: 🎮 ControllerX v4.18.2
2022-08-19 22:07:07.807203 INFO master_bedroom_light_day_controller: 🎮 ControllerX v4.18.2
2022-08-19 22:07:07.828784 INFO master_bedroom_light_night_controller: 🎮 ControllerX v4.18.2
2022-08-19 22:07:07.844639 WARNING AppDaemon: Unable to find module study_lamp_controller - initialize() skipped
2022-08-19 22:07:07.845422 INFO AppDaemon: App initialization complete

Hi,

I have also issues with E2002LightController, but with another issue. Maybe enable debug and share your appdeamon.yaml, apps.yaml and logs. This will make it easier to get help. See my post from yesterday as an example.

Regards,

Steve

1 Like