Can not connect SkyConnect (Error)

So I received the new shiny SkyConnect stick, plugged it into the Raspi with the extension cable, saw the new device in the “Integrations” menu, clicked it and… error?



Then it completely disappeared from the list. So I tried again with the “Add integration” button:



Still only “connection failed”.

Supervisor logs seem fine:

The logs are a bit unhappy about a “Command.read_parameter” with seq id ‘0x02’, whatever that means:

What am I doing wrong? Is the stick malfunctioning?

During my tests, I now have this phenomenon as well. At first I had switched from a Sonoff 3.0 to SkyConnect without any problems.
Then I tested the migration back to the Sonoff, it also worked.
Now, on the second attempt to migrate to the SkyConnect, exactly your problem occurs and no connection to the stick is possible.

I have the exact same issue… I am suspecting we need a firmware update but I am not sure it’s out yet? I am only guessing but maybe we just have to wait…?

There has not been any update on this either as far as I can see…

1 Like

Seems that for some others it works, though. So maybe there is some difference? Which Raspi do you use and which port did you connect your SkyConnect to? USB3.0 or USB2.0?

Also: Do we have any better contact options for this paid-for product that the forum here? Maybe we can get an official answer somewhere else…

Don’t know about support, sorry.
I am using a Dell Optiplex and running Home Assistant insde a VM. I use the cable that it came with plugged into a USB 3.0-port (I only have USB3-ports). I tried the Addon for Silicon Labs Multiprotocol and that seems to identify the Sky Connect just fine.

I had connected it to a USB 3.0 port of my Raspi 4, but now I switched it to one of the USB 2.0 ports and the behaviour is exactly the same (only that it’s /dev/ttyUSB0 now instead of /dev/ttyUSB1).

I also removed both other USB devices that are usually plugged in (Enocean stick and Homematic stick). That did not change anything either.

I reached out to Nabu Casa support and sent them the link to this thread. Hopefully they have an idea whether it’s a faulty device or what else can be done. Will keep you updated if I get a response.

Had the same issue… my problem was the wrong firmware…
Testing with the “Silicon Labs Multiprotocol” Addon flashed another Firmware.
And with this firmware this error occoured.

Flashing back to the initial firmware was the solution:
Flash Silicon Labs radio firmware manually · NabuCasa/silabs-firmware Wiki · GitHub

I had similar issues, couldnn’t get the devices to stay connected, if I could even pair them. I tried different usb cables to connect skyconnect, different ports, zigbee channels, raspberry pi,… In the end what solved the problem was moving hass os installation from a usb ssd to an sd card. Now it works without a problem.

I‘m on sd card already, so that shouldn’t ne the reason here. But thank you for bringing up the idea!

I never used any addon, do you think reflashing the firmware might still help? I‘m a bit afraid to do more harm than good trying to flash a device that has unknown connection problems :sweat_smile:

You can check in your device use current firmware. (v7.1.3.0)

Ok, what I did was the following:

In the (web) Terminal:

  • pip install silabs-flasher
  • silabs-flasher --device /dev/ttyUSB1 info

This is what I get back:
image

I now also tried the Zigbee2MQTT addon and got the following:

Zigbee2MQTT:error 2023-01-16 11:07:01: Error: Failed to connect to the adapter (Error: SRSP - SYS - ping after 6000ms)
    at ZStackAdapter.start (/app/node_modules/zigbee-herdsman/src/adapter/z-stack/adapter/zStackAdapter.ts:103:27)
    at Controller.start (/app/node_modules/zigbee-herdsman/src/controller/controller.ts:132:29)
    at Zigbee.start (/app/lib/zigbee.ts:58:27)
    at Controller.start (/app/lib/controller.ts:101:27)
    at start (/app/index.js:107:5)

Ugh, I finally found out the source of the problem:

I use the “HomeMatic” Addon. When it’s running, the situation looks like above. As soon as I stop it, though, I can finally access the stick.

image

Seems like the CUxD part of the addon is constantly polling the device.

This was fixed by limiting CUxD to my Enocean stick with the setting TTYPARAM=/dev/ttyUSB0 :slight_smile:

3 Likes

Ok, and you can see the Firmware Version 7.1.1.0 of your Stick.
Current Version is 7.1.3.0.
So you could also do the update right now… :wink:

1 Like

I succesfully re-flashed the SkyConnect firmware before, using https://skyconnect.home-assistant.io/firmware-update/. So it should work.

But, I did not pay attention, and the other day I installed experimental OpenThread border router, and it appearantly flashed my SC dongle :neutral_face:

After that, my zha won’t load, b/c of custom quirks.
So I disabled quirks, rebooted and all, but it won’ t load.

Now I want to flash the SC again using the FW update tool, but whatever I do, it ends after a few minutes with these errors.
Euh , help? I’ ve no spare dongle here…

