Gallery Image list bug on android when set intitial index different then 0 example 1,2 or more

https://github.com/user-attachments/assets/d3096424-29c8-45c9-9d34-d873910869d1

Hi there, yeah in fact it is a bug. It's caused by some strange reason in which Reanimated's shared values are not assigned properly when inside an onLayout event, I'm actually working on it.

Yes sir, hopefully u can find it
On Sat, 10 Aug 2024, 22:42 Santiago, @.***> wrote:

Hi there, yeah in fact it is a bug. It's caused by some strange reason in
which Reanimated's shared values are not assigned properly when inside an
onLayout event, I'm actually working on it.
—
Reply to this email directly, view it on GitHub
https://github.com/Glazzes/react-native-zoom-toolkit/issues/44#issuecomment-2282189995,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/BGN6NI7BXQ6OHQQEAK75D5DZQYYIBAVCNFSM6AAAAABMJWLZV6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDEOBSGE4DSOJZGU
.
You are receiving this because you authored the thread.Message ID:
@.***>

This issue is in the next released yet sir?

This issue is now fixed in release 2.1.3


Add wb adapters

This PR adds BP <-> WB adapters.

Hi, please don't resolve comments unless the feedback is addressed

Request review. Short note:
The master adapter assumes a maximum message size of cce_block_width_p. This parameter is forwarded to the stream pumps used in the master adapter and controls the pumps' output. Messages larger than that will not be processed correctly. This can be tested for example by assigning a constant 7 to the command size during command generation here, resulting in 1024 bit commands, while the cce block width should be 512 with the default BP config.

Thanks looks good to me!


Focal Tversky Loss and Attention Gated U-Net

How about we get an implementation of this up and running? Here's some source code:

https://github.com/nabsabraham/focal-tversky-unet (keras) [2D]
https://github.com/ozan-oktay/Attention-Gated-Networks (pytorch) [3D]

Doesn't work that well and hard to tune.


[Device Support Request] - TS011F by _TZ3000_ew3ldmgx

Hi All,
Bought a Smartplug from ALI TS011F by _TZ3000_ew3ldmgx
HA added 1 switch and 3 sensors:
switch.tz3000_ew3ldmgx_ts011f_bb1466fe_on_off                               "SWITCH"
sensor.tz3000_ew3ldmgx_ts011f_bb1466fe_electrical_measurement    "192 W"
sensor.tz3000_ew3ldmgx_ts011f_bb1466fe_smartenergy_metering    "UNKNOWN"
Describe the solution you'd like
The "smartenergy_metering" is not working. It should show the KwH
On other forums there talking it could be a TS0121 thats advertises wrong.
Also Zigbee2MQTT supports this Plug with metering.
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.
{
  "node_descriptor": "NodeDescriptor(logical_type=<LogicalType.Router: 1>, complex_descriptor_available=0, user_descriptor_available=0, reserved=0, aps_flags=0, frequency_band=<FrequencyBand.Freq2400MHz: 8>, mac_capability_flags=<MACCapabilityFlags.AllocateAddress|RxOnWhenIdle|MainsPowered|FullFunctionDevice: 142>, manufacturer_code=4098, maximum_buffer_size=82, maximum_incoming_transfer_size=82, server_mask=11264, maximum_outgoing_transfer_size=82, descriptor_capability_field=<DescriptorCapability.NONE: 0>, *allocate_address=True, *is_alternate_pan_coordinator=False, *is_coordinator=False, *is_end_device=False, *is_full_function_device=True, *is_mains_powered=True, *is_receiver_on_when_idle=True, *is_router=True, *is_security_capable=False)",
  "endpoints": {
    "1": {
      "profile_id": 260,
      "device_type": "0x010a",
      "in_clusters": [
        "0x0000",
        "0x0003",
        "0x0004",
        "0x0005",
        "0x0006",
        "0x0702",
        "0x0b04",
        "0xe000",
        "0xe001"
      ],
      "out_clusters": [
        "0x000a",
        "0x0019"
      ]
    },
    "242": {
      "profile_id": 41440,
      "device_type": "0x0061",
      "in_clusters": [],
      "out_clusters": [
        "0x0021"
      ]
    }
  },
  "manufacturer": "_TZ3000_ew3ldmgx",
  "model": "TS011F",
  "class": "zigpy.device.Device"
}

