[Z2M] Aqara Opple 6 boutons blueprint (WXCJKG13LM) [Updated 2025]

Hello everyone,

I’m sharing my blueprint on Aqara Opple 6 boutons (WXCJKG13LM) for zigbee2mqtt.

You can find the two button (one band) version here and four buttons (two bands) version here

Special thanks to @ThePirat & @mhoogenbosch for testing this out!!

This blueprint has no default values.

Open your Home Assistant instance and show the blueprint import dialog with a specific blueprint pre-filled.

blueprint:
  name: Z2M - Aqara Opple switch 3 bands (6 buttons)
  description: 'Control anything you want with Aqara Opple switch 3 bands (WXCJKG13LM).

    This blueprint was updated in January 2025 to stop facing the issues I had with
    the old one.

    I''m overwritting the old one as it used actions that are now long deprecated

    Each band button has single, double, triple, hold & release'
  author: Christian Bouyssi
  homeassistant:
    min_version: 2025.1.0
  domain: automation
  input:
    device_selection:
      name: Select the device you want to configure
      description: Aqara switch to use
      selector:
        device:
          filter:
          - integration: mqtt
            model: Opple wireless switch (triple band)
          - integration: mqtt
            model: Opple wireless switch (triple band) (WXCJKG13LM)
          multiple: false
    button_1_section:
      name: Actions for button 1
      icon: mdi:numeric-1-box
      collapsed: true
      input:
        button_1_single:
          name: Single click
          description: Action to run on single click
          default: []
          selector:
            action: {}
        button_1_double:
          name: Double click
          description: Action to run on double click
          default: []
          selector:
            action: {}
        button_1_triple:
          name: Triple click
          description: Action to run on triple click
          default: []
          selector:
            action: {}
        button_1_hold:
          name: Hold button
          description: Action to run on hold
          default: []
          selector:
            action: {}
        button_1_release:
          name: Release button
          description: Action to run after hold then release
          default: []
          selector:
            action: {}
    button_2_section:
      name: Actions for button 2
      icon: mdi:numeric-2-box
      collapsed: true
      input:
        button_2_single:
          name: Single click
          description: Action to run on single click
          default: []
          selector:
            action: {}
        button_2_double:
          name: Double click
          description: Action to run on double click
          default: []
          selector:
            action: {}
        button_2_triple:
          name: Triple click
          description: Action to run on triple click
          default: []
          selector:
            action: {}
        button_2_hold:
          name: Hold button
          description: Action to run on hold
          default: []
          selector:
            action: {}
        button_2_release:
          name: Release button
          description: Action to run after hold then release
          default: []
          selector:
            action: {}
    button_3_section:
      name: Actions for button 3
      icon: mdi:numeric-3-box
      collapsed: true
      input:
        button_3_single:
          name: Single click
          description: Action to run on single click
          default: []
          selector:
            action: {}
        button_3_double:
          name: Double click
          description: Action to run on double click
          default: []
          selector:
            action: {}
        button_3_triple:
          name: Triple click
          description: Action to run on triple click
          default: []
          selector:
            action: {}
        button_3_hold:
          name: Hold button
          description: Action to run on hold
          default: []
          selector:
            action: {}
        button_3_release:
          name: Release button
          description: Action to run after hold then release
          default: []
          selector:
            action: {}
    button_4_section:
      name: Actions for button 4
      icon: mdi:numeric-4-box
      collapsed: true
      input:
        button_4_single:
          name: Single click
          description: Action to run on single clic
          default: []
          selector:
            action: {}
        button_4_double:
          name: Double click
          description: Action to run on double click
          default: []
          selector:
            action: {}
        button_4_triple:
          name: Triple click
          description: Action to run on triple click
          default: []
          selector:
            action: {}
        button_4_hold:
          name: Hold button
          description: Action to run on hold
          default: []
          selector:
            action: {}
        button_4_release:
          name: Release button
          description: Action to run after hold then release
          default: []
          selector:
            action: {}
    button_5_section:
      name: Actions for button 5
      icon: mdi:numeric-5-box
      collapsed: true
      input:
        button_5_single:
          name: Single click
          description: Action to run on single clic
          default: []
          selector:
            action: {}
        button_5_double:
          name: Double click
          description: Action to run on double click
          default: []
          selector:
            action: {}
        button_5_triple:
          name: Triple click
          description: Action to run on triple click
          default: []
          selector:
            action: {}
        button_5_hold:
          name: Hold button
          description: Action to run on hold
          default: []
          selector:
            action: {}
        button_5_release:
          name: Release button
          description: Action to run after hold then release
          default: []
          selector:
            action: {}
    button_6_section:
      name: Actions for button 6
      icon: mdi:numeric-6-box
      collapsed: true
      input:
        button_6_single:
          name: Single click
          description: Action to run on single clic
          default: []
          selector:
            action: {}
        button_6_double:
          name: Double click
          description: Action to run on double click
          default: []
          selector:
            action: {}
        button_6_triple:
          name: Triple click
          description: Action to run on triple click
          default: []
          selector:
            action: {}
        button_6_hold:
          name: Hold button
          description: Action to run on hold
          default: []
          selector:
            action: {}
        button_6_release:
          name: Release button
          description: Action to run after hold then release
          default: []
          selector:
            action: {}
  source_url: https://community.home-assistant.io/t/z2m-aqara-opple-6-boutons-blueprint-wxcjkg13lm-updated-2025/822163
