Experience integrating Duux products?

Re: Duux integration

I have a DUUX Threesixty 2 which has the new chip and doesn’t support the old methods of adding it to Tuya. My workaround is similar to @acjtaal : use IFTTT Webhooks + Alexa to trigger commands and helpers + automation on the Home Assistant side.

How to:

  1. In the DUUX App (Gen 2), set up the Alexa integration
  2. In IFTTT, set up Alexa Actions by mkZense integrations. The free account allows you to set up 3 actions, you will need 2 of them. Make sure to not name them Heater since that can conflict with voice commands. I named them Virtual-Switch-On and -Off.
  3. In Alexa, set up 2 routines using those virtual buttons as triggers. Add an action → Smart Home → Thermostats → DUUX Threesixty 2.

For powering on, you can also set the desired temperature. What I noticed is that if you set the temperatue, it will turn on in Mode III (high = 1800W). If you don’t set the temperature it uses the lowest Mode I = 800W in my case. I haven’t found a way to power it on in Mode II (~1200W).

  1. In IFTTT: Create applets to turn the heater on and off. I use a webhook request with a specific event turn_duux_heater_on, which triggers the corresponding Alexa routine through mkzense (e.g. Virtual-Switch-On)


  2. Set up in home assistant

ifttt:
  key: !secret ifttt_key
  • Add a helper boolean switch
input_boolean:
  duux_heater_switch:
    name: DUUX Heater Switch
    initial: false
    icon: mdi:radiator
  • Use an automation to trigger IFTTT events when you toggle the switch
description: "DUUX Heater Alexa + IFTTT On/Off"
mode: queued
trigger:
  - platform: state
    entity_id:
      - input_boolean.duux_heater_switch
action:
  - if:
      - condition: state
        entity_id: input_boolean.duux_heater_switch
        state: "on"
    then:
      - service: ifttt.trigger
        data:
          event: turn_duux_heater_on
    else:
      - if:
          - condition: state
            entity_id: input_boolean.duux_heater_switch
            state: "off"
        then:
          - service: ifttt.trigger
            data:
              event: turn_duux_heater_off
max: 5

That should make the helper switch work (on/off). I’ve added 2 more bonus things:

  • Sometimes the Alexa routine doesn’t execute properly / needs a retry. I have a power plug meter, so for example I wrapped the turn_duux_heater_off in a Repeat/Until the power meter draw is < 1W, where I repeat + sleep 30 seconds until it’s off.
  • I have a separate temperature sensor in the room, which allows you to use Generic Thermostat - Home Assistant and have a nicer UX. It uses the helper switch to turn things on and off. This is what I added to my configuration.yaml.
climate:
  - platform: generic_thermostat
    unique_id: duux_heater_thermostat
    name: DUUX Heater
    heater: input_boolean.duux_heater_switch
    initial_hvac_mode: heat
    target_sensor: sensor.upstairs_temperature
    max_temp: 23
    target_temp: 17
    target_temp_step: 0.1
    sleep_temp: 17
    comfort_temp: 19
    away_temp: 15
    min_cycle_duration:
      seconds: 15

And using the Mushroom climate card it looks like this, which means you get temperature control + switch off/on when temperature is reached:
duux-heater-hass