Skip to content
This repository has been archived by the owner on Jun 7, 2024. It is now read-only.

Flash Silicon Labs radio firmware manually

puddly edited this page Mar 28, 2023 · 4 revisions

This page describes how-to manually flash the firmware's provided by this repository on Home Assistant Yellow or Home Assistant SkyConnect.

Prerequisite

  • SSH & Web Terminal (from the Community Add-ons section, make sure to disable "Protection mode" to get direct hardware access)

Preparation

Install the universal-silabs-flasher available on the PyPI:

$ pip install universal-silabs-flasher

Download the firmware files, e.g. by downloading this repository:

git clone https://github.com/NabuCasa/silabs-firmware.git

Important: Disable any integration or add-on which might access the hardware, in particular:

  • Disable the Zigbee Home Automation integration
  • Stop the Silicon Labs Multiprotocol or Silicon Labs Concurrent Multiprotocol add-on

Find the serial path

If you are using Home Assistant SkyConnect, run the following command to find the path of the Home Assistant SkyConnect serial port:

ls /dev/serial/by-id/usb-Nabu_Casa_SkyConnect*

Note the full path shown by this command.

If you are using Home Assistant Yellow, use /dev/ttyAMA1 as the serial path.

Run firmware update

$ cd silabs-firmware
$ universal-silabs-flasher --device <serial-path> \
    flash --allow-cross-flashing --firmware <firmware-file>

E.g. to flash the EmberZNet firmware on a SkyConnect, use:

$ universal-silabs-flasher --device /dev/serial/by-id/usb-Nabu_Casa_SkyConnect_v1.0_d84340ed5e83eb11b65865deb6d59897-if00-port0 \
    flash --allow-cross-flashing --firmware EmberZNet/beta/NabuCasa_SkyConnect_EZSP_v7.1.3.0_ncp-uart-hw_115200.gbl