How to Install OpenWrt 18.06 on Onion Omega2 Pro

I bought a GL-AR750 home router last year, and was very happy with the flexibility of its OpenWrt operating system. The base system has enough functionality as a home router: it has a web-based configuration interface; WiFi works out of box without fiddling hostapd.conf. On the other hand, the system is extensible that I can install additional packages to add VPN server, file sharing, etc. When I decide to start hacking, I noticed a problem: the GL-AR750 is now part of my "production" network, and I don't want to change it too much to affect my normal life. Thus, it's time for a second OpenWrt router!

After some online search and comparison, I chose the Onion Omega2 Pro. The strengths of Onion Omega2 Pro are:

  • The CPU is MIPS architecture, allowing me to gain some experience with this unfamiliar architecture.
  • It has 8GB eMMC storage, giving me plenty of space to install packages.
  • It has LiPo battery port, USB host port, and pin headers with SPI and I2C, leaving possibility of building battery-powered IoT projects.

Shipment arrived two months later. I plugged it in, and found that the Omega2 Pro runs OnionOS, a customized version of OpenWrt. Apart from GUI differences, it uses a custom WiFi driver wifi-warp-core that has several flaws. Most notably, my WiFi SSID is + (a plus sign), and the Onion would not connect to it.

screenshot of OnionOS on Omega2 Pro