OpenWrt is an open source Linux distribution that users commonly install onto their off-the-shelf home Wi-Fi routers.
OpenWrt-based router firmware is often more secure than stock home router firmware in that it receives regular security updates. Many routers you see at the store have many security vulnerabilities in their software packages, since manufacturers often use outdated packages (Sometimes 10 years old) in their firmware building processes. In some cases, these vulnerabilities are severe enough that your router can be taken over and become part of a Botnet.
OpenWrt firmware is also highly customizable, since it contains a fully-featured version of Linux. Additional packages can be installed through a package manager. Here are some of the features you can install:
- Dynamic DNS
- Per-device traffic statistics
OpenWRT is a testbed for improvements to the Linux Wi-Fi networking stack. Often these improvements are integrated into OpenWRT soon after they are stabilized. By using OpenWRT, you can start enjoying the improved speed and performance immediately.
Step 1: Choosing a Router
For stable performance when using OpenWRT, you need a router that is well supported. Routers that have poor support often have unreliable Wi-Fi and may often crash.
This tutorial covers the installation of OpenWRT on the Archer C7 v3. This router has good support for OpenWRT. If you have questions about device compatibility, read the OpenWRT Wiki and submit questions to forum.openwrt.org
DISCLAIMER: Installing third-party router firmware will almost certainly void your warranty. Consider having two routers, one stock and the other OpenWRT, so you always have a backup in case you start having trouble with your OpenWRT router. Inexpensive devices are available in the $20 range.
Step 2: Equipment
1. TP-Link Archer C7 V3
The Archer C7 can be purchased at retail stores (Walmart, BestBuy) or on Amazon:
2. Two Ethernet cables (One should be included with your router).
Ethernet Cables are common and can be found at retail stores (Walmart, BestBuy) or on Amazon.
Step 3: Software Downloads
For the Archer C7 V3, you will need two files:
- OpenWRT Firmware
tftpd32 (Portable Version) (Windows)
For the Archer C7 V3,
The OpenWRT firmware version numbers change with each update.
First go to the folder with the largest version number then navigate to and download
The V3 uses the same firmware as V2 currently (February 8, 2019).
This is for the U.S. version. There are other versions for other regions (EU). Make sure to check which version you have. It should be shown on the label on the bottom of the router near the model name.
Step 4: Firmware Installation
In order to flash the firmware for the Archer C7 V3, first connect both Ethernet cables as shown in the picture.
Connect the Ethernet cord that is connected to one of the yellow ports to your computer. Then connect the Ethernet cord connected to the blue port to the Ethernet port on your modem (Cable, DSL, etc)
Change your Ethernet adapter's IP to the static IP address 192.168.0.66 as shown in the slideshow.
Extract the tftpd32 archive and copy the OpenWRT firmware into the folder where the tftpd32 files are.
Rename the archer-c7-v2-squashfs-factory-us.bin (US version name) to ArcherC7v3_tp_recovery.bin
Run the tftpd32 application and go to the "Log Viewer" tab.
While the Archer C7 V3 is off, hold the reset button and toggle the power button (See picture). Continue holding down only the reset button until you see activity in the server log.
Now wait a few minutes for the C7 to flash the image. When it is done, you will see that four lights are on: the power LED, the Asterisk-shaped LED, the Globe-shaped LED, and one of the Square LEDs.
Now, go back to your Ethernet adapter settings, where you were previously, and change your IP address and DNS setting back to Automatic (Use the previous slideshow to find your way back).
Unplug the Ethernet cord attached to your computer and plug it back in.
Step 5: Login and Password Creation
Now that the firmware is installed, go to the OpenWrt login screen at
https://192.168.1.1 Then login using the username root and no password. When you are on the main page, click the button on the "No Password Set!" prompt. Enter a strong password and click "Save & Apply."
Step 6: Wi-Fi Network Setup Pt1
Now you will be setting up your Wi-Fi networks. You will have two of them. One is 2.4 Ghz (Long range, low speed). The other is 5Ghz (Short range, high speed). By giving them both the same name and password, your devices will automatically join the best one, depending on how close they are to your Wi-Fi router.
First we will be setting up the 2.4 Ghz network.
Using the top menu bar, go to Network->Wireless
Click "Edit" on the Wi-Fi network below the Wi-Fi card that ends in 802.11bgn.
Under the "General Settings" tab change your channel to auto and your width to 40 Mhz. Transmit power should be set to auto.
Now on the settings page for this network, go to the advanced tab and select your region.
Under the "Interface Configuration" section, set your desired Wi-Fi network name under "ESSID."
Now go to the "Wireless Security" tab. Set encryption to "WPA2-PSK" and enter your desired Wi-Fi password.
Click "Save and Apply"
Now click "Enable" on the network you just created.
Step 7: Wi-Fi Network Setup Pt2
Now we will be setting up the 5Ghz network.
After completing Pt1, you will be on the main Wireless configuration page.
Click "Edit" on the Wi-Fi network below the Wi-Fi card that ends in 802.11nac
Now on the settings page for this network, go to the advanced tab and select your region. Then go back to the "General Settings" tab. I recommend you leave your channel set to the default of 36. It should make your network easier for your devices to find. Channel width should be 80 Mhz, and transmit power should be set to auto. Under the "Interface Configuration" section, set your desired Wi-Fi network name under "ESSID."
Now go to the "Wireless Security" tab. Set your encryption to "WPA2-PSK" and enter your desired Wi-Fi password. Click "Save and Apply"
Now click "Enable" on the network you created.
Step 8: Installing UPnP
UPnP is a software service that allows devices on your network to request that the router forward specific traffic to them. This is often used for video game multiplayer, as well as, smart home devices. I recommend having this installed, so your home devices work correctly. Advanced users may wish to skip this step if they would prefer to setup manual port forwarding, but doing so is difficult for the average user.
First go to "System->Software".
Then click "Update Lists..."
Then enter the name "luci-app-upnp" into the form labeled "Download and install package:" and click "OK"
Now navigate to System->Overview in the web interface. This will refresh the menu bar and allow the UPnP configuration menu to show up under Services->UPnP.
Now check "Start UPnP and NAT-PMP service" and click "Save and Apply"
Step 9: Project Completed
After following these instructions, you now have an OpenWrt router with a good, basic configuration.
Feel free to experiment with your router settings. If you would like to add additional functionality to your OpenWrt router, there are many articles available online showing how to do so.