LOG
[0x0000:zdo] ZDO request ZDOCmd.Mgmt_Permit_Joining_req: [60, <Bool.false: 0>]
New device 0x0432 (84:fd:27:ff:fe:68:de:64) joined the network
[0x0432] Scheduling initialization
Tries remaining: 3
[0x0432] Requesting 'Node Descriptor'
Tries remaining: 2
[0x0432] Extending timeout for 0xce request
Device 0x0432 (84:fd:27:ff:fe:68:de:64) joined the network
[0x0432] Scheduling initialization
[0x0432] Canceling old initialize call
Tries remaining: 3
[0x0432] Requesting 'Node Descriptor'
Tries remaining: 2
[0x0432] Extending timeout for 0xd0 request
Device 0x0432 (84:fd:27:ff:fe:68:de:64) joined the network
[0x0432] Scheduling initialization
[0x0432] Canceling old initialize call
Received frame on uninitialized device <Device model=None manuf=None nwk=0x0432 ieee=84:fd:27:ff:fe:68:de:64 is_initialized=False> from ep 0 to ep 0, cluster 19: b"\x822\x04d\xdeh\xfe\xff'\xfd\x84\x8e"
[0x0432:zdo] ZDO request ZDOCmd.Device_annce: [0x0432, 84:fd:27:ff:fe:68:de:64, 142]
Tries remaining: 3
[0x0432] Requesting 'Node Descriptor'
Tries remaining: 2
[0x0432] Extending timeout for 0xd2 request
Received frame on uninitialized device <Device model=None manuf=None nwk=0x0432 ieee=84:fd:27:ff:fe:68:de:64 is_initialized=False> from ep 0 to ep 0, cluster 32770: b'\xd2\x002\x04\x01@\x8e\x02\x10RR\x00\x00,R\x00\x00'
[0x0432] Got Node Descriptor: NodeDescriptor(logical_type=<LogicalType.Router: 1>, complex_descriptor_available=0, user_descriptor_available=0, reserved=0, aps_flags=0, frequency_band=<FrequencyBand.Freq2400MHz: 8>, mac_capability_flags=<MACCapabilityFlags.AllocateAddress|RxOnWhenIdle|MainsPowered|FullFunctionDevice: 142>, manufacturer_code=4098, maximum_buffer_size=82, maximum_incoming_transfer_size=82, server_mask=11264, maximum_outgoing_transfer_size=82, descriptor_capability_field=<DescriptorCapability.NONE: 0>, *allocate_address=True, *is_alternate_pan_coordinator=False, *is_coordinator=False, *is_end_device=False, *is_full_function_device=True, *is_mains_powered=True, *is_receiver_on_when_idle=True, *is_router=True, *is_security_capable=False)
[0x0432] Discovering endpoints
Tries remaining: 3
Received frame on uninitialized device <Device model=None manuf=None nwk=0x0432 ieee=84:fd:27:ff:fe:68:de:64 is_initialized=False> from ep 0 to ep 0, cluster 32773: b'\xd4\x002\x04\x02\x01\xf2'
[0x0432] Discovered endpoints: [1, 242]
[0x0432] Initializing endpoints [<Endpoint id=1 in=[] out=[] status=<Status.NEW: 0>>, <Endpoint id=242 in=[] out=[] status=<Status.NEW: 0>>]
[0x0432:1] Discovering endpoint information
Tries remaining: 3
Received frame on uninitialized device <Device model=None manuf=None nwk=0x0432 ieee=84:fd:27:ff:fe:68:de:64 is_initialized=False> from ep 0 to ep 0, cluster 32772: b'\xd6\x002\x04\x1e\x01\x04\x01\n\x01\x01\t\x00\x00\x03\x00\x04\x00\x05\x00\x06\x00\x02\x07\x04\x0b\x00\xe0\x01\xe0\x02\x19\x00\n\x00'
[0x0432:1] Discovered endpoint information: SizePrefixedSimpleDescriptor(endpoint=1, profile=260, device_type=266, device_version=1, input_clusters=[0, 3, 4, 5, 6, 1794, 2820, 57344, 57345], output_clusters=[25, 10])
Unknown cluster 57344
Unknown cluster 57345
[0x0432:242] Discovering endpoint information
Tries remaining: 3
Received frame on uninitialized device <Device model=None manuf=None nwk=0x0432 ieee=84:fd:27:ff:fe:68:de:64 is_initialized=False> from ep 0 to ep 0, cluster 32772: b'\xd8\x002\x04\n\xf2\xe0\xa1a\x00\x00\x00\x01!\x00'
[0x0432:242] Discovered endpoint information: SizePrefixedSimpleDescriptor(endpoint=242, profile=41440, device_type=97, device_version=0, input_clusters=[], output_clusters=[33])
[0x0432: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=218 command_id=Command.Read_Attributes_rsp>
[0x0432] Read model 'TS011F' and manufacturer '_TZ3000_ew3ldmgx' from <Endpoint id=1 in=[basic:0x0000, identify:0x0003, groups:0x0004, scenes:0x0005, on_off:0x0006, smartenergy_metering:0x0702, electrical_measurement:0x0B04, None:0xE000, None:0xE001] out=[ota:0x0019, time:0x000A] status=<Status.ZDO_INIT: 1>>
[0x0432] Discovered basic device information for <Device model='TS011F' manuf='_TZ3000_ew3ldmgx' nwk=0x0432 ieee=84:fd:27:ff:fe:68:de:64 is_initialized=True>
Device is initialized <Device model='TS011F' manuf='_TZ3000_ew3ldmgx' nwk=0x0432 ieee=84:fd:27:ff:fe:68:de:64 is_initialized=True>
Checking quirks for _TZ3000_ew3ldmgx TS011F (84:fd:27:ff:fe:68:de:64)
Considering <class 'zhaquirks.xbee.xbee_io.XBeeSensor'>
Fail because endpoint list mismatch: {232, 230} {1, 242}
Considering <class 'zhaquirks.xbee.xbee3_io.XBee3Sensor'>
Fail because endpoint list mismatch: {232, 230} {1, 242}
Considering <class 'zhaquirks.smartthings.tag_v4.SmartThingsTagV4'>
Fail because endpoint list mismatch: {1} {1, 242}
Considering <class 'zhaquirks.smartthings.multi.SmartthingsMultiPurposeSensor'>
Fail because endpoint list mismatch: {1} {1, 242}
Considering <class 'zhaquirks.netvox.z308e3ed.Z308E3ED'>
Fail because endpoint list mismatch: {1} {1, 242}
Considering <class 'zhaquirks.gledopto.soposhgu10.SoposhGU10'>
Fail because endpoint list mismatch: {11, 13} {1, 242}
Considering <class 'bellows.zigbee.application.EZSPCoordinator'>
Fail because endpoint list mismatch: {1} {1, 242}
device - 0x0432:84:fd:27:ff:fe:68:de:64 entering async_device_initialized - is_new_join: True
device - 0x0432:84:fd:27:ff:fe:68:de:64 has joined the ZHA zigbee network
[0x0432](TS011F): started configuration
[0x0432:ZDO](TS011F): 'async_configure' stage succeeded
[0x0432:1:0x0000]: finished channel configuration
Error handling '_save_attribute' event with (84:fd:27:ff:fe:68:de:64, 1, 0, 4, '_TZ3000_ew3ldmgx') params: FOREIGN KEY constraint failed
Error handling '_save_attribute' event with (84:fd:27:ff:fe:68:de:64, 1, 0, 5, 'TS011F') params: FOREIGN KEY constraint failed
[0x0432:1:0x0006]: bound 'on_off' cluster: Status.SUCCESS
[0x0432:1:0x0702]: bound 'smartenergy_metering' cluster: Status.SUCCESS
[0x0432:1:0x0b04]: bound 'electrical_measurement' cluster: Status.SUCCESS
[0x0432:1:0x0006] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=True> manufacturer=None tsn=226 command_id=Command.Configure_Reporting_rsp>
[0x0432:1:0x0006]: reporting 'on_off' attr on 'on_off' cluster: 0/900/1: Result: '[[ConfigureReportingResponseRecord(status=0)]]'
[0x0432:1:0x0006]: finished channel configuration
[0x0432:1:0x0019]: finished channel configuration
[0x0432:1:0x0702] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=True> manufacturer=None tsn=228 command_id=Command.Configure_Reporting_rsp>
[0x0432:1:0x0702]: reporting 'instantaneous_demand' attr on 'smartenergy_metering' cluster: 30/900/1: Result: '[[ConfigureReportingResponseRecord(status=134, direction=0, attrid=1024)]]'
[0x0432:1:0x0b04] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=True> manufacturer=None tsn=230 command_id=Command.Configure_Reporting_rsp>
[0x0432:zdo] ZDO request ZDOCmd.NWK_addr_req: [60:a4:23:ff:fe:08:e2:f4, 0, 0]
[0x0432:1:0x0b04]: reporting 'active_power' attr on 'electrical_measurement' cluster: 30/900/1: Result: '[[ConfigureReportingResponseRecord(status=0)]]'
[0x0432:1:0x0b04]: finished channel configuration
[0x0432:1:0x0702] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=True> manufacturer=None tsn=232 command_id=Command.Read_Attributes_rsp>
[0x0432:1:0x0702]: finished channel configuration
[0x0432:1:0x0006]: 'async_configure' stage succeeded
[0x0432:1:0x0000]: 'async_configure' stage succeeded
[0x0432:1:0x0702]: 'async_configure' stage succeeded
[0x0432:1:0x0b04]: 'async_configure' stage succeeded
[0x0432:1:0x0019]: 'async_configure' stage succeeded
[0x0432](TS011F): completed configuration
[0x0432](TS011F): stored in registry: ZhaDeviceEntry(name='_TZ3000_ew3ldmgx TS011F', ieee='84:fd:27:ff:fe:68:de:64', last_seen=1632421430.6810045)
[0x0432:1:0x0b04] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=True> manufacturer=None tsn=9 command_id=Command.Report_Attributes>
[0x0432:1:0x0b04] ZCL request 0x000a: [[Attribute(attrid=1291, value=<TypeValue type=int16s, value=0>)]]
[0x0432:1:0x0b04] Attribute report received: active_power=0
[0x0432:1:0x0003] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=False> manufacturer=None tsn=235 command_id=Command.Default_Response>
[0x0432:1:0x0003]: executed 'trigger_effect' command with args: '(2, 0)' kwargs: '{}' result: [64, <Status.UNSUP_CLUSTER_COMMAND: 129>]
[0x0432](TS011F): started initialization
[0x0432:ZDO](TS011F): 'async_initialize' stage succeeded
[0x0432:1:0x0006]: initializing channel: from_cache: False
[0x0432:1:0x0000]: initializing channel: from_cache: False
[0x0432:1:0x0000]: finished channel configuration
[0x0432:1:0x0702]: initializing channel: from_cache: False
[0x0432:1:0x0b04]: initializing channel: from_cache: False
[0x0432:1:0x0006] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=True> manufacturer=None tsn=237 command_id=Command.Read_Attributes_rsp>
[0x0432:1:0x0006]: finished channel configuration
[0x0432:1:0x0019]: initializing channel: from_cache: False
[0x0432:1:0x0019]: finished channel configuration
[0x0432:1:0x0702] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=True> manufacturer=None tsn=239 command_id=Command.Read_Attributes_rsp>
[0x0432:1:0x0b04] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=True> manufacturer=None tsn=241 command_id=Command.Read_Attributes_rsp>
[0x0432:zdo] ZDO request ZDOCmd.Node_Desc_req: [0x0000]
[0x0432:zdo] Unsupported ZDO request:ZDOCmd.Node_Desc_req
[0x0432:1:0x0702] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=True> manufacturer=None tsn=243 command_id=Command.Read_Attributes_rsp>
[0x0432:1:0x0702]: finished channel configuration
[0x0432:1:0x0b04] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=True> manufacturer=None tsn=245 command_id=Command.Read_Attributes_rsp>
[0x0432:1:0x0b04]: finished channel configuration
[0x0432:1:0x0006]: 'async_initialize' stage succeeded
[0x0432:1:0x0000]: 'async_initialize' stage succeeded
[0x0432:1:0x0702]: 'async_initialize' stage succeeded
[0x0432:1:0x0b04]: 'async_initialize' stage succeeded
[0x0432:1:0x0019]: 'async_initialize' stage succeeded
[0x0432](TS011F): power source: Mains
[0x0432](TS011F): completed initialization
[0x0432:1:0x0006]: attempting to update onoff state - from cache: False
[0x0432:1:0x0006] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=True> manufacturer=None tsn=247 command_id=Command.Read_Attributes_rsp>
[0x278f:1:0x0400] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=True> manufacturer=None tsn=9 command_id=Command.Report_Attributes>
[0x278f:1:0x0400] ZCL request 0x000a: [[Attribute(attrid=0, value=<TypeValue type=uint16_t, value=0>)]]
[0x278f:1:0x0400] Attribute report received: measured_value=0
[0x2F84:1:0x0b04]: async_update
[0xD44E:1:0x0b04]: async_update
[0xB4C2:1:0x0b04]: async_update
[0x0432:1:0x0b04]: async_update
[0x2f84:1:0x0b04] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=True> manufacturer=None tsn=249 command_id=Command.Read_Attributes_rsp>
[0xd44e:1:0x0b04] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=True> manufacturer=None tsn=251 command_id=Command.Read_Attributes_rsp>
[0xb4c2:1:0x0b04] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=True> manufacturer=None tsn=253 command_id=Command.Read_Attributes_rsp>
[0x0432:1:0x0b04] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=True> manufacturer=None tsn=255 command_id=Command.Read_Attributes_rsp>
[0xd44e:1:0x0b04] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=True> manufacturer=None tsn=109 command_id=Command.Report_Attributes>
[0xd44e:1:0x0b04] ZCL request 0x000a: [[Attribute(attrid=1291, value=<TypeValue type=int16s, value=203>)]]
[0xd44e:1:0x0b04] Attribute report received: active_power=203
[0xb4c2:1:0x0b04] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=True> manufacturer=None tsn=106 command_id=Command.Report_Attributes>
[0xb4c2:1:0x0b04] ZCL request 0x000a: [[Attribute(attrid=1291, value=<TypeValue type=int16s, value=1689>)]]
[0xb4c2:1:0x0b04] Attribute report received: active_power=1689

Have same problems with device _TZ3000_cphmq0q7. It seems the same device:
{
  "node_descriptor": "NodeDescriptor(logical_type=<LogicalType.Router: 1>, complex_descriptor_available=0, user_descriptor_available=0, reserved=0, aps_flags=0, frequency_band=<FrequencyBand.Freq2400MHz: 8>, mac_capability_flags=<MACCapabilityFlags.AllocateAddress|RxOnWhenIdle|MainsPowered|FullFunctionDevice: 142>, manufacturer_code=4098, maximum_buffer_size=82, maximum_incoming_transfer_size=82, server_mask=11264, maximum_outgoing_transfer_size=82, descriptor_capability_field=<DescriptorCapability.NONE: 0>, *allocate_address=True, *is_alternate_pan_coordinator=False, *is_coordinator=False, *is_end_device=False, *is_full_function_device=True, *is_mains_powered=True, *is_receiver_on_when_idle=True, *is_router=True, *is_security_capable=False)",
  "endpoints": {
    "1": {
      "profile_id": 260,
      "device_type": "0x010a",
      "in_clusters": [
        "0x0000",
        "0x0003",
        "0x0004",
        "0x0005",
        "0x0006",
        "0x0702",
        "0x0b04",
        "0xe000",
        "0xe001"
      ],
      "out_clusters": [
        "0x000a",
        "0x0019"
      ]
    },
    "242": {
      "profile_id": 41440,
      "device_type": "0x0061",
      "in_clusters": [],
      "out_clusters": [
        "0x0021"
      ]
    }
  },
  "manufacturer": "_TZ3000_cphmq0q7",
  "model": "TS011F",
  "class": "zigpy.device.Device"
}

Have same problems with device _TZ3000_cphmq0q7. It seems the same device:
{
  "node_descriptor": "NodeDescriptor(logical_type=<LogicalType.Router: 1>, complex_descriptor_available=0, user_descriptor_available=0, reserved=0, aps_flags=0, frequency_band=<FrequencyBand.Freq2400MHz: 8>, mac_capability_flags=<MACCapabilityFlags.AllocateAddress|RxOnWhenIdle|MainsPowered|FullFunctionDevice: 142>, manufacturer_code=4098, maximum_buffer_size=82, maximum_incoming_transfer_size=82, server_mask=11264, maximum_outgoing_transfer_size=82, descriptor_capability_field=<DescriptorCapability.NONE: 0>, *allocate_address=True, *is_alternate_pan_coordinator=False, *is_coordinator=False, *is_end_device=False, *is_full_function_device=True, *is_mains_powered=True, *is_receiver_on_when_idle=True, *is_router=True, *is_security_capable=False)",
  "endpoints": {
    "1": {
      "profile_id": 260,
      "device_type": "0x010a",
      "in_clusters": [
        "0x0000",
        "0x0003",
        "0x0004",
        "0x0005",
        "0x0006",
        "0x0702",
        "0x0b04",
        "0xe000",
        "0xe001"
      ],
      "out_clusters": [
        "0x000a",
        "0x0019"
      ]
    },
    "242": {
      "profile_id": 41440,
      "device_type": "0x0061",
      "in_clusters": [],
      "out_clusters": [
        "0x0021"
      ]
    }
  },
  "manufacturer": "_TZ3000_cphmq0q7",
  "model": "TS011F",
  "class": "zigpy.device.Device"
}

HI,
Yes it's the same PLUG. But different manufacturer. mine is from Girier
Hope they can fix it.
I know there is another one, but can't find the exact model anymore.

According to this file from Zigbee2mqtt: https://github.com/Koenkk/zigbee-herdsman-converters/blob/master/devices/tuya.js , same devices have next manufacturer names: _TZ3000_cphmq0q7, _TZ3000_ew3ldmgx, _TZ3000_ps3dmato, _TZ3000_mraovvmm, _TZ3000_jvzvulen, _TZ3000_dpo1ysak.

I have similar device:
{
  "node_descriptor": "NodeDescriptor(logical_type=<LogicalType.Router: 1>, complex_descriptor_available=0, user_descriptor_available=0, reserved=0, aps_flags=0, frequency_band=<FrequencyBand.Freq2400MHz: 8>, mac_capability_flags=<MACCapabilityFlags.AllocateAddress|RxOnWhenIdle|MainsPowered|FullFunctionDevice: 142>, manufacturer_code=4098, maximum_buffer_size=82, maximum_incoming_transfer_size=82, server_mask=11264, maximum_outgoing_transfer_size=82, descriptor_capability_field=<DescriptorCapability.NONE: 0>, *allocate_address=True, *is_alternate_pan_coordinator=False, *is_coordinator=False, *is_end_device=False, *is_full_function_device=True, *is_mains_powered=True, *is_receiver_on_when_idle=True, *is_router=True, *is_security_capable=False)",
  "endpoints": {
    "1": {
      "profile_id": 260,
      "device_type": "0x010a",
      "in_clusters": [
        "0x0000",
        "0x0003",
        "0x0004",
        "0x0005",
        "0x0006",
        "0x0702",
        "0x0b04",
        "0xe000",
        "0xe001"
      ],
      "out_clusters": [
        "0x000a",
        "0x0019"
      ]
    },
    "242": {
      "profile_id": 41440,
      "device_type": "0x0061",
      "in_clusters": [],
      "out_clusters": [
        "0x0021"
      ]
    }
  },
  "manufacturer": "_TZ3000_mraovvmm",
  "model": "TS011F",
  "class": "zigpy.device.Device"
}

It is BlitzWolf BW-SHP15 and it the "smartenergy_metering" does not work.

Try latest beta

It shall being in the first beat of HA and all newer betas and releases.
https://rc.home-assistant.io/blog/2021/09/29/release-202110/#all-changes
Search for zha in the all-changes section.

Hi, Found it and used the Beta. Summary is working now. But metering summary has weird values.
Used the integration calculation within HA, before using beta. Works almost perfectly. (its a little bit off)
Plug_oven_integration_kwh_calc_Oven:  2.203 Kwh
PLug_Oven_smart_energy_summary: 302.0 KwH
Plug_Server_integration_kwh_calc_Oven:  27.812 Kwh
PLug_Server_smart_energy_summary: 4,774.0 KwH

If the first is you oven and is heating i think 2203 w (2,203 Kw) is realistic but its depend of your voltage and the cased power of it and if 240V is using 9.18 A that is realistic. And the sum is for 137 hours if using 9.18 A all the time.
The next is little more trickery then 27812 w is drawing 115 A at 240 V and i think your plug is not rated so high and the sum is for 176 hours if using 115 A all the time (sound expensive).

If the first is you oven and is heating i think 2203 w (2,203 Kw) is realistic but its depend of your voltage and the cased power of it and if 240V is using 9.18 A that is realistic. And the sum is for 137 hours if using 9.18 A all the time.
The next is little more trickery then 27812 w is drawing 115 A at 240 V and i think your plug is not rated so high and the sum is for 176 hours if using 115 A all the time (sound expensive).

The kwh integration just calculates the KwH total usage. If I turn on my oven 1800W for 1 Hour it ad's 1,8 KwH.
I did not  use the oven that much the last 8 days. so the total KwH is 2,203 KwH
but the smartplug smart energy summary says 302.0 KwH.
My server (always on) uses between 190 and 210 W and it used 27.812 Kwh since the day I configured the integration. (8days)
but the smartplug smart energy summary says 4,774.0 KwH. so thats not a match. also 4,774.0 it has a , and a .
thats also strange.
I'm trying to figure out how to reset the summary calculation on the plug. But cant find the option in my cluster.
Also the after power loss cluster can't be set. the value stays NONE. I Tried 0,1,2 or on,off, restore
So even in the BETA the plug does not work as expected.

The question is how long the plug have running then its saving  the summery over the time and if it was retested or have being used before and have "old" data in its memory.

The question is how long the plug have running then its saving the summery over the time and if it was retested or have being used before and have "old" data in its memory.

I removed the device from ZHA and rejoined it.
the KwH is 0 now.
I will measure it from now on.

Great !!
Interesting if its doing all OK in the end.
I still think your server looks little strange then its not realistic with 115 A or its one comma wrong in the readings (its still tuya device).
U * I = P (Voltage (V) * Current (A) = Power (W)).
Or P /  U = I or P / I = U.

Reconfigure zha device so it reports new values

I gave the Device a Factory reset and a Reconfigure.
Now it's on 0.0 Kwh.
Server: 200W
KwH in hour: 0.2
25 minutes later:
the sensor for summary reports. 9.0 Kwh. that's interesting
60 minutes later:
the sensor for summary reports 20.0KwH. so I think the comma is off.
Should be 0.2KwH.  20 / 100 = 0.2
Let me check later this day again with some calculations.

Do you have the same with the first plug ?
It can being wrong in ZHA or its tuya that have cooking little wrong and then we need making one change in ZHA or Zigpy / Quirk for fixing that.
Still very interesting !!

Hi,
Same problem with this plug. (both are TZ3000_ew3ldmgx)
Heater: 1650W
KwH in hour: 1.650
20 minutes later:
the sensor for summary reports. 56.0 Kwh.
1 hour: 56 x 3 = 168 KwH
Should be 1,650 KwH.   168 / 100 = 1,680 KwH
One more thing,
1 Plug is for my "ups" and connected servers. so it's important that the power state restores on power failure.
I used Manage Clusters,
Cluster: OnOff (Endpoint id: 1, Id: 0x0006, Type: in)
Attribute: start_up_on_off (id: 0x4003)
get attribute: Value: None
I tried to set attribute: 0, 1, 2, on, off, restore.
but none off them seems to work.
Thanxx.

I think its better the devs is looking on the wrong diverter and let it running for some more hours so you is getting better data for comparing. and the interesting if other devices is doing  the same or if its only tuya devices.
I was today baying 2 LIDL outdoor plugs for my balcony (Christmas lights) and its also have the same attribute and i have trying reading it and always get none but is saying OK if setting it to 0,1 and 2 so i think its one undocumented tuya future (= bug in the firmware). But i have not testing if its working the setting it and then repower the plug.

One explaining witch setting is possible for the cluster https://github.com/zigpy/zigpy/discussions/660#discussioncomment-418182 but i think its one bug in tuya device firmware that is looks not working.

Hi,
found this in another post:
endpoint.saveClusterAttributeKeyValue('seMetering', {divisor: 100, multiplier: 1});

For all normal zigbee devices or only tuya ?
I think is only for tuya TS011F devices then its need being added in one quirk for the device.
By the way the response then setting power on attribute and reading it back is:
0 = StartUpOnOff.Off
1 = StartUpOnOff.On
2 = StartUpOnOff.Toggle
255 = StartUpOnOff.PreviousValue

and none shall being not supported.
Z2M is adding all possible functions but its likely all is not working then not all functions is not tested with all devices.

I think only Tuya.
TS011F and TS0121
this plug does not have Toggle or PreviousValue
exposes.enum('power_outage_memory', ea.STATE_SET, ['on', 'off', 'restore'])

If other smart plugs with power monitoring is OK the tuya is have doing it wrong (a gen) but its better then not having it working at all as some other manufactures have doing in the past.
I think both the tuya custom diverter and the no standard power on mode must being implanted in one quirk for all TS011F (and the TS0121 then user is having them) for getting all things working OK.

Hi Matt,
found this in plug.py (quirk)
class PowerOnState(t.enum8):
    """Tuya power on state enum."""

    Off = 0x00
    On = 0x01
    LastState = 0x02

class OnOffRestorePowerCluster(CustomCluster, OnOff):
    """Tuya on off cluster with restore state."""

    attributes = OnOff.attributes.copy()
    attributes.update({0x8002: ("power_on_state", PowerOnState)})

I tried to make my own quirk see below: copied TS011F.py to "config\custom_zha_quirks"
But I wont Load.
"""TS011F"""
from zigpy.profiles import zha
from zigpy.quirks import CustomCluster, CustomDevice
import zigpy.types as t
from zigpy.zcl.clusters.general import Basic, Groups, OnOff, Ota, Scenes, Time
from zigpy.zcl.clusters.homeautomation import ElectricalMeasurement
from zigpy.zcl.clusters.smartenergy import Metering

from zhaquirks.const import (
    DEVICE_TYPE,
    ENDPOINTS,
    INPUT_CLUSTERS,
    MODELS_INFO,
    OUTPUT_CLUSTERS,
    PROFILE_ID,
)

class PowerOnState(t.enum8):
    """Tuya power on state enum."""

    Off = 0x00
    On = 0x01
    LastState = 0x02

class OnOffRestorePowerCluster(CustomCluster, OnOff):
    """Tuya on off cluster with restore state."""

    attributes = OnOff.attributes.copy()
    attributes.update({0x8002: ("power_on_state", PowerOnState)})

class Plug(CustomDevice):
    """Tuya plug with restore power state support."""

    signature = {
        MODELS_INFO: [
			("_TZ3000_ew3ldmgx", "TS011F"),

        ],
        ENDPOINTS: {
            # <SimpleDescriptor endpoint=1 profile=260 device_type=81
            # device_version=1
            # input_clusters=[0, 3, 4, 5, 6, 9, 1794, 2820, 57344, 57345]
            # output_clusters=[10, 25]>
            1: {
                PROFILE_ID: zha.PROFILE_ID,
                DEVICE_TYPE: zha.DeviceType.SMART_PLUG,
                INPUT_CLUSTERS: [
                    Basic.cluster_id,
                    Groups.cluster_id,
                    Scenes.cluster_id,
                    OnOff.cluster_id,
                    Metering.cluster_id,
                    ElectricalMeasurement.cluster_id,
                ],
                OUTPUT_CLUSTERS: [Time.cluster_id, Ota.cluster_id],
            },

	    # <SimpleDescriptor endpoint=242 profile=41440 device_type=97
            # device_version=1
            # input_clusters=[ ]
            # output_clusters=[33]>
			242: {
				PROFILE_ID: zha.PROFILE_ID,
                DEVICE_TYPE: zha.DeviceType.SMART_PLUG,
                INPUT_CLUSTERS: [ ],
                OUTPUT_CLUSTERS: [33],
			},

        },
    }
    replacement = {
        ENDPOINTS: {
            1: {
                PROFILE_ID: zha.PROFILE_ID,
                DEVICE_TYPE: zha.DeviceType.SMART_PLUG,
                INPUT_CLUSTERS: [
                    Basic.cluster_id,
                    Groups.cluster_id,
                    Scenes.cluster_id,
                    OnOffRestorePowerCluster,
                    Metering.cluster_id,
                    ElectricalMeasurement.cluster_id,
                ],
                OUTPUT_CLUSTERS: [Time.cluster_id, Ota.cluster_id],
            },
        },
    }

I have seen it and i think it shall working for your TS011F device and all TS011F devices.
In the quirk use         MODEL: "TS011F", instead then all TS011F devices with the same endpoints and cluster then ZHA is loading the quirk for them and not only your ID.
If the quirk is not loading is normally some endpoint or cluster that is not 110% the same on the device and the quirk. Take on more look and you is finding the wrong setting in the quirk (if you have doing the config for local quirk OK in HA settings).

The second EP looks being wrong formatted:

	    # <SimpleDescriptor endpoint=242 profile=41440 device_type=97
            # device_version=1
            # input_clusters=[ ]
            # output_clusters=[33]>
			242: {
				PROFILE_ID: zha.PROFILE_ID,
                DEVICE_TYPE: zha.DeviceType.SMART_PLUG,
                INPUT_CLUSTERS: [ ],
                OUTPUT_CLUSTERS: [33],
			},

        },

