OpenWRT AccessPoint / WiFi configuration tutorial
OpenWRT is currently the best operating system for running high-throughput, open-source WiFi access points. It has a full 802.11a/b/g/n/ac support out of the box.
pfSense and OPNSense don't support the 802.11ac mode yet. IPFire supports 802.11ac only partially, with much worse performance.
If you want to run a reliable and high-performance WiFi access point, OpenWRT is the best solution.
Step by step instructions
- Install OpenWRT
- Install required packages
- Configure hostapd in access point mode
Compared to pfSense and IPFire, it's much, much easier to configure Access point in OpenWRT.
Install OpenWRT
We cover the installation steps in separate article. Please see openWRT/LEDE installation instructions for APU boards.
Install hostapd and firmware drivers for your network card(s)
In the web interface, go to System->Software and search for "hostapd".
In the same manner, install drivers and firmware for your network cards.
If you have wle200nx, you will need the following packages:
- kmod-ath9k
- ath9k-htc-firmware
If you have wle600vx or wle900vx you will need these packages:
- ath10k-firmware-qca988x
- kmod-ath10k
Once these packages are installed, reboot your router.
Now you should be able to see a new menu item in Network -> Wireless.
Here's our configuration for wle600vx and wle900vx.
- Operating frequency AC mode, Channel 36, Width: 80MHz
- Transmit power: 23 dBm (199mW)
- ESSID: TekLagerAC
- Wireless security: WPA2-PSK
- Key: TekLager123
- Country code: SE (Make sure to set it, otherwise the cards may show "Wireless is disabled")
OpenWRT allows the user to choose many different channels for wireless networks. Most of these channels are a bad choice because they overlap on two or more standard channels.
For 80MHz width, the good channels are: 36, 52, 100, 116, 132, 149.
For 40Mhz width, we have twice as many "good" channels: 36, 44, 52, 60, 100, 108, 116, 124, 132, 140, 149, 157.
Make sure to set the country code to your country. Some of the above channels may not be permitted in your country.
This configured the card in the full 802.11ac mode with a full 80MHz channel.
Theoretically, you should be able to get 867Mbit/s on this connection.
In our tests, we get 520+Mbit/s which is the highest throughput we have seen on any commercial or open-source device. Our test was performed between APU3 with wle600vx and Samsung Galaxy S7 smartphone. Perhaps even higher throughput can be achieved with a different device.
See raw output from the iperf3 tool:
----------------------------------------------------------- Server listening on 5201 ----------------------------------------------------------- Accepted connection from 192.168.1.186, port 36786 [ 5] local 192.168.1.240 port 5201 connected to 192.168.1.186 port 36787 [ ID] Interval Transfer Bandwidth [ 5] 0.00-1.00 sec 59.7 MBytes 501 Mbits/sec [ 5] 1.00-2.00 sec 63.4 MBytes 532 Mbits/sec [ 5] 2.00-3.00 sec 62.8 MBytes 527 Mbits/sec [ 5] 3.00-4.00 sec 63.4 MBytes 532 Mbits/sec [ 5] 4.00-5.00 sec 63.0 MBytes 529 Mbits/sec [ 5] 5.00-6.00 sec 62.5 MBytes 524 Mbits/sec [ 5] 6.00-7.00 sec 62.8 MBytes 526 Mbits/sec [ 5] 7.00-8.00 sec 62.6 MBytes 526 Mbits/sec [ 5] 8.00-9.00 sec 62.8 MBytes 527 Mbits/sec [ 5] 9.00-10.00 sec 62.8 MBytes 527 Mbits/sec [ 5] 10.00-10.03 sec 2.07 MBytes 500 Mbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ ID] Interval Transfer Bandwidth [ 5] 0.00-10.03 sec 0.00 Bytes 0.00 bits/sec sender [ 5] 0.00-10.03 sec 628 MBytes 525 Mbits/sec receiver
Half-gigabit WiFi throughput is truly amazing. Kudos to the OpenWRT team!