OpenWrt on Plusnet Hub One

June 30, 2020    Blog Post

OpenWrt is an open source project for embedded operating systems based on Linux, primarily used on embedded devices to route network traffic.

Plusnet Hub One router

Why ???

Because OpenWrt is better than the currently installed software on Plusnet Hub One delivered to customers when they starting their contract. The software installed on Hub One is buggy and is not providing full access to router setup.

I’m Linux Engineer over all (and always will be no matter what is my current job title) and I feel comfortable with Linux systems and its setup.

Risk

There is always risk. By flashing new firmware to the device using the JTAG method you always risk physical damage to the router (bad soldering) or you can brick it by performing the flashing process incorrectly. If you don’t feel confident with this, don’t do it.

How to secure yourself from internet outage ???

The best way to save yourself from internet failure is to have more than one router configured to use Plusnet network. You can use router from your previous provider (if Plusnet is not your first ISP), have spare private router or just buy Plusnet Hub One router on Ebay for around £10 (I got mine for £8).

Flashing OpenWrt firmware

Most of the available on internet guides are suitable, so choose the one that you understand the most. A few which I followed:

Just remember to take backup of your current firmware just in case you will need to go back to current configuration or recover from router brick.

This is my connection to the router’s UART:

Connection to PCB

Breadboard connection
Yes, there is Atari 800 XE computer in background !!!

After successful firmware flashing and restarting the router it should come back with configured IP 192.168.1.1. You should be able to ping this IP from your computer and access LuCI web interface under url http://192.168.1.1

Web Gui Login Page

You can also connect to the router console using ssh:

$ ssh root@192.168.1.1
root@192.168.1.1's password:


BusyBox v1.30.1 () built-in shell (ash)

  _______                     ________        __
 |       |.-----.-----.-----.|  |  |  |.----.|  |_
 |   -   ||  _  |  -__|     ||  |  |  ||   _||   _|
 |_______||   __|_____|__|__||________||__|  |____|
          |__| W I R E L E S S   F R E E D O M
 -----------------------------------------------------
 OpenWrt 19.07.3, r11063-85e04e9f46
 -----------------------------------------------------
=== WARNING! =====================================
There is no root password defined on this device!
Use the "passwd" command to set up a new password
in order to prevent unauthorized SSH logins.
--------------------------------------------------
root@OpenWrt:~#

The username is ‘root’ and the password is not been configured. Don’t forget to setup the root password !!!

Configuration OpenWrt for Plusnet fibre (VDSL)

We’ll start the configuration by setting the DSL interface (Network–>Interfaces–>DSL)

DSL setup

Every time we make any changes to router’s configuration, we must save and apply them.

Then we go to Interfaces and click Edit in the WAN interface. Configuration of the General Settings tab looks as follows::

General Settings

The PAP/CHAP username@plusdsl.net and password are this same as when logging to the Plusnet web portal for account management.

Now we need to switch to the Physical Settings tab to setup VLAN tagging on the WAN interface.

Physical Settings

Here in the Interface drop-down menu, navigate to “– custom –” and enter “dsl0.101”. This will add the WAN interface to VLAN 101.

And this is it. If we have done everything correctly, we should have VDSL layer up, as well as established PPPoE and obtain an external IP with DNS configured by the Plusnet DHCP service.

Check the Status page to see if everything went well.

Status page DSL

If your DLS status page looks similar and “Line State” is “UP” then the DSL layer is OK.

System and IPv4 Status page

Check if you get IP address assigned, along with Gateway and DNS servers. If everything is OK, you should have Internet access from a computer connected with an Ethernet cable to one of the router’s switch ports.

Wi-Fi configuration

Wi-Fi configuration is much simpler, so I wouldn’t describe it here. Just remember to choose strong encryption such as “WPA2 PSK” and use a complicated hash key that cannot be easily guessed.

Summary

After running OpenWrt ver. 19.07.3 for more than 2 weeks I can say that I’m happy that I have it. It is much better than original firmware and unleashing the full potential of Plusnet Hub One hardware.

Addition - cooling

Holding the router in the attic, I installed 2 small 5V CPU fans to help the router cope with the high temperature.

Router's cooling

As a power source, I used USB port build-in to the router, which is usually used to share content from a USB key or hard drive. I had a partially damaged USB cable and I use it to supply 5V to both fans. The fans are attached to the back of router by hot glue.

Update 27/02/2021

I noticed that my router is getting rebooted quite often. After excluding issues with power supply, I deployed rsyslog service which was logging all system & kernel activity locally and externally. After next unattended reboot, I discovered in logs this line:

ath10k_pci 0000:02:00.0: wmi command 40859 timeout, restarting hardware

This information pointed me to the QCA988X chip responsible for 5GHz wifi network. Unfortunately, I was not able to add any additional firmware this this chip (just don’t worked for me) and I end up with my own solution - turning off 5GHz network and unloading ath10k_pci kernel module.

/etc/modules.d/ath10k-ct 
#ath10k_pci

This drastic move brought stability to my router which sometimes were rebooting 2 times per hour.

Most of my equipment is connected to wired 1GB home network installed during home renovation and only phones and tablets using wifi so I don’t experiencing any functional lost by using only 2GHz wifi network.