dresden-elektronik / deconz-rest-plugin

deCONZ REST-API plugin to control ZigBee devices
BSD 3-Clause "New" or "Revised" License
1.9k stars 502 forks source link

Equation wire pilot heating #7280

Closed Mimic33 closed 10 months ago

Mimic33 commented 1 year ago

Is there already an existing issue for this?

Product name

Equation wire pilot heating

Manufacturer

Adeo

Model identifier

SIN-4-FP-21_EQU

Device type to add

None

Node info

Node info

Endpoints and clusters

Endpoints

Basic

Basic1 Basic2

Further relevant clusters

Power Configuration

On/Off

OnOff1 OnOff2

Level Control

Color Control

Thermostat

Simple Metering

Metering1 Metering2 Metering3

Electrical Measurement

Green Power

GreenPower

Identify :

Identify

Groups :

Groups

Scenes :

Scenes1 Scenes2

Mimiix commented 1 year ago

Can you please add all cluster screenshots to the opening post?

Mimic33 commented 1 year ago

Hi, here an issue for a wire pilot heating module. It has been recognized in Deconz and Jeedom but I only have state/on and off in Jeedom. And the off option corresponds to the no frost protection on the heater, not the off option. Normally I would have 6 orders (Confort, Off, no frost protection, eco, ...). This module could also give the consumption. Thanks.

Mimic33 commented 1 year ago

Do you want the OTAU also ?

Mimiix commented 1 year ago

Do you want the OTAU also ?

No , thats fine.

Please add the screens in the opening post, makes it easier to read :)

Mimic33 commented 1 year ago

OK, done :) Sorry it's my first time :)

github-actions[bot] commented 1 year ago

As there has not been any response in 21 days, this issue has been automatically marked as stale. At OP: Please either close this issue or keep it active It will be closed in 7 days if no further activity occurs.

Mimic33 commented 1 year ago

Hello, any news ? Thanks.

hcharbonnier commented 1 year ago

News from Nodon (for zigbee2mqttsupport): "Integration is in progress. It will be done within a few days."

Mimic33 commented 1 year ago

OK thanks, and for Deconz, you know ?

pipiche38 commented 1 year ago

+1

Smanar commented 1 year ago

lol, @pipiche38 you are using deconz too ? On my side, it's not my priority as I already have problem with the Legrand one, the "fil pliote" is something "exotic" for not french user, and hard to integrate it without making a "special" stuff for it (it have problem on HA support for exemple)

Mimic33 commented 11 months ago

OK thanks for the reply. Maybe ideas her https://github.com/Koenkk/zigbee-herdsman-converters/pull/6429

github-actions[bot] commented 11 months ago

As there has not been any response in 21 days, this issue has been automatically marked as stale. At OP: Please either close this issue or keep it active It will be closed in 7 days if no further activity occurs.

github-actions[bot] commented 10 months ago

As there has not been any response in 28 days, this issue will be closed. @ OP: If this issue is solved post what fixed it for you. If it is not solved, request to get this opened again.

Mimic33 commented 10 months ago

This request has been closed ?

Smanar commented 10 months ago

Yep, by a bot after a period without reaction. Can be re-opened, but I don't think someone have started something.

Mimiix commented 10 months ago

@Smanar happy to be re open but what do we need ?

Smanar commented 10 months ago

For me nothing, this device have a working mode too much exotic, it will be problematic in deconz and later in the HA plugin. If someone want to spend some time, I think the DDF need to have something like

