This article describes how to change the firmware on UniFi devices, including instructions on the more common upgrade to the most recent release via the GUI, as well as manually changing the firmware version, be it to an unreleased version or reverting to an older firmware version.
NOTES & REQUIREMENTS:
If you are planning on using a different firmware version than what is offered by the UniFi Controller, make sure you disable Automatic Upgrades in the Controller first. Scheduled upgrades will also revert the firmware back to the version offered by the Content Delivery Network (CDN). It's important to note that to be able to obtain new information from the CDN, the Controller must have internet access.
Table of Contents
How to Change the Firmware Via the Controller Web UI
Applicable for: UniFi AP/UniFi Switch/UniFi Security Gateway/UniFi Security Gateway Pro
For unadopted APs and Switches, you will see an upgrade button in the Devices tab of the Controller. You will be able to use this option even before adopting the device, this will be especially useful if you are experiencing issues adopting a device.
For any adopted UniFi device, you can easily upgrade or change the device firmware from the device Properties window. In the Devices tab click on Name/MAC address of the AP to expand the Properties panel. Select the Configuration tab > Manage Device > Custom Upgrade.
In this section, you can enter a link that points to the new firmware version. Firmware links can be found on our official download page, HERE, and also within the release notes or firmware blog posts HERE.
ATTENTION: When upgrading from an older factory firmware it may be required to use http:// instead of https:// in the URL.
NOTE: When using a link to a firmware binary on our CDN, the UniFi device will need to be able to properly resolve the host via DNS/access the WAN. The custom upgrade would also work for a locally hosted FTP or HTTP server.
How to Change the Firmware Using Local Upgrade Via SSH
Applicable for: UniFi AP / UniFi Switch
IMPORTANT: To perform a local firmware update, the firmware.bin file's name needs to be changed to fwupdate.bin.
1. Download the firmware.bin file from our Downloads page.
2. Issue the following command to change the file name from
fwupdate.bin, and to place it in the UniFi device filesystem. Remember to make appropriate substitutions in the command below:
scp /foldername/firmwarefile.bin user@IP-of-UAP-or-Switch:/tmp/fwupdate.bin
3. If you have downloaded the firmware file from our Downloads page, the path must change to the saved location of the file. The command above will copy the firmware file to the required directory and rename it.
3. You will now be prompted to enter the password that you use for SSH access. As you type, no characters will appear on screen for security purposes. Carefully enter the correct password, and press Enter.
4. Then connect via SSH and issue the following command to initiate a local upgrade.
syswrapper.sh upgrade2 &
1. Download the program WinSCP. This will allow a SCP session over SSH with a folder structure GUI. Use the SSH credentials to login into the UniFi Device.
2. Download the bin file from our Downloads page.
3. Move the .bin file to the device's /tmp/ folder by dragging and dropping the file, rename file to fwupdate.bin.
4. Connect via SSH and issue the following command to initiate a local upgrade.
syswrapper.sh upgrade2 &
User Tip: Getting an "Invalid Firmware" error when upgrading via SSH: might be caused by installing an incorrect version first. Correct this by going to the tmp folder and deleting fwupdate.bin first and then trying the upgrade command once more (making sure it was in the correct folder in the Controller).
Applicable for: UniFi Security Gateway / UniFi Security Gateway Pro
All models of USG allow local upgrade, though they use a .tar file rather than the .bin used by the APs and switches. There are two options for a local upgrade, one downloading via HTTP or HTTPS (HTTPS highly recommended) from USG itself, and one method of doing an offline upgrade.
If the USG has Internet connectivity, it’s easiest to let it download the update file, then install it. Via SSH to USG, run the following, replacing the URL with one to an actual USG firmware update file.
It will download the specified file, upgrade it, and reboot into the new version.
Where the USG is not yet connected to the Internet, you can download the upgrade.tar file to your local system, then use scp to copy it to USG.
scp /foldername/upgrade-vX.Y.Z.tar user@<IP-of-USG>:~/upgrade.tar
Then SSH to the USG, and run the following to perform the upgrade using that file.
sudo syswrapper.sh upgrade upgrade.tar
How to Disable Automatic Upgrades
When you enable the option to "Automatically upgrade AP firmware" all access points will upgrade the moment you upgrade the Controller's software version. If you are changing the firmware of one of the devices to one other than the released version, you will want to disable the Automatic Upgrades to avoid it rolling back to that public release.
1. To do so, go to Settings > Site
2. Make sure the checkbox for Automatically upgrade firmware is left unchecked. The wording might be slightly different depending on the Controller version.