(image from Wikipedia)
I had a requirement for 4G on the go that doesn’t cost me $40,000,000 a year to run… Telstra’s Voice and Data Pre-Paid sucks for price.
I wanted something I could use on the way to and from work, and whenever I was out. Something that was low-power and could sit in my bag.
UPDATE I fixed the issue where the usb modem would not show itself as an interface at boot, check the end of the post to find the fix!
I have massive planespergers… From wikipedia:
AWACS or Airborne Warning and Control System is an airborne radar picket system designed to detect aircraft, ships and vehicles at long ranges and perform control and command of the battle space in an air engagement by directing fighter and attack aircraft strikes.
I usually name my Wireless stuff after Airforce related things, Such as TACAMO (TAke COmmand And Move Out – Nuclear war survivable communications) for my Mobile Phone tether, and Callsigns for static Access Points, such as “Mainsail” and “Skyking”
1x TP-Link TL-MR3020 Mobile Access Point – http://wiki.openwrt.org/toh/tp-link/tl-mr3020 – Atheros AR7240 MIPS Processor @ 400MHz – 32M RAM – 4M Flash (yes, very tight…) – 1x USB, 1x Mini-USB (for power input) – 1x 10/100 Ethernet (for un-fucking with ThinkPad)
1x ZTE MF823 LTE/UMTS USB Modem – http://zte.com.au/telstra/MF823.htm – Has an ARMv7 SoC and runs a Linux Kernel as I found out. (Had root on it less than 10 minutes after it being delivered)
1x Mini-Gorilla Battery Pack. https://www.powertraveller.com/en/shop/portable-chargers/professional/minigorilla/
So, firstly, I needed to Install OpenWRT on the TP-Link, this was fairly straight forward with the trunk versions known as Barrier Breaker. TP-Link are bros that don’t dick you around in giving access to the hardware you own, so it was as simple as feeding it OpenWRT as a Firmware Upgrade via the Web Interface :)
Once installed, I opkg’d the niceties and requirements after getting it connected up to my work’s non-priveleged wireless :3
opkg update; opkg install ip kmod-usb-net kmod-usb-net-rndis kmod-usb-net-cdc-ether usbutils udev
This will get you the nice new IP tools, as well as all the kernel modules and software required to tether to the ZTE Modem (Which will present itself like an Ethernet Adaptor over USB)
Once Telstra was kind enough to deliver my USB Modem (ok, it wasn’t that bad) I registered it up, and put on 10G that will stay active for 90 days, none of this 30 day bullshit with voice and data. You pay more up-front, but it will last you.
Once all together, we tell the AP what to do:
Since we cannot fit a web interface or let alone luci on this bee’s dick of a flash storage, we need to use the OpenWRT CLI configuration utility
(Alternatively, you can edit shit directly in
uci set wireless.@wifi-iface=wifi-iface uci set wireless.@wifi-iface.device=radio1 uci set wireless.@wifi-iface.mode=ap uci set wireless.@wifi-iface.network=wan uci set wireless.@wifi-iface.key=<GOOD PASSPHRASE> uci set wireless.@wifi-iface.ssid=<AN SSID> (i use AWACS) uci set wireless.@wifi-iface.encryption=psk2+ccmp
once satisfied, commit changes.
Following this will get your USB Tether up and going – http://wiki.openwrt.org/doc/howto/usb.tethering
uci del network.wan uci set network.wan=interface uci set network.wan.ifname=usb0 uci set network.wan.proto=dhcp uci commit network
How does it go?
Overall, I’m very impressed how it has turned out. Even in a city like Sydney where the 2.4GHz spectrum is literally shitted with Access Points, the close-proximity and power output make this more of a Piconet. People sitting directly next to you or around you on a bus or train will be able to use this without packet loss.
Internet access is very reliable, at around Lunch Time in the Sydney CBD (Heavy use period) I got 21 Mbps down and 17 Mbps up on 4G/LTE.
I’ve now used it more than a few occasions (Two without modem, one with) and I still have not dropped a Bar of Energy on the Gorilla. This is one Power Efficient setup, let me tell you.
What did impress me was the ability to reach the USB Dongle’s management interfaces still.
The USB Dongle will by default make a network of
192.168.0.0/24, whereas OpenWRT will have
192.168.1.0/24, you can reach the modem still on
The ZTE MF823 has Telnet open, here’s the creds:
USER: root PASS: zte9x15
It has a pretty decent Busybox on it too.
Sometimes, the USB modem won’t show up unless you plug it in after the AP boots. If this happens, just do so and run
ifup wan from a root shell on the AP, everything will take care of itself from there.
The way to solve this is rather silly, but it does work:
For some reason, the
rndis_host module is not loaded into
/etc/modules-boot.d to fix this run:
ln -s /etc/modules.d/usb-net-rndis /etc/modules-boot.d/50-usb-net-rndis
/etc/rc.local add the line
For some reason, the USB stuff has to be restarted when the Access Point comes online, this might be due to the fact that both the ZTE Modem and the AP power up at the same time, the AP might be ready before the ZTE modem is… This will refresh stuff and then your
usb0 interface should pop online at boot!