mode: restart
max_exceeded: silent
triggers:
- domain: mqtt
  device_id: !input device_selection
  type: action
  subtype: button_1_single
  trigger: device
- domain: mqtt
  device_id: !input device_selection
  type: action
  subtype: button_1_double
  trigger: device
- domain: mqtt
  device_id: !input device_selection
  type: action
  subtype: button_1_triple
  trigger: device
- domain: mqtt
  device_id: !input device_selection
  type: action
  subtype: button_1_hold
  trigger: device
- domain: mqtt
  device_id: !input device_selection
  type: action
  subtype: button_1_release
  trigger: device
- domain: mqtt
  device_id: !input device_selection
  type: action
  subtype: button_2_single
  trigger: device
- domain: mqtt
  device_id: !input device_selection
  type: action
  subtype: button_2_double
  trigger: device
- domain: mqtt
  device_id: !input device_selection
  type: action
  subtype: button_2_triple
  trigger: device
- domain: mqtt
  device_id: !input device_selection
  type: action
  subtype: button_2_hold
  trigger: device
- domain: mqtt
  device_id: !input device_selection
  type: action
  subtype: button_2_release
  trigger: device
- domain: mqtt
  device_id: !input device_selection
  type: action
  subtype: button_3_single
  trigger: device
- domain: mqtt
  device_id: !input device_selection
  type: action
  subtype: button_3_double
  trigger: device
- domain: mqtt
  device_id: !input device_selection
  type: action
  subtype: button_3_triple
  trigger: device
- domain: mqtt
  device_id: !input device_selection
  type: action
  subtype: button_3_hold
  trigger: device
- domain: mqtt
  device_id: !input device_selection
  type: action
  subtype: button_3_release
  trigger: device
- domain: mqtt
  device_id: !input device_selection
  type: action
  subtype: button_4_single
  trigger: device
- domain: mqtt
  device_id: !input device_selection
  type: action
  subtype: button_4_double
  trigger: device
- domain: mqtt
  device_id: !input device_selection
  type: action
  subtype: button_4_triple
  trigger: device
- domain: mqtt
  device_id: !input device_selection
  type: action
  subtype: button_4_hold
  trigger: device
- domain: mqtt
  device_id: !input device_selection
  type: action
  subtype: button_4_release
  trigger: device
- domain: mqtt
  device_id: !input device_selection
  type: action
  subtype: button_5_single
  trigger: device
- domain: mqtt
  device_id: !input device_selection
  type: action
  subtype: button_5_double
  trigger: device
- domain: mqtt
  device_id: !input device_selection
  type: action
  subtype: button_5_triple
  trigger: device
- domain: mqtt
  device_id: !input device_selection
  type: action
  subtype: button_5_hold
  trigger: device