2023-04-03 01:50:11 emscripten universal_silabs_flasher.flasher[42] INFO Probing ApplicationType.GECKO_BOOTLOADER
2023-04-03 01:50:11 emscripten universal_silabs_flasher.common[42] DEBUG Connection made: <webserial_transport.WebSerialTransport object at 0x1674c00>
2023-04-03 01:50:11 emscripten universal_silabs_flasher.common[42] DEBUG Sending data b'3'
2023-04-03 01:50:13 emscripten universal_silabs_flasher.flasher[42] INFO Probing ApplicationType.CPC
2023-04-03 01:50:13 emscripten universal_silabs_flasher.common[42] DEBUG Connection made: <webserial_transport.WebSerialTransport object at 0x1679e30>
2023-04-03 01:50:13 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'')))
2023-04-03 01:50:13 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'
2023-04-03 01:50:14 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)
2023-04-03 01:50:14 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'')))
2023-04-03 01:50:14 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'
2023-04-03 01:50:15 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)
2023-04-03 01:50:15 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'')))
2023-04-03 01:50:15 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'
2023-04-03 01:50:16 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)
2023-04-03 01:50:16 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'')))
2023-04-03 01:50:16 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'
2023-04-03 01:50:17 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)
2023-04-03 01:50:17 emscripten universal_silabs_flasher.flasher[42] INFO Probing ApplicationType.EZSP
2023-04-03 01:50:17 emscripten bellows.ezsp[42] DEBUG Resetting EZSP
2023-04-03 01:50:17 emscripten bellows.uart[42] DEBUG Resetting ASH
2023-04-03 01:50:17 emscripten bellows.uart[42] DEBUG Sending: b'1ac038bc7e'
2023-04-03 01:50:22 emscripten bellows.uart[42] DEBUG Connection lost: None
2023-04-03 01:50:22 emscripten bellows.uart[42] DEBUG Closed serial connection



I also found this tool somewhere, and this is what it says.
It seems like get_board_info can’t be found

pedw@peter:~$ silabs-flasher --device /dev/serial/by-id/usb-Nabu_Casa_SkyConnect_v1.0_dc9591df1941ed11853a85a7ccf2b06c-if00-port0 info
Traceback (most recent call last):
  File "/home/pedw/.local/bin/silabs-flasher", line 224, in <module>
    main()  # pylint: disable=no-value-for-parameter
  File "/usr/lib/python3/dist-packages/click/core.py", line 1128, in __call__
    return self.main(*args, **kwargs)
  File "/usr/lib/python3/dist-packages/click/core.py", line 1053, in main
    rv = self.invoke(ctx)
  File "/usr/lib/python3/dist-packages/click/core.py", line 1659, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/usr/lib/python3/dist-packages/click/core.py", line 1395, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/usr/lib/python3/dist-packages/click/core.py", line 754, in invoke
    return __callback(*args, **kwargs)
  File "/usr/lib/python3/dist-packages/click/decorators.py", line 26, in new_func
    return f(get_current_context(), *args, **kwargs)
  File "/home/pedw/.local/bin/silabs-flasher", line 27, in inner
    return asyncio.run(f(*args, **kwargs))
  File "/usr/lib/python3.10/asyncio/runners.py", line 44, in run
    return loop.run_until_complete(main)
  File "/usr/lib/python3.10/asyncio/base_events.py", line 646, in run_until_complete
    return future.result()
  File "/home/pedw/.local/bin/silabs-flasher", line 153, in info
    brd_manuf, brd_name, version = await ezsp.get_board_info()
AttributeError: 'NoneType' object has no attribute 'get_board_info'
pedw@peter:~$ 



I also tried all kinds of flavors of this, it seems it can’t determine what FW is running currently.

peter@hass-nuc:~/silabs-firmware$ universal-silabs-flasher --device /dev/ttyUSB0 --baudrate 230400 --bootloader-baudrate 115200  flash --allow-cross-flashing --firmware EmberZNet/NabuCasa_SkyConnect_EZSP_v7.1.1.0_ncp-uart-hw_115200.gbl
2023-04-03 18:39:01 hass-nuc universal_silabs_flasher.flasher[84713] INFO Probing ApplicationType.GECKO_BOOTLOADER
2023-04-03 18:39:03 hass-nuc universal_silabs_flasher.flasher[84713] INFO Probing ApplicationType.CPC
2023-04-03 18:39:03 hass-nuc universal_silabs_flasher.cpc[84713] WARNING Failed to parse buffer bytearray(b'\xf7'): ValueError('Invalid flag')
2023-04-03 18:39:04 hass-nuc universal_silabs_flasher.cpc[84713] WARNING Failed to parse buffer bytearray(b'\xea'): ValueError('Invalid flag')
2023-04-03 18:39:05 hass-nuc universal_silabs_flasher.cpc[84713] WARNING Failed to parse buffer bytearray(b'\xe1'): ValueError('Invalid flag')
2023-04-03 18:39:06 hass-nuc universal_silabs_flasher.cpc[84713] WARNING Failed to parse buffer bytearray(b'\xeb'): ValueError('Invalid flag')
2023-04-03 18:39:07 hass-nuc universal_silabs_flasher.flasher[84713] INFO Probing ApplicationType.EZSP
Error: Failed to probe running application type
peter@hass-nuc:~/silabs-firmware$

Do I have a $50,-- table leveler now? Why can’t I just flash the stock FW to it…

1 Like

I seem to have un-bricked the skyconnect dongle today :partying_face:

A while ago I noticed an update of the Silicon Labs Flasher add-on, so I thought to give it another try.

I chose this firmware, while I guessed EZSP should to be back on the dongle:
EZSP & OpenThreadRCP beta / NabuCasa_SkyConnect_EZSP_OpenThread_RCP_v4.1.3.0_ncp-uart-hw_230400.gbl

It’s part of this download: https://github.com/NabuCasa/silabs-firmware/archive/refs/heads/main.zip

I used the HA add-on Silicon Labs Flasher
YAML:

device: >-
  /dev/serial/by-id/usb-Nabu_Casa_SkyConnect_v1.0_dc9591df1941ed11853a85a7ccf2b06c-if00-port0
bootloader_baudrate: "230400"
flow_control: true
verbose: true
firmware_url: /local/NabuCasa_SkyConnect_EZSP_OpenThread_RCP_v4.1.3.0_ncp-uart-hw_230400.gbl

Found out after way to many tries that if you have silicon multipan version on your stick you need to remove the addon (Silicon)and integrations (thread)before you flash via silicone laps flasher addon.