Your device must already have an older OpenWrt firmware installed, to be eligible for this “sysupgrade” procedure.
Alternatively refer to the factory installation howto, to install OpenWrt on a device that still has vendor factory firmware on it.
If your current OpenWrt installation does not have LuCI WebUI installed or if you prefer to upgrade from the command line (upgrade from command line provides more fine-grained control), refer to Upgrading OpenWrt from the Command Line.
Download the sysupgrade file. Please note that not all devices do have a firmware image called sysupgrade.bin.
Some devices lack a sysupgrade image and require a special (and usually a bit more complex) installation procedure that is device-specific. This tutorial won't apply for such devices. Instead follow the custom installation description on the corresponding device page in the OpenWrt wiki.
If you have accidentally browsed the generic OpenWrt download folders to locate your device, you might see some more download files matching your device.
Verify firmware file and flash the firmware
Connect to the device via Ethernet cable (Use wireless only, if the device has no Ethernet connection options)
Log into the LuCI WebUI and in the System → Backup/Flash Firmware menu, go to the “Flash new firmware image” section.
Uncheck/clear the “Keep settings” checkbox especially for major version upgrades, so that new defaults will get applied. Keeping settings may be possible for minor upgrades, but there is always a risk of incompatible settings. (more info regarding the "Keep settings" checkbox and its use cases).
Ensure that the OpenWrt firmware file you are about to flash matches your router model and is called “….sysupgrade.bin” (the file type varies like .bin .tar.gz etc., but the key is “sysupgrade”), as you will upgrade an existing OpenWrt system towards a newer OpenWrt firmware version.
In the “Flash new firmware image” section, click “Choose file” to select the image file, then click “Flash image…”. This displays a “Flash Firmware - Verify“ page, containing a SHA256 checksum of the image file just uploaded to the router.
Check that the firmware-checksum displayed in LuCI WebUI matches the SHA256 checksum from the OpenWrt download page. If it does not match, do NOT continue, as it is a corrupt file and will likely brick your device. Note: If you are upgrading from OpenWrt 15.05, the 32 character displayed is an MD5 checksum, not SHA256. Please verify this MD5 checksum on your operating system before proceeding.
If the checksum matches, click “Proceed”. This starts the “System - Flashing …” along with a spinning wheel and “Waiting for changes to be applied…”
It can take several minutes, while the router uploads the firmware image and write it into its flash ROM and finally reboots.
The new firmware has been installed. Continue with the next section to check the result.
if the checksum process failed, do NOT start flashing, as the download could be corrupt. A corrupt firmware file can brick your device! Instead repeat this howto with another download attempt from the download section.
if the checksum step fails repeatedly, you can consult the Installing and Using OpenWrt Forum for help. Be sure to include the exact brand, model, and version of your device.
Check flash result
After your device has finished flashing and rebooting, check if you can access LuCI WebUI LuCI (or the IP that you know of).
If you have flashed a development/snapshot firmware of OpenWrt, you first need to manually enable LuCI WebUI: development installation guide. Or verify the result by SSH-connecting to your OpenWrt device.
The router may have succeeded, but gotten a different IP address than you expected. Either scan your local network, check your regular router's status page (to find out about the IP address it has assigned to your OpenWrt device) or use failsafe mode, to manually reset OpenWrt's settings (which includes the network settings)
If you have checkmarked the “Keep settings” checkbox in the previous section and the system fails to boot after flashing, you need to consult the failsafe mode, to manually reset all settings.
Otherwise you need to start configuring from scratch. In this case, remember to properly set your country code in the OpenWrt WiFi configuration again, to comply with your country's WiFi legal regulation, e.g. see in basic WiFi setup.