dresden-elektronik / deconz-rest-plugin

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

Sonoff ZBDongle-E (Router Firmware) #7636

Closed LeoeLeoeL closed 2 months ago

LeoeLeoeL commented 7 months ago

Is there already an existing issue for this?

Product name

Sonoff ZBDongle-E

Manufacturer

ITEAD

Model identifier

DONGLE-E_R

Device type to add

Other

Node info

image

Endpoints and clusters

image Deconz believes it's a lamp.

Basic

image

Further relevant clusters

Power Configuration

On/Off

image If I click on EXEC buttons I receive SUCCESS

Level Control

Color Control

Thermostat

Simple Metering

Electrical Measurement

Any other cluster of relevance/interest

BoBiene commented 6 months ago

I have the same. It shows up in the phoscon app as two devices: image

For those hwo like to use the Sonoff ZBDongle-E as range extender in phoscon / deconz:

  1. Download the router firmware from https://github.com/itead/Sonoff_Zigbee_Dongle_Firmware/tree/master/Dongle-E/Router
  2. Use Chrome / Edge and flash the firmware (on windows) with https://darkxst.github.io/silabs-firmware-builder/
  3. Disassemble the stick and power it on
  4. start pairing in phoscon
  5. press and hold the upper button on the stick (not the reset button) for 5-10 seconds and release the button
  6. flasing of the led should indicated the pairing.
github-actions[bot] commented 6 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.

LeoeLeoeL commented 5 months ago

I can see a lack of support on github in the last months.

github-actions[bot] commented 5 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.

LeoeLeoeL commented 5 months ago

Keeping alive.

github-actions[bot] commented 4 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.

LeoeLeoeL commented 4 months ago

Hoping for a DDF...

github-actions[bot] commented 3 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.

LeoeLeoeL commented 3 months ago

Hope is the last to die

Mimiix commented 3 months ago

@Smanar can you help out :)?

Smanar commented 3 months ago

Hello, and you just want to see it as router instead of light ? Can try this DDF

{
  "schema": "devcap1.schema.json",
  "manufacturername": "SONOFF",
  "modelid": "DONGLE-E_R",
  "product": "ZBDongle-E",
  "sleeper": false,
  "status": "Gold",
  "subdevices": [
    {
      "type": "$TYPE_RANGE_EXTENDER",
      "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/reachable"
        }
      ]
    }
  ]
}
LeoeLeoeL commented 3 months ago

Unable to load.

image

image

Mimiix commented 3 months ago

You can't load a json, needs to be a bundle..

@Smanar can you do a PR so we get a bundle?

Smanar commented 3 months ago

can you do a PR so we get a bundle?

Need to test it first, no ?

BTW have checked the file again, there is no typo inside. You have a real OS ? Can try to put the DDF in a "device" folder.

All DDF provided directly with deCONZ typically reside in /usr/share/deCONZ/devices/ on a Linux system and are loaded first. However, files residing in the home directory of the user running deCONZ (e.g. /home/<DECONZUSER>/.local/share/dresden-elektronik/deCONZ/devices) will override the pre-packaged files to allow users to amend and keep their own files if desired

Then just restart deconz.

Zehir commented 3 months ago

@Smanar you can open a draft PR so you get a bundle and it's not get merged.

You can also use the cli tool to generate the bundle

Mimiix commented 3 months ago

This user can't or won't test the json, he can only use the phosocn upload.

Phoscon upload only takes bundles, no jsons. Serious flaw in my opinion,but owell.

LeoeLeoeL commented 3 months ago

Last time to check the "Avatto-ZWSM16-2" DDF I loaded the json from DDF Editor.Now I performed the same actions. Why doesn't work this time?

image

Smanar commented 3 months ago

With the DDF on the folder and after a deconz restart, it need to pick itself the DDF. To choose them it use only

  "manufacturername": "SONOFF",
  "modelid": "DONGLE-E_R",

Perhaps you still have old entry created, just remove the device first, but I don't see something bad that can prevent the DDF be used.

LeoeLeoeL commented 3 months ago

Are we sure everything is ok with DDFs? I say that because I just realized I lost DDF in my OSRAM plugs. I had in a previous release.