- domain: mqtt
  device_id: !input device_selection
  type: action
  subtype: button_5_release
  trigger: device
- domain: mqtt
  device_id: !input device_selection
  type: action
  subtype: button_6_single
  trigger: device
- domain: mqtt
  device_id: !input device_selection
  type: action
  subtype: button_6_double
  trigger: device
- domain: mqtt
  device_id: !input device_selection
  type: action
  subtype: button_6_triple
  trigger: device
- domain: mqtt
  device_id: !input device_selection
  type: action
  subtype: button_6_hold
  trigger: device
- domain: mqtt
  device_id: !input device_selection
  type: action
  subtype: button_6_release
  trigger: device
actions:
- choose:
  - conditions:
    - condition: template
      value_template: '{{ trigger.payload == ''button_1_single'' }}'
    sequence: !input button_1_single
  - conditions:
    - condition: template
      value_template: '{{ trigger.payload == ''button_1_double'' }}'
    sequence: !input button_1_double
  - conditions:
    - condition: template
      value_template: '{{ trigger.payload == ''button_1_triple'' }}'
    sequence: !input button_1_triple
  - conditions:
    - condition: template
      value_template: '{{ trigger.payload == ''button_1_hold'' }}'
    sequence: !input button_1_hold
  - conditions:
    - condition: template
      value_template: '{{ trigger.payload == ''button_1_release'' }}'
    sequence: !input button_1_release
  - conditions:
    - condition: template
      value_template: '{{ trigger.payload == ''button_2_single'' }}'
    sequence: !input button_2_single
  - conditions:
    - condition: template
      value_template: '{{ trigger.payload == ''button_2_double'' }}'
    sequence: !input button_2_double
  - conditions:
    - condition: template
      value_template: '{{ trigger.payload == ''button_2_triple'' }}'
    sequence: !input button_2_triple
  - conditions:
    - condition: template
      value_template: '{{ trigger.payload == ''button_2_hold'' }}'
    sequence: !input button_2_hold
  - conditions:
    - condition: template
      value_template: '{{ trigger.payload == ''button_2_release'' }}'
    sequence: !input button_2_release
  - conditions:
    - condition: template
      value_template: '{{ trigger.payload == ''button_3_single'' }}'
    sequence: !input button_3_single
  - conditions:
    - condition: template
      value_template: '{{ trigger.payload == ''button_3_double'' }}'
    sequence: !input button_3_double
  - conditions:
    - condition: template
      value_template: '{{ trigger.payload == ''button_3_triple'' }}'
    sequence: !input button_3_triple
  - conditions:
    - condition: template
      value_template: '{{ trigger.payload == ''button_3_hold'' }}'
    sequence: !input button_3_hold
  - conditions:
    - condition: template
      value_template: '{{ trigger.payload == ''button_3_release'' }}'
    sequence: !input button_3_release
  - conditions:
    - condition: template
      value_template: '{{ trigger.payload == ''button_4_single'' }}'
    sequence: !input button_4_single
  - conditions:
    - condition: template
      value_template: '{{ trigger.payload == ''button_4_double'' }}'
    sequence: !input button_4_double
  - conditions:
    - condition: template
      value_template: '{{ trigger.payload == ''button_4_triple'' }}'
    sequence: !input button_4_triple
  - conditions:
    - condition: template
      value_template: '{{ trigger.payload == ''button_4_hold'' }}'
    sequence: !input button_4_hold
  - conditions:
    - condition: template
      value_template: '{{ trigger.payload == ''button_4_release'' }}'
    sequence: !input button_4_release
  - conditions:
    - condition: template
      value_template: '{{ trigger.payload == ''button_5_single'' }}'
    sequence: !input button_5_single
  - conditions:
    - condition: template
      value_template: '{{ trigger.payload == ''button_5_double'' }}'
    sequence: !input button_5_double
  - conditions:
    - condition: template
      value_template: '{{ trigger.payload == ''button_5_triple'' }}'
    sequence: !input button_5_triple
  - conditions:
    - condition: template
      value_template: '{{ trigger.payload == ''button_5_hold'' }}'
    sequence: !input button_5_hold
  - conditions:
    - condition: template
      value_template: '{{ trigger.payload == ''button_5_release'' }}'
    sequence: !input button_5_release
  - conditions:
    - condition: template
      value_template: '{{ trigger.payload == ''button_6_single'' }}'
    sequence: !input button_6_single
  - conditions:
    - condition: template
      value_template: '{{ trigger.payload == ''button_6_double'' }}'
    sequence: !input button_6_double
  - conditions:
    - condition: template
      value_template: '{{ trigger.payload == ''button_6_triple'' }}'
    sequence: !input button_6_triple
  - conditions:
    - condition: template
      value_template: '{{ trigger.payload == ''button_6_hold'' }}'
    sequence: !input button_6_hold
  - conditions:
    - condition: template
      value_template: '{{ trigger.payload == ''button_6_release'' }}'
    sequence: !input button_6_release

