Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ERROR Failed to configure device #6924

Closed
KrystofVydra opened this issue Apr 2, 2021 · 1 comment
Closed

ERROR Failed to configure device #6924

KrystofVydra opened this issue Apr 2, 2021 · 1 comment
Labels
problem Something isn't working stale Stale issues

Comments

@KrystofVydra
Copy link

KrystofVydra commented Apr 2, 2021

I am working on a project. Basically it should be battery powered window covering/blinds on Nordic NRF52840 platform.
But I am stuck on reporting the Battery Remaining Percentage attribute to the Z2M.
I have already managed to report the attribute from #1 DK running the main application to #2 DK that was running CLI coordinator from Nordic. I had to bind to the Power Config cluster and then subscribe to the Battery Remaining Percentage attribute. The reporting worked after that.

But now I don't know how to manage the binding in Z2M.

This is the device entry in devices.js:
{ zigbeeModel: ['Window_Covering_v0.1'], model: 'model', vendor: 'vendor', description: 'description', fromZigbee: [fz.cover_position_tilt, fz.battery], toZigbee: [tz.cover_state, tz.cover_position_tilt], meta: {configureKey: 2, battery: {dontDividePercentage: true}}, ota: ota.tradfri, configure: async (device, coordinatorEndpoint, logger) => { const endpoint = device.getEndpoint(1); await reporting.bind(endpoint, coordinatorEndpoint, ['genPowerCfg', 'closuresWindowCovering']); await reporting.batteryPercentageRemaining(endpoint); await reporting.currentPositionLiftPercentage(endpoint); }, exposes: [e.cover_position(), e.battery()], },

(the entry is just copied from IKEA roller blinds, but all the clusters are the same on my device, so that shouldn't be a problem)

but I get this error:
Zigbee2MQTT:error 2021-04-02 11:52:10: Failed to configure '0xf4ce36250feaeb0e', attempt 1 (TypeError: Cannot read property 'bind' of undefined at Object.bind (/opt/zigbee2mqtt/node_modules/zigbee-herdsman-converters/lib/reporting.js:33:24) at Object.configure (/opt/zigbee2mqtt/node_modules/zigbee-herdsman-converters/devices.js:2808:29) at Configure.configure (/opt/zigbee2mqtt/lib/extension/configure.js:131:45) at Configure.onZigbeeEvent (/opt/zigbee2mqtt/lib/extension/configure.js:113:18) at Controller.callExtensionMethod (/opt/zigbee2mqtt/lib/controller.js:382:44))

I have tried reinstalling Z2M and flashing my CC2531 dongle with newest fw (from here: https://www.zigbee2mqtt.io/information/flashing_the_cc2531.html)

This is the device entry in database.db
{"id":2,"type":"Router","ieeeAddr":"0xf4ce36250feaeb0e","nwkAddr":1125,"manufId":4660,"manufName":"Nordic","powerSource":"DC Source","modelId":"Window_Covering_v0.1","epList":[10,242],"endpoints":{"10":{"profId":260,"epId":10,"devId":514,"inClusterList":[0,3,258,5,1,4],"outClusterList":[],"clusters":{"genBasic":{"attributes":{"modelId":"Window_Covering_v0.1","manufacturerName":"Nordic","powerSource":4,"zclVersion":2,"appVersion":1,"stackVersion":10,"hwVersion":11,"dateCode":"20180416","swBuildId":""}}},"binds":[],"configuredReportings":[],"meta":{}},"242":{"profId":41440,"epId":242,"devId":97,"inClusterList":[],"outClusterList":[33],"clusters":{},"binds":[],"configuredReportings":[],"meta":{}}},"appVersion":1,"stackVersion":10,"hwVersion":11,"dateCode":"20180416","swBuildId":"","zclVersion":2,"interviewCompleted":true,"meta":{},"lastSeen":1617367290150}

Here is the complete Z2M log:
https://pastebin.com/fhjSiFL0

Maybe I am doing this completely wrong or maybe it is a bug in Z2M?

What happened

Configuration error
Zigbee2MQTT:error 2021-04-02 11:52:10: Failed to configure '0xf4ce36250feaeb0e', attempt 1 (TypeError: Cannot read property 'bind' of undefined

What did you expect to happen

Configure the device (bind to attributes) and enable reporting.

How to reproduce it (minimal and precise)

    configure: async (device, coordinatorEndpoint, logger) => {
        const endpoint = device.getEndpoint(1);
        await reporting.bind(endpoint, coordinatorEndpoint, ['genPowerCfg', 'closuresWindowCovering']);
        await reporting.batteryPercentageRemaining(endpoint);
        await reporting.currentPositionLiftPercentage(endpoint);
    },

in device entry in devices.js

Debug info

Zigbee2MQTT version: 1.18.2
Adapter hardware: CC2531
Adapter firmware version: 20201127

@KrystofVydra KrystofVydra added the problem Something isn't working label Apr 2, 2021
@github-actions
Copy link
Contributor

github-actions bot commented May 3, 2021

This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 7 days

@github-actions github-actions bot added the stale Stale issues label May 3, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
problem Something isn't working stale Stale issues
Projects
None yet
Development

No branches or pull requests

1 participant