Anyway, I can't load DDF for this range extender. I tried everything. There is a "default" DDF (not created by me that doesn't want to be deleted. { "schema": "devcap1.schema.json", "manufacturername": "SONOFF", "modelid": "DONGLE-E_R", "product": "DONGLE-E_R", "sleeper": false, "status": "Draft", "subdevices": [ { "type": "$TYPE_EXTENDED_COLOR_LIGHT", "restapi": "/lights", "uuid": [ "$address.ext", "0x02" ], "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": "cap/color/capabilities", "description": "The supported color modes as bitmap.", "refresh.interval": 86400, "read": { "at": "0x400a", "cl": "0x0300", "ep": 0, "fn": "zcl:attr" }, "parse": { "at": "0x400a", "cl": "0x0300", "ep": 0, "eval": "Item.val = Attr.val", "fn": "zcl:attr" } }, { "name": "cap/color/ct/max", "description": "Maximum supported color temperature.", "refresh.interval": 86400, "read": { "at": "0x400c", "cl": "0x0300", "ep": 0, "fn": "zcl:attr" }, "parse": { "at": "0x400c", "cl": "0x0300", "ep": 0, "eval": "Item.val = Attr.val", "fn": "zcl:attr" }, "default": "0xfeff" }, { "name": "cap/color/ct/min", "description": "Minimum supported color temperature.", "refresh.interval": 86400, "read": { "at": "0x400b", "cl": "0x0300", "ep": 0, "fn": "zcl:attr" }, "parse": { "at": "0x400b", "cl": "0x0300", "ep": 0, "eval": "Item.val = Attr.val", "fn": "zcl:attr" }, "default": 0 }, { "name": "state/alert", "description": "The currently active alert effect.", "default": "none" }, { "name": "state/bri", "description": "The current brightness.", "refresh.interval": 5, "read": { "at": "0x0000", "cl": "0x0008", "ep": 0, "fn": "zcl:attr" }, "parse": { "at": "0x0000", "cl": "0x0008", "ep": 0, "eval": "Item.val = Attr.val", "fn": "zcl:attr" } }, { "name": "state/colormode", "description": "The currently active color mode.", "refresh.interval": 300, "read": { "at": "0x0008", "cl": "0x0300", "ep": 0, "fn": "zcl:attr" }, "parse": { "at": "0x0008", "cl": "0x0300", "ep": 0, "eval": "if (Attr.val <= 2) Item.val = ['hs', 'xy', 'ct'][Attr.val]", "fn": "zcl:attr" } }, { "name": "state/ct", "description": "The current Mired color temperature of the light. Where Mired is 1000000 / color temperature (in kelvins).", "refresh.interval": 5, "read": { "at": "0x0007", "cl": "0x0300", "ep": 0, "fn": "zcl:attr" }, "parse": { "at": "0x0007", "cl": "0x0300", "ep": 0, "eval": "Item.val = Attr.val", "fn": "zcl:attr" } }, { "name": "state/effect", "description": "The currently active effect.", "refresh.interval": 300, "read": { "at": "0x4002", "cl": "0x0300", "ep": 0, "fn": "zcl:attr" }, "parse": { "at": "0x4002", "cl": "0x0300", "ep": 0, "eval": "Item.val = Attr.val ? 'colorloop' : 'none'", "fn": "zcl:attr" }, "default": "none" }, { "name": "state/hue", "description": "The current color hue.", "refresh.interval": 5, "read": { "at": "0x4000", "cl": "0x0300", "ep": 0, "fn": "zcl:attr" }, "parse": { "at": "0x4000", "cl": "0x0300", "ep": 0, "eval": "Item.val = Attr.val", "fn": "zcl:attr" } }, { "name": "state/on", "description": "True when device is on; false when off.", "refresh.interval": 5, "read": { "at": "0x0000", "cl": "0x0006", "ep": 0, "fn": "zcl:attr" }, "parse": { "at": "0x0000", "cl": "0x0006", "ep": 0, "eval": "Item.val = Attr.val", "fn": "zcl:attr" } }, { "name": "state/reachable" }, { "name": "state/sat", "description": "The current color saturation.", "refresh.interval": 5, "read": { "at": "0x0001", "cl": "0x0300", "ep": 0, "fn": "zcl:attr" }, "parse": { "at": "0x0001", "cl": "0x0300", "ep": 0, "eval": "Item.val = Attr.val", "fn": "zcl:attr" } }, { "name": "state/x", "description": "The current color x coordinate.", "refresh.interval": 5, "read": { "at": [ "0x0003", "0x0004" ], "cl": "0x0300", "ep": 0, "fn": "zcl:attr" }, "parse": { "at": "0x0003", "cl": "0x0300", "ep": 255, "eval": "Item.val = Attr.val", "fn": "zcl:attr" } }, { "name": "state/y", "description": "The current color y coordinate.", "parse": { "at": "0x0004", "cl": "0x0300", "ep": 255, "eval": "Item.val = Attr.val", "fn": "zcl:attr" } } ] }, { "type": "$TYPE_DIMMABLE_LIGHT", "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/alert", "description": "The currently active alert effect.", "default": "none" }, { "name": "state/bri", "description": "The current brightness.", "refresh.interval": 5, "read": { "at": "0x0000", "cl": "0x0008", "ep": 0, "fn": "zcl:attr" }, "parse": { "at": "0x0000", "cl": "0x0008", "ep": 0, "eval": "Item.val = Attr.val", "fn": "zcl:attr" } }, { "name": "state/on", "description": "True when device is on; false when off.", "refresh.interval": 5, "read": { "at": "0x0000", "cl": "0x0006", "ep": 0, "fn": "zcl:attr" }, "parse": { "at": "0x0000", "cl": "0x0006", "ep": 0, "eval": "Item.val = Attr.val", "fn": "zcl:attr" } }, { "name": "state/reachable" } ] } ] }

