Can you tell me the firmware version of your plug ?
Voila
0x00000012
OK mine are Firmware: 0x00000009
go to GitHub - claudegel/sinope-zha at new-plug
and pick the file switch.py
Your plug should appear as Quirk: switch.SinopeTechnologiesNewSwitch
or âclassâ: âswitch.SinopeTechnologiesNewSwitchâ
let me know if it is working
Ok
I try that and come back.
Ok I have a problem.
After copying the new file I could not remove the switch so I had to revert the change so I could remove the switch.
Then I re-installed the new switch.pi and rebooted. Got this error
2023-01-13 16:13:23.726 DEBUG (MainThread) [zhaquirks] Loading custom quirks from /config/zhaquirks
2023-01-13 16:13:23.732 DEBUG (MainThread) [zhaquirks] Loading custom quirks module light
2023-01-13 16:13:23.748 DEBUG (MainThread) [zhaquirks] Loading custom quirks module sensor
2023-01-13 16:13:23.760 DEBUG (MainThread) [zhaquirks] Loading custom quirks module switch
2023-01-13 16:13:23.774 ERROR (MainThread) [homeassistant.config_entries] Error setting up entry SONOFF Zigbee 3.0 USB Dongle Plus V2 for zha
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/config_entries.py", line 382, in async_setup
result = await component.async_setup_entry(hass, self)
File "/usr/src/homeassistant/homeassistant/components/zha/__init__.py", line 100, in async_setup_entry
setup_quirks(config)
File "/usr/local/lib/python3.10/site-packages/zhaquirks/__init__.py", line 409, in setup
importer.find_module(modname).load_module(modname)
Wait, something is wrong with my switch.py.
I check thatâŚ
It was an operator error.
It works ok now. Energy consumed is realistic now.
Thanks
How is reported your SP2600ZB
Quirk: switch.SinopeTechnologiesNewSwitch ?
Yes:
Quirk: switch.SinopeTechnologiesNewSwitch
Ok Iâll push a PR to ZHA device handler. Thanks
You did all the work.
Thank
Hi, I compared again the value in Manage Zigbee Device in Home Assistant between a G1 and G2 version and didnât find. Could it be possibile the attribute to change is in cluster not shown in Home Assistant? Did you had time to look at it? I can provide you a log if you need, just ask. Thank you
Itâs the second display cluster/attribute that must be changed but Iâm still unable to find it when sniffing the line on the Gt130. There are some cluster not identified that I must test to see what they are used for.
Somewhat off-topic question: does anyone know what the circled letter âAâ is? This is a picture of my TH1400ZB. It doesnât appear in any of the pictures in the manual. Iâm guessing it means âAirâ mode (as opposed to âFloorâ, but that doesnât seem like it should need to be displayed permanently. (Firmware is 0x00010601, if that matters.)
You can try to switch it to floor mode in Neviweb or if you are in ZHA try cluster
0xff01 0x0105 airFloorMode Air: 1, floor: 2
You will see
Thank you. It does seem to represent âAirâ mode. Odd that they would dedicate part of the display for that.
I was resisting switching to Floor mode (I simply chose it from the thermostat menu itself) because I was unsure what other effects it would have. And sure enough, it did have an effect: During the time the thermostat was in floor mode, the current temperature was returned to HA as -557.8F. Which wouldnât really matter, but it pollutes the history graphs Iâve been watching while the thermostat is new. The graph for today is very distorted. Oops!
@DaRouss , Got it. The cluster for second display configuration is, on a TH1123ZB
0xff01 0x0012
0 = auto, 1 = setpoint and 2 = outside temp
so for yours as you have another option of no selection I suppose that it is
0 = no option, 1 = auto, 2 = setpoint and 3 = outside temp
I dontât know if that cluster is available in ZHA as it is manufacturer specific but Iâll add it in climate.py on sinope-zha so youâll be able to test. Check branch
@claudegel I can now see the attribute. On my Th1124ZB, the value is 0 and on my TH1124ZB-G2, the value is 2.
I tried to change it from 2 to 0. But the attribute doesnât want to save. I looked at the log. I can saw " WriteAttributesStatusRecord(status=<Status.INVALID_DATA_TYPE: 141>, attrid=0x0012)]) "
> [0x7C95:1:0xff01] Sending request header: ZCLHeader(frame_control=FrameControl(frame_type=<FrameType.GLOBAL_COMMAND: 0>, is_manufacturer_specific=True, direction=<Direction.Server_to_Client: 0>, disable_default_response=0, reserved=0, *is_cluster=False, *is_general=True, *is_reply=False), manufacturer=4508, tsn=130, command_id=<GeneralCommand.Write_Attributes: 2>, *direction=<Direction.Server_to_Client: 0>, *is_reply=False)
[0x7C95:1:0xff01] Sending request: Write_Attributes(attributes=[Attribute(attrid=0x0012, value=TypeValue(type=uint8_t, value=0))])
Received a packet: ZigbeePacket(src=AddrModeAddress(addr_mode=<AddrMode.NWK: 2>, address=0x7C95), src_ep=1, dst=AddrModeAddress(addr_mode=<AddrMode.NWK: 2>, address=0x0000), dst_ep=1, source_route=None, extended_timeout=False, tsn=167, profile_id=260, cluster_id=65281, data=Serialized[b'\x1c\x9c\x11\x82\x04\x8d\x12\x00'], tx_options=<TransmitOptions.NONE: 0>, radius=0, non_member_radius=0, lqi=204, rssi=-49)
[0x7C95:1:0xff01] Received ZCL frame: b'\x1c\x9c\x11\x82\x04\x8d\x12\x00'
[0x7C95:1:0xff01] Decoded ZCL frame header: ZCLHeader(frame_control=FrameControl(frame_type=<FrameType.GLOBAL_COMMAND: 0>, is_manufacturer_specific=True, direction=<Direction.Client_to_Server: 1>, disable_default_response=1, reserved=0, *is_cluster=False, *is_general=True, *is_reply=True), manufacturer=4508, tsn=130, command_id=4, *direction=<Direction.Client_to_Server: 1>, *is_reply=True)
[0x7C95:1:0xff01] Decoded ZCL frame: SinopeTechnologiesManufacturerCluster:Write_Attributes_rsp(status_records=[WriteAttributesStatusRecord(status=<Status.INVALID_DATA_TYPE: 141>, attrid=0x0012)])
[0x7C95](TH1124ZB-G2): set: False for attr: 18 to cluster: 65281 for ept: 1 - res: Write_Attributes_rsp(status_records=[WriteAttributesStatusRecord(status=<Status.INVALID_DATA_TYPE: 141>, attrid=0x0012)])
Did you try to set it to 1 instead of 0
Iâll have to find out what is this error message. You can try to see if that option is available from the keyboard of your thermostat.
Push the lower button on your thermostat until the setpoint goes to the minimum and keep pushing until the display change. You should see the different option of your device. to navigate between those option push simultaneously the two button to change to the next option. to change the value push the upper or lower button and then push the two button to accept the new value. At the last option the thermostat will revert to itâs normal display. Hoping that the option you need will be available there.