Blitzwolf BW-SHP13 (_TZ3000_amdymr7l) reports ZERO current consumption regularly

I see a (major) issue with the new hardware revision (see Update frequency Blitzwolf BW-SHP13 (TZ3000_g5xawfcq) - #25 by bcutter for history) its current consumption falls to 0 W almost exactly every 5 minutes:

:frowning:

See my custom DDF here:
{
  "schema": "devcap1.schema.json",
  "manufacturername": [
    "_TZ3000_g5xawfcq",
    "_TZ3000_amdymr7l"
  ],
  "modelid": [
    "TS0121",
    "TS011F"
  ],
  "vendor": "Blitzwolf",
  "product": "BW-SHP13",
  "sleeper": false,
  "status": "Gold",
  "subdevices": [
    {
      "type": "$TYPE_SMART_PLUG",
      "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",
          "default": "none"
        },
        {
          "name": "state/on",
          "refresh.interval": 5
        },
        {
          "name": "state/reachable"
        }
      ]
    },
    {
      "type": "$TYPE_POWER_SENSOR",
      "restapi": "/sensors",
      "uuid": [
        "$address.ext",
        "0x01",
        "0x0b04"
      ],
      "fingerprint": {
        "profile": "0x0104",
        "device": "0x0051",
        "endpoint": "0x01",
        "in": [
          "0x0000",
          "0x0B04"
        ]
      },
      "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/on"
        },
        {
          "name": "config/reachable"
        },
        {
          "name": "state/current",
          "refresh.interval": 10,
          "default": 0
        },
        {
          "name": "state/lastupdated"
        },
        {
          "name": "state/power",
          "refresh.interval": 10,
          "default": 0
        },
        {
          "name": "state/voltage",
          "refresh.interval": 10,
          "default": 0
        }
      ]
    },
    {
      "type": "$TYPE_CONSUMPTION_SENSOR",
      "restapi": "/sensors",
      "uuid": [
        "$address.ext",
        "0x01",
        "0x0702"
      ],
      "fingerprint": {
        "profile": "0x0104",
        "device": "0x0051",
        "endpoint": "0x01",
        "in": [
          "0x0000",
          "0x0702"
        ]
      },
      "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/on"
        },
        {
          "name": "config/reachable"
        },
        {
          "name": "state/consumption",
          "refresh.interval": 300,
          "read": {
            "at": "0x0000",
            "cl": "0x0702",
            "ep": 0,
            "fn": "zcl"
          },
          "parse": {
            "at": "0x0000",
            "cl": "0x0702",
            "ep": 0,
            "eval": "Item.val = Attr.val * 10"
          },
          "default": 0
        },
        {
          "name": "state/lastupdated"
        }
      ]
    }
  ],
  "bindings": [
    {
      "bind": "unicast",
      "src.ep": 1,
      "cl": "0x0006",
      "report": [
        {
          "at": "0x0000",
          "dt": "0x10",
          "min": 1,
          "max": 300
        }
      ]
    },
    {
      "bind": "unicast",
      "src.ep": 1,
      "cl": "0x0702",
      "report": [
        {
          "at": "0x0000",
          "dt": "0x25",
          "min": 1,
          "max": 300,
          "change": "0x0000000A"
        }
      ]
    },
    {
      "bind": "unicast",
      "src.ep": 1,
      "cl": "0x0B04",
      "report": [
        {
          "at": "0x0505",
          "dt": "0x21",
          "min": 1,
          "max": 20,
          "change": "0x00000001"
        },
        {
          "at": "0x0508",
          "dt": "0x21",
          "min": 1,
          "max": 20,
          "change": "0x00000064"
        },
        {
          "at": "0x050B",
          "dt": "0x29",
          "min": 1,
          "max": 10,
          "change": "0x00000001"
        }
      ]
    }
  ]
}

@Smanar No I have not - because as already mentioned the same DDF is relevant for both hardware revisions/models.

But looking at my DDF again, I think I could split those and set another frequency for the “_TZ3000_amdymr7l” which is having the zero current consumption issue, right?

Yep, you can split DDF or create a new one in the “user” folder, as this one have priority on the one in the deconz folder. But will be not something easy on HA

For me the easier is removing your model on the existing one and make a new one for test for this manufacture name.

"manufacturername": ["_TZ3000_g5xawfcq", "_TZ3000_amdymr7l"],

But you have too _TZ3000_amdymr7l ?

The similar issue is here Aubess 20A smart plug Zigbee 3.0 · Issue #6423 · dresden-elektronik/deconz-rest-plugin · GitHub

I removed the new hardware revision both from manufacturername and modelid, saved, performed a hot reload of the changed DDF.

Checked with deCONZ (right click: edit DDF):

  • For the old ones my custom config was still referenced, for the new one the default config. :white_check_mark:
  • I did neither reload the deCONZ integration in HA nor restart the deCONZ addon.

I powered up one of the newer plugs (_TZ3000_amdymr7l) and looked at the current consumption graph for a while (at least a few iterations of 5 minute slots which is the interval the “zero consumption bug” kicked in before):

As you can see, that changed really nothing so far.

  1. Can I be sure the changed DDF has really been applied to the newer hardware?
  2. Which setting in detail might cause this 5 minute-zero consumption-bug? I suspect this one (default DDF):
    grafik
    (changed that to 10 seconds, saved, hot reloaded - no change in the graph in HA)
    …maybe also one of these:
  3. Shall I open an issue for this on the deCONZ GitHub repository?

Not sure how to make any progress on this.

The line “refresh.interval” is used when reporting is not working, so for you it’s never used, you can remove it from the DDF

Max is the maximum time without reporting.
Change is the difference value that can trigger a report

Can I be sure the changed DDF has really been applied to the newer hardware?

Can enable logging with flag “DDF”, and make a “hot reload” you will see usefull line in debug log.

Not sure how to make any progress on this.

For me need to check on zigbee side, if you enable both “APS” flags in logs you will see the raw value, (need to be enabled in same time than “DDF” to see the zero value to locate the good request.

If the 0 is from the device, it’s device firmware, can do nothing. Except use a hack if there is a way to detect the faulty request.