just changed it.
			# <SimpleDescriptor endpoint=242 profile=41440 device_type=97
            # device_version=1
            # input_clusters=[]
            # output_clusters=[33]>
			242: {
				PROFILE_ID: 41440,
                DEVICE_TYPE: 97,
                INPUT_CLUSTERS: [],
                OUTPUT_CLUSTERS: [GreenPowerProxy.cluster_id],
			},

Good and EP 1 have 9 cluster in your signature and the quirk is only having 6 = no match.

For the 2 unknown cluster you can do like this:
https://github.com/zigpy/zha-device-handlers/blob/83624ba2dea5bfb8af2c489211e26c877ca01c35/zhaquirks/tuya/ts0201_zemismart.py#L39

Ok, how do I now the names of the missing clusters?
57344, 57345
3 is easy:
Identify.cluster_id,

I think the first 2 is energy (need checking the name of them) things and the last 2 is manufacture cluster that you very likely not needed so only using the method from the ts0201_zemismart.py for them.

0x0702 = 1794 = Metering.cluster_id = OK
0X0b04 = 2820 = ElectricalMeasurement.cluster_id = OK

I will Try to do that.
maybe stupid question?
could the unknown cluster be Voltage and Current.
or should these values be under measurement?
QUIRK:
"""Tuya plug."""
from zigpy.profiles import zha
from zigpy.quirks import CustomCluster, CustomDevice
import zigpy.types as t
from zigpy.zcl.clusters.general import Basic, Groups, OnOff, Ota, Scenes, Time
from zigpy.zcl.clusters.homeautomation import ElectricalMeasurement
from zigpy.zcl.clusters.smartenergy import Metering

from zhaquirks.const import (
    DEVICE_TYPE,
    ENDPOINTS,
    INPUT_CLUSTERS,
    MODELS_INFO,
    OUTPUT_CLUSTERS,
    PROFILE_ID,
)

class PowerOnState(t.enum8):
    """Tuya power on state enum."""

    Off = 0x00
    On = 0x01
    LastState = 0x02

class OnOffRestorePowerCluster(CustomCluster, OnOff):
    """Tuya on off cluster with restore state."""

    attributes = OnOff.attributes.copy()
    attributes.update({0x8002: ("power_on_state", PowerOnState)})