Changelog:

  • Jan 6. 2025: Removed multiple device support
  • Jan 5. 2025: Fixed typo, thanks @DSLeX. Added multiple device support
  • Jan 5. 2025: Removed manufacturer filter, left only model. Hopefully it will solve @mhoogenbosch issue.
  • Jan 4. 2025: Long overdue overall of this blueprint. Overwrote the old one as it was using actions that are deprecated today

Don’t hesitate to let me know if there are issues. I’ll try to solve them as soon as possible.
Have a great time & stay safe
Chris

It works like a charm…thanks for it!! :slight_smile:

1 Like

Thanks @ThePirat … It"s not working for @mhoogenbosch which is weird.

I will tinker a bit with him and remove the testing section in the description once we are all happy.

Can you help us with something? Can you tell us what’s the device info you get on the top right on the MQTT integration for that Aqara switch?

mhoogenbosch sees this:

Which is exactly what I setup as a filter on the blueprint, but no device is showing for him. On the devices I have, 1 and 2 bands, adding the WXCJxxx breaks the filter, that’s why I did’t mention it in the blueprint

Thanks for your help if you can👌

Yes of course… :wink:
Here we have

image

Well … :person_shrugging: !

Thanks for the quick answer @ThePirat . Another question for you. I didn’t add “multiple devices” discovery. Would that be useful in your opinion?

That could allow you, or anyone using the blueprint, to setup 2 different devices with exactly the same configuration. Let me know :wink:

Could be useful. I have an 4 button opple with the door entrance to my bedroom, but have a 6 button on my bedside. So that wouldn’t match, but can imagine other people have multiple of these devices laying around.

As send to you by dm, it works for me when I add the complete ‘model’, so including the WXCJKG13LM part.

Thanks a lot for your effort!

1 Like

Update done

I’ll add “multiple” feature later tonight

Thanks for your help testing on this device I don’t own

Hi @bouyssic, thank you for your amazing work. Very helpful.
I came across a small typo which renders buttons 4 to 6 double-click useless.
The blueprint states : “button_4_doule” instead of “button_4_double” (same for 5 and 6).
This also goes for the 4 button blueprint. Thank you.

1 Like

I’ll fix that after dinner and post back

@DSLeX , it’s fixed for the 6 bouttons :blush:

Sorry for that typo. I lost my brain cells copy pasting

Thanks, this worked great - however I have some issues getting the “Hold to dim” to work. Any idea on how I can set this up in the GUI to have it repeat for example a 10% increment when holding a button until I release it? I’ve tried a lot of stuff, but can’t seem to get it to repeat…

Hello @tottow ,

Normally you would do a “Repeat” until you receive a “Release” event.

So if you have an old Z2M, you have an entity where you receive actions from the switch

If you have the new Z2M, and have enabled the new events:

You should have an event.device_friendly_name that reports actions. As you can see from the screenshot above, I haven’t played with it yet.

I haven’t played either with brightness up or down, but the repeat action is the way to go in my opinion

Hi am using your new blueprint with the aqara 6 button and it is working for pressing the buttons. But on my old blueprint I could also use a repeat for dimming my light. How can I add this to your blueprint?

I’m new to yaml and don’t know yet how to manage.

Hi @pepe2 ,

We were just discussing that on another thread

You might want to have a look at it.

Chris