-
Notifications
You must be signed in to change notification settings - Fork 10
700 series Controller Firmware Updates (Linux)
This guide describes where to download Over-The-Wire (OTW) firmware upgrade files for Z-Wave 700 and 800-series controllers, and how to flash the controllers using freely available tools.
If using unofficial tools does not appeal to you, stop now and follow your vendor's official instructions, or contact them directly for support. See Disclaimer.
There are multiple certified releases being maintained at this time. The latest of these are:
- 7.21.2 based on Gecko SDK v4.4.2 (release notes)
- 7.20.3 based on Gecko SDK v4.3.3 (release notes)
- 7.19.5 based on Gecko SDK v4.2.5 (release notes)
- 7.18.8 based on Gecko SDK v4.1.6 (release notes)
🚨 Z-Wave JS has reported an issue to Silicon Labs for a possible 7.19 firmware bug, see here for details. v7.18 or earlier is recommended at this time. This is might be issue 1227385 "The 700/800 controller can lock itself up. The controller is not able to send acknowledgements and the data transmitted is corrupted" added to the 7.21.0 release known issues, but Silicon Labs has not publicly acknowledged it.
We recommend always using the vendor provided files and versions to reduce the risk of bricking your controller. Use other versions and files at your own risk. All downloads linked here go directly to their respective vendor websites.
Select a product:
- Aeotec Z-Stick 7 or Z-Pi 7
- Everspring SA370
- HomeSeer SmartStick+ G3 or Z-NET G3
- Silicon Labs UZB-7 (SLUSB001A)
- Z-Wave.Me RaZberry 7
- Zooz ZAC93 800 Long Range GPIO Module
- Zooz ZST10 700 Z-Wave Stick
- Zooz ZST39 800 Long Range Z-Wave Stick
For alternative download options, see other downloads.
Missing a product? Let us know by submitting an issue.
The Z-Stick 7 and Z-Pi 7 are 700-series controllers based on the EFR32ZG14 chipset.
Refer to official Aeotec update instructions:
The SA370 is a 700-series controller based on the ZGM130S module. There are currently no official update instructions or downloads available.
Known working versions:
-
7.17.2
- Download ZW_SerialAPI_Controller_7_17_2_406_ZGM130S_REGION_US.gbl
-
MD5 checksum:
6cc0961168d209221869bdfd64d5a138
The SmartStick+ G3 and Z-NET G3 are 700-series controllers; the SmartStick is based on the ZGM130S module.
Refer to the official HomeSeer update instructions:
The UZB-7 controller is based on the EFR32ZG14 chipset.
As this is a developer reference board with no official support, the latest GA versions of firmware are listed. New versions may introduce new bugs, so take care if you are using this in a production system. Consider waiting until the firmware is vetted by others.
The firmware file to install depends on your requirements:
- BRD4201A: +14dBm, with SAW filters
- BRD4206A: +14dBm, Z-Wave Long Range (US only)
🚨 Some users have reported problems with versions 7.19, 7.20 and 7.21 for the the BRD4206A variant. These versions can result in severely reduced RF range. The 7.19/7.20 BRD4201A variant works OK, however you lose Long Range capabilities. The 7.21 BRD4201A variant does not work. See 1, 2 and 3 for details.
Latest and stable releases:
- BRD4201A
-
7.21.2 (latest)
- There is no direct download. Download demo-applications.zip and extract the
zwave_ncp_serial_api_controller_BRD4201A.gblfile manually. -
MD5 checksum:
50b279a7765b5f385bf9bcf9e71cbd43
- There is no direct download. Download demo-applications.zip and extract the
-
7.18.8 (stable)
- Download zwave_ncp_serial_api_controller_BRD4201A.gbl
-
MD5 checksum:
38df5ac73299169c957f257f2d8c3cff
-
7.21.2 (latest)
- BRD4206A
-
7.21.2 (latest)
- There is no direct download. Download demo-applications.zip and extract the
zwave_ncp_serial_api_controller_BRD4206A.gblfile manually. -
MD5 checksum:
eb5a860d6ef99a4e3a1543fcf4deb5f4
- There is no direct download. Download demo-applications.zip and extract the
-
7.18.8 (stable)
- Download zwave_ncp_serial_api_controller_BRD4206A.gbl
-
MD5 checksum:
496924733c76a82eadef0ca4a848ea54
-
7.21.2 (latest)
Official Silicon Labs update instructions:
Refer to the official Z-Wave.Me update instructions and downloads:
The ZAC93 800 Long Range GPIO module is an 800-series controller based on the EFR32ZG23A chipset.
Refer to the official Zooz update instructions and downloads:
The ZST10 700 Z-Wave Stick is a 700-series controller based on the ZGM130S module.
Refer to the official Zooz update instructions and downloads:
The ZST39 800 Long Range Z-Wave Stick is an 800-series controller based on the EFR32ZG23A chipset.
Official Zooz update instructions and downloads:
- How to Perform an OTW Firmware Update on Your ZST39 800 Long Range Z-Wave Stick
- Zooz OTA Firmware Files
Download the v4.4.2 demo-applications.zip archive for all of the firmware files.
There are several ways to update the controller firmware. Choose the most convenient method or, when in doubt, the one recommended by your manufacturer.
You can use the controller OTW functionality of Z-Wave JS UI (version 8.8.2 or later).
- Navigate to the ZUI Control Panel page
- Select the blue FAB (floating action button), which is a floating round plus sign at the bottom of the screen
- Select the "Advanced actions" button, which looks like a magic wand
- Select "Update" under "Firmware update OTW"
- Read the warning message
- Select "File" to open the file selector, and choose the firmware file you downloaded from a source above
- Select "UPDATE" to start the OTW update, and progress will be displayed in the message box on the top right of the UI
If the update fails, it is often recoverable. The controller will reboot into the bootloader menu and Z-Wave JS will fail to start. To recover you must re-configure Z-Wave JS UI to enter bootloader mode and try the update again. To do this:
- Navigate to the ZUI Settings page
- Go to the Z-Wave settings panel
- Enable the "Bootloader only" option
- Scroll to the bottom of the settings page and select "SAVE"
- ZUI will reboot, if the controller is in a failed state the driver will pause on startup and allow interaction with the controller
- Repeat the update settings above, and hope it works!
- You can disable "Bootloader only" afterwards, although it has no effect when the controller is in a working state
You can use the device update functionality provided by the Z-Wave integration in Home Assistant (version 2023.3 or later).
- Navigate to Settings -> Devices & Services -> Devices
- Select your Z-Wave controller Device
- Select "UPDATE" in the Device info panel
- Read the warning message and select "YES" if you are sure
- Select the "Upload Firmware" field to open the file selector, and choose the firmware file you downloaded from a source above, or drag and drop a file into the dialog box
- Select "BEGIN FIRMWARE UPDATE" to start the OTW update, and progress will be displayed in the dialog
If the update fails, it is often recoverable. The controller will reboot into the bootloader menu and Z-Wave JS will fail to start. HA does not support recovery. You will need to switch to Z-Wave JS and use its update recovery method (describe above), or use the flash utility method (described below).
Z-Wave JS provides a flash command line utility, @zwave-js/flash. It requires Node.js and npm:
npx -y @zwave-js/flash /dev/ttyUSB0 /path/to/fw/fw.gblUse the --verbose command line option to see detailed logging.
The flash utility can also recover the controller if it is stuck in the bootloader menu from a previous update failure.
If you are using HAOS, you can run this utility within either of the Terminal/SSH add-ons. You will need to install the Node Package Manager (NPM) first:
apk add npmThe kpine/zwave-js-server container image includes the above Z-Wave JS flash utility:
docker run --rm -it \
--device /dev/ttyUSB0:/dev/zwave \
--volume /path/to/fw:/fw \
ghcr.io/kpine/zwave-js-server:latest \
flash /fw/fw.gblUse the --verbose command line option to see detailed logging.