class Plug(CustomDevice):
    """Tuya plug with restore power state support."""

    signature = {
        MODELS_INFO: [
			("TS011F"),

        ],
        ENDPOINTS: {
            # <SimpleDescriptor endpoint=1 profile=260 device_type=81
            # device_version=1
            # input_clusters=[0, 3, 4, 5, 6, 9, 1794, 2820, 57344, 57345]
            # output_clusters=[10, 25]>
            1: {
                PROFILE_ID: zha.PROFILE_ID,
                DEVICE_TYPE: zha.DeviceType.SMART_PLUG,
                INPUT_CLUSTERS: [
                    Basic.cluster_id,
					Identify.cluster_id,
                    Groups.cluster_id,
                    Scenes.cluster_id,
                    OnOff.cluster_id,
                    Metering.cluster_id,
                    ElectricalMeasurement.cluster_id,
					0xe000, # Unknown
					0xe001, # Unknown
                ],
                OUTPUT_CLUSTERS: [Time.cluster_id, Ota.cluster_id],
            },

			# <SimpleDescriptor endpoint=242 profile=41440 device_type=97
            # device_version=1
            # input_clusters=[]
            # output_clusters=[33]>
			242: {
				PROFILE_ID: 41440,
                DEVICE_TYPE: 97,
                INPUT_CLUSTERS: [],
                OUTPUT_CLUSTERS: [GreenPowerProxy.cluster_id],
			},

        },
    }
    replacement = {
        ENDPOINTS: {
            1: {
                PROFILE_ID: zha.PROFILE_ID,
                DEVICE_TYPE: zha.DeviceType.SMART_PLUG,
                INPUT_CLUSTERS: [
                    Basic.cluster_id,
					Identify.cluster_id,
                    Groups.cluster_id,
                    Scenes.cluster_id,
                    OnOffRestorePowerCluster,
                    Metering.cluster_id,
                    ElectricalMeasurement.cluster_id,
					0xe000, # Unknown
					0xe001, # Unknown
                ],
                OUTPUT_CLUSTERS: [Time.cluster_id, Ota.cluster_id],
            },
        },
    }

