Thank you!
Hi Guys,
I have recently procured Ikea 1744 remote to pair Symfonisk Speaker as a media control.
I have this Remote paired up on my Zigbee2mqtt. i happen to stumble upon ControllerX.
Curious to try out, i have followed the necessary guide to set up AppDaemon4 and ControllerX via HACS successfully.
I tried looking up for some sample code(tried 2 different codes) and setup the app.yaml file with the following.
However when i reboot my HA to test out, seems like nothing is workingâŠ
Am i missing out on any steps that I should do from here on?
Code 1
dining_speaker:
module: controllerx
class: E1744MediaPlayerController
controller: sensor.dining_speaker_remote_action
integration: z2m
media_player: media_player.dining_room
volume_steps: 20
Code 2
dining_speaker:
module: controllerx
class: E1744MediaPlayerController
controller: sensor.dining_speaker_remote_action
integration: z2m
media_player: media_player.dining_room
volume_steps: 20
mapping:
toggle: "play_pause"
brightness_up_click: "click_volume_up"
brightness_down_click: "click_volume_down"
brightness_up_hold: "hold_volume_up"
brightness_down_hold: "hold_volume_down"
brightness_up_release: "release"
brightness_down_release: "release"
arrow_right_click: "next_source"
arrow_left_click: "previous_source"
arrow_right_hold: "next_track"
arrow_left_hold: "previous_track"
How can i controll Magic home Led strip effect_list with Ikea E1524 remote control ? I can control brightness and change color, but canât change effects.
effect_list:
- blue_fade
- blue_strobe
- colorjump
- colorloop
- colorstrobe
- cyan_fade
- cyan_strobe
- gb_cross_fade
- green_fade
- green_strobe
- purple_fade
- purple_strobe
- rb_cross_fade
- red_fade
- red_strobe
- rg_cross_fade
- white_fade
- white_strobe
- yellow_fade
- yellow_strobe
- random
supported_color_modes:
- rgb
color_mode: rgb
brightness: 255
hs_color:
- 255.059
- 100
rgb_color:
- 64
- 0
- 255
xy_color:
- 0.158
- 0.05
ip_address: 192.168.1.xxx
friendly_name: leds strip
supported_features: 36
Configuration in yaml
led_controller:
module: controllerx
class: E1810Controller
controller: sensor.led_controller_action
integration: z2m
light: light.leds_strip
mapping:
toggle:
service: light.leds_strip
data:
entity_id: flux_led.set_custom_effect
effect: "{{ state_attr('light.leds_strip', 'effect_list') | random }}"
Also tried
led_controller:
module: controllerx
class: E1810Controller
controller: sensor.led_controller_action
integration: z2m
light: light.leds_strip
mapping:
toggle:
service: flux_led.set_custom_effect
data:
entity_id: light.leds_strip
effect: "{{ state_attr('flux_led.set_custom_effect', 'effect_list') | random }}"
Hi, Iâm also looking for the exact same functionality (in fact I have opened a issue with a question for it).
Just one question on setting the input selector - can I do it from the controller itself? For example: double_click the toggle button and the value of the input selector is â1â, tripple click and the value is â2â, etc.?
I have tried to include the following code but it doesnât seem to work:
livingroom_light_app:
module: controllerx
class: E1810Controller
controller: sensor.ikea_action
integration: z2m
light: light.livingroom
merge_mapping:
toggle$2:
input_number.ikea_button_lamp_selector: 1
service: light.toggle
data:
entity_id: light.sofa_light
toggle$3:
input_number.ikea_button_lamp_selector: 2
service: light.toggle
data:
entity_id: light.table_light
Hello,
I am trying to switch a Tasmota plug with an Ikea E1810 controller, but I get an error. And idea what I am doing wrong?
module: controllerx
class: E1810Controller
controller: zigbee2mqtt/Ikea1/action
integration: mqtt
switch: switch.xmastree
actions:
- toggle
I het the following error:
2021-12-07 09:09:49.893594 INFO Ikea1_app: đź ControllerX v4.16.0
2021-12-07 09:09:49.893854 WARNING Ikea1_app: ------------------------------------------------------------
2021-12-07 09:09:49.894231 WARNING Ikea1_app: Unexpected error running initialize() for Ikea1_app
2021-12-07 09:09:49.894521 WARNING Ikea1_app: ------------------------------------------------------------
2021-12-07 09:09:49.895541 WARNING Ikea1_app: Traceback (most recent call last):
File "/usr/local/lib/python3.9/site-packages/appdaemon/app_management.py", line 163, in initialize_app
await init()
File "/conf/apps/controllerx/cx_core/controller.py", line 107, in initialize
await self.init()
File "/conf/apps/controllerx/cx_core/type/light_controller.py", line 139, in init
await super().init()
Gr. Remco
------Update------
I fixed it by first turning the switch into a light entity in HA. But I am still curious why it doesnât work with switch:
This looks really cool, will try it out.
My applications use two Ikea E1744 symfonisk knobs. One for controlling three media players in one large room, and one for controlling different groups of lights. HASS automations determine which media player/light group was most recently activated, store this in input_text entities, and then hopefully I can use AppDaemon + ControllerX to yield reliable and smooth volume/brightness changes. My spaghetti automations to do the controlling part are really cool when they work, but are not reliable/smooth enough that Iâd stop optimizing just yet
My cover experience (in french)
Anybody able to help me to get my Ikea E1744 symfonisk controller to be more responsive in controlling Philips Hue lights? Iâve followed the steps mentioned under 9. Symfonisk controller (E1744) works, but pretty laggy in the ControllerX FAQ, however the Hue Light group still lags ~2 seconds behind knob turns. It is also a bit hit or miss if the brightness will increase or decrease reagardless of which direction I turn the knob, and the changes are not very smooth.
I am using the Hue integration on itâs own hub, but triggering light changes from within the HA frontend or even via other Zigbee devices through MQTT happens without measurable delay, so I donât think itâs something to do with Hue.
Here is what I have in apps.yaml:
symfonisk_light_controller: # direct via mqtt topic
module: controllerx
class: E1744LightController
integration:
name: z2m
listen_to: mqtt
controller: symfonisk_light_controller
light: light.dining_room
smooth_power_on: true
Here is the relevant section from Zigbee2MQTT devices.yaml. Iâve tried playing around with the debounce and removing it entirely but I donât notice much of a difference.
'0x680ae2fffe5c1fc9':
friendly_name: symfonisk_light_controller
optimistic: true
legacy: false
simulated_brightness: {}
debounce: 0.5
debounce_ignore:
- action
And here is how Iâve added the MQTT broker in appdaemon.yaml:
secrets: /config/secrets.yaml
appdaemon:
latitude: 52...
longitude: 4...
elevation: 2
time_zone: Europe/Amsterdam
plugins:
HASS:
type: hass
MQTT:
type: mqtt
namespace: mqtt # This is important
client_host: 192.168.178.44
client_user: mqtt-user
client_password: !secret mqtt_client_password
http:
url: http://127.0.0.1:5050
admin:
api:
hadashboard:
Hello. It used to be where we were able to long press to dim down the light or up. Now, it doesnât work any more. We need to tap press constantly for it to dim. The code changed or it is due to one of HA core updates?
Update: Upgrade to 2021.5 and it started to work again. Not sure if that was the issue.
Thank god I found this thread ;-).
A few weeks ago I bought a Hue Wall Switch Module for my odd wall switch to operate some hue bulbs. As Iâm using Home Assistant I thought it will be an easy thing. WellâŠ
I got AppDeamon and ControllerX to work and configured everything. I could use the switch but I always had to do âdouble clicksâ even I wanted to have a toggled momentary switch. I had the same problem when I used the switch directly in the phoscon configurator.
Today I finally found out that it is a problem of my special dumb wall-switch. It is not a momentary switch. It is a mix between a momentary switch and a classical switch (called Tastschalter in German). So once you click the circuit is closed and the light turns on. Next you click again and the circuit is open. So no signal for the wall module. This means you always have to click twice for the module/controllerx to get a signal.
When I configure the switch in the Phoscon App as a classical wall switch I can finally use it as intended.
No my question, how can I get this in ControllerX?
Thanks a lot for helb and Merry Christmas from good old Germany.
Hi, thank you for this great project.
I just want to make sure itâs still maintained and still working as I saw this issue:
I tried to make my install work with z2m yesterday but it didnât work.
Is there a discord or something to discuss ControllerX with other users?
Hi @thanasegar,
I would need to see the AppDaemon logs to see what is happening. To easily track your error, I recommend you create a GitHub issue with the Question
form so I can help you out easily.
The configuration looks good to me, so it must be something else.
Regards,
Xavi M.
Hi @smile,
There are few things wrong in the configuration:
- The indentation. The
toggle
should go inside themapping
- The
entity_id
should be the light you want to change - The service should be the service you want to call (
light.turn_on
)
Configuration looks like:
led_controller:
module: controllerx
class: E1810Controller
controller: sensor.led_controller_action
integration: z2m
light: light.leds_strip
mapping:
toggle:
service: light.turn_on
data:
entity_id: light.leds_strip
effect: "{{ state_attr('light.leds_strip', 'effect_list') | random }}"
However, you need to know that by using the mapping
you are overwriting the default mapping and the center button will not toggle the light anymore. If you still want to toggle it you need to replace light.turn_on
for light.toggle
.
Regards,
Xavi M.
Hi @Papi77,
Please check the issue you open where I answer your question: Control brightness for two lamps seperatelly · Issue #393 · xaviml/controllerx · GitHub
Regarding the input_select
you can call multiple services by passing an array to the actions:
livingroom_light_app:
module: controllerx
class: E1810Controller
controller: sensor.ikea_action
integration: z2m
light: light.livingroom
merge_mapping:
toggle$2:
- service: light.toggle
entity_id: light.sofa_ligh
- service: input_number.set_value
entity_id: input_number.ikea_button_lamp_selector
data:
value: 1
You can do the same for toggle$3
.
Regards,
Xavi M.
Hi @rhannink,
The E1810Controller
is a LightController, so it does expect a light, not a switch. The E1810 does not have a Switch controller, but you can overcome that with the SwitchController
class:
example_app:
module: controllerx
class: SwitchController
controller: zigbee2mqtt/Ikea1/action
integration: mqtt
switch: switch.xmastree
mapping:
toggle: toggle
Regards,
Xavi M.
Hi @cjborchert,
E1744 controller is a tricky one. I see you follow all the steps from the FAQ site, so these are the reasons you are still experiencing some lag:
- Network is slow. Either the light or the controller is far from the coordinator or a router in the Zigbee network.
- Light is slow to respond. Maybe the light is not responding quick through the Hue hub.
To debug this further. I recommend:
- Check z2m logs to see if the logs of the E1744 appear quick or there is the delay you are experiencing.
- If you have more lights or media players, and more controller, try different setups like: Symfonisk + media player or other controller + hue. This way you can identify where is the bottle neck.
Regards,
Xavi M.
Hi @bamboozilla,
I have checked these days if the E1744 is still working and I did not find any issues with my setup. You can read more about in the ticket you linked.
If you are experiencing a problem, please open a ticket in GitHub and show in there the logs so I can see what is happening.
Regards,
Xavi M.
Hi @Camille2906,
I believe this problem comes from the switch and there is no much ControllerX can do for you. Is there a signal or event sent when you click the first time, or just when clicked the 2nd time? Since the circuit is close, I imagine that no signal can be sent, so neither Home Assistant or ControllerX can control that part since is a hardware flaw.
Regards,
Xavi M.
HI @xaviml
Thanks for this addon for home assistant.
I have added the Ikea E1810 to control my kitchen lights and it is working out of the box.
Of course I try to experiment with it. I would like to turn off the kitchen lights with a delay of 10 seconds.
I changed the config in apps.xml as stated below:
kitchen_panel_controller:
module: controllerx
class: E1810Controller
controller: rc_kitchen
integration: deconz
light: light.kitchen_lights
action_delay:
1002: 10
When the lights are on the run off afte 10 seconds. Exactly what I want, but ⊠turning the lights on will also take 10 seconds before they are turned on. Is is possible to check the state of the lights before applying the delay? And if so, how do I do it?
Regards,
Guido
Hi @MrTopKat,
Unfortunately, you cannot do this in a single config app, you will need to use 2. One for when the light is on, and another when is off with the callback constraint (AppDaemon feature):
kitchen_panel_controller_on:
module: controllerx
class: E1810Controller
controller: rc_kitchen
integration: deconz
light: light.kitchen_lights
action_delay:
1002: 10
constrain_input_select: light.kitchen_lights,on
kitchen_panel_controller_off:
module: controllerx
class: E1810Controller
controller: rc_kitchen
integration: deconz
light: light.kitchen_lights
constrain_input_select: light.kitchen_lights,off
Regards,
Xavi M.