DialedIn-Aus / blogComments

0 stars 0 forks source link

Flashing the Sonoff ZBDongle-E to enable Matter, Thread and Zigbee on Home Assistant | Dialedin #3

Open utterances-bot opened 1 year ago

utterances-bot commented 1 year ago

Flashing the Sonoff ZBDongle-E to enable Matter, Thread and Zigbee on Home Assistant | Dialedin

Discover the latest in home automation for 2023, Matter and Thread are about to revolutionise smart home tech. In this blog post, learn how to flash your Sonoff ZBDongle-E or EasyIot ZB-GW04 with a RCP MultiPAN firmware to set up a Zigbee network, while providing simultaneous support for Thread. Stay ahead of the game and explore the possibilities of these innovative protocols.

https://dialedin.com.au/blog/sonoff-zbdongle-e-rcp-firmware

Loky31 commented 9 months ago

Tried on Ubuntu and Windows without success

darkxst commented 9 months ago

On Ubuntu you must add your user to dialout group, then it will work. Otherwise user wont have write permisson to the dongle.

I don't know about windows, I dont think it should require tweaking permissions though I dont generally use Windows.

Loky31 commented 9 months ago

Hum. Just gave a try and still no joy for me: 2024-02-16 21:01:36 emscripten universal_silabs_flasher.flasher[42] INFO Probing ApplicationType.GECKO_BOOTLOADER at 115200 baud 2024-02-16 21:01:36 emscripten zigpy.serial[42] DEBUG Opening a serial connection to '/dev/webserial' (115200 baudrate) 2024-02-16 21:01:36 emscripten universal_silabs_flasher.common[42] DEBUG Connection made: <webserial_transport.WebSerialTransport object at 0x1540d98> 2024-02-16 21:01:36 emscripten universal_silabs_flasher.common[42] DEBUG Sending data b'3' 2024-02-16 21:01:38 emscripten webserial_transport[42] DEBUG Closing serial port 2024-02-16 21:01:38 emscripten universal_silabs_flasher.flasher[42] INFO Probing ApplicationType.CPC at 460800 baud 2024-02-16 21:01:38 emscripten zigpy.serial[42] DEBUG Opening a serial connection to '/dev/webserial' (460800 baudrate) 2024-02-16 21:01:38 emscripten webserial_transport[42] DEBUG Closed serial port

I'm doing it under chrome, is that an error? Mozilla seems not able to do it :(

Loky31 commented 9 months ago

Just changed of USB port. it seemed to work, I just clicked on the upgrade FW option and now I'm stuck at : Installing firmware The new firmware is now installing. Do not disconnect the Sonoff ZBDongle-E or close this browser window.

Progress: 0.0%

Loky31 commented 9 months ago