LOGS:
[0x0000:zdo] ZDO request ZDOCmd.Mgmt_Permit_Joining_req: [60, <Bool.false: 0>]
New device 0xd7e8 (84:fd:27:ff:fe:66:14:bb) joined the network
[0xd7e8] Scheduling initialization
Tries remaining: 3
[0xd7e8] Requesting 'Node Descriptor'
Tries remaining: 2
[0xd7e8] Extending timeout for 0xf7 request
Device 0xd7e8 (84:fd:27:ff:fe:66:14:bb) joined the network
[0xd7e8] Scheduling initialization
[0xd7e8] Canceling old initialize call
Tries remaining: 3
[0xd7e8] Requesting 'Node Descriptor'
Tries remaining: 2
[0xd7e8] Extending timeout for 0xf9 request
Device 0xd7e8 (84:fd:27:ff:fe:66:14:bb) joined the network
[0xd7e8] Scheduling initialization
[0xd7e8] Canceling old initialize call
Tries remaining: 3
[0xd7e8] Requesting 'Node Descriptor'
Tries remaining: 2
[0xd7e8] Extending timeout for 0xfb request
Device 0xd7e8 (84:fd:27:ff:fe:66:14:bb) joined the network
[0xd7e8] Scheduling initialization
[0xd7e8] Canceling old initialize call
Tries remaining: 3
[0xd7e8] Requesting 'Node Descriptor'
Tries remaining: 2
[0xd7e8] Extending timeout for 0xfd request
[0xd44e:1:0x0b04] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=True> manufacturer=None tsn=107 command_id=Command.Report_Attributes>
[0xd44e:1:0x0b04] ZCL request 0x000a: [[Attribute(attrid=1291, value=<TypeValue type=int16s, value=193>)]]
[0xd44e:1:0x0b04] Attribute report received: active_power=193
[0x0432:1:0x0b04]: async_update
[0x8DA2:1:0x0b04]: async_update
[0xD44E:1:0x0b04]: async_update
[0x0432:1:0x0b04] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=True> manufacturer=None tsn=255 command_id=Command.Read_Attributes_rsp>
[0x8da2:1:0x0b04] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=True> manufacturer=None tsn=1 command_id=Command.Read_Attributes_rsp>
[0xd44e:1:0x0b04] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=True> manufacturer=None tsn=3 command_id=Command.Read_Attributes_rsp>
Device 0xd7e8 (84:fd:27:ff:fe:66:14:bb) joined the network
[0xd7e8] Scheduling initialization
[0xd7e8] Canceling old initialize call
Tries remaining: 3
[0xd7e8] Requesting 'Node Descriptor'
Tries remaining: 2
[0xd7e8] Extending timeout for 0x05 request
Device 0xd7e8 (84:fd:27:ff:fe:66:14:bb) joined the network
[0xd7e8] Scheduling initialization
[0xd7e8] Canceling old initialize call
Tries remaining: 3
[0xd7e8] Requesting 'Node Descriptor'
Tries remaining: 2
[0xd7e8] Extending timeout for 0x07 request
Device 0xd7e8 (84:fd:27:ff:fe:66:14:bb) joined the network
[0xd7e8] Scheduling initialization
[0xd7e8] Canceling old initialize call
Tries remaining: 3
[0xd7e8] Requesting 'Node Descriptor'
Tries remaining: 2
[0xd7e8] Extending timeout for 0x09 request
Device 0xd7e8 (84:fd:27:ff:fe:66:14:bb) joined the network
[0xd7e8] Scheduling initialization
[0xd7e8] Canceling old initialize call
Tries remaining: 3
[0xd7e8] Requesting 'Node Descriptor'
Tries remaining: 2
[0xd7e8] Extending timeout for 0x0b request
Device 0xd7e8 (84:fd:27:ff:fe:66:14:bb) joined the network
[0xd7e8] Scheduling initialization
[0xd7e8] Canceling old initialize call
Received frame on uninitialized device <Device model=None manuf=None nwk=0xD7E8 ieee=84:fd:27:ff:fe:66:14:bb is_initialized=False> from ep 0 to ep 0, cluster 19: b"\x86\xe8\xd7\xbb\x14f\xfe\xff'\xfd\x84\x8e"
[0xd7e8:zdo] ZDO request ZDOCmd.Device_annce: [0xD7E8, 84:fd:27:ff:fe:66:14:bb, 142]
Tries remaining: 3
[0xd7e8] Requesting 'Node Descriptor'
Tries remaining: 2
[0xd7e8] Extending timeout for 0x0d request
Received frame on uninitialized device <Device model=None manuf=None nwk=0xD7E8 ieee=84:fd:27:ff:fe:66:14:bb is_initialized=False> from ep 0 to ep 0, cluster 32770: b'\r\x00\xe8\xd7\x01@\x8e\x02\x10RR\x00\x00,R\x00\x00'
[0x278f:1:0x0400] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=True> manufacturer=None tsn=51 command_id=Command.Report_Attributes>
[0x278f:1:0x0400] ZCL request 0x000a: [[Attribute(attrid=0, value=<TypeValue type=uint16_t, value=29259>)]]
[0x278f:1:0x0400] Attribute report received: measured_value=29259
[0xd7e8] Got Node Descriptor: NodeDescriptor(logical_type=<LogicalType.Router: 1>, complex_descriptor_available=0, user_descriptor_available=0, reserved=0, aps_flags=0, frequency_band=<FrequencyBand.Freq2400MHz: 8>, mac_capability_flags=<MACCapabilityFlags.AllocateAddress|RxOnWhenIdle|MainsPowered|FullFunctionDevice: 142>, manufacturer_code=4098, maximum_buffer_size=82, maximum_incoming_transfer_size=82, server_mask=11264, maximum_outgoing_transfer_size=82, descriptor_capability_field=<DescriptorCapability.NONE: 0>, *allocate_address=True, *is_alternate_pan_coordinator=False, *is_coordinator=False, *is_end_device=False, *is_full_function_device=True, *is_mains_powered=True, *is_receiver_on_when_idle=True, *is_router=True, *is_security_capable=False)
[0xd7e8] Discovering endpoints
Tries remaining: 3
Received frame on uninitialized device <Device model=None manuf=None nwk=0xD7E8 ieee=84:fd:27:ff:fe:66:14:bb is_initialized=False> from ep 0 to ep 0, cluster 32773: b'\x0f\x00\xe8\xd7\x02\x01\xf2'
[0xd7e8] Discovered endpoints: [1, 242]
[0xd7e8] Initializing endpoints [<Endpoint id=1 in=[] out=[] status=<Status.NEW: 0>>, <Endpoint id=242 in=[] out=[] status=<Status.NEW: 0>>]
[0xd7e8:1] Discovering endpoint information
Tries remaining: 3
Received frame on uninitialized device <Device model=None manuf=None nwk=0xD7E8 ieee=84:fd:27:ff:fe:66:14:bb is_initialized=False> from ep 0 to ep 0, cluster 32772: b'\x11\x00\xe8\xd7\x1e\x01\x04\x01\n\x01\x01\t\x00\x00\x03\x00\x04\x00\x05\x00\x06\x00\x02\x07\x04\x0b\x00\xe0\x01\xe0\x02\x19\x00\n\x00'
[0xd7e8:1] Discovered endpoint information: SizePrefixedSimpleDescriptor(endpoint=1, profile=260, device_type=266, device_version=1, input_clusters=[0, 3, 4, 5, 6, 1794, 2820, 57344, 57345], output_clusters=[25, 10])
Unknown cluster 57344
Unknown cluster 57345
[0xd7e8:242] Discovering endpoint information
Tries remaining: 3
Received frame on uninitialized device <Device model=None manuf=None nwk=0xD7E8 ieee=84:fd:27:ff:fe:66:14:bb is_initialized=False> from ep 0 to ep 0, cluster 32772: b'\x13\x00\xe8\xd7\n\xf2\xe0\xa1a\x00\x00\x00\x01!\x00'
[0xd7e8:242] Discovered endpoint information: SizePrefixedSimpleDescriptor(endpoint=242, profile=41440, device_type=97, device_version=0, input_clusters=[], output_clusters=[33])
[0xd7e8: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=21 command_id=Command.Read_Attributes_rsp>
[0xd7e8] Read model 'TS011F' and manufacturer '_TZ3000_ew3ldmgx' from <Endpoint id=1 in=[basic:0x0000, identify:0x0003, groups:0x0004, scenes:0x0005, on_off:0x0006, smartenergy_metering:0x0702, electrical_measurement:0x0B04, None:0xE000, None:0xE001] out=[ota:0x0019, time:0x000A] status=<Status.ZDO_INIT: 1>>
[0xd7e8] Discovered basic device information for <Device model='TS011F' manuf='_TZ3000_ew3ldmgx' nwk=0xD7E8 ieee=84:fd:27:ff:fe:66:14:bb is_initialized=True>
Device is initialized <Device model='TS011F' manuf='_TZ3000_ew3ldmgx' nwk=0xD7E8 ieee=84:fd:27:ff:fe:66:14:bb is_initialized=True>
Checking quirks for _TZ3000_ew3ldmgx TS011F (84:fd:27:ff:fe:66:14:bb)
Considering <class 'TS011F.Plug'>
Fail because profile_id mismatch on at least one endpoint
Considering <class 'zhaquirks.xbee.xbee_io.XBeeSensor'>
Fail because endpoint list mismatch: {232, 230} {1, 242}
Considering <class 'zhaquirks.xbee.xbee3_io.XBee3Sensor'>
Fail because endpoint list mismatch: {232, 230} {1, 242}
Considering <class 'zhaquirks.smartthings.tag_v4.SmartThingsTagV4'>
Fail because endpoint list mismatch: {1} {1, 242}
Considering <class 'zhaquirks.smartthings.multi.SmartthingsMultiPurposeSensor'>
Fail because endpoint list mismatch: {1} {1, 242}
Considering <class 'zhaquirks.netvox.z308e3ed.Z308E3ED'>
Fail because endpoint list mismatch: {1} {1, 242}
Considering <class 'zhaquirks.gledopto.soposhgu10.SoposhGU10'>
Fail because endpoint list mismatch: {11, 13} {1, 242}
Considering <class 'bellows.zigbee.application.EZSPCoordinator'>
Fail because endpoint list mismatch: {1} {1, 242}
device - 0xD7E8:84:fd:27:ff:fe:66:14:bb entering async_device_initialized - is_new_join: True
device - 0xD7E8:84:fd:27:ff:fe:66:14:bb has joined the ZHA zigbee network
[0xD7E8](TS011F): started configuration
[0xD7E8:ZDO](TS011F): 'async_configure' stage succeeded
Error handling '_save_attribute' event with (84:fd:27:ff:fe:66:14:bb, 1, 0, 4, '_TZ3000_ew3ldmgx') params: FOREIGN KEY constraint failed
[0xD7E8:1:0x0000]: finished channel configuration
Error handling '_save_attribute' event with (84:fd:27:ff:fe:66:14:bb, 1, 0, 5, 'TS011F') params: FOREIGN KEY constraint failed
[0xD7E8:1:0x0006]: bound 'on_off' cluster: Status.SUCCESS
[0xD7E8:1:0x0b04]: bound 'electrical_measurement' cluster: Status.SUCCESS
[0xD7E8:1:0x0702]: bound 'smartenergy_metering' cluster: Status.SUCCESS
[0xd7e8:1:0x0006] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=True> manufacturer=None tsn=29 command_id=Command.Configure_Reporting_rsp>
[0xD7E8:1:0x0019]: finished channel configuration
[0xd7e8:1:0x0b04] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=True> manufacturer=None tsn=31 command_id=Command.Configure_Reporting_rsp>
[0xd7e8:1:0x0702] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=True> manufacturer=None tsn=33 command_id=Command.Configure_Reporting_rsp>
[0xD7E8:1:0x0006]: 'async_configure' stage failed: 'ConfigureReportingResponse' object has no attribute 'status'
[0xD7E8:1:0x0000]: 'async_configure' stage succeeded
[0xD7E8:1:0x0b04]: 'async_configure' stage failed: 'ConfigureReportingResponse' object has no attribute 'status'
[0xD7E8:1:0x0702]: 'async_configure' stage failed: 'ConfigureReportingResponse' object has no attribute 'status'
[0xD7E8:1:0x0019]: 'async_configure' stage succeeded
[0xD7E8](TS011F): completed configuration
[0xD7E8](TS011F): stored in registry: ZhaDeviceEntry(name='_TZ3000_ew3ldmgx TS011F', ieee='84:fd:27:ff:fe:66:14:bb', last_seen=1633260200.5090585)
[0xd7e8:zdo] ZDO request ZDOCmd.Node_Desc_rsp: [<Status.SUCCESS: 0>, 0xD7E8, NodeDescriptor(logical_type=<LogicalType.Router: 1>, complex_descriptor_available=0, user_descriptor_available=0, reserved=0, aps_flags=0, frequency_band=<FrequencyBand.Freq2400MHz: 8>, mac_capability_flags=<MACCapabilityFlags.AllocateAddress|RxOnWhenIdle|MainsPowered|FullFunctionDevice: 142>, manufacturer_code=4098, maximum_buffer_size=82, maximum_incoming_transfer_size=82, server_mask=11264, maximum_outgoing_transfer_size=82, descriptor_capability_field=<DescriptorCapability.NONE: 0>, *allocate_address=True, *is_alternate_pan_coordinator=False, *is_coordinator=False, *is_end_device=False, *is_full_function_device=True, *is_mains_powered=True, *is_receiver_on_when_idle=True, *is_router=True, *is_security_capable=False)]
[0xd7e8:zdo] Unsupported ZDO request:ZDOCmd.Node_Desc_rsp
[0xd7e8:zdo] ZDO request ZDOCmd.Node_Desc_req: [0x0000]
[0xd7e8:zdo] Unsupported ZDO request:ZDOCmd.Node_Desc_req
[0xd7e8:1:0x0003] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=False> manufacturer=None tsn=35 command_id=Command.Default_Response>
[0xD7E8:1:0x0003]: executed 'trigger_effect' command with args: '(2, 0)' kwargs: '{}' result: [64, <Status.UNSUP_CLUSTER_COMMAND: 129>]
[0xD7E8](TS011F): started initialization
[0xD7E8:ZDO](TS011F): 'async_initialize' stage succeeded
[0xD7E8:1:0x0006]: initializing channel: from_cache: False
[0xD7E8:1:0x0000]: initializing channel: from_cache: False
[0xD7E8:1:0x0000]: finished channel configuration
[0xD7E8:1:0x0b04]: initializing channel: from_cache: False
[0xD7E8:1:0x0702]: initializing channel: from_cache: False
[0xd7e8:1:0x0006] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=True> manufacturer=None tsn=37 command_id=Command.Read_Attributes_rsp>
[0xd7e8:1:0x0b04] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=True> manufacturer=None tsn=39 command_id=Command.Read_Attributes_rsp>
[0xD7E8:1:0x0006]: finished channel configuration
[0xD7E8:1:0x0019]: initializing channel: from_cache: False
[0xD7E8:1:0x0019]: finished channel configuration
[0xd7e8:1:0x0702] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=True> manufacturer=None tsn=41 command_id=Command.Read_Attributes_rsp>
[0xd7e8:1:0x0b04] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=True> manufacturer=None tsn=43 command_id=Command.Read_Attributes_rsp>
[0xD7E8:1:0x0b04]: finished channel configuration
[0xd7e8:1:0x0702] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=True> manufacturer=None tsn=45 command_id=Command.Read_Attributes_rsp>
[0xD7E8:1:0x0702]: finished channel configuration
[0xD7E8:1:0x0006]: 'async_initialize' stage succeeded
[0xD7E8:1:0x0000]: 'async_initialize' stage succeeded
[0xD7E8:1:0x0b04]: 'async_initialize' stage succeeded
[0xD7E8:1:0x0702]: 'async_initialize' stage succeeded
[0xD7E8:1:0x0019]: 'async_initialize' stage succeeded
[0xD7E8](TS011F): power source: Mains
[0xD7E8](TS011F): completed initialization
[0xD7E8:1:0x0006]: attempting to update onoff state - from cache: False
[0xd7e8:1:0x0006] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=True> manufacturer=None tsn=47 command_id=Command.Read_Attributes_rsp>
[0xd7e8:zdo] ZDO request ZDOCmd.Node_Desc_rsp: [<Status.SUCCESS: 0>, 0xD7E8, NodeDescriptor(logical_type=<LogicalType.Router: 1>, complex_descriptor_available=0, user_descriptor_available=0, reserved=0, aps_flags=0, frequency_band=<FrequencyBand.Freq2400MHz: 8>, mac_capability_flags=<MACCapabilityFlags.AllocateAddress|RxOnWhenIdle|MainsPowered|FullFunctionDevice: 142>, manufacturer_code=4098, maximum_buffer_size=82, maximum_incoming_transfer_size=82, server_mask=11264, maximum_outgoing_transfer_size=82, descriptor_capability_field=<DescriptorCapability.NONE: 0>, *allocate_address=True, *is_alternate_pan_coordinator=False, *is_coordinator=False, *is_end_device=False, *is_full_function_device=True, *is_mains_powered=True, *is_receiver_on_when_idle=True, *is_router=True, *is_security_capable=False)]
[0xd7e8:zdo] Unsupported ZDO request:ZDOCmd.Node_Desc_rsp
[0xd7e8:zdo] ZDO request ZDOCmd.Node_Desc_rsp: [<Status.SUCCESS: 0>, 0xD7E8, NodeDescriptor(logical_type=<LogicalType.Router: 1>, complex_descriptor_available=0, user_descriptor_available=0, reserved=0, aps_flags=0, frequency_band=<FrequencyBand.Freq2400MHz: 8>, mac_capability_flags=<MACCapabilityFlags.AllocateAddress|RxOnWhenIdle|MainsPowered|FullFunctionDevice: 142>, manufacturer_code=4098, maximum_buffer_size=82, maximum_incoming_transfer_size=82, server_mask=11264, maximum_outgoing_transfer_size=82, descriptor_capability_field=<DescriptorCapability.NONE: 0>, *allocate_address=True, *is_alternate_pan_coordinator=False, *is_coordinator=False, *is_end_device=False, *is_full_function_device=True, *is_mains_powered=True, *is_receiver_on_when_idle=True, *is_router=True, *is_security_capable=False)]
[0xd7e8:zdo] Unsupported ZDO request:ZDOCmd.Node_Desc_rsp
[0x0c77: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=15 command_id=Command.Report_Attributes>
[0x0c77:1:0x0000] ZCL request 0x000a: [[Attribute(attrid=1, value=<TypeValue type=uint8_t, value=67>)]]
[0x0c77:1:0x0000] Attribute report received: app_version=67
[0xd44e:1:0x0b04] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=True> manufacturer=None tsn=108 command_id=Command.Report_Attributes>
[0xd44e:1:0x0b04] ZCL request 0x000a: [[Attribute(attrid=1291, value=<TypeValue type=int16s, value=196>)]]
[0xd44e:1:0x0b04] Attribute report received: active_power=196
[0x0432:1:0x0b04]: async_update
[0x8DA2:1:0x0b04]: async_update
[0xD44E:1:0x0b04]: async_update
[0xD7E8:1:0x0b04]: async_update
[0x0432:1:0x0b04] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=True> manufacturer=None tsn=49 command_id=Command.Read_Attributes_rsp>
[0x8da2:1:0x0b04] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=True> manufacturer=None tsn=51 command_id=Command.Read_Attributes_rsp>
[0xd44e:1:0x0b04] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=True> manufacturer=None tsn=53 command_id=Command.Read_Attributes_rsp>
[0xd7e8:1:0x0b04] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=True> manufacturer=None tsn=55 command_id=Command.Read_Attributes_rsp>
[0xd44e:1:0x0702] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=True> manufacturer=None tsn=109 command_id=Command.Report_Attributes>
[0xd44e:1:0x0702] ZCL request 0x000a: [[Attribute(attrid=0, value=<TypeValue type=uint48_t, value=936>)]]
[0xd44e:1:0x0702] Attribute report received: current_summ_delivered=936

Your formatting is is worse then my but you can using https://black.vercel.app/ for fixing it (past your code in the left side and you is getting the fixed in the left side).
The quirks is not loaded / or ZHA have not loading it then its have to bad formatting but that you can see in HA log.
Try this its ficed with back.
"""Tuya plug."""
from zigpy.profiles import zha
from zigpy.quirks import CustomCluster, CustomDevice
import zigpy.types as t
from zigpy.zcl.clusters.general import Basic, Groups, OnOff, Ota, Scenes, Time
from zigpy.zcl.clusters.homeautomation import ElectricalMeasurement
from zigpy.zcl.clusters.smartenergy import Metering

from zhaquirks.const import (
    DEVICE_TYPE,
    ENDPOINTS,
    INPUT_CLUSTERS,
    MODELS_INFO,
    OUTPUT_CLUSTERS,
    PROFILE_ID,
)

class PowerOnState(t.enum8):
    """Tuya power on state enum."""

    Off = 0x00
    On = 0x01
    LastState = 0x02

class OnOffRestorePowerCluster(CustomCluster, OnOff):
    """Tuya on off cluster with restore state."""

    attributes = OnOff.attributes.copy()
    attributes.update({0x8002: ("power_on_state", PowerOnState)})

class Plug(CustomDevice):
    """Tuya plug with restore power state support."""

    signature = {
        MODELS_INFO: [
            ("TS011F"),
        ],
        ENDPOINTS: {
            # <SimpleDescriptor endpoint=1 profile=260 device_type=81
            # device_version=1
            # input_clusters=[0, 3, 4, 5, 6, 9, 1794, 2820, 57344, 57345]
            # output_clusters=[10, 25]>
            1: {
                PROFILE_ID: zha.PROFILE_ID,
                DEVICE_TYPE: zha.DeviceType.SMART_PLUG,
                INPUT_CLUSTERS: [
                    Basic.cluster_id,
                    Identify.cluster_id,
                    Groups.cluster_id,
                    Scenes.cluster_id,
                    OnOff.cluster_id,
                    Metering.cluster_id,
                    ElectricalMeasurement.cluster_id,
                    0xE000,  # Unknown
                    0xE001,  # Unknown
                ],
                OUTPUT_CLUSTERS: [Time.cluster_id, Ota.cluster_id],
            },
            # <SimpleDescriptor endpoint=242 profile=41440 device_type=97
            # device_version=1
            # input_clusters=[]
            # output_clusters=[33]>
            242: {
                PROFILE_ID: 41440,
                DEVICE_TYPE: 97,
                INPUT_CLUSTERS: [],
                OUTPUT_CLUSTERS: [GreenPowerProxy.cluster_id],
            },
        },
    }
    replacement = {
        ENDPOINTS: {
            1: {
                PROFILE_ID: zha.PROFILE_ID,
                DEVICE_TYPE: zha.DeviceType.SMART_PLUG,
                INPUT_CLUSTERS: [
                    Basic.cluster_id,
                    Identify.cluster_id,
                    Groups.cluster_id,
                    Scenes.cluster_id,
                    OnOffRestorePowerCluster,
                    Metering.cluster_id,
                    ElectricalMeasurement.cluster_id,
                    0xE000,  # Unknown
                    0xE001,  # Unknown
                ],
                OUTPUT_CLUSTERS: [Time.cluster_id, Ota.cluster_id],
            },
        },
    }

Now I get error in HA about identify.
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/config_entries.py", line 304, in async_setup
    result = await component.async_setup_entry(hass, self)  # type: ignore
  File "/usr/src/homeassistant/homeassistant/components/zha/__init__.py", line 99, in async_setup_entry
    setup_quirks(config)
  File "/usr/local/lib/python3.9/site-packages/zhaquirks/__init__.py", line 403, in setup
    importer.find_module(modname).load_module(modname)
  File "<frozen importlib._bootstrap_external>", line 529, in _check_name_wrapper
  File "<frozen importlib._bootstrap_external>", line 1029, in load_module
  File "<frozen importlib._bootstrap_external>", line 854, in load_module
  File "<frozen importlib._bootstrap>", line 274, in _load_module_shim
  File "<frozen importlib._bootstrap>", line 711, in _load
  File "<frozen importlib._bootstrap>", line 680, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 850, in exec_module
  File "<frozen importlib._bootstrap>", line 228, in _call_with_frames_removed
  File "/config/custom_zha_quirks/TS011F.py", line 34, in <module>
    class Plug(CustomDevice):
  File "/config/custom_zha_quirks/TS011F.py", line 51, in Plug
    Identify.cluster_id,
NameError: name 'Identify' is not defined

  File "/config/custom_zha_quirks/TS011F.py", line 51, in Plug
    Identify.cluster_id,
NameError: name 'Identify' is not defined

Shall being added in the import: from zigpy.zcl.clusters.general import Basic, Groups, OnOff, Ota, Scenes, Time

I changed this:
from zigpy.zcl.clusters.general import Basic, Groups, OnOff, Ota, Scenes, Time, GreenPowerProxy, Identify
rebooting now

You need putting it in sorted way then HA is using isort but it working for testing (between Groups and OnOff).
The lines:
            ("TS011F"),
        ],

shall being:
        MODEL: "TS011F",

And run black after all changes so you have the formatting is OK or HA is not loading it.

This is working for testing:
from zigpy.zcl.clusters.general import Basic, Groups, OnOff, Ota, Scenes, Time, GreenPowerProxy, Identify

Must being sorted like this:
from zigpy.zcl.clusters.general import Basic, GreenPowerProxy, Groups, Identify, OnOff, Ota, Scenes, Time

Or you cant adding it HA (test is blocking bad sorting of variables).

If you have debug logging for zhaquirks in your config you is getting somthing like this then starting in HA.
2021-10-02 20:42:20 DEBUG (MainThread) [zhaquirks] Loading quirks module zhaquirks.ikea.fourbtnremote

(from IKEA 4 button remote) with your new quirk name in stead of the IKEA one ;-))

