[Device Support Request] EFEKTA Plant-Watering-Sensor-Zigbee
See original GitHub issueName: efektalab.ru EFEKTA_PWS. Custom DIY device. Pairs and appears in ZHA but fails to report soil moisture. Reported temperature and battery level are incorrect. Info and source: https://github.com/smartboxchannel/Plant-Watering-Sensor-Zigbee
Device signature - this can be acquired by removing the device from ZHA and pairing it again from the add devices screen. Be sure to add the entire content of the log panel after pairing the device to a code block below this line.
Sent 'mgmt_permit_joining_req' to 00:0d:6f:ff:fe:8e:7b:59: [<Status.SUCCESS: 0>]
[0xe213] Delivery error for seq # 0x72, on endpoint id 0 cluster 0x0034: message send failure
Sending 'zdo_leave_req' failed: [0xe213:0:0x0034]: Message send failure
Device 0xe213 (00:12:4b:00:24:42:d3:d2) left the network
Device 0xe213 (00:12:4b:00:24:42:d3:d2) left the network
New device 0xbf06 (00:12:4b:00:24:42:d3:d2) joined the network
[0xbf06] Scheduling initialization
Tries remaining: 3
[0xbf06] Requesting 'Node Descriptor'
Tries remaining: 2
[0xbf06] Extending timeout for 0x76 request
Device 0xbf06 (00:12:4b:00:24:42:d3:d2) joined the network
[0xbf06] Scheduling initialization
[0xbf06] Canceling old initialize call
Tries remaining: 3
[0xbf06] Requesting 'Node Descriptor'
Tries remaining: 2
[0xbf06] Extending timeout for 0x78 request
Device 0xbf06 (00:12:4b:00:24:42:d3:d2) joined the network
[0xbf06] Scheduling initialization
[0xbf06] Canceling old initialize call
Received frame on uninitialized device <Device model=None manuf=None nwk=0xBF06 ieee=00:12:4b:00:24:42:d3:d2 is_initialized=False> from ep 0 to ep 0, cluster 19: b'\x00\x06\xbf\xd2\xd3B$\x00K\x12\x00\x80'
[0xbf06:zdo] ZDO request ZDOCmd.Device_annce: [0xBF06, 00:12:4b:00:24:42:d3:d2, 128]
Tries remaining: 3
[0xbf06] Requesting 'Node Descriptor'
Tries remaining: 2
[0xbf06] Extending timeout for 0x7a request
Received frame on uninitialized device <Device model=None manuf=None nwk=0xBF06 ieee=00:12:4b:00:24:42:d3:d2 is_initialized=False> from ep 0 to ep 0, cluster 54: b'\x02\xb4\x01'
[0xbf06:zdo] ZDO request ZDOCmd.Mgmt_Permit_Joining_req: [180, <Bool.true: 1>]
Received frame on uninitialized device <Device model=None manuf=None nwk=0xBF06 ieee=00:12:4b:00:24:42:d3:d2 is_initialized=False> from ep 1 to ep 255, cluster 3: b'\x11\x01\x01'
[0xbf06] Received ZCL while uninitialized on endpoint id 1, cluster 0x0003 id, hdr: <ZCLHeader frame_control=<FrameControl frame_type=CLUSTER_COMMAND manufacturer_specific=False is_reply=False disable_default_response=True> manufacturer=None tsn=1 command_id=1>, payload: b''
Received frame on uninitialized device <Device model=None manuf=None nwk=0xBF06 ieee=00:12:4b:00:24:42:d3:d2 is_initialized=False> from ep 0 to ep 0, cluster 32770: b'x\x00\x06\xbf\x02@\x80\x00\x00P\xa0\x00\x00\x00\xa0\x00\x00'
[0xbf06:zdo] ZDO request ZDOCmd.Node_Desc_rsp: [<Status.SUCCESS: 0>, 0xBF06, NodeDescriptor(logical_type=<LogicalType.EndDevice: 2>, complex_descriptor_available=0, user_descriptor_available=0, reserved=0, aps_flags=0, frequency_band=<FrequencyBand.Freq2400MHz: 8>, mac_capability_flags=<MACCapabilityFlags.AllocateAddress: 128>, manufacturer_code=0, maximum_buffer_size=80, maximum_incoming_transfer_size=160, server_mask=0, maximum_outgoing_transfer_size=160, descriptor_capability_field=<DescriptorCapability.NONE: 0>, *allocate_address=True, *is_alternate_pan_coordinator=False, *is_coordinator=False, *is_end_device=True, *is_full_function_device=False, *is_mains_powered=False, *is_receiver_on_when_idle=False, *is_router=False, *is_security_capable=False)]
[0xbf06:zdo] Unsupported ZDO request:ZDOCmd.Node_Desc_rsp
Received frame on uninitialized device <Device model=None manuf=None nwk=0xBF06 ieee=00:12:4b:00:24:42:d3:d2 is_initialized=False> from ep 0 to ep 0, cluster 32770: b'z\x00\x06\xbf\x02@\x80\x00\x00P\xa0\x00\x00\x00\xa0\x00\x00'
[0xbf06] Got Node Descriptor: NodeDescriptor(logical_type=<LogicalType.EndDevice: 2>, complex_descriptor_available=0, user_descriptor_available=0, reserved=0, aps_flags=0, frequency_band=<FrequencyBand.Freq2400MHz: 8>, mac_capability_flags=<MACCapabilityFlags.AllocateAddress: 128>, manufacturer_code=0, maximum_buffer_size=80, maximum_incoming_transfer_size=160, server_mask=0, maximum_outgoing_transfer_size=160, descriptor_capability_field=<DescriptorCapability.NONE: 0>, *allocate_address=True, *is_alternate_pan_coordinator=False, *is_coordinator=False, *is_end_device=True, *is_full_function_device=False, *is_mains_powered=False, *is_receiver_on_when_idle=False, *is_router=False, *is_security_capable=False)
[0xbf06] Discovering endpoints
Tries remaining: 3
[0xbf06] Extending timeout for 0x7c request
Received frame on uninitialized device <Device model=None manuf=None nwk=0xBF06 ieee=00:12:4b:00:24:42:d3:d2 is_initialized=False> from ep 0 to ep 0, cluster 32773: b'|\x00\x06\xbf\x01\x01'
[0xbf06] Discovered endpoints: [1]
[0xbf06] Initializing endpoints [<Endpoint id=1 in=[] out=[] status=<Status.NEW: 0>>]
[0xbf06:1] Discovering endpoint information
Tries remaining: 3
[0xbf06] Extending timeout for 0x7e request
Received frame on uninitialized device <Device model=None manuf=None nwk=0xBF06 ieee=00:12:4b:00:24:42:d3:d2 is_initialized=False> from ep 0 to ep 0, cluster 32772: b'~\x00\x06\xbf\x10\x01\x04\x01\x0c\x00\x02\x04\x00\x00\x01\x00\x02\x04\x08\x04\x00'
[0xe9c7:zdo] ZDO request ZDOCmd.NWK_addr_req: [00:0d:6f:00:15:44:ef:91, 0, 0]
[0xbf06:1] Discovered endpoint information: SizePrefixedSimpleDescriptor(endpoint=1, profile=260, device_type=12, device_version=2, input_clusters=[0, 1, 1026, 1032], output_clusters=[])
Unknown cluster 1032
[0xbf06] Extending timeout for 0x81 request
[0xbf06:1:0x0000] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=True> manufacturer=None tsn=129 command_id=Command.Read_Attributes_rsp>
[0xbf06] Read model 'EFEKTA_PWS' and manufacturer 'efektalab.ru' from <Endpoint id=1 in=[basic:0x0000, power:0x0001, temperature:0x0402, None:0x0408] out=[] status=<Status.ZDO_INIT: 1>>
[0xbf06] Discovered basic device information for <Device model='EFEKTA_PWS' manuf='efektalab.ru' nwk=0xBF06 ieee=00:12:4b:00:24:42:d3:d2 is_initialized=True>
Device is initialized <Device model='EFEKTA_PWS' manuf='efektalab.ru' nwk=0xBF06 ieee=00:12:4b:00:24:42:d3:d2 is_initialized=True>
Checking quirks for efektalab.ru EFEKTA_PWS (00:12:4b:00:24:42:d3:d2)
Considering <class 'zhaquirks.xbee.xbee_io.XBeeSensor'>
Fail because endpoint list mismatch: {232, 230} {1}
Considering <class 'zhaquirks.xbee.xbee3_io.XBee3Sensor'>
Fail because endpoint list mismatch: {232, 230} {1}
Considering <class 'zhaquirks.smartthings.tag_v4.SmartThingsTagV4'>
Fail because input cluster mismatch on at least one endpoint
Considering <class 'zhaquirks.smartthings.multi.SmartthingsMultiPurposeSensor'>
Fail because device_type mismatch on at least one endpoint
Considering <class 'zhaquirks.netvox.z308e3ed.Z308E3ED'>
Fail because device_type mismatch on at least one endpoint
Considering <class 'zhaquirks.gledopto.soposhgu10.SoposhGU10'>
Fail because endpoint list mismatch: {11, 13} {1}
Considering <class 'bellows.zigbee.application.EZSPCoordinator'>
Fail because device_type mismatch on at least one endpoint
device - 0xBF06:00:12:4b:00:24:42:d3:d2 entering async_device_initialized - is_new_join: True
device - 0xBF06:00:12:4b:00:24:42:d3:d2 has joined the ZHA zigbee network
[0xBF06](EFEKTA_PWS): started configuration
[0xBF06:ZDO](EFEKTA_PWS): 'async_configure' stage succeeded
Error handling '_save_attribute' event with (00:12:4b:00:24:42:d3:d2, 1, 0, 4, 'efektalab.ru') params: FOREIGN KEY constraint failed
[0xbf06] Extending timeout for 0x83 request
[0xbf06] Extending timeout for 0x85 request
[0xBF06:1:0x0000]: finished channel configuration
Error handling '_save_attribute' event with (00:12:4b:00:24:42:d3:d2, 1, 0, 5, 'EFEKTA_PWS') params: FOREIGN KEY constraint failed
[0xBF06:1:0x0001]: bound 'power' cluster: Status.SUCCESS
[0xbf06] Extending timeout for 0x87 request
[0xBF06:1:0x0402]: bound 'temperature' cluster: Status.SUCCESS
[0xbf06] Extending timeout for 0x89 request
[0xbf06:1:0x0001] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=True> manufacturer=None tsn=135 command_id=Command.Configure_Reporting_rsp>
[0xBF06:1:0x0001]: Successfully configured reporting for '{'battery_voltage': (3600, 10800, 1), 'battery_percentage_remaining': (3600, 10800, 1)}' on 'power' cluster: [ConfigureReportingResponseRecord(status=0)]
[0xBF06:1:0x0001]: finished channel configuration
[0xbf06:1:0x0402] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=True> manufacturer=None tsn=137 command_id=Command.Configure_Reporting_rsp>
[0xBF06:1:0x0402]: Successfully configured reporting for '{'measured_value': (30, 900, 50)}' on 'temperature' cluster: [ConfigureReportingResponseRecord(status=0)]
[0xBF06:1:0x0402]: finished channel configuration
[0xBF06:1:0x0001]: 'async_configure' stage succeeded
[0xBF06:1:0x0402]: 'async_configure' stage succeeded
[0xBF06:1:0x0000]: 'async_configure' stage succeeded
[0xBF06](EFEKTA_PWS): completed configuration
[0xBF06](EFEKTA_PWS): stored in registry: ZhaDeviceEntry(name='efektalab.ru EFEKTA_PWS', ieee='00:12:4b:00:24:42:d3:d2', last_seen=1637646370.1822302)
[0xBF06](EFEKTA_PWS): started initialization
[0xBF06:ZDO](EFEKTA_PWS): 'async_initialize' stage succeeded
[0xBF06:1:0x0001]: initializing channel: from_cache: False
[0xbf06] Extending timeout for 0x8b request
[0xBF06:1:0x0402]: initializing channel: from_cache: False
[0xbf06] Extending timeout for 0x8d request
[0xBF06:1:0x0000]: initializing channel: from_cache: False
[0xBF06:1:0x0000]: finished channel initialization
[0xbf06:1:0x0001] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=True> manufacturer=None tsn=139 command_id=Command.Read_Attributes_rsp>
[0xbf06] Extending timeout for 0x8f request
[0xbf06:1:0x0402] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=True> manufacturer=None tsn=141 command_id=Command.Read_Attributes_rsp>
[0xBF06:1:0x0402]: finished channel initialization
[0xbf06:1:0x0001] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=True> manufacturer=None tsn=143 command_id=Command.Read_Attributes_rsp>
[0xBF06:1:0x0001]: finished channel initialization
[0xBF06:1:0x0001]: 'async_initialize' stage succeeded
[0xBF06:1:0x0402]: 'async_initialize' stage succeeded
[0xBF06:1:0x0000]: 'async_initialize' stage succeeded
[0xBF06](EFEKTA_PWS): power source: Battery or Unknown
[0xBF06](EFEKTA_PWS): completed initialization
Ignoring message (b'110201') on cluster 3: unknown endpoint or cluster id: 'No cluster ID 0x0003 on (00:12:4b:00:24:42:d3:d2, 1)'
[0x8012:1:0x0300] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=False> manufacturer=None tsn=11 command_id=Command.Report_Attributes>
[0x8012:1:0x0300] ZCL request 0x000a: [[Attribute(attrid=3, value=<TypeValue type=uint16_t, value=30138>), Attribute(attrid=4, value=<TypeValue type=uint16_t, value=26909>), Attribute(attrid=7, value=<TypeValue type=uint16_t, value=394>)]]
[0x8012:1:0x0300] Attribute report received: current_x=30138, current_y=26909, color_temperature=394
[0xa0da:1:0x0006] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=False> manufacturer=None tsn=82 command_id=Command.Report_Attributes>
[0xa0da:1:0x0006] ZCL request 0x000a: [[Attribute(attrid=0, value=<TypeValue type=Bool, value=Bool.false>)]]
[0xa0da:1:0x0006] Attribute report received: on_off=0
[0x8483:1:0x0006] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=False> manufacturer=None tsn=111 command_id=Command.Report_Attributes>
[0x8483:1:0x0006] ZCL request 0x000a: [[Attribute(attrid=0, value=<TypeValue type=Bool, value=Bool.false>)]]
[0x8483:1:0x0006] Attribute report received: on_off=0
[0x8483:1:0x0008] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=False> manufacturer=None tsn=112 command_id=Command.Report_Attributes>
[0x8483:1:0x0008] ZCL request 0x000a: [[Attribute(attrid=0, value=<TypeValue type=uint8_t, value=254>)]]
[0x8483:1:0x0008] Attribute report received: current_level=254
[0x8483:1:0x0008]: received attribute: 0 update with value: 254
Ignoring message (b'110301') on cluster 3: unknown endpoint or cluster id: 'No cluster ID 0x0003 on (00:12:4b:00:24:42:d3:d2, 1)'
Ignoring message (b'110401') on cluster 3: unknown endpoint or cluster id: 'No cluster ID 0x0003 on (00:12:4b:00:24:42:d3:d2, 1)'
Ignoring message (b'110501') on cluster 3: unknown endpoint or cluster id: 'No cluster ID 0x0003 on (00:12:4b:00:24:42:d3:d2, 1)'
Ignoring message (b'110601') on cluster 3: unknown endpoint or cluster id: 'No cluster ID 0x0003 on (00:12:4b:00:24:42:d3:d2, 1)'
Ignoring message (b'110701') on cluster 3: unknown endpoint or cluster id: 'No cluster ID 0x0003 on (00:12:4b:00:24:42:d3:d2, 1)'
Additional context
Issue Analytics
- State:
- Created 2 years ago
- Comments:15 (7 by maintainers)
Top Results From Across the Web
Plant Watering Sensor Zigbee - Share Project - PCBWay
Plant Watering Sensor Project for Zigbee Network. Powered by SoC CC2530, the sensor is based on a capacitive measurement method. The sensor.
Read more >Plant Watering Sensor EFEKTA PRO(Zigbee) - Tindie
This is a compact wireless soil moisture sensor, supports working in Zigbee networks. (Zigbee2mqtt open source project, ZHA open source project). The device...
Read more >Zigbee flower and plant sensors for soil moisture + light + ...
I've built one sensor (got pcbs made) and it binds to zha but only reports ... [Device Support Request] EFEKTA Plant-Watering-Sensor-Zigbee.
Read more >EFEKTALAB Mini Plant Watering Sensor EFEKTA_miniPWS ...
Mini Plant Watering Sensor. Edit page · Tweet @blakadder_. Model EFEKTA_miniPWS manufactured by EFEKTALAB. Zigbee ID: EFEKTA_miniPWS. Mini Plant Watering ...
Read more >Best Zigbee plant humidity sensor : r/homeassistant - Reddit
11 votes, 20 comments. Hi, what is the best zigbee sensor for plant moisture? Is the Aquara WSDCGQ01LM OK? or is it not...
Read more >Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start FreeTop Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Top GitHub Comments
the other day I tested a firmware specially created for zha, in which data from the humidity sensor is transmitted to the humidity cluster. I think this is also a working option. About the transmitted initial incorrect values. It is enough to press the button several times with a short click, this will lead to the fact that the data will not be sent according to the schedule. I think next week I will fix it and post it on github.
@Hedda, thanks for all the links and info. I was aware there was already zigbee2mqtt support for it, but didn’t know if that would be useful to make the quirk for zha. @majkrzak , you are 100% correct, the readings have stabilized after a (long) while. The battery no reads 100% instead of 126% and the temperature sensor reads 14C, though that is at least 6 to 7 degrees below ambient. @smartboxchannel , thanks for your great work! I love the sensor, though it’s also helped me realize that I’m getting to old to solder 0603 components. Looking forward to try the new firmware and the new addition to moisture content clusters to zha.