Just afraid to try anything and get my sonoff bricked :(

shirou93 commented 9 months ago

Just afraid to try anything and get my sonoff bricked :(

It's seems broken.

Loky31 commented 9 months ago

Ok just done it again. Changed FW to mutli PAN and go it done !! youhou !!! Now it's my zigbee2MQTT docker that is no more happy with it... damned!

darkxst commented 9 months ago

you need to reconfigure Z2M to connect directly to multiprotocol addon, as shown at the end of blog post.

petrolette commented 9 months ago

Hello,

With the webflasher I installed the Multi-PAN(RCP) firmware.

I have this error message in the Silicon Labs Flasher log. [15:23:15] WARNING: No firmware found for the selected device, assuming firmware is installed. Who knows why?

Below is the full list.

s6-rc: info: service s6rc-oneshot-runner: starting s6-rc: info: service s6rc-oneshot-runner successfully started s6-rc: info: service fix-attrs: starting s6-rc: info: service fix-attrs successfully started s6-rc: info: service legacy-cont-init: starting s6-rc: info: service legacy-cont-init successfully started s6-rc: info: service banner: starting


Add-on: Silicon Labs Flasher Silicon Labs firmware flasher add-on

Add-on version: 0.2.0 You are running the latest version of this add-on. System: Home Assistant OS 11.5 (amd64 / qemux86-64) Home Assistant Core: 2024.2.2 Home Assistant Supervisor: 2024.01.1

Please, share the above information when looking for help or support in, e.g., GitHub, forums or the Discord chat.

s6-rc: info: service banner successfully started s6-rc: info: service universal-silabs-flasher: starting [15:23:15] INFO: Checking /dev/ttyACM0 identifying SONOFF Zigbee 3.0 USB Dongle Plus V2 from ITEAD. [15:23:15] WARNING: No firmware found for the selected device, assuming firmware is installed. [15:23:15] INFO: universal-silabs-flasher-up script exited with code 0 s6-rc: info: service universal-silabs-flasher successfully started s6-rc: info: service legacy-services: starting s6-rc: info: service legacy-services successfully started s6-rc: info: service legacy-services: stopping s6-rc: info: service legacy-services successfully stopped s6-rc: info: service universal-silabs-flasher: stopping s6-rc: info: service universal-silabs-flasher successfully stopped s6-rc: info: service banner: stopping s6-rc: info: service banner successfully stopped s6-rc: info: service legacy-cont-init: stopping s6-rc: info: service legacy-cont-init successfully stopped s6-rc: info: service fix-attrs: stopping s6-rc: info: service fix-attrs successfully stopped s6-rc: info: service s6rc-oneshot-runner: stopping s6-rc: info: service s6rc-oneshot-runner successfully stopped

darkxst commented 9 months ago

This is because Silabs flasher does not include a firmware for Sonoff Dongle. It can only be used with the "custom url" option to provide a link to firmware to install.

petrolette commented 9 months ago

Thanks darkxst. Do you have the URL where I can download the firmware for Sonoff Dongle plus E? Thank you very much,

darkxst commented 9 months ago

You already installed firmware with the webflasher ? so you shouldnt need Silabs flasher addon? However if your running multipan firmware with multiprotocol addon I recommend installing my multipan flasher addon: https://github.com/darkxst/multipan_flasher

Anyway all firmware builds are on my github repo https://github.com/darkxst/silabs-firmware-builder/tree/main/firmware_builds/zbdonglee

TheYarkin commented 9 months ago

Hey, the web flasher suggests installing the CP2102 driver if detection fails. However, doesn't the E version use the CH9102F chip?

darkxst commented 9 months ago

I dont use Windows myself, however I believe the universal CP2102 Silabs driver also supports CH9102. If there are issues with that however then you can use the CH343 driver from Qinheng.

petrolette commented 9 months ago

Thanks darkxst, everything works fine. The problem was simply the Silicon Labs Multiprotocol module, which I hadn't set up properly in HA. Well done for your work

ishimarumakoto commented 8 months ago

Just got mine and having the problem with the webflasher: The running firmware could not be detected.

2024-03-24 16:59:27 emscripten universal_silabs_flasher.flasher[42] INFO Probing ApplicationType.GECKO_BOOTLOADER at 115200 baud
2024-03-24 16:59:27 emscripten zigpy.serial[42] DEBUG Opening a serial connection to '/dev/webserial' (115200 baudrate)
2024-03-24 16:59:27 emscripten universal_silabs_flasher.common[42] DEBUG Connection made: <webserial_transport.WebSerialTransport object at 0x13acd78>
2024-03-24 16:59:27 emscripten universal_silabs_flasher.common[42] DEBUG Received data b'x\x00\x80\xf8\x00x\x80\x00\x80\x00\xf8\xf8\x80\xf8\xf8x\xf8'
2024-03-24 16:59:27 emscripten universal_silabs_flasher.gecko_bootloader[42] DEBUG Parsing State.WAITING_FOR_MENU: bytearray(b'x\x00\x80\xf8\x00x\x80\x00\x80\x00\xf8\xf8\x80\xf8\xf8x\xf8')
2024-03-24 16:59:27 emscripten universal_silabs_flasher.common[42] DEBUG Sending data b'3'
2024-03-24 16:59:29 emscripten webserial_transport[42] DEBUG Closing serial port
2024-03-24 16:59:29 emscripten universal_silabs_flasher.flasher[42] INFO Probing ApplicationType.CPC at 460800 baud
2024-03-24 16:59:29 emscripten zigpy.serial[42] DEBUG Opening a serial connection to '/dev/webserial' (460800 baudrate)
2024-03-24 16:59:29 emscripten webserial_transport[42] DEBUG Closed serial port
2024-03-24 16:59:29 emscripten universal_silabs_flasher.common[42] DEBUG Connection made: <webserial_transport.WebSerialTransport object at 0x1a5ad30>
2024-03-24 16:59:29 emscripten universal_silabs_flasher.cpc[42] DEBUG Sending frame CPCTransportFrame(endpoint=<EndpointId.SYSTEM: 0>, control=196, payload=UnnumberedFrame(command_id=<UnnumberedFrameCommandId.PROP_VALUE_GET: 2>, command_seq=0, payload=PropertyCommand(property_id=<PropertyId.SECONDARY_CPC_VERSION: 3>, value=b'')))
2024-03-24 16:59:29 emscripten universal_silabs_flasher.common[42] DEBUG Sending data b'\x14\x00\n\x00\xc4U\xd3\x02\x00\x04\x00\x03\x00\x00\x00\xdb\x12'
2024-03-24 16:59:29 emscripten universal_silabs_flasher.common[42] DEBUG Received data b'x'
2024-03-24 16:59:29 emscripten universal_silabs_flasher.common[42] DEBUG Received data b'\x00'
2024-03-24 16:59:30 emscripten universal_silabs_flasher.cpc[42] DEBUG Failed to send CPCTransportFrame(endpoint=<EndpointId.SYSTEM: 0>, control=196, payload=UnnumberedFrame(command_id=<UnnumberedFrameCommandId.PROP_VALUE_GET: 2>, command_seq=0, payload=PropertyCommand(property_id=<PropertyId.SECONDARY_CPC_VERSION: 3>, value=b''))), trying again in 0.10s (attempt 1 of 4)
2024-03-24 16:59:30 emscripten universal_silabs_flasher.common[42] DEBUG Received data b'\x80'
2024-03-24 16:59:30 emscripten universal_silabs_flasher.common[42] DEBUG Received data b'\xf8\x00x\x80\x00\x80\x00\xf8\xf8\x80\xf8\xf8x\xf8'
2024-03-24 16:59:30 emscripten universal_silabs_flasher.cpc[42] DEBUG Failed to parse buffer bytearray(b'\xf8'): ValueError('Invalid flag')
2024-03-24 16:59:30 emscripten universal_silabs_flasher.cpc[42] DEBUG Sending frame CPCTransportFrame(endpoint=<EndpointId.SYSTEM: 0>, control=196, payload=UnnumberedFrame(command_id=<UnnumberedFrameCommandId.PROP_VALUE_GET: 2>, command_seq=0, payload=PropertyCommand(property_id=<PropertyId.SECONDARY_CPC_VERSION: 3>, value=b'')))
2024-03-24 16:59:30 emscripten universal_silabs_flasher.common[42] DEBUG Sending data b'\x14\x00\n\x00\xc4U\xd3\x02\x00\x04\x00\x03\x00\x00\x00\xdb\x12'
2024-03-24 16:59:31 emscripten universal_silabs_flasher.cpc[42] DEBUG Failed to send CPCTransportFrame(endpoint=<EndpointId.SYSTEM: 0>, control=196, payload=UnnumberedFrame(command_id=<UnnumberedFrameCommandId.PROP_VALUE_GET: 2>, command_seq=0, payload=PropertyCommand(property_id=<PropertyId.SECONDARY_CPC_VERSION: 3>, value=b''))), trying again in 0.10s (attempt 2 of 4)
2024-03-24 16:59:31 emscripten universal_silabs_flasher.cpc[42] DEBUG Sending frame CPCTransportFrame(endpoint=<EndpointId.SYSTEM: 0>, control=196, payload=UnnumberedFrame(command_id=<UnnumberedFrameCommandId.PROP_VALUE_GET: 2>, command_seq=0, payload=PropertyCommand(property_id=<PropertyId.SECONDARY_CPC_VERSION: 3>, value=b'')))
2024-03-24 16:59:31 emscripten universal_silabs_flasher.common[42] DEBUG Sending data b'\x14\x00\n\x00\xc4U\xd3\x02\x00\x04\x00\x03\x00\x00\x00\xdb\x12'
2024-03-24 16:59:32 emscripten universal_silabs_flasher.cpc[42] DEBUG Failed to send CPCTransportFrame(endpoint=<EndpointId.SYSTEM: 0>, control=196, payload=UnnumberedFrame(command_id=<UnnumberedFrameCommandId.PROP_VALUE_GET: 2>, command_seq=0, payload=PropertyCommand(property_id=<PropertyId.SECONDARY_CPC_VERSION: 3>, value=b''))), trying again in 0.10s (attempt 3 of 4)
2024-03-24 16:59:32 emscripten universal_silabs_flasher.cpc[42] DEBUG Sending frame CPCTransportFrame(endpoint=<EndpointId.SYSTEM: 0>, control=196, payload=UnnumberedFrame(command_id=<UnnumberedFrameCommandId.PROP_VALUE_GET: 2>, command_seq=0, payload=PropertyCommand(property_id=<PropertyId.SECONDARY_CPC_VERSION: 3>, value=b'')))
2024-03-24 16:59:32 emscripten universal_silabs_flasher.common[42] DEBUG Sending data b'\x14\x00\n\x00\xc4U\xd3\x02\x00\x04\x00\x03\x00\x00\x00\xdb\x12'
2024-03-24 16:59:33 emscripten universal_silabs_flasher.cpc[42] DEBUG Failed to send CPCTransportFrame(endpoint=<EndpointId.SYSTEM: 0>, control=196, payload=UnnumberedFrame(command_id=<UnnumberedFrameCommandId.PROP_VALUE_GET: 2>, command_seq=0, payload=PropertyCommand(property_id=<PropertyId.SECONDARY_CPC_VERSION: 3>, value=b''))), trying again in 0.10s (attempt 4 of 4)
2024-03-24 16:59:33 emscripten webserial_transport[42] DEBUG Closing serial port
2024-03-24 16:59:33 emscripten universal_silabs_flasher.flasher[42] INFO Probing ApplicationType.CPC at 115200 baud
2024-03-24 16:59:33 emscripten zigpy.serial[42] DEBUG Opening a serial connection to '/dev/webserial' (115200 baudrate)
2024-03-24 16:59:33 emscripten webserial_transport[42] DEBUG Closed serial port
2024-03-24 16:59:33 emscripten universal_silabs_flasher.common[42] DEBUG Connection made: <webserial_transport.WebSerialTransport object at 0x1aadfc0>
2024-03-24 16:59:33 emscripten universal_silabs_flasher.cpc[42] DEBUG Sending frame CPCTransportFrame(endpoint=<EndpointId.SYSTEM: 0>, control=196, payload=UnnumberedFrame(command_id=<UnnumberedFrameCommandId.PROP_VALUE_GET: 2>, command_seq=0, payload=PropertyCommand(property_id=<PropertyId.SECONDARY_CPC_VERSION: 3>, value=b'')))
2024-03-24 16:59:33 emscripten universal_silabs_flasher.common[42] DEBUG Sending data b'\x14\x00\n\x00\xc4U\xd3\x02\x00\x04\x00\x03\x00\x00\x00\xdb\x12'
2024-03-24 16:59:33 emscripten universal_silabs_flasher.common[42] DEBUG Received data b'\x11'
2024-03-24 16:59:34 emscripten universal_silabs_flasher.cpc[42] DEBUG Failed to send CPCTransportFrame(endpoint=<EndpointId.SYSTEM: 0>, control=196, payload=UnnumberedFrame(command_id=<UnnumberedFrameCommandId.PROP_VALUE_GET: 2>, command_seq=0, payload=PropertyCommand(property_id=<PropertyId.SECONDARY_CPC_VERSION: 3>, value=b''))), trying again in 0.10s (attempt 1 of 4)
2024-03-24 16:59:34 emscripten universal_silabs_flasher.common[42] DEBUG Received data b'\x1a'
2024-03-24 16:59:34 emscripten universal_silabs_flasher.common[42] DEBUG Received data b'\xc1\x02\x02\x9b{~'
2024-03-24 16:59:34 emscripten universal_silabs_flasher.cpc[42] DEBUG Failed to parse buffer bytearray(b'~'): ValueError('Invalid flag')
2024-03-24 16:59:34 emscripten universal_silabs_flasher.cpc[42] DEBUG Sending frame CPCTransportFrame(endpoint=<EndpointId.SYSTEM: 0>, control=196, payload=UnnumberedFrame(command_id=<UnnumberedFrameCommandId.PROP_VALUE_GET: 2>, command_seq=0, payload=PropertyCommand(property_id=<PropertyId.SECONDARY_CPC_VERSION: 3>, value=b'')))
2024-03-24 16:59:34 emscripten universal_silabs_flasher.common[42] DEBUG Sending data b'\x14\x00\n\x00\xc4U\xd3\x02\x00\x04\x00\x03\x00\x00\x00\xdb\x12'
2024-03-24 16:59:35 emscripten universal_silabs_flasher.cpc[42] DEBUG Failed to send CPCTransportFrame(endpoint=<EndpointId.SYSTEM: 0>, control=196, payload=UnnumberedFrame(command_id=<UnnumberedFrameCommandId.PROP_VALUE_GET: 2>, command_seq=0, payload=PropertyCommand(property_id=<PropertyId.SECONDARY_CPC_VERSION: 3>, value=b''))), trying again in 0.10s (attempt 2 of 4)
2024-03-24 16:59:36 emscripten universal_silabs_flasher.cpc[42] DEBUG Sending frame CPCTransportFrame(endpoint=<EndpointId.SYSTEM: 0>, control=196, payload=UnnumberedFrame(command_id=<UnnumberedFrameCommandId.PROP_VALUE_GET: 2>, command_seq=0, payload=PropertyCommand(property_id=<PropertyId.SECONDARY_CPC_VERSION: 3>, value=b'')))
2024-03-24 16:59:36 emscripten universal_silabs_flasher.common[42] DEBUG Sending data b'\x14\x00\n\x00\xc4U\xd3\x02\x00\x04\x00\x03\x00\x00\x00\xdb\x12'
2024-03-24 16:59:37 emscripten universal_silabs_flasher.cpc[42] DEBUG Failed to send CPCTransportFrame(endpoint=<EndpointId.SYSTEM: 0>, control=196, payload=UnnumberedFrame(command_id=<UnnumberedFrameCommandId.PROP_VALUE_GET: 2>, command_seq=0, payload=PropertyCommand(property_id=<PropertyId.SECONDARY_CPC_VERSION: 3>, value=b''))), trying again in 0.10s (attempt 3 of 4)
2024-03-24 16:59:37 emscripten universal_silabs_flasher.cpc[42] DEBUG Sending frame CPCTransportFrame(endpoint=<EndpointId.SYSTEM: 0>, control=196, payload=UnnumberedFrame(command_id=<UnnumberedFrameCommandId.PROP_VALUE_GET: 2>, command_seq=0, payload=PropertyCommand(property_id=<PropertyId.SECONDARY_CPC_VERSION: 3>, value=b'')))
2024-03-24 16:59:37 emscripten universal_silabs_flasher.common[42] DEBUG Sending data b'\x14\x00\n\x00\xc4U\xd3\x02\x00\x04\x00\x03\x00\x00\x00\xdb\x12'
2024-03-24 16:59:38 emscripten universal_silabs_flasher.cpc[42] DEBUG Failed to send CPCTransportFrame(endpoint=<EndpointId.SYSTEM: 0>, control=196, payload=UnnumberedFrame(command_id=<UnnumberedFrameCommandId.PROP_VALUE_GET: 2>, command_seq=0, payload=PropertyCommand(property_id=<PropertyId.SECONDARY_CPC_VERSION: 3>, value=b''))), trying again in 0.10s (attempt 4 of 4)
2024-03-24 16:59:38 emscripten webserial_transport[42] DEBUG Closing serial port
2024-03-24 16:59:38 emscripten universal_silabs_flasher.flasher[42] INFO Probing ApplicationType.CPC at 230400 baud
2024-03-24 16:59:38 emscripten zigpy.serial[42] DEBUG Opening a serial connection to '/dev/webserial' (230400 baudrate)
2024-03-24 16:59:38 emscripten webserial_transport[42] DEBUG Closed serial port
2024-03-24 16:59:38 emscripten universal_silabs_flasher.common[42] DEBUG Connection made: <webserial_transport.WebSerialTransport object at 0x1aadeb8>
2024-03-24 16:59:38 emscripten universal_silabs_flasher.cpc[42] DEBUG Sending frame CPCTransportFrame(endpoint=<EndpointId.SYSTEM: 0>, control=196, payload=UnnumberedFrame(command_id=<UnnumberedFrameCommandId.PROP_VALUE_GET: 2>, command_seq=0, payload=PropertyCommand(property_id=<PropertyId.SECONDARY_CPC_VERSION: 3>, value=b'')))
2024-03-24 16:59:38 emscripten universal_silabs_flasher.common[42] DEBUG Sending data b'\x14\x00\n\x00\xc4U\xd3\x02\x00\x04\x00\x03\x00\x00\x00\xdb\x12'
2024-03-24 16:59:38 emscripten universal_silabs_flasher.common[42] DEBUG Received data b'\x06'
2024-03-24 16:59:38 emscripten universal_silabs_flasher.common[42] DEBUG Received data b'\xe0'
2024-03-24 16:59:39 emscripten universal_silabs_flasher.cpc[42] DEBUG Failed to send CPCTransportFrame(endpoint=<EndpointId.SYSTEM: 0>, control=196, payload=UnnumberedFrame(command_id=<UnnumberedFrameCommandId.PROP_VALUE_GET: 2>, command_seq=0, payload=PropertyCommand(property_id=<PropertyId.SECONDARY_CPC_VERSION: 3>, value=b''))), trying again in 0.10s (attempt 1 of 4)
2024-03-24 16:59:39 emscripten universal_silabs_flasher.common[42] DEBUG Received data b'\x98'
2024-03-24 16:59:39 emscripten universal_silabs_flasher.common[42] DEBUG Received data b'\xe0\x06\x18\x18\x9e\xf8\x9e\x86\xfe'
2024-03-24 16:59:39 emscripten universal_silabs_flasher.cpc[42] DEBUG Failed to parse buffer bytearray(b'\xfe'): ValueError('Invalid flag')
2024-03-24 16:59:39 emscripten universal_silabs_flasher.cpc[42] DEBUG Sending frame CPCTransportFrame(endpoint=<EndpointId.SYSTEM: 0>, control=196, payload=UnnumberedFrame(command_id=<UnnumberedFrameCommandId.PROP_VALUE_GET: 2>, command_seq=0, payload=PropertyCommand(property_id=<PropertyId.SECONDARY_CPC_VERSION: 3>, value=b'')))
2024-03-24 16:59:39 emscripten universal_silabs_flasher.common[42] DEBUG Sending data b'\x14\x00\n\x00\xc4U\xd3\x02\x00\x04\x00\x03\x00\x00\x00\xdb\x12'
2024-03-24 16:59:40 emscripten universal_silabs_flasher.cpc[42] DEBUG Failed to send CPCTransportFrame(endpoint=<EndpointId.SYSTEM: 0>, control=196, payload=UnnumberedFrame(command_id=<UnnumberedFrameCommandId.PROP_VALUE_GET: 2>, command_seq=0, payload=PropertyCommand(property_id=<PropertyId.SECONDARY_CPC_VERSION: 3>, value=b''))), trying again in 0.10s (attempt 2 of 4)
2024-03-24 16:59:40 emscripten universal_silabs_flasher.cpc[42] DEBUG Sending frame CPCTransportFrame(endpoint=<EndpointId.SYSTEM: 0>, control=196, payload=UnnumberedFrame(command_id=<UnnumberedFrameCommandId.PROP_VALUE_GET: 2>, command_seq=0, payload=PropertyCommand(property_id=<PropertyId.SECONDARY_CPC_VERSION: 3>, value=b'')))
2024-03-24 16:59:40 emscripten universal_silabs_flasher.common[42] DEBUG Sending data b'\x14\x00\n\x00\xc4U\xd3\x02\x00\x04\x00\x03\x00\x00\x00\xdb\x12'
2024-03-24 16:59:41 emscripten universal_silabs_flasher.cpc[42] DEBUG Failed to send CPCTransportFrame(endpoint=<EndpointId.SYSTEM: 0>, control=196, payload=UnnumberedFrame(command_id=<UnnumberedFrameCommandId.PROP_VALUE_GET: 2>, command_seq=0, payload=PropertyCommand(property_id=<PropertyId.SECONDARY_CPC_VERSION: 3>, value=b''))), trying again in 0.10s (attempt 3 of 4)
2024-03-24 16:59:41 emscripten universal_silabs_flasher.cpc[42] DEBUG Sending frame CPCTransportFrame(endpoint=<EndpointId.SYSTEM: 0>, control=196, payload=UnnumberedFrame(command_id=<UnnumberedFrameCommandId.PROP_VALUE_GET: 2>, command_seq=0, payload=PropertyCommand(property_id=<PropertyId.SECONDARY_CPC_VERSION: 3>, value=b'')))
2024-03-24 16:59:41 emscripten universal_silabs_flasher.common[42] DEBUG Sending data b'\x14\x00\n\x00\xc4U\xd3\x02\x00\x04\x00\x03\x00\x00\x00\xdb\x12'
2024-03-24 16:59:42 emscripten universal_silabs_flasher.cpc[42] DEBUG Failed to send CPCTransportFrame(endpoint=<EndpointId.SYSTEM: 0>, control=196, payload=UnnumberedFrame(command_id=<UnnumberedFrameCommandId.PROP_VALUE_GET: 2>, command_seq=0, payload=PropertyCommand(property_id=<PropertyId.SECONDARY_CPC_VERSION: 3>, value=b''))), trying again in 0.10s (attempt 4 of 4)
2024-03-24 16:59:42 emscripten webserial_transport[42] DEBUG Closing serial port
2024-03-24 16:59:42 emscripten universal_silabs_flasher.flasher[42] INFO Probing ApplicationType.EZSP at 115200 baud
2024-03-24 16:59:42 emscripten zigpy.serial[42] DEBUG Opening a serial connection to '/dev/webserial' (115200 baudrate)
2024-03-24 16:59:42 emscripten webserial_transport[42] DEBUG Closed serial port
2024-03-24 16:59:42 emscripten bellows.ezsp[42] DEBUG Resetting EZSP
2024-03-24 16:59:42 emscripten bellows.uart[42] DEBUG Resetting ASH
2024-03-24 16:59:42 emscripten bellows.uart[42] DEBUG Sending: b'1ac038bc7e'
2024-03-24 16:59:43 emscripten bellows.uart[42] DEBUG RSTACK Version: 2 Reason: RESET_POWER_ON frame: b'c102029b7b7e'
2024-03-24 16:59:43 emscripten bellows.ezsp[42] INFO NCP entered failed state. No application handler registered, ignoring...
2024-03-24 16:59:47 emscripten bellows.uart[42] DEBUG Connection lost: None
2024-03-24 16:59:47 emscripten bellows.uart[42] DEBUG Closed serial connection
2024-03-24 16:59:47 emscripten universal_silabs_flasher.flasher[42] INFO Probing ApplicationType.SPINEL at 460800 baud
2024-03-24 16:59:47 emscripten zigpy.serial[42] DEBUG Opening a serial connection to '/dev/webserial' (460800 baudrate)
2024-03-24 16:59:47 emscripten webserial_transport[42] DEBUG Closing serial port
2024-03-24 16:59:47 emscripten webserial_transport[42] DEBUG Closed serial port
2024-03-24 16:59:47 emscripten universal_silabs_flasher.common[42] DEBUG Connection made: <webserial_transport.WebSerialTransport object at 0x1ad4cd8>
2024-03-24 16:59:47 emscripten universal_silabs_flasher.spinel[42] DEBUG Sending frame SpinelFrame(header=SpinelHeader(transaction_id=3, network_link_id=0, flag=2), command_id=<CommandID.PROP_VALUE_GET: 2>, data=b'\x02')
2024-03-24 16:59:47 emscripten universal_silabs_flasher.common[42] DEBUG Sending data b'~\x83\x02\x02\xe65~'
2024-03-24 16:59:47 emscripten universal_silabs_flasher.common[42] DEBUG Received data b'x'
2024-03-24 16:59:47 emscripten universal_silabs_flasher.common[42] DEBUG Received data b'\x00'
2024-03-24 16:59:48 emscripten universal_silabs_flasher.spinel[42] DEBUG Failed to send SpinelFrame(header=SpinelHeader(network_link_id=0, flag=2), command_id=<CommandID.PROP_VALUE_GET: 2>, data=b'\x02'), trying again in 0.10s (attempt 1 of 4)
2024-03-24 16:59:48 emscripten universal_silabs_flasher.common[42] DEBUG Received data b'\x80'
2024-03-24 16:59:48 emscripten universal_silabs_flasher.common[42] DEBUG Received data b'\xf8\x00x\x80\x00\x80\x00\xf8\xf8\x80\xf8\xf8x\xf8'
2024-03-24 16:59:48 emscripten universal_silabs_flasher.spinel[42] DEBUG Sending frame SpinelFrame(header=SpinelHeader(transaction_id=3, network_link_id=0, flag=2), command_id=<CommandID.PROP_VALUE_GET: 2>, data=b'\x02')
2024-03-24 16:59:48 emscripten universal_silabs_flasher.common[42] DEBUG Sending data b'~\x83\x02\x02\xe65~'
2024-03-24 16:59:49 emscripten universal_silabs_flasher.spinel[42] DEBUG Failed to send SpinelFrame(header=SpinelHeader(network_link_id=0, flag=2), command_id=<CommandID.PROP_VALUE_GET: 2>, data=b'\x02'), trying again in 0.10s (attempt 2 of 4)
2024-03-24 16:59:49 emscripten universal_silabs_flasher.spinel[42] DEBUG Sending frame SpinelFrame(header=SpinelHeader(transaction_id=3, network_link_id=0, flag=2), command_id=<CommandID.PROP_VALUE_GET: 2>, data=b'\x02')
2024-03-24 16:59:49 emscripten universal_silabs_flasher.common[42] DEBUG Sending data b'~\x83\x02\x02\xe65~'
2024-03-24 16:59:50 emscripten universal_silabs_flasher.spinel[42] DEBUG Failed to send SpinelFrame(header=SpinelHeader(network_link_id=0, flag=2), command_id=<CommandID.PROP_VALUE_GET: 2>, data=b'\x02'), trying again in 0.10s (attempt 3 of 4)
2024-03-24 16:59:50 emscripten universal_silabs_flasher.spinel[42] DEBUG Sending frame SpinelFrame(header=SpinelHeader(transaction_id=3, network_link_id=0, flag=2), command_id=<CommandID.PROP_VALUE_GET: 2>, data=b'\x02')
2024-03-24 16:59:50 emscripten universal_silabs_flasher.common[42] DEBUG Sending data b'~\x83\x02\x02\xe65~'
2024-03-24 16:59:51 emscripten universal_silabs_flasher.spinel[42] DEBUG Failed to send SpinelFrame(header=SpinelHeader(network_link_id=0, flag=2), command_id=<CommandID.PROP_VALUE_GET: 2>, data=b'\x02'), trying again in 0.10s (attempt 4 of 4)
2024-03-24 16:59:52 emscripten webserial_transport[42] DEBUG Closing serial port
2024-03-24 16:59:52 emscripten webserial_transport[42] DEBUG Closed serial port
darkxst commented 8 months ago

@ishimarumakoto What OS are you using?

If Linux, you must add your user to "dialout" group before it can work.

ishimarumakoto commented 8 months ago

@ishimarumakoto What OS are you using?

If Linux, you must add your user to "dialout" group before it can work.

Windows 11, mate This was trying to use the webflasher

darkxst commented 8 months ago

On Windows you probably just need to make sure you have the correct drivers installed for CH9102 serial USB chip. Its not installed by default.

https://www.wch-ic.com/downloads/CH343SER_EXE.html

Or apparently the CP2102 universal drivers also work.

ishimarumakoto commented 8 months ago

This driver worked like a charm in win11, mate! Thank you very much!!!!

Hedda commented 8 months ago

Mentioned in Zigbee2MQTT's guide -> https://www.zigbee2mqtt.io/guide/adapters/#is-your-os-unable-to-find-your-device

Is your OS unable to find your device?

If you're asking yourself "Why won't my dongle or adapter show up?" when you are using (for example) Flash Programmer 2, chances are that your OS can't communicate with your device over VCP (Virtual COM Port) serial port, causing your dongle not showing up as a flashable device. To fix this problem, be sure to install a USB-to-UART bridge/converter VCP driver for your operating system like the one at Silicon Labs, FTDI Chip, or WCH (CH34x/CH91xx).

mauroc78 commented 8 months ago

I've followed your instructions but Zigbee2MQTT gives me this error:

zigbee2mqtt_error

this is the configuration

zigbee2mqtt_configuration

what do you think it's the problem ?

Thanks

darkxst commented 8 months ago

Z2M failed to connect to the MQTT broker. You need to fix that first or Z2M wont run.

mauroc78 commented 8 months ago

Z2M failed to connect to the MQTT broker. You need to fix that first or Z2M wont run.

I've removed user and password and now it connect and work, thanks.

1 2

but there is this error

Assertion failed: Command (setValue(EzspValueId.VALUE_CCA_THRESHOLD, 0)) returned unexpected state: {"cls":"setValue","id":171,"isRequest":false,"status":55}

See this discussion : https://github.com/Koenkk/zigbee2mqtt/issues/19168

darkxst commented 8 months ago

It looks it started up ok? if its running fine, you can ignore that error.

ciottaciotta commented 4 months ago

Hi to all, I'm using the "web flasher" to flash the "router" firmware for the device. From2 different windows devices , When I select the .gbl file on the tool i get this error https://ibb.co/588pwT2

The router firmware comes form this github https://github.com/itead/Sonoff_Zigbee_Dongle_Firmware/tree/master/Dongle-E/Router

Anyone has suggestions to solve this problem? Thanks in advance

tl-sl commented 4 months ago

@ciottaciotta make sure you download the raw firmware file (not the html page)

https://github.com/itead/Sonoff_Zigbee_Dongle_Firmware/raw/master/Dongle-E/Router/Z3RouterUSBDonlge_EZNet6.10.3_V1.0.0.gbl

ciottaciotta commented 4 months ago

@ciottaciotta make sure you download the raw firmware file (not the html page)

https://github.com/itead/Sonoff_Zigbee_Dongle_Firmware/raw/master/Dongle-E/Router/Z3RouterUSBDonlge_EZNet6.10.3_V1.0.0.gbl

Thanks, my bad, this suggestion solved the issue!

Mrz-creator commented 2 months ago

@darkxst Hi darkxst,The web tool you provided is very easy to use https://darkxst.github.io/silabs-firmware-builder/, but one thing makes me confused. In your firmware library, darkxst/silabs-firmware-builder provides ten There are three kinds of hardware firmware, but why does the web tool only support five kinds of dongle flashing? I would be grateful if you could answer my doubts.

darkxst commented 2 months ago

The list of devices I build firmware for has grown over time, but the web flasher hasn't been updated for all of these yet. I should add them eventually or happy to accept PR's adding new devices to web flasher ;)

IKONhub commented 1 week ago

Can I use it as a standalone TBR to connect matter devices to after flashing? Or does it always need to be connected to a PC running HA?

darkxst commented 1 week ago

Thread firmware is RCP (Remote co-processor) type, thus it always requires an agent running in docker on a PC. It doesnt need to be HA though, you can use the upstream OTBR docker container, which can work for eg on an ARM SBC or similar.

If you want a truly standalone OTBR, checkout the Espressif Thread gateway board. There are no ready made binaries for this afaik. so you do need to compile the apps using ESP-ISF, which isnt that easy if your new to these things.

https://github.com/espressif/esp-thread-br