Hi Matt,
Didn't do that but the error is gone.
But the Quirk is still not loaded for TS011F
I will add this to make sure quirk is loaded.
logger:
  default: info
  logs:
    zhaquirks: debug

result:
2021-10-03 14:07:57 DEBUG (MainThread) [zhaquirks] Loading custom quirks module TS011F
So the Quirk is loaded.
When I remove the device and add it again. it should match:
NO LUCK :(
[0xc962] Read model 'TS011F' and manufacturer '_TZ3000_ew3ldmgx' from <Endpoint id=1 in=[basic:0x0000, identify:0x0003, groups:0x0004, scenes:0x0005, on_off:0x0006, smartenergy_metering:0x0702, electrical_measurement:0x0B04, None:0xE000, None:0xE001] out=[ota:0x0019, time:0x000A] status=<Status.ZDO_INIT: 1>>
[0xc962] Discovered basic device information for <Device model='TS011F' manuf='_TZ3000_ew3ldmgx' nwk=0xC962 ieee=84:fd:27:ff:fe:66:14:bb is_initialized=True>
Device is initialized <Device model='TS011F' manuf='_TZ3000_ew3ldmgx' nwk=0xC962 ieee=84:fd:27:ff:fe:66:14:bb is_initialized=True>
Checking quirks for _TZ3000_ew3ldmgx TS011F (84:fd:27:ff:fe:66:14:bb)
Considering <class 'TS011F.Plug'>
Fail because device_type mismatch on at least one endpoint
Considering <class 'zhaquirks.xbee.xbee_io.XBeeSensor'>
Fail because endpoint list mismatch: {232, 230} {1, 242}
Considering <class 'zhaquirks.xbee.xbee3_io.XBee3Sensor'>
Fail because endpoint list mismatch: {232, 230} {1, 242}
Considering <class 'zhaquirks.smartthings.tag_v4.SmartThingsTagV4'>
Fail because endpoint list mismatch: {1} {1, 242}
Considering <class 'zhaquirks.smartthings.multi.SmartthingsMultiPurposeSensor'>
Fail because endpoint list mismatch: {1} {1, 242}
Considering <class 'zhaquirks.netvox.z308e3ed.Z308E3ED'>
Fail because endpoint list mismatch: {1} {1, 242}
Considering <class 'zhaquirks.gledopto.soposhgu10.SoposhGU10'>
Fail because endpoint list mismatch: {11, 13} {1, 242}
Considering <class 'bellows.zigbee.application.EZSPCoordinator'>
Fail because endpoint list mismatch: {1} {1, 242}
device - 0xC962:84:fd:27:ff:fe:66:14:bb entering async_device_initialized - is_new_join: True
device - 0xC962:84:fd:27:ff:fe:66:14:bb has joined the ZHA zigbee network
[0xC962](TS011F): started configuration
[0xC962:ZDO](TS011F): 'async_configure' stage succeeded
Error handling '_save_attribute' event with (84:fd:27:ff:fe:66:14:bb, 1, 0, 4, '_TZ3000_ew3ldmgx') params: FOREIGN KEY constraint failed
[0xC962:1:0x0000]: finished channel configuration
Error handling '_save_attribute' event with (84:fd:27:ff:fe:66:14:bb, 1, 0, 5, 'TS011F') params: FOREIGN KEY constraint failed

ZHA have loading your quirk OK :-)))))))))))))
But somthing is wrong with the signature in your quirk so its not being one match:
Checking quirks for _TZ3000_ew3ldmgx TS011F (84:fd:27:ff:fe:66:14:bb)
Considering <class 'TS011F.Plug'>
Fail because device_type mismatch on at least one endpoint

Post your last version and i can taking on look on it.

"""Tuya plug."""
from zigpy.profiles import zha
from zigpy.quirks import CustomCluster, CustomDevice
import zigpy.types as t
from zigpy.zcl.clusters.general import Basic, GreenPowerProxy, Groups, Identify, OnOff, Ota, Scenes, Time
from zigpy.zcl.clusters.homeautomation import ElectricalMeasurement
from zigpy.zcl.clusters.smartenergy import Metering

from zhaquirks.const import (
    DEVICE_TYPE,
    ENDPOINTS,
    INPUT_CLUSTERS,
    MODEL,
    OUTPUT_CLUSTERS,
    PROFILE_ID,
)

class PowerOnState(t.enum8):
    """Tuya power on state enum."""

    Off = 0x00
    On = 0x01
    LastState = 0x02

class OnOffRestorePowerCluster(CustomCluster, OnOff):
    """Tuya on off cluster with restore state."""

    attributes = OnOff.attributes.copy()
    attributes.update({0x8002: ("power_on_state", PowerOnState)})

class Plug(CustomDevice):
    """Tuya plug with restore power state support."""

    signature = {
        MODEL: "TS011F",
        ENDPOINTS: {
            # <SimpleDescriptor endpoint=1 profile=260 device_type=81
            # device_version=1
            # input_clusters=[0, 3, 4, 5, 6, 9, 1794, 2820, 57344, 57345]
            # output_clusters=[10, 25]>
            1: {
                PROFILE_ID: zha.PROFILE_ID,
                DEVICE_TYPE: zha.DeviceType.SMART_PLUG,
                INPUT_CLUSTERS: [
                    Basic.cluster_id,
                    Identify.cluster_id,
                    Groups.cluster_id,
                    Scenes.cluster_id,
                    OnOff.cluster_id,
                    Metering.cluster_id,
                    ElectricalMeasurement.cluster_id,
                    0xE000,  # Unknown
                    0xE001,  # Unknown
                ],
                OUTPUT_CLUSTERS: [Time.cluster_id, Ota.cluster_id],
            },
            # <SimpleDescriptor endpoint=242 profile=41440 device_type=97
            # device_version=1
            # input_clusters=[]
            # output_clusters=[33]>
            242: {
                PROFILE_ID: 41440,
                DEVICE_TYPE: 97,
                INPUT_CLUSTERS: [],
                OUTPUT_CLUSTERS: [GreenPowerProxy.cluster_id],
            },
        },
    }
    replacement = {
        ENDPOINTS: {
            1: {
                PROFILE_ID: zha.PROFILE_ID,
                DEVICE_TYPE: zha.DeviceType.SMART_PLUG,
                INPUT_CLUSTERS: [
                    Basic.cluster_id,
                    Identify.cluster_id,
                    Groups.cluster_id,
                    Scenes.cluster_id,
                    OnOffRestorePowerCluster,
                    Metering.cluster_id,
                    ElectricalMeasurement.cluster_id,
                    0xE000,  # Unknown
                    0xE001,  # Unknown
                ],
                OUTPUT_CLUSTERS: [Time.cluster_id, Ota.cluster_id],
            },
        },
    }

By the way dont forgetting deleting the __pycache__ folder (in your local quirk forder) after making changes in the quirk of the system can using some old parameters saved in it.

I know the __pycache__
what does: Considering <class 'TS011F.Plug'> do?

ZHA is testing if the quirk "TS011F.Plug" can being matched with the device.
If the device signature is matching that in the quirk ZHA is loading the quirk for the device.
So for the moment is only about the device signature for getting it loaded for your device.

Your device is "device_type": "0x010a" = 266 is not matching DEVICE_TYPE: zha.DeviceType.SMART_PLUG, (= device_type=81)
I must finding the right type.

I have finding it in IKEA plug :-))
                "device_type": zha.DeviceType.ON_OFF_PLUG_IN_UNIT,

And then  this line is false:
            # <SimpleDescriptor endpoint=1 profile=260 device_type=81

Shall being:
            # <SimpleDescriptor endpoint=1 profile=260 device_type=266

JEEH :)
Youre amazing, I find it difficult to find al the name/numbers/hex that have to match.
Also the Power Restore is working.
I would like to go on:

With the metering. Let me try to find a example somewhere to divide the value by 100.
Also it would be nice if there is a sensor for Voltage and Current.

Great done !!
For the multiplier you need finding one quirk that have implanting it and normally its easiest with tuya but it can being implanted in other so look around and you is finding some.
Then the problem to implanting it i think its easiest making one "new" cluster with the / 100 and adding it in the replacement.
I dont knowing if the device is doing Voltage and Current but if its being made by Zigbee standard it shall working out of the box or if not you need finding how to hacking it in the quirk.

By the way can you posing the quirk that is working so other user can testing it and getting there devices getting little taste of the power Metering (little high but still working ;-)) ).

Adminiuga have doing it for tuya AIR but is using tuya PD and not normal Zigbee clusters like your device but perhaps its one clue how to do it.
https://github.com/zigpy/zha-device-handlers/blob/dev/zhaquirks/tuya/air/__init__.py
I looking little more around for hacks.

Bitron/SMaBiT thermostats is "patching" the battery and adding it in one new cluster so i thing its one good example how to do the "new" patched cluster. https://github.com/zigpy/zha-device-handlers/blob/dev/zhaquirks/bitron/thermostat.py.
Then its "only" putting in the multiplexer with "normal" way like "new" attribute = old * 100 i think (= not knowing)

One more IKEA thing !!
IKEA controllers is reporting battery then full as 100% and Zigbe shall doing it as 200%.
In this is the 2* being done and also the cluster https://github.com/zigpy/zha-device-handlers/blob/83624ba2dea5bfb8af2c489211e26c877ca01c35/zhaquirks/init.py#L172 .
I think its easiest making the same and using the "new" cluster in the replacement but implanting it in tuya __init__.pyor in your quirk if no more devices is needing it.
Its looks very easy and short implanting only changing the name of the cluster and attribute and the multiplier :-)))

