Open mti-sk opened 3 months ago
I support the addition of some sort of Green Power Proxy (client/output) and Green Power Sink (server/input) label. Would also be helpful to note if unicast commissioning is working. @Koenkk What do you think?
@mti-sk There's already a lengthy discussion https://github.com/Koenkk/zigbee2mqtt/issues/22897 about Green Power going on right now. 😇
@burmistrzak the TI SDK doesnt support a green power proxy for the coordinator (and even if, the GP device has to be in direct range, not very practical), so thats why a dedicated router is needed. From my knowledge, all Hue devices support green power.
the TI SDK doesnt support a green power proxy for the coordinator (and even if, the GP device has to be in direct range, not very practical), so thats why a dedicated router is needed. From my knowledge, all Hue devices support green power.
@Koenkk Oh no no, I know that. 😇 I was talking about adding a some sort of label to the device directory so that (confirmed working) Green Power capable devices can easily be identified. While it's true that almost all Hue devices support GP Proxy, only the ones without GP Sink functionality actually do Green Power unicast correctly. See https://github.com/Koenkk/zigbee2mqtt/issues/22897#issuecomment-2155595054
I guess it makes sense to add a GP part of the docs to confirm what devices (not on the device page itself as that would be too scattered). Would you like to create a PR for it?
I guess it makes sense to add a GP part of the docs to confirm what devices (not on the device page itself as that would be too scattered). Would you like to create a PR for it?
Sure, but where to put it? Here?
That would be a good place indeed!
@mti-sk Have you tried to pair your powertag directly to the coordinator ? As you are on ember,
you should normally be able to do it. I just had a try on a test network (Dongle-E fw 7.4.3) and a ZGP PTM216Z paired directly to the coordinator without any other devices in the network.
I had some tries at the beginning of ember
driver and as far as I remember, it was difficult to pair a ZGP device via a specific router. I was unable to sniff traffic unless someone knows how to sniff with a TI CC2652P...
Hi, The problem with ZB GreenPower device pairing persists even in the new version of ZB2MQTT (1.39). Pairing does not work either directly or via the ZigBee GreenPower Proxy (in my case: Ikea LED2103G5). The following message pops up when browsing: Error: Parameter 'tempMaster' is missing. Is it a bug in the Sonoff Dognle-E firmware (v7.4.2 or v7.4.3), or is it a ZB2MQTT bug? What version can I downgrade the dongle to to bypass: 'tempMaster' is missing ? I also wondered if the ZB GreenPower devices do not require a specific zigbee channel, e.g.:ch5 ?? I think my network is on channel 11. Why are some messages ignored as coming from the coordinator when they appear to be from ZG GreenPower? (last one in log)
Similar as #21306
[2024-08-02 05:17:23] info: z2m: Starting Zigbee2MQTT version 1.39.0 (commit #0326926) [2024-08-02 05:17:23] info: z2m: Starting zigbee-herdsman (0.50.1) [2024-08-02 05:17:25] debug: zh:ember: NCP version info: {"ezsp":13,"revision":"7.4.3 [GA]","build":0,"major":7,"minor":4,"patch":3,"special":0,"type":170} [2024-08-02 05:18:27] error: zh:controller:greenpower: Error: Parameter 'tempMaster' is missing [2024-08-02 05:18:27] debug: zh:controller: Received payload: clusterID=33, address=0, groupID=2948, endpoint=242, destinationEndpoint=242, wasBroadcast=true, linkQuality=230, frame={"header":{"frameControl":{"frameType":1,"manufacturerSpecific":false,"direction":0,"disableDefaultResponse":false,"reservedBits":0},"manufacturerCode":null,"transactionSequenceNumber":1,"commandIdentifier":0},"payload":{"options":0,"srcID":0,"frameCounter":4294967295,"commandID":227,"payloadSize":1,"commandFrame":{"nextChannel":5,"nextNextChannel":8}},"command":{"ID":0,"parameters":[{"name":"options","type":33},{"name":"srcID","type":35,"conditions":[{"type":"bitFieldEnum","param":"options","offset":0,"size":3,"value":0}]},{"name":"gpdIEEEAddr","type":240,"conditions":[{"type":"bitFieldEnum","param":"options","offset":0,"size":3,"value":2}]},{"name":"gpdEndpoint","type":32,"conditions":[{"type":"bitFieldEnum","param":"options","offset":0,"size":3,"value":2}]},{"name":"frameCounter","type":35},{"name":"commandID","type":32},{"name":"payloadSize","type":32},{"name":"commandFrame","type":1009},{"name":"gppNwkAddr","type":33,"conditions":[{"type":"bitMaskSet","param":"options","mask":16384}]},{"name":"gppGddLink","type":32,"conditions":[{"type":"bitMaskSet","param":"options","mask":16384}]}],"name":"notification"}} [2024-08-02 05:18:27] debug: z2m: Received Zigbee message from 'Coordinator', type 'commandNotification', cluster 'greenPower', data '{"commandFrame":{"nextChannel":5,"nextNextChannel":8},"commandID":227,"frameCounter":4294967295,"options":0,"payloadSize":1,"srcID":0}' from endpoint 242 with groupID 2948, ignoring since it is from coordinator
Hi, I have to confirm that the ZBDongle P adapter (based on CC2652P) works very well for pairing with PowerTag. I got my hands on one of the last pieces of ZBDongle-P and the pairing was done in 2s. Of course, direct pairing is not possible, a ZB GreenPower Proxy is needed (in my case: Ikea LED2103G5)
The Sonoff ZBDongle-E (V2 model, EFR32MG21) is a good coordinator, but to my great disappointment it is not possible to use it for ZB GreenPower devices. (error: zh:controller:greenpower: Error: Parameter 'tempMaster' is missing) So now please try to advise whether I should migrate the entire network to the older ZBDongle-P or wait for the ZBDongle-E firmware bug to be fixed ???? or is the problem in ZB2MQTT ????
Hi, could someone please comment, what is your opinion, where is the problem with: error: zh:controller:greenpower: Error: Parameter 'tempMaster' is missing This is an error in:
Hi, This seems to fix: #1151 - Ember: fix GP proxied messages handling. solved, at least partially solved ZGP device pairing (at least for now: ZB2MQTT v1.40.0, ZBDongle-E fw7.4.4 ). My PowerTag A9MEM1570 can now be paired via GPP to the network with the ZBDongle-E coordinator (V2 model, EFR32MG21) . Problems with the missing parameter :greenpower: Error: Parameter 'tempMaster' is missing still persist, but seem to be non-fatal now and the A9MEM1570 is communicating with the network. Thank you all for your efforts.
Here's some error log for pairing r9mem powertag:
error 2024-09-08 09:32:07zh:controller:greenpower: Error: Parameter 'tempMaster' is missing at ZclFrame.writePayloadCluster (/app/node_modules/zigbee-herdsman/src/zspec/zcl/zclFrame.ts:133:23) at ZclFrame.toBuffer (/app/node_modules/zigbee-herdsman/src/zspec/zcl/zclFrame.ts:77:18) at EmberAdapter.sendZclFrameToAll (/app/node_modules/zigbee-herdsman/src/adapter/ember/adapter/emberAdapter.ts:2595:31) at GreenPower.onZclGreenPowerData (/app/node_modules/zigbee-herdsman/src/controller/greenPower.ts:226:40) at processTicksAndRejections (node:internal/process/task_queues:95:5) at runNextTicks (node:internal/process/task_queues:64:3) at processImmediate (node:internal/timers:447:9) at Controller.onZclPayload (/app/node_modules/zigbee-herdsman/src/controller/controller.ts:688:13) info 2024-09-08 09:32:11zh:controller:greenpower: Received commissioning from '25115' error 2024-09-08 09:32:11zh:controller:greenpower: Error: Parameter 'tempMaster' is missing at ZclFrame.writePayloadCluster (/app/node_modules/zigbee-herdsman/src/zspec/zcl/zclFrame.ts:133:23) at ZclFrame.toBuffer (/app/node_modules/zigbee-herdsman/src/zspec/zcl/zclFrame.ts:77:18) at EmberAdapter.sendZclFrameToAll (/app/node_modules/zigbee-herdsman/src/adapter/ember/adapter/emberAdapter.ts:2595:31) at GreenPower.onZclGreenPowerData (/app/node_modules/zigbee-herdsman/src/controller/greenPower.ts:154:44) at processTicksAndRejections (node:internal/process/task_queues:95:5) at runNextTicks (node:internal/process/task_queues:64:3) at processImmediate (node:internal/timers:447:9) at Controller.onZclPayload (/app/node_modules/zigbee-herdsman/src/controller/controller.ts:688:13) info 2024-09-08 09:32:11zh:controller:greenpower: Received commissioning from '46885' info 2024-09-08 09:32:12z2m:mqtt: MQTT publish: topic 'homeassistant/sensor/0x00000000e205621b/linkquality/config', payload '{"availability":[{"topic":"zigbee2mqtt/bridge/state","value_template":"{{ value_json.state }}"}],"device":{"identifiers":["zigbee2mqtt_0x00000000e205621b"],"manufacturer":"","model":"Automatically generated definition (GreenPower_92)","name":"0x00000000e205621b","via_device":"zigbee2mqtt_bridge_0xf082c0fffe433135"},"enabled_by_default":false,"entity_category":"diagnostic","icon":"mdi:signal","name":"Linkquality","object_id":"0x00000000e205621b_linkquality","origin":{"name":"Zigbee2MQTT","sw":"1.40.0","url":"https://www.zigbee2mqtt.io"},"state_class":"measurement","state_topic":"zigbee2mqtt/0x00000000e205621b","unique_id":"0x00000000e205621b_linkquality_zigbee2mqtt","unit_of_measurement":"lqi","value_template":"{{ value_json.linkquality }}"}' warning 2024-09-08 09:32:12z2m: Device '0x00000000e205621b' with Zigbee model 'GreenPower_92' and manufacturer name 'undefined' is NOT supported, please follow https://www.zigbee2mqtt.io/advanced/support-new-devices/01_support_new_devices.html info 2024-09-08 09:32:13z2m:mqtt: MQTT publish: topic 'zigbee2mqtt/bridge/event', payload '{"data":{"definition":{"description":"Automatically generated definition","exposes":[{"access":1,"category":"diagnostic","description":"Link quality (signal strength)","label":"Linkquality","name":"linkquality","property":"linkquality","type":"numeric","unit":"lqi","value_max":255,"value_min":0}],"model":"GreenPower_92","options":[],"supports_ota":false,"vendor":""},"friendly_name":"0x00000000e205621b","ieee_address":"0x00000000e205621b","status":"successful","supported":false},"type":"device_interview"}' info 2024-09-08 09:32:13zh:controller:greenpower: Received commissioning from '25115' error 2024-09-08 09:32:13zh:controller:greenpower: Error: Parameter 'tempMaster' is missing at ZclFrame.writePayloadCluster (/app/node_modules/zigbee-herdsman/src/zspec/zcl/zclFrame.ts:133:23) at ZclFrame.toBuffer (/app/node_modules/zigbee-herdsman/src/zspec/zcl/zclFrame.ts:77:18) at EmberAdapter.sendZclFrameToAll (/app/node_modules/zigbee-herdsman/src/adapter/ember/adapter/emberAdapter.ts:2595:31) at GreenPower.onZclGreenPowerData (/app/node_modules/zigbee-herdsman/src/controller/greenPower.ts:154:44) at processTicksAndRejections (node:internal/process/task_queues:95:5) at runNextTicks (node:internal/process/task_queues:64:3) at processImmediate (node:internal/timers:447:9) at Controller.onZclPayload (/app/node_modules/zigbee-herdsman/src/controller/controller.ts:688:13) info 2024-09-08 09:32:13zh:controller:greenpower: Received commissioning from '46885' info 2024-09-08 09:32:14zh:controller:greenpower: Received commissioning from '25115' error 2024-09-08 09:32:14zh:controller:greenpower: Error: Parameter 'tempMaster' is missing at ZclFrame.writePayloadCluster (/app/node_modules/zigbee-herdsman/src/zspec/zcl/zclFrame.ts:133:23) at ZclFrame.toBuffer (/app/node_modules/zigbee-herdsman/src/zspec/zcl/zclFrame.ts:77:18) at EmberAdapter.sendZclFrameToAll (/app/node_modules/zigbee-herdsman/src/adapter/ember/adapter/emberAdapter.ts:2595:31) at GreenPower.onZclGreenPowerData (/app/node_modules/zigbee-herdsman/src/controller/greenPower.ts:154:44) at processTicksAndRejections (node:internal/process/task_queues:95:5) at runNextTicks (node:internal/process/task_queues:64:3) at processImmediate (node:internal/timers:447:9) at Controller.onZclPayload (/app/node_modules/zigbee-herdsman/src/controller/controller.ts:688:13)
sorry but formating aint working?
Here's the status report of r9m20 (1phase powertag):
{ "ac_frequency": 50, "current_phase_a": 0.18, "linkquality": 220, "power": 32, "power_apparent": 43, "power_factor": 76, "power_phase_a": 32, "voltage_phase_a": 238, "current_phase_b": null, "current_phase_c": null, "energy": 7.99, "energy_phase_a": 7.994, "energy_phase_b": null, "energy_phase_c": null, "power_phase_b": null, "power_phase_c": null, "voltage_phase_ab": null, "voltage_phase_b": null, "voltage_phase_bc": null, "voltage_phase_c": null, "voltage_phase_ca": null }
Tried creating a new converter but cant get it to be chosen instead of "a9mem1570" due to the identical naming:
`
const fz = require('zigbee-herdsman-converters/converters/fromZigbee'); const exposes = require('zigbee-herdsman-converters/lib/exposes'); const reporting = require('zigbee-herdsman-converters/lib/reporting'); const e = exposes.presets; const ea = exposes.access;
const definition = { zigbeeModel: ['GreenPower_254'], // Still keep this, but it won't be the primary match model: 'GreenPower_92', // Custom model for your device vendor: 'Schneider Electric', // Vendor of the device description: '1-phase PowerTag power sensor', // Accurate description fromZigbee: [ fz.metering, fz.electrical_measurement, fz.linkquality, ], exposes: [ e.power().withAccess(ea.STATE), exposes.numeric('power_apparent', ea.STATE).withUnit('VA').withDescription('Apparent power'), exposes.numeric('power_phase_a', ea.STATE).withUnit('W').withDescription('Power for phase A'), exposes.numeric('power_factor', ea.STATE).withDescription('Power factor'), e.energy(), exposes.numeric('energy_phase_a', ea.STATE).withUnit('kWh').withDescription('Energy for phase A'), exposes.numeric('ac_frequency', ea.STATE).withUnit('Hz').withDescription('AC frequency'), exposes.numeric('voltage_phase_a', ea.STATE).withUnit('V').withDescription('Voltage for phase A'), exposes.numeric('current_phase_a', ea.STATE).withUnit('A').withDescription('Current for phase A'), e.linkquality().withAccess(ea.STATE), ], ota: false, configure: async (device, coordinatorEndpoint, logger) => { const endpoint = device.getEndpoint(1); await reporting.bind(endpoint, coordinatorEndpoint, ['haElectricalMeasurement', 'seMetering']); await reporting.readMeteringMultiplierDivisor(endpoint); await reporting.readEletricalMeasurementMultiplierDivisors(endpoint); await reporting.activePower(endpoint); await reporting.apparentPower(endpoint); await reporting.powerFactor(endpoint); await reporting.acFrequency(endpoint); await reporting.rmsVoltage(endpoint, {min: 10, max: 600, change: 1}); await reporting.rmsCurrent(endpoint, {min: 10, max: 600, change: 10}); }, ieeeAddress: ['0x00000000e205621b'], // Match by specific IEEE address };
module.exports = definition;
`
This setup has the following info:
igbee2MQTT-Version [1.40.0](https://github.com/Koenkk/zigbee2mqtt/releases/tag/1.40.0) commit: [unknown](https://github.com/Koenkk/zigbee2mqtt/commit/unknown) Coordinator-Typ EmberZNet Coordinator-Version 7.4.3 [GA] Coordinator IEEE Adresse 0xf082c0fffe433135 Frontend-Version 0.7.4 Zigbee Herdsman Konverter Version 20.8.4 Zigbee Herdsman Version 0.57.1
The pairing is done using "[ICPSHC24-30EU-IL-1/ICPSHC24-10EU-IL-2". LED Driver
What happened?
Hi, Apparently, the powertag A9MEM1570 is a device supporting the ZB greenpower (GP) standard. These devices cannot be paired to ZB2MQTT directly, but only through the ZB GreenPower Proxy (GPP). These devices are very difficult to find, they are not marked, they are identified only by the experiences of users. They usually contain a cluster of 242 input and output green power.
For example, the following were identified:
But even if there is a device in the network that supports GPP, the powertag A9MEM1570 cannot be connected to the network. If someone has succeeded, they are certainly not able to reproduce the progress that led to success. I consider the version of the firmware (Router, GPP, and the power tag itself) to be essential, which may once have enabled the device to be paired. What was once possible is no longer possible. I would suggest to mark in the database of supported devices:
Furthermore, it is necessary to approach the GreenPower devices in the project (ZB2MQTT) somehow:
I won't be the only user annoyed by greenpower devices.
What did you expect to happen?
easy connection of the powertag A9MEM1570 to the ZB network.
How to reproduce it (minimal and precise)
No response
Zigbee2MQTT version
1.38.0
Adapter firmware version
7.4.2 [GA]
Adapter
Sonoff ZB Dongle E, cfg as adapter: ember
Setup
Odroid N2+, Ubuntu 24.04, source from github
Debug log
[2024-06-13 09:18:41] info: z2m: Logging to console, file (filename: log.log) [2024-06-13 09:18:41] debug: z2m: Loaded state from file /opt/zigbee2mqtt/data/state.json [2024-06-13 09:18:41] info: z2m: Starting Zigbee2MQTT version 1.38.0 (commit #0e6da85) [2024-06-13 09:18:41] info: z2m: Starting zigbee-herdsman (0.49.2) [2024-06-13 09:18:41] debug: z2m: Using zigbee-herdsman with settings: '{"adapter":{"concurrent":null,"delay":null,"disableLED":false},"backupPath":"/opt/zigbee2mqtt/data/coordinator_backup.json","databaseBackupPath":"/opt/zigbee2mqt> [2024-06-13 09:18:42] debug: zh:adapter: Path '/dev/ttyACM0' is valid for 'EmberAdapter' [2024-06-13 09:18:42] info: zh:ember: Using default stack config. [2024-06-13 09:18:42] debug: zh:ember: Using delay=5. [2024-06-13 09:18:42] debug: zh:controller: Starting with options '{"network":{"networkKeyDistribute":false,"networkKey":xx,"panID":6754,"extendedPanID":[xx> [2024-06-13 09:18:42] info: zh:ember: ======== Ember Adapter Starting ======== [2024-06-13 09:18:42] debug: zh:ember: Starting EZSP with stack configuration: "[object Object]". [2024-06-13 09:18:42] info: zh:ember:ezsp: ======== EZSP starting ======== [2024-06-13 09:18:42] info: zh:ember:uart:ash: ======== ASH NCP reset ======== [2024-06-13 09:18:42] info: zh:ember:uart:ash: RTS/CTS config is off, enabling software flow control. [2024-06-13 09:18:42] debug: zh:ember:uart:ash: Opening serial port with {"path":"/dev/ttyACM0","baudRate":115200,"rtscts":false,"autoOpen":false,"parity":"none","stopBits":1,"xon":true,"xoff":true} [2024-06-13 09:18:42] info: zh:ember:uart:ash: Serial port opened [2024-06-13 09:18:42] info: zh:ember:uart:ash: ======== ASH starting ======== [2024-06-13 09:18:42] error: zh:ember:uart:ash: Received frame with CRC error [2024-06-13 09:18:42] debug: zh:ember:uart:ash: <--- [FRAME type=DATA] [2024-06-13 09:18:42] debug: zh:ember:uart:ash: <--- [FRAME type=DATA] [2024-06-13 09:18:42] error: zh:ember:uart:ash: Received frame with CRC error [2024-06-13 09:18:42] debug: zh:ember:uart:ash: ---> [FRAME type=RST] [2024-06-13 09:18:42] debug: zh:ember:uart:ash: Waiting for RSTACK... 0/2500 [2024-06-13 09:18:42] debug: zh:ember:uart:ash: Waiting for RSTACK... 100/2500 [2024-06-13 09:18:42] debug: zh:ember:uart:ash: Waiting for RSTACK... 200/2500 [2024-06-13 09:18:42] debug: zh:ember:uart:ash: Waiting for RSTACK... 300/2500 [2024-06-13 09:18:42] debug: zh:ember:uart:ash: Waiting for RSTACK... 400/2500 [2024-06-13 09:18:42] debug: zh:ember:uart:ash: Waiting for RSTACK... 500/2500 [2024-06-13 09:18:42] debug: zh:ember:uart:ash: Waiting for RSTACK... 600/2500 [2024-06-13 09:18:43] debug: zh:ember:uart:ash: Waiting for RSTACK... 700/2500 [2024-06-13 09:18:43] debug: zh:ember:uart:ash: Waiting for RSTACK... 800/2500 [2024-06-13 09:18:43] debug: zh:ember:uart:ash: Waiting for RSTACK... 900/2500 [2024-06-13 09:18:43] debug: zh:ember:uart:ash: Waiting for RSTACK... 1000/2500 [2024-06-13 09:18:43] debug: zh:ember:uart:ash: <--- [FRAME type=RSTACK] [2024-06-13 09:18:43] debug: zh:ember: NCP version info: {"ezsp":13,"revision":"7.4.2 [GA]","build":0,"major":7,"minor":4,"patch":2,"special":0,"type":170}