If I remove everything: image

add the range extender: image

save it: image

If I make a HOT RELOD or Reboot Deconz....: I have this again!!!! image

Smanar commented 3 months ago

What is your OS ?

There is a "default" DDF (not created by me that doesn't want to be deleted.

Are you seeing the file ? In wich one folder ?

sudo chmod -R 777 folder_name

To get Full right for a file, but on the capture the file path used is not locked for me. Can keep it, but replace the contain.

On my side I never use the editor, too much unknown magic inside, better to use text editor, and reload deconz (deconz read DDF file only at start)

LeoeLeoeL commented 3 months ago

Deconz runs in a Raspberry pi. I don't see the file. That DDF exists but I don't know why. The difference between the DDF you created and what DDF editor makes:

"schema": "devcap1.schema.json", "manufacturername": "SONOFF", "modelid": "DONGLE-E_R", "product": "ZBDongle-E", "sleeper": false, "status": "Gold",

"schema": "devcap1.schema.json", "manufacturername": "SONOFF", "modelid": "DONGLE-E_R", "product": "DONGLE-E_R", "sleeper": false, "status": "Gold", "path": "/devices/dongle-e_r.json",

LeoeLeoeL commented 3 months ago

Is there anything different about DDFs between 2.26.3 and 2.27.2?

2.27.2 image

2.26.3 image

As I wrote above. In the latest beta I lost some DDFs.

Ok, there is something "strange" in the latest beta. With the last stable i loaded the DDF immediately. image Anyway, the anomalyis still present (it's seen as 2 light devices)

Mimiix commented 3 months ago

Is there anything different about DDFs between 2.26.3 and 2.27.2?

2.27.2 image

2.26.3 image

As I wrote above. In the latest beta I lost some DDFs.

Ok, there is something "strange" in the latest beta. With the last stable i loaded the DDF immediately. image Anyway, the anomalyis still present (it's seen as 2 light devices)

The last beta is confirmed to have issues with ddfs in general. I recommend staying on 2.26.3 for now

Smanar commented 3 months ago

Anyway, the anomalyis still present (it's seen as 2 light devices)

With the good DDF ? Deconz have picked the good one ? you will see the same thing in deconz, the difference will be only in the API.

The difference between the DDF you created and what DDF editor makes:

Thoses difference are normal, but if you have only "type": "$TYPE_RANGE_EXTENDER", on the DDF I on't see why deconz still creating the 2 others one ...

I don't see the file

No typo in file path ? File is not hidden.

LeoeLeoeL commented 3 months ago

I tried both. Anyway, the DDF wasn't OK because, after minutes, the device lost all links with the others.

Smanar commented 3 months ago

the DDF wasn't OK because, after minutes, the device lost all links with the others.

The device is passive, the DDF too, it don't have impact on the device, It just have a cosmetic result (at least it need to have if working)

github-actions[bot] commented 2 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 2 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.