I have making one PR #1056 that is implanting the power on state in the tuya INIT and also removing it in the plug.py and adding the new on/off cluster in it and renaming plug.py to ts0121_plug.py. #1055
So your quirk can being named ts011f_plug.py and also using the power on state from the INIT.
I think i shall doing the same for TS0101 then i have getting 2 LIDL outdoor plugs but need writing one quirk for it :-(((

Hi Matt,
Using the power on state from the INIT is cool. But plug.py only has lines for power on state. is it absolute then?
I will name my quirk ts011f_plug.py
I'm not used to code, so it's difficult to understand how to build it.
If I add this below I will get a new output. also see replacements
But I have no clue on how to change the numbers from metering and change it before HA gets the numbers.
class TS011FMetering(Metering):
    """Reported Value from current_summ_delivered dived by 100. """

    current_summ_delivered = 0x00
    current_summ_delivered = current_summ_delivered / 100

Replacements:
                INPUT_CLUSTERS: [
                    Basic.cluster_id,
                    Identify.cluster_id,
                    Groups.cluster_id,
                    Scenes.cluster_id,
                    OnOffRestorePowerCluster,
                    TS011FMetering,
                    ElectricalMeasurement.cluster_id,
                    0xE000,  # Unknown
                    0xE001,  # Unknown

I think using this from the quirk root INIT:
class DoublingPowerConfigurationCluster(CustomCluster, PowerConfiguration):
    """PowerConfiguration cluster implementation.
    This implementation doubles battery pct remaining for non standard devices
    that don't follow the reporting spec.
    """

    cluster_id = PowerConfiguration.cluster_id
    BATTERY_PERCENTAGE_REMAINING = 0x0021

    def _update_attribute(self, attrid, value):
        if attrid == self.BATTERY_PERCENTAGE_REMAINING:
            value = value * 2
        super()._update_attribute(attrid, value)

and changing the cluster name PowerConfiguration to wot you will changing.
Then is the attribute you like changing BATTERY_PERCENTAGE_REMAINING = 0x0021 to your attibute.
And the recalculating is made with value = value * 2 so making your / 100 instead.

Something like this:
class DividingMeteringCluster(CustomCluster, Metering):
    """Metering cluster implementation.
    This implementation divides the KwH for tuya devices
    that don't follow the reporting spec.
    """

    cluster_id = Metering.cluster_id
    current_summ_delivered = 0x0000

    def _update_attribute(self, attrid, value):
        if attrid == self.current_summ_delivered:
            value = value / 100
        super()._update_attribute(attrid, value)

how to implement this in my quirk?

I think its looks OK but im no coding worrier :-((
If its only used for your device in then in your quirk and if its being used for more devices in the tuya INIT or if global in the quirk INIT = in your device quirk.
I dont knowing if its need more imports but try putting it in.
Do it like the power on state state class is made (same line spaces before and after).
And run black after before you is putting in your system then if its bad formatted it can being that HA is not starting

Hi,
WauW, That worked :P ..! Very Nice :)

So you is having your server only using 0.19 Wh now ?

Still have to test a hour.
but the Graph went from 1080 to 10.80. All the graphs of my plugs.
Yes: Power State is working.
Just one more 2 go: :)
I also have readings for:
rms_current (id: 0x0508)                   1195 should be 1.195   see below
rms_voltage (id: 0x0505)                   224  Correct
active_power (id: 0x050b)                 194  Correct
Z2M
endpoint.saveClusterAttributeKeyValue('haElectricalMeasurement', {acCurrentDivisor: 1000, acCurrentMultiplier: 1});
But only the sensor for Active Power is Created in HA.
Is this a problem in HA or ZHA or the quirk?

If you can do reading from cluster commands / reading attribute then Zigbee part is OK.
It can that (Z)HA is not making sensor for all cluster you  is having (like the old problem that  is fixes in the beta now).
For the wrong current do one more attribute patching class and fixing it like you was doing with the / 100 and it shall working.
Also look in the HA log with debug enabled and you can see then the device is reporting and how its doing it.

Yes,
It's Oke now. from 10.8 KwH to 11.0 KwH in an hour.
How can is share this quirk?

The radio is only sending receiving wot devices is sending and the radio lib plus Zigpy is only piping it to ZHA that  only understanding "pure Zigbee" so its work OK with devices that is making all OK.
If the device is doing somthing bad then the quirk can correcting it and ZHA is getting "pure Zigbee" and all is working OK.
HA is only getting the last summered consumption and is adding it to the graph with little logic for if have missing some reports and if the device have resettled the counters so it shall starting from zero.
You can doing one PR for adding the code and if you is getting problem i can trying helping you with fixing the tests that normally making one PITA.
If you is having the quirk file made you can starting with "adding file" in the tuya folder and making one new file (with the name of your quirk file) and adding the code in it and then making one pull request after saving it to the dev branch.
Or I can do it but if i do changes i need help from you for testing that all changes is working OK or the devs is not accepting the PR if its not tested in real.

The PR looks good but the devs must approving the tests and hope its working OK.
Your quirk is using only the TS011F so its no need writing all devices that shall working but its OK.
Its good putting one link to the devise request issue and is doing it with "fixing" before its automatic closing the request.

like this:
https://github.com/zigpy/zha-device-handlers/pull/1057

Yes but in the PR so the devs can see wot is made and how its working :-))

The checks was all OK only that David need approving one more time for rerunning it after the last extra "Zero" that was added ;-)
If you have getting one PR merged the system is making the checks without the devs need making anything and its easier.
Great work done !!

Hi,
I saw the Mistake, corrected it.
I learned a lot these past days.
Thanks for you Help. :)
When will it be available for everyone.?

If David is approving it and making one new ZHS_quirk for the HA beta it can going in HA 2021.10 but i think its too late for that.
Hi have proving the TS0121 name changes and using MODEL so that  is in the dev branch now.

Merged into DEV #1057
@MattWestb thanks for the help..!

@mitaka Just to clarify, did the quirk for TS011F in PR #1057 resolve the missing sensors or attributes?

@mitaka
The support for TS011F is still in DEV.

@PlusPlus-ua there is no new zha-quirks release as of yet yet that contain #1107 (also see see #1108 for TS011F RMS current)

It seems that this specific model that I have (_TZ3000_cphmq0q7) still doesn't report correct voltage (as described by @PlusPlus-ua , it's 100 times lower than what it should be and current is 1000 times higher than what it is).
I guess we'll need to split the quirks between the various models :/
Referring to this one: #1107 where the author did remove the previous voltage correction to add the current one, with a screenshot attesting the values are now right for them.


Twilio device status offline

Hello!
I have been struggling with this since the beggining. I am developing an app with ionic + phonegap + twilio for ios and android. For iOS everything works perfect. Unfortunately it is not the case for Android.
The main issue is as the title says, for every token I try to setup twilio, I always receive status offline.
https://github.com/fedxgibson/toptierlabs-app
Here is an example app.
require 'twilio-ruby'
account_sid = 'a'
auth_token = 'b'
appSid     = 'c'
capability = Twilio::Util::Capability.new account_sid, auth_token
capability.allow_client_outgoing(appSid);
capability.generate
And this is how I generate token.
I would appreciate a lot your help. I know it is not precisely the plugin problem ( althought it could be, eventually ), but I dont know who else could help me.
Thanks in advance

Same problem here.
Can anyone help?

Hi,
It could be something in the latest Android Twilio Client SDK (1.2.6). I've tested the plugin through 1.2.2, but something could have broke the build. Let me see what I can do about re-running the tests.

I can confirm that the Android Twilio Client SDK version 1.2.6 is not compatible with the plugin as it now stands. I'll open up a new issue.

thanks Jeffinwood!


Tags not closed in generated SVG

If I have only one <path> element as the only child of SVG root, the generated svg will have <path d="..." id="..."> but no closing tag or trailing slash. I guess this is due to how cheerio handles non-html tags(?)

Hello @FWeinb,
IE 11 logging to the console that: HTML1500: Tag cannot be self-closing. Use an explicit closing tag.
and not rendering the SVG document.
the line we are taking about:
<rect x="0.01" y="0.007" fill="#FFFFFF" width="216.681" height="216.81" />


Summarize locality details for a feed

This Pivotal story asked for an overview of a feed by locality; an older PR from before election day built the base - and was approved - but it wasn't very performant.
This PR changes that. Instead of a function that gets stats for just one locality, we break the feed down by localities as part of the processing. Most of the changes are renaming migrations to prevent conflicts (we got a few in between the original PR and this one).

Is there or will there be a corresponding story on Metis so we can see this data on the dashboard?

Is there or will there be a corresponding story on Metis so we can see this data on the dashboard?

Yes, @katrinamariehh, there is a corresponding story.

It's difficult for me to understand what's going on in all of this, it's almost entirely migrations. Are there tests elsewhere?

It's difficult for me to understand what's going on in all of this, it's almost entirely migrations. Are there tests elsewhere?

Good point; I bet I can cook some up, @tank157.


Multiple output formats

The picture element can be used together with srcset to provide multiple image formats (notably webp + png as fallback), it would be great if gulp-responsive could output the same image in multiple formats.
The format option expects a string, for multiple formats, it would make sense letting it expect an array.
It is possible to have multiple output formats with current gulp-responsive,
but this requires redundant configuration.

Would be really awesome to do this, any ideas on how to do this @mahnunchik or @strarsis ?

PR is welcome

@mahnunchik PR is ready :-)


Types: Missing auto-populating Use-in-Table field

In Traffic Ops, we could select the "use-in-table" from a pick list. In Traffic Portal, you have to know manually the type to use. You could enter any values as well which I'm not sure how this would actually work without the proper DB relation.
This was tested against 3.0.1

I don't believe this is relevant any longer, since only server types can be created through the API


Add support for unratified Zimop extension

Add support for Zimop extension:
https://github.com/riscv/riscv-isa-manual/blob/main/src/zimop.adoc

@ved-rivos can you resolve conflicts on this one - we would like to merge it and check if all things work.

@neelgala - conflicts are resolved.


external control not working on new clones

hi @actual-saurabh loving your plugin, thanks! but i'm running into an issue: when i use an external control for the delete button, it works on the original elements coded into the page, but not on newly cloned ones.
please check out this fiddle: https://jsfiddle.net/split19/boegwbq9/4/
you can delete the 2nd row, but when cloning a row, you can't delete it.
any ideas? thank you!