{
  "name": "config/mode",
          "values": [
              ["confort", 1], ["confort-1", 4], ["confort-2", 5], ["confort-2", 3], ["eco", 2], ["hors gel", 3], ["off", 0]
          ],
  "parse": {
    "fn": "zcl:cmd",
    "ep": 1,
    "cl": "0xFC00",
    "cmd": "0x00",
    "eval": "if (Attr.val == 0) { Item.val = 'off' } else if (Attr.val == 1) { Item.val = 'confort' } else { Item.val = 'confort-2' }"
  },
  "read": {
    "fn": "zcl:cmd",
    "ep": 1,
    "cl": "0xFC00",
    "cmd": "0x00",
    "eval": "if (Attr.val == 0) { Item.val = 'off' } else if (Attr.val == 1) { Item.val = 'confort' } else { Item.val = 'confort-2' }"
  },
  "write": {
    "fn": "zcl:cmd",
    "ep": 1,
    "cl": "0xFC00",
    "cmd": "0x00",
    "eval": "if (Item.val == 'off') { 0 } else if (Item.val == 'confort') { 1 } else { 3 }"
  }
}
Mimic33 commented 10 months ago

Thanks, and if I want to use it, what I have to do ?

Smanar commented 10 months ago

Make a complete DDF. For exemple to start

{
  "schema": "devcap1.schema.json",
  "ddfvalidate": false,
  "manufacturername": "Adeo",
  "modelid": "SIN-4-FP-21_EQU",
  "product": "Cable outlet",
  "sleeper": false,
  "status": "Gold",
  "subdevices": [
    {
      "type": "$TYPE_THERMOSTAT",
      "restapi": "/sensors",
      "uuid": [
        "$address.ext",
        "0x01",
        "0x0201"
      ],
      "items": [
        {
          "name": "attr/id"
        },
        {
          "name": "attr/lastannounced"
        },
        {
          "name": "attr/lastseen"
        },
        {
          "name": "attr/manufacturername"
        },
        {
          "name": "attr/modelid"
        },
        {
          "name": "attr/name"
        },
        {
          "name": "attr/swversion"
        },
        {
          "name": "attr/type"
        },
        {
          "name": "attr/uniqueid"
        },
        {
          "name": "config/mode",
          "values": [["confort",1],["confort-1",4],["confort-2",5],["confort-2",3],["eco",2],["hors gel",3],["off",0]],
          "parse": {
            "fn": "zcl:cmd",
            "ep": 1,
            "cl": "0xFC00",
            "cmd": "0x00",
            "eval": "if (Attr.val == 0) { Item.val = 'off' } else if (Attr.val == 1) { Item.val = 'confort' } else { Item.val = 'confort-2' }"
          },
          "read": {
            "fn": "zcl:cmd",
            "ep": 1,
            "cl": "0xFC00",
            "cmd": "0x00",
            "eval": "if (Attr.val == 0) { Item.val = 'off' } else if (Attr.val == 1) { Item.val = 'confort' } else { Item.val = 'confort-2' }"
          },
          "write": {
            "fn": "zcl:cmd",
            "ep": 1,
            "cl": "0xFC00",
            "cmd": "0x00",
            "eval": "if (Item.val == 'off') { 0 } else if (Item.val == 'confort') { 1 } else { 3 }"
          }
        },
        {
          "name": "config/on"
        },
        {
          "name": "config/reachable"
        },
        {
          "name": "state/lastupdated"
        }
      ]
    },
    {
      "type": "$TYPE_ON_OFF_OUTPUT",
      "restapi": "/lights",
      "uuid": [
        "$address.ext",
        "0x01"
      ],
      "items": [
        {
          "name": "attr/id"
        },
        {
          "name": "attr/lastannounced"
        },
        {
          "name": "attr/lastseen"
        },
        {
          "name": "attr/manufacturername"
        },
        {
          "name": "attr/modelid"
        },
        {
          "name": "attr/name"
        },
        {
          "name": "attr/swversion"
        },
        {
          "name": "attr/type"
        },
        {
          "name": "attr/uniqueid"
        },
        {
          "name": "state/on",
          "refresh.interval": 5
        },
        {
          "name": "state/reachable"
        }
      ]
    }
  ],
  "bindings": [
    {
      "bind": "unicast",
      "src.ep": 1,
      "cl": "0xFC00",
      "report": [
        {
          "at": "0x0021",
          "dt": "0x20",
          "min": 1,
          "max": 3600,
          "change": "0x00000000"
        }
      ]
    }
  ]
}