See, https://jsfiddle.net/boegwbq9/5/
The event binding won't happen and the click event itself won't work. When you bind the event to the .delete-row-btn class, when the code is run (on document ready the event will bind only to the delete buttons present in the DOM at that moment:
$( '.clone-row-btn' ).on( 'click', function(){

    //stuff here never happens on newly cloned elements
}

So, the new clones' delete button which is added to the DOM later will not have the click event binding. Instead, if you bind the event to the wrapper instead, you account for any new element whether added by cloneya or using ajax, like this:
$( '.rows' ).on( 'click', '.delete-row-btn', function(){

    //stuff here will always happen on any element even if it is added later
}

See: https://jsfiddle.net/boegwbq9/6/

Thank you!

my original fiddle was a simplified version of what i really need to do. i got it working as you described, but really i need a nested clone of "pages" and "rows". i know i'm doing something wrong, but i'm not sure how to use jQuery's on() in order to get the nested clones to work. my problem is with the add row button and delete buttons in the newly cloned page. please see: https://jsfiddle.net/yawm8e0v/3/ thank you very much @actual-saurabh !


Cleanup a previous workaround.

Now we can remove the previous workaround.

This is based on #1488. Please review it first.

Codecov Report

Merging #1491 into master will decrease coverage by 2.10%.
The diff coverage is 97.29%.

@@            Coverage Diff             @@
##           master    #1491      +/-   ##
==========================================
- Coverage   93.81%   91.71%   -2.11%
==========================================
  Files          36       36
  Lines        8454     8446       -8
==========================================
- Hits         7931     7746     -185
- Misses        523      700     +177

Impacted Files
Coverage Δ

databricks/koalas/groupby.py
90.10% <97.29%> (+0.69%)
:arrow_up:

databricks/koalas/usage_logging/__init__.py
24.32% <0.00%> (-70.28%)
:arrow_down:

databricks/koalas/usage_logging/usage_logger.py
50.00% <0.00%> (-50.00%)
:arrow_down:

databricks/koalas/__init__.py
78.84% <0.00%> (-13.47%)
:arrow_down:

databricks/conftest.py
88.67% <0.00%> (-7.55%)
:arrow_down:

databricks/koalas/frame.py
92.30% <0.00%> (-3.25%)
:arrow_down:

databricks/koalas/namespace.py
84.49% <0.00%> (-1.61%)
:arrow_down:

databricks/koalas/utils.py
95.60% <0.00%> (-0.98%)
:arrow_down:

databricks/koalas/plot.py
93.33% <0.00%> (-0.96%)
:arrow_down:

databricks/koalas/testing/utils.py
78.26% <0.00%> (-0.73%)
:arrow_down:

... and 1 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update deef167...856a3c5. Read the comment docs.

Seems find to me


add note to summon spells when using Explosive Arrival Wizard feat

This would proc a note on Summon spells if a Wizard PC has the Explosive Arrival Feat.
Note - damage does not scale from the note.

Do you think there's a way to account for the change in trait?

Do you think there's a way to account for the change in trait?

There's a few ways to go about it. The easiest might be to make those damage type mentions into damage links.
If the creature summoned has the<EMAIL_ADDRESS>

This should be a toggle with a mergeable suboption. Even if you will use this 99% of the time with summon spells you may choose not to or maybe some other free action spellshape action is tempting.

Incorporated all of the suggested changes. Please review when you get a moment.
Thanks!


Allow configurable sparse output of REST GET requests

This adds the possibility to optionally get a sparse result from REST GET calls against the abstract REST controller. This can be usefull if you are not interested in the complete representation of objects, but only certain fields are important for you.
In order to only get e.g. the fields name and id of all entities TestEntity (mapped to /rest/testentity): the following request can be used:
/rest/testentity?output:only=name,id

All other fields of the returned objects will be null.
This can be combined with the existing filter-API:
/rest/testentity/filter?id=42&output:only=name,id

The above will give you back the sparse TestEntity serialisation where only the fields name and id have real values, others are null.
This implementation is backwards compatible for the REST API.
I didn't find time to add tests for now, but wanted to get feedback fast; so please review.

Looks like a really nice feature @marcjansen .
Some tests would be fine, but for my part, this could already be merged...

Thanks for the review. I would love to have the name of the parameter be configurable,  though.
I also like the word sparse better than the other ones. I will continue from here anytime soon.

:+1:

ping @marcjansen
There are conflicts you have to resolve before we can merge :wink:

ping @marcjansen :poodle:

Is it possible to resolve the conflicts @marcjansen ?

The conflicts can be resolved for sure, but I am not sure I want this functionality in the way it is implemented here. We can also simply close this and revive this later if we want to. You decide.


Firebase-queue for Cloud Functions

I am basing this issue on a question I came across on StackOverflow regarding whether or not cloud functions render firebase-queue obsolete, and my answer to that question.  Also, I noticed that the Readme.md of this project has been changed to point developers away from this library in favour of cloud functions.
Firebase-queue provides much more than a way for tasks to listen to firebase and launch tasks. It provides a protocol for communication between parties assigning and and responding to task requests, coordinating retries of failed tasks, reporting progress, state and additional metadata, and task chaining.
I think it would be useful for Firebase to develop a firebase-functions-queue package that extends the firebase-functions package and allows you to write a firebase cloud function with the same signature as firebase-queue. Something like this:
const functions = require('firebase-functions');
const functions-queue = require('firebase-functions-queue'); //extends firebase-functions with onQueue function

admin.initializeApp(functions.config().firebase);

functions.database.ref('/queue').onQueue(options,function(data,progress,resolve,reject){
    ...
    })

This new package would work just like firebase-queue and use the same metadata and options, except it wouldn't need to deal with managing multiple worker processes since cloud functions already do this automatically and seamlessly.
This would have the following advantages:

Would allow firebase developers to use a standard way of assigning jobs to queues, monitor progress, failure, etc.
An app could assign a job to a queue and not care if it was being handled by a cloud function or a different environment.
A developer could take an existing queue and move it from their node server to cloud functions without changing the client app.
It could even allow task chaining where one task could be handled by a cloud function and another by a different server within the same job.

@drtriumph @nicolasgarnier fyi

another advantage is having a queue running on a local server that uses platform specific libraries that aren't supported on Cloud Functions

I agree with this. Have ended up just doing my own implementation instead of using queue

This is interesting to me.  I've done a few projects with firebase now and really like firebase-queue.  I recently learned about functions and am curious how I can use it similarly and in combination with pub/sub to eliminate a dependency on amqp.

I am also interested in something like this and am sad to have not heard anything from the developers of this repository. firebase-queue offers a lot more than firebase functions and being able to deploy them to Firebase would be great.

@jaufgang I just released a trimmed down version of firebase queue: https://github.com/kaliberjs/firebase-queue
It is a lot more lightweight, has less moving parts, no dependencies and a more modern approach (promises).
I am not sure what would be needed to support Firebase Functions, but if you look at the code you will see that it is probably pretty doable. I personally have no experience with Firebase Functions, but I think if there is enough demand and interest we can pull something off.


 It also occurs with version 0.14.7.  I haven't tested other versions.
Colyseus server version: 0.14.23 (latest).
Occasionally, after removing a Schema object from a MapSchema, this line throws the error "KeyNotFoundException: The given key was not present in the dictionary":
https://github.com/colyseus/colyseus-unity3d/blob/f80f7f402ad2e51c4ebad59db389c0b4d05ee1ad/Assets/Colyseus/Runtime/Scripts/Serializer/Schema/ColyseusReferenceTracker.cs#L85
If I continue to play my game after this error, I eventually hit a "refId not found" error as well:
https://github.com/colyseus/colyseus-unity3d/blob/f80f7f402ad2e51c4ebad59db389c0b4d05ee1ad/Assets/Colyseus/Runtime/Scripts/Serializer/Schema/Schema.cs#L399
This makes me think that there's some step where a Schema within a MapSchema isn't properly getting added to refCounts and refs in the Unity3d client.

My temporary workaround is to completely disable the garbage collector by commenting out this line:
https://github.com/colyseus/colyseus-unity3d/blob/f80f7f402ad2e51c4ebad59db389c0b4d05ee1ad/Assets/Colyseus/Runtime/Scripts/Serializer/Schema/Schema.cs#L648
That seems to prevent both of the above errors.

It seems this issue has some connection to this one, which has been (hopefully) fixed here: https://github.com/colyseus/colyseus/issues/495#issuecomment-1276545324


Top progress bar not showing

Version: antistasiVersion = "v 1.1.0";
Mods: CBA, TFAR, ACE(no-medical), RHS
Environment: MP dedi nitrado
.rpt attatched? YES
have you edited the missionfile?: No
Issue:
Top bar with infos as commander and others dont show up, tried to restart game/pc do nothing.
Arma3_x64_2018-06-06_23-31-53.txt
Restarted server and it worked but seems totally random bug

As my RPT show i have an undefined H8erHUD(wtf does that mean ?)
So what about this waitUntil ? he might ensure that this is correctly set

Will try

I bulletproofed the function a bit, to avoid errors when that variable is nil and when the commander variable is nil

I think with all the init fixes this is solved.

Arma3_x64_2018-07-05_18-27-59.txt
Got it on EU 1 v1.1.4

Hi!
I just published a patch which I suppose it will solve this. Pls confirm.

fixed \o/


Preliminary nofib rule

This doesn't yet capture stdout/stderr (nor does it clean or boot, even though I think & hope that the latter is done automatically), so we can't really use nofib-analyse yet (see the nofib trac page).
Still a WIP. Meant to address https://github.com/snowleopard/hadrian/issues/594.
@snowleopard Any guidance for the output capture bit? I would have thought the code in Nofib.hs would accomplish what I want (well, eventually I'll want stdout and stderr in the same file), but I can't see any nofib.stdout/nofib.stderr under my build root.

@alpmestan Thanks!
Perhaps you can capture stdout and stderr directly without intermediate files as in the examples below?
https://hackage.haskell.org/package/shake-0.16.4/docs/Development-Shake.html#v:command

Perhaps you can capture stdout and stderr directly without intermediate files as in the examples below?

So you mean something like:
(Stdout out, Stderr err) <- cmd ...

?

Oh, there even is an Stdouterr newtype with a suitable CmdResult instance. This would mirror the first part of the following command:
$ make 2>&1 | tee nofib-log

that is required to run nofib (see here).
I can then write the resulting bytestring to a file under <build root> myself and achieve what I want. The entire process for running nofib however is:
$ cd nofib
$ make clean
$ make boot                  # Generates Makefile dependencies
$ make 2>&1 | tee nofib-log  # Compiles and runs benchmarks one by one

So I suppose I would be better off with a dedicated builder for nofib that runs all those commands, instead of having to special-case on Make "nofib". Getting this whole set of commands to leave the source tree untouched and to put everything under the build root is not something I'm going to look into right now. :-)

@alpmestan Sounds good :) Please ping me when you think this PR is ready.

@snowleopard This PR in its current state lets me run nofib to completion with ./build.sh -j4 --build-flavour=_foo nofib from a booted & configured source tree. nofib log attached available here.
CI seems to be failing for an unrelated reason (and fails with the same error in the validation related PR). This patch is ready for review & possibly landing if you're satisfied.

@alpmestan The PR looks good to me now -- do you think it is ready to be merged?

Yes, I'm happy with this patch as it is now. Merge when you want :-)

@alpmestan Wait, it looks like this PR introduced recursive rules -- could you please have a look and fix?

Once again, we are hit by now working CI -- we should give the highest priority to fixing it!

@snowleopard I think I was seeing recursive rule errors on other PRs before I made this one, and I'm definitely not seeing anything like this locally. Could you give me commands + git commit for reproducing the issue?

@alpmestan Well, both AppVeyor and Travis bots fail in the same way, and I think this is the first PR where this happened, but I may be mistaken, of course. I think it is sufficient to run build selftest to reproduce (but I won't have a chance to try on my machine until evening).

@alpmestan To be more precise, you should try build -c selftest to reproduce.

I managed to reproduce with build -c selftest. The patch at #606 makes the problem go away for me.


Make loading assets more understandable

I created this because of a discussion on Gitter I had with @maksimr
I ran into this documentation, it left me confused and so I debugged an otherwise simple problem. I tried to be more specific to prevent this from happening to others in the future.

+1 for that one

#merge

going to try this again using mary poppins auto-merge - fingers crossed I finally have it set back up

#merge

crosses fingers

As the merge bot is still not running, could you please update your commit message according to our convention in the meantime, thanks.

#merge


Support Apple Silicon simulators

Based on #97, just fixed detekt
See https://kotlinlang.org/docs/mpp-share-on-platforms.html#target-shortcuts-and-arm64-apple-silicon-simulators for details.
This is needed so projects using Orbit can run on the iOS Simulators on Apple Silicon (M1) Macs.

Is this going to be released soon?

Hi! Really love the lib! Will examples of ios be released soon?


Error Code: 14D18B1F

Tableau 2023.1, port 8443,
An error occurred while communicating with ClickHouse JDBC by ANALYTIKA PLUS
There was a problem while running the connector plugin. Reinstall the plugin or contact the plugin provider.
Note that you might need to make local configuration changes to resolve the error.
Error Code: 14D18B1F
Package signature verification failed during connection creation.
Connector Class: clickhouse_jdbc, Version: 0.2.6

Tableau Desktop / Server ?
If Desktop, macOS / Windows ?

Tableau Desktop / Server ? If Desktop, macOS / Windows ?

Desktop, Windows

add this flag to the Tableau Desktop Shortcut
-DDisableVerifyConnectorPluginSignature=true

add this flag to the Tableau Desktop Shortcut

excuse me, how to add a flag?

here:

-DDisableVerifyConnectorPluginSignature=true

i've added the flag, but the error is the same

strange, it works for me.
could you please try to start TD from the command line
with this flag at the end of the command?

I'm not experienced with cmd, could you please provide the full command?

"C:\Program Files\Tableau\Tableau 2023.1\bin\tableau.exe" -DDisableVerifyConnectorPluginSignature=true

then i have another error

this is general error that you can't reach clickhouse. 2 things pop to my head:

check if AWS firewall rules allow to connect to 8443 port from outside
check clickhouse configuration, does you allow connection from outside

8443 is the https port. make sure the SSL checkbox is set.

8443 is the https port. make sure the SSL checkbox is set.

thank you, that helped


fix: fix scope type definitions

at

We're currently processing your upload.  This comment will be updated when the results are available.