Information on this page also applies to the 'Plusnet Hub One' and 'BT Business Hub 5'. This is a router manufactured by Sagemcom under contract for BT. The OEM design is a Askey RTV7505W-D18.
There is also a Type B based on BCM63268, but for 802.11ac it uses the BCM4360 which has no open drivers, so it's a far less attractive target.
Branch | Type | Download link | |
---|---|---|---|
n/a | UART u-boot (allows booting via serial console) for installing OpenWrt/LEDE. | lede-lantiq-bthomehubv5a_ram-u-boot.asc | |
n/a | Image which can be booted via TFTP to simplify the switch from OEM firmware to OpenWrt/LEDE | lede-lantiq-xrx200-BTHOMEHUBV5A-installimage.bin | |
n/a | OpenWrt/LEDE Installation Guide for BT Home Hub 5A - Download and study this essential 220 page guide. It includes novice setup instructions for popular configurations | DropboxMirror | |
n/a | BT HH5A OpenWrt LEDE Windows Instructions - serial link instructions with useful screen shots | DropboxMirror | |
n/a | Safe easy serial access without soldering, takes 10 mins (PDF) | dmcdonnell |
To install OpenWrt on your HH5A or to recover from a failed u-boot flash you can boot the device via UART (serial console). This requires that:
See the download table above for how to get serial access in 10 minutes WITHOUT soldering or you can solder a few wires to SMD solder points (a bit fiddly).
If you do choose to solder, be sure to glue of fix the wires to the PCB so that you don't pull the pads off or break the solder connection when you move the router. You're going to need to connect the wires to an adapter, plug and unplug a USB drive and ethernet cable and even small stresses on tiny soldering joins might break them.
The baud rate is 115200.
Once you have prepared everything you can boot u-boot via UART:
ROM VER: 1.1.4 CFG 04 UART
If you're having trouble be sure to check that your serial adapter is working correctly: if you connect the tx and rx pins on your adapter you should see your keys echoed back to you when you type in the console. This is sometimes called a loopback test. It's possible for just transmission or reception to be broken.
Microsoft Windows
Download and study the “Serial console instructions using MS Windows” and “LEDE Installation Guide for BT Home Hub 5A” documents listed in the Downloads section of this page.
Linux
You can use picocom to connect as follows:
picocom -b 115200 /dev/ttyUSB0 --send-cmd="cat"
In picocom, press <Ctrl-a> <Ctrl-s> and enter the full path to the lede-lantiq-bthomehubv5a_ram-u-boot.asc
to send the bootcode.
nb. Do NOT use the u-boot.asc found in OpenWrt downloads page. TFTP does not work.
Alternatively, open another terminal and execute the following command to send the bootcode
cat lede-lantiq-bthomehubv5a_ram-u-boot.asc > /dev/ttyUSB0
Now you should see the BTHOMEHUBV5A#
u-boot prompt.
Note that operating in this mode is atypically slow. The CPU clock (normally 500MHz) and buses (normally 250MHz) are running at 125MHz for some reason, but the installed system will run at full speed.
(one reason that it's running very slowly is that the cache is turned off for the serially loaded u-boot build)
Use these instructions to install all stable and snapshot builds of LEDE released after 30 November 2016, and all stable and snapshots of OpenWrt released from January 2018.
Go to HomeHub 5 Type A install image web page and download the following files:
LEDE custom U-boot: | lede-lantiq-bthomehubv5a_ram-u-boot.asc |
LEDE HH5A installation image: | lede-lantiq-xrx200-BTHOMEHUBV5A-installimage.bin |
A sysupgrade image: | Latest squashfs-sysupgrade.bin - see table above |
It is also recommended to download and study the 190 page OpenWrt/LEDE Installation Guide for BT Home Hub 5A and the BT HH5A Openwrt LEDE Windows instructions. Both documents contain screenshots of each step of the installation process and other useful information but it basically boils down to the following steps:
cu
, screen
, minicom
, putty
or GTKTerm. For Windows you can use Putty, TeraTerm, Termite or Arduino's Serial Monitor. Test to see if everything works by booting up the router and and seeing all the boot process on screen.UART Mode
mode by grounding the boot_sel2
pin when powering up then removing from ground as soon as you see CFG 04
on screen.openwrt-lantiq-bthomehubv5a_ram-u-boot.asc
or lede-lantiq-bthomehubv5a_ram-u-boot.asc
file then paste it into the serial terminal and hit Enter to send it over (it may take a minute or two and screen will fill up with *
).lede-lantiq-xrx200-BTHOMEHUBV5A-installimage.bin
over TFTP. For Windows users, you can use TFTPD64.exe then setting the Server Interface at 192.168.1.2
and Current Directory to where the install file is. On a Linux machine: mkdir -p /tftpboot wget -O /tftpboot/lede-lantiq-xrx200-BTHOMEHUBV5A-installimage.bin https://github.com/mkresin/BTHH5a-installimage/releases/download/v0.1/lede-lantiq-xrx200-BTHOMEHUBV5A-installimage.bin chmod 777 /tftpboot atftpd --bind-address 192.168.1.2 --daemon --no-fork /tftpboot/
tftpboot 0x81000000 lede-lantiq-xrx200-BTHOMEHUBV5A-installimage.bin; bootm 0x81000000
Upon a successful transfer you should see the row of ###
loading. If it shows only T
for timeout, make sure your IP addresses are right, your TFTP program is not blocked and you aren't connected to another network then try again. When the transfer is complete, booting will be very slow - typically takes 7 minutes!
br-lan: entered forwarding state
appears.nanddump
command to save a copy of the original firmware, and to store the file in a safe place?prepare
script to prepare the LEDE installation.sysupgrade
on it. The router will spew text for a bit before rebooting.cp /tmp/mounts/USB-A1/openwrt-blah-blah-squashfs-sysupgrade.bin /tmp
sysupgrade /tmp/openwrt-blah-blah-squashfs-sysupgrade.bin
. For OpenWrt 22.03 or later, use the command: sysupgrade -n -F /tmp/openwrt-blah-blah-squashfs-sysupgrade.bin
for force the installation. If you get a nand upgrade failed
error, you need to reboot the router, upload the install image and try again with 192.168.1.10 IP and sysupgrade from /tmp.setenv bootcmd ubi part UBI\; ubi read \$(loadaddr) kernel\; bootm \$(loadaddr)
then saveenv
If OpenWrt/LEDE installation fails, or you discover there is no wireless interfaces, you should restore the original stock firmware from the earlier 128 MiB Nanddump file you created, and try again to install OpenWRT. See section 5 of the OpenWrt/LEDE Installation Guide for BT Home Hub 5A which describes how to use the restore
script in detail. Restoring stock firmware can be completed in as little as 3 minutes, otherwise, it normally takes just over an hour. Once Nanddump restoration is complete, the script offers the option to install OpenWrt/LEDE again. Otherwise, the hub will reboot and launch stock BT/Plusnet firmware.
Recommend to use the latest stable releases. Note the very development snapshots do not include LuCI.
Note you may need to tick the Force
installation check box and untick the Keep Settings
check box, due to signficant changes relating to DSA after 19.07. Do not restore settings from older versions of LEDE/OpenWrt to later releases as they are likely to be incompatible.
Architecture | MIPS |
---|---|
Vendor | Lantiq |
bootloader | U-Boot |
System-On-Chip | Lantiq Xway VR9 VRX268 PSB 80910 (MIPS 34Kc) v1.2.1 |
CPU/Speed | 500 MHz |
NAND Flash | 128MiB Spansion ML01G100BHI00 |
RAM Chip | Samsung K4T1G164QF-BCF7 |
RAM Specs | DDR2 128MiB @ 250MHz |
Wireless | Atheros AR9287 b/g/n 2×2 + Qualcomm QCA9880-BR4A a/b/g/n+ac 3×3 |
Ethernet | 5x 10/100/1000 BASE-TX Ethernet Interface (1x WAN, 4x LAN) (2x XWAY VR9 GPHY 11G & 3x XWAY PEF7071 via RGMII) |
Switch | Internal configurable (Infineon) |
xDSL | Lantiq XWAY VRX208 ADSL1/2/2+ (G.992.1/3/5) Annexes A, B, I, M, L (adsl annex j is not supported) VDSL1 (G.993.1, T1.424, TS 101 270), VDSL2 (G.993.2), ITU-T G 998.2 Bonding, EFM (IEEE 802.3ah) |
USB | 1x USB 2.0 |
Phone | no |
Serial | Yes |
GPIO Buttons | WPS, Restart and Reset buttons |
Power | External 12V 1.5A, with a 3.0 X 5.5 X 12mm connector |
There are 6 retaining clips along the top of the HH5A.
Use a metal spudger and insert as shown below. Work your way along the top of the HH5A. This will start to release the first 4 plastic retaining clips. Insert an old credit card into the exposed gap to stop the clips from re-engaging.
Position the spudger as shown below so it is to the right of the hidden retaining clip and above the rear vent slots. Then lift the spudger to pry off the front panel.
This will release the 5th retaining clip as shown below. Repeat for the other side for the last retaining clip.
There are two retaining clips on each of the sides of the case. Position the spudger as shown below for the first clip and pry off the front panel as shown below.
Position for the second clip. Repeat procedure for the other side of the case.
Use brute force and pull the top edge of the front panel away from the case. This will release the retaining clips along the bottom of the case.
The retaining clips on the left and right sides of the front panel are often broken. Remove any loose bits of plastic.
The motherboard and chassis close-up: Youtube video
Resistor number | Function | Info | Notes |
R77 | Serial TX | Below the NAND flash | Use the solder to the pad right of it |
R78 | Serial RX | Directly below R77, and to the left. | Use the solder pad to the right of it |
R45 | boot_sel2 | Below R78 to the right. | Use the solder pad above it |
R46 | boot_sel3 | Front of the PCB, next to SW4 (WPS button) | Not used for installation over serial |
GND | USB socket shield and other locations. | Use the solder pad for WPS switch closest to NAND flash. |
Serial uses Baud rate 115200.
To boot via UART you need to pull boot_sel2 (results in CFG 0x4) to GND momentarily when powering up the device. Do NOT leave boot_sel2 connected to GND any longer than necessarily because it has been known to cause the device to remain 'stuck in CFG 0x4' UART mode)
Video of UART/BOOT soldering and installing TFTP-server (macOS) ➥ https://youtu.be/ims6RT3NcoE
Update: This issue has been resolved in daily snapshots since thisthis commit). It is included in OpenWrt 21:
If you have an internet connection which is significantly faster than 70 Mbps, you may observe the maximum internet to LAN throughput with OpenWrt 18/19 is lower compared to LEDE 17.01. The following commit caused the throughput to drop from 140+ Mbps to 70+ Mbps when SMP is enabled.
https://git.openwrt.org/?p=openwrt/openwrt.git;a=commit;h=916e33fa1e14b97daf8c9bf07a1b36f9767db679
Only one instead of both cores is used to steer packets to the LAN. OpenWrt bug 2573
Some workarounds are described in this thread:
OpenWrt forum link to modified 18.06.x image which removes the above mentioned commit.
Software Flow Offloading can also be enabled in OpenWrt 19 or later, BUT it is not compatible with Smart Queue Management (SQM).
It is also worth testing with irqbalance running (after installing with “opkg install irqbalance”).
Read below instructions if USB port does not provide enough power for your use case
In some cases, it may be the case that USB port does not provide enough power to run a portable HDD or even a USB stick. As it has been tested there also seems to be a reboot issue when hot-plugging a USB device. This issue is related to low power output from the USB port although the supplied power adapter provides more than enough juice for the router.
The IC used for the USB seems not to handle much load for any USB peripherals. This can be solved through using an external 12V to 5V DC-DC stepdown circuit. These circuits are easily available online in smaller forms or you can build one yourself if you please. We only need to connect the +(positive) terminal of the circuit to the +(positive) of USB and let the -(negative/ground) handle the USB itself.
For this to work, you need to remove the L9
component from the back of the USB port. This will break the connection from the USB + terminal and let you provide another power source. Once you have removed the above component, proceed to connect your circuit with the router. Choose a safe spot for the circuit to stay, possibly cover its base with some hot glue. So it does not short-circuit any chips on the PCB. Now you need two wires for the input connection, one for +ve and other one is ground. Ground can be linked from any metal holders, just like the USB outer-panel. The +ve wire needs to come from the power adapter, for this to work properly use the middle pin on the power switch. This way when you power off the device the USB power will be switched off. Once you have connected the wires for input, you only need +ve wire from the circuit output and connect it to the USB +ve, from where we removed the L9 component. Be sure to connect directly to USB +ve and not to the IC +ve output.
This will remove the strain on the USB power IC and no more problems will occur from the USB hot-plugging and you can also use a portable HDD even if it was not working before. Tested with Seagate Expansion Portable HDD 500 GBs (USB 3.0).
See the below pic for more info (click on the image for a larger picture):
If the router sits in confined spaces and ambient temperature regularly exceeds 40°C, a heatsink can be applied onto the CPU to improve thermal dissipation. Use a heatsink no taller than 1cm and no wider than 3cm x 3cm. A thermal adhesive pad or glue (like 8329TFS) can be used to hold the heatsink in place. Make sure you don't touch capacitor C128.
The WiFi interfaces are surrounded by exposed PCB traces which can be used to solder a RF/EMI shield onto it. RF shields help block unwanted signals and even it's own WiFi signal from interfering with the controller chip, thus improving signal quality. Designs for the shields can be found here or here and can be sent online to a fab.
WPS isn't installed out-of-the-box. You need to remove “wpad-basic-wolfssl” package and then install “wpad-wolfssl” and “hostapd-utils” to enable it at the push button and the LuCI switch in WiFi settings. Other useful packages include “luci-app-upnp” for DLNA playback and certain online games, “luci-app-ddns” for running a server, “luci-app-wol” to wake up ethernet devices and “luci-app-sqm” to adjust QoS settings (not compatible with Software Offloading).
“WMM Mode” needs to be enabled for WiFi speeds above 54Mbps, however some WiFi clients, particularly Broadcom WiFi 802.11n, may crash.
Newer DSL firmware can be found here and WiFi 5 firmware can be found here or alternatively use the kmod-ath10k
and ath10k-firmware-qca988x
packages.
Depending on your ISP and the firmware on their DSLAM, you may need to try different DSL firmware versions. There is a list of firmware versions at https://xdarklight.github.io/lantiq-xdsl-firmware-info/
You install these by placing them at /lib/firmware/lantiq-vrx200-a.bin
and /lib/firmware/lantiq-vrx200-b.bin
(use WinSCP for Windows users) and then referencing them in “Network>Interfaces>DSL>Firmware File” in LuCI. It is recommended to keep several versions around and symlinking them, so you can easily swap versions.
VoIP service over SOGEA lines isn't supported yet, meaning you can't access the ISP's embedded landline service part (a.k.a. Digital Voice) via Asterisk if your connection type is SOGEA.
Openreach uses Annex A (DSL over POTS) for syncing with the DSLAM in its VDSL network (the reported 'Annex B' in LuCI is the bandplan) so make sure you use the right DSL firmware as Openreach may ban your line for using an uncompliant equipment.
Refer section 7.5 of the Open/WrtLEDE Installation Guide for BT Home Hub 5A for more details of popular ISPs in the UK.
For VDSL (FTTC):
For most ISPs except for TalkTalk and Sky/NOW broadband:
For TalkTalk:
For Sky Broadband:
yourmacaddress@skydsl|XXXXXXXX
that you get from Wireshark on your OEM router.Learn more here: http://www.skyuser.co.uk/forum/sky-broadband-fibre-help/50483-generic-open-wrt-sky-fibre-mer-guide.html
/etc/config/network
should look like this when you're done configuring a PPPoE BT OpenReach connection on OpenWrt:
config dsl 'dsl' option annex 'a' option tone 'a' option ds_snr_offset '0' option xfer_mode 'ptm' option line_mode 'vdsl' config interface 'wan' option ifname 'dsl0.101' option proto 'pppoe' option username 'YOURUSERNAMEHERE' option password 'YOURPASSWORDHERE'
For ADSL (PPPoA):
For most ISPs.
Sky Broadband may also accept username: install@o2broadband.co.uk with no password with PPPoA protocol otherwise you need to extract the username and password with Wireshark on your OEM router.
For ADSL (PPPoE):
BT and Plusnet support PPPoE protocol. (Sky/NOW and TalkTalk do not support PPPoE on ADSL)
For other configurations, such as 'VDSL Bridge modem' (to emulate old Openreach VDSL modems), refer to the OpenWrt/LEDE Installation Guide for BT Home Hub 5A for instructions.
Because of my bad dsl signal I need to increase the ds_snr_offset. It's work very well with DSL Firmware 5.7.x, 5.8.x, 5.9.x.
BusyBox v1.28.3 () built-in shell (ash) _______ ________ __ | |.-----.-----.-----.| | | |.----.| |_ | - || _ | -__| || | | || _|| _| |_______|| __|_____|__|__||________||__| |____| |__| W I R E L E S S F R E E D O M ----------------------------------------------------- OpenWrt SNAPSHOT, r6790-264feab1e7 ----------------------------------------------------- root@openwrt:~# /etc/init.d/dsl_control status ATU-C Vendor ID: Broadcom 177.140 ATU-C System Vendor ID: Broadcom Chipset: Lantiq-VRX200 Firmware Version: 5.9.0.12.1.7 API Version: 4.17.18.6 XTSE Capabilities: 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2 Annex: B Line Mode: G.993.5 (VDSL2 with down- and upstream vectoring) Profile: 17a Line State: UP [0x801: showtime_tc_sync] Forward Error Correction Seconds (FECS): Near: 0 / Far: 253237 Errored seconds (ES): Near: 49 / Far: 80 Severely Errored Seconds (SES): Near: 20 / Far: 23 Loss of Signal Seconds (LOSS): Near: 5 / Far: 4 Unavailable Seconds (UAS): Near: 769 / Far: 769 Header Error Code Errors (HEC): Near: 0 / Far: 0 Non Pre-emtive CRC errors (CRC_P): Near: 0 / Far: 0 Pre-emtive CRC errors (CRCP_P): Near: 0 / Far: 0 Power Management Mode: L0 - Synchronized Latency [Interleave Delay]: 0.13 ms [Fast] 0.0 ms [Fast] Data Rate: Down: 87.737 Mb/s / Up: 33.865 Mb/s Line Attenuation (LATN): Down: 12.4 dB / Up: 10.8 dB Signal Attenuation (SATN): Down: 12.4 dB / Up: 10.7 dB Noise Margin (SNR): Down: 6.5 dB / Up: 9.7 dB Aggregate Transmit Power (ACTATP): Down: -1.3 dB / Up: 14.4 dB Max. Attainable Data Rate (ATTNDR): Down: 94.912 Mb/s / Up: 36.224 Mb/s Line Uptime Seconds: 167968 Line Uptime: 1d 22h 39m 28s root@gw01:~# cat /etc/config/network .... cut .... config atm-bridge 'atm' option vpi '1' option vci '32' option encaps 'llc' option payload 'bridged' option nameprefix 'dsl' config dsl 'dsl' option annex 'b' option firmware '/lib/firmware/vr9-B-dsl.bin' option tone 'bv' option xfer_mode 'ptm' option line_mode 'vdsl' option ds_snr_offset '30' config interface 'wan' option proto 'pppoe' option username 'H1und1/0123-456@online.de' option password 'XXXxxxXXX' option ipv6 'auto' option ifname 'dsl0.7' config device 'wan_dev' option macaddr '18:83:xx:xx:xx:xx' option name 'dsl0'
It's work very well with DSL Firmware 5.9.0.
BusyBox v1.28.3 () built-in shell (ash) _______ ________ __ | |.-----.-----.-----.| | | |.----.| |_ | - || _ | -__| || | | || _|| _| |_______|| __|_____|__|__||________||__| |____| |__| W I R E L E S S F R E E D O M ----------------------------------------------------- OpenWrt 18.06-SNAPSHOT, r7102-3f3a2c966a ----------------------------------------------------- root@gw03:~# /etc/init.d/dsl_control status ATU-C Vendor ID: FF,B5,47,53,50,4E,00,20 ATU-C System Vendor ID: 00,00,30,30,30,30,00,00 Chipset: Lantiq-VRX200 Firmware Version: 5.9.0.10.0.1 API Version: 4.17.18.6 XTSE Capabilities: 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0 Annex: A Line Mode: G.992.5 (ADSL2+) Profile: Line State: UP [0x801: showtime_tc_sync] Forward Error Correction Seconds (FECS): Near: 0 / Far: 18 Errored seconds (ES): Near: 0 / Far: 0 Severely Errored Seconds (SES): Near: 0 / Far: 0 Loss of Signal Seconds (LOSS): Near: 0 / Far: 0 Unavailable Seconds (UAS): Near: 24 / Far: 24 Header Error Code Errors (HEC): Near: 0 / Far: 0 Non Pre-emtive CRC errors (CRC_P): Near: 0 / Far: 0 Pre-emtive CRC errors (CRCP_P): Near: 0 / Far: 0 Power Management Mode: L0 - Synchronized Latency [Interleave Delay]: 15.75 ms [Interleave] 8.0 ms [Interleave] Data Rate: Down: 8.191 Mb/s / Up: 896 Kb/s Line Attenuation (LATN): Down: 1.5 dB / Up: 16.6 dB Signal Attenuation (SATN): Down: 1.9 dB / Up: 16.6 dB Noise Margin (SNR): Down: 29.2 dB / Up: 12.6 dB Aggregate Transmit Power (ACTATP): Down: 18.4 dB / Up: 12.4 dB Max. Attainable Data Rate (ATTNDR): Down: 23.928 Mb/s / Up: 992 Kb/s Line Uptime Seconds: 32469 Line Uptime: 9h 1m 9s root@gw03:~# cat /etc/config/network ... config atm-bridge 'atm' option encaps 'llc' option payload 'bridged' option nameprefix 'dsl' option vci '35' option vpi '0' config dsl 'dsl' option annex 'a' option tone 'a' option xfer_mode 'atm' option line_mode 'adsl' option ds_snr_offset '0' option firmware '/lib/firmware/vr9-A-dsl.bin' config interface 'wan' option proto 'pppoe' option ipv6 'auto' option username 't00000000@ga' option password '................' option ifname 'dsl0' config device 'wan_dev' option macaddr 'xx:xx:xx:xx:xx:xx' option name 'dsl0' config interface 'wan6' option ifname 'pppoe-wan' option proto 'dhcpv6' ...
VDSL works with an extracted firmware file
root@HomeHub5A:~# /etc/init.d/dsl_control status ATU-C Vendor ID: Broadcom 178.24 ATU-C System Vendor ID: Broadcom Chipset: Lantiq-VRX200 Firmware Version: 5.9.1.4.0.7 API Version: 4.17.18.6 XTSE Capabilities: 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2 Annex: B Line Mode: G.993.5 (VDSL2 with down- and upstream vectoring) Profile: 17a Line State: UP [0x801: showtime_tc_sync] Forward Error Correction Seconds (FECS): Near: 0 / Far: 3 Errored seconds (ES): Near: 13 / Far: 828 Severely Errored Seconds (SES): Near: 0 / Far: 276 Loss of Signal Seconds (LOSS): Near: 0 / Far: 27 Unavailable Seconds (UAS): Near: 33168786 / Far: 33168786 Header Error Code Errors (HEC): Near: 0 / Far: 0 Non Pre-emtive CRC errors (CRC_P): Near: 20 / Far: 0 Pre-emtive CRC errors (CRCP_P): Near: 0 / Far: 0 Power Management Mode: L0 - Synchronized Latency [Interleave Delay]: 0.15 ms [Fast] 0.0 ms [Fast] Data Rate: Down: 40.954 Mb/s / Up: 10.240 Mb/s Line Attenuation (LATN): Down: 23.2 dB / Up: 31.4 dB Signal Attenuation (SATN): Down: 21.3 dB / Up: 32.1 dB Noise Margin (SNR): Down: 9.3 dB / Up: 13.4 dB Aggregate Transmit Power (ACTATP): Down: 9.1 dB / Up: 14.2 dB Max. Attainable Data Rate (ATTNDR): Down: 42.860 Mb/s / Up: 19.177 Mb/s Line Uptime Seconds: 40802 Line Uptime: 11h 20m 2s
Network config: vLAN from ISP is 0.2
cat /etc/config/network config interface 'loopback' option ifname 'lo' option proto 'static' option ipaddr '127.0.0.1' option netmask '255.0.0.0' config globals 'globals' option ula_prefix 'fdac:7c59:094f::/48' config atm-bridge 'atm' option vpi '1' option vci '32' option encaps 'llc' option payload 'bridged' option nameprefix 'dsl' config dsl 'dsl' option tone 'av' option ds_snr_offset '0' option line_mode 'vdsl' option annex 'b' option firmware '/lib/modules/vr9-B-dsl.bin' config interface 'lan' option type 'bridge' option ifname 'eth0.1' option proto 'static' option ipaddr '192.168.1.1' option netmask '255.255.255.0' option ip6assign '60' config device 'lan_dev' option name 'eth0.1' option macaddr '00:00:00:00:00:00' config interface 'wan' option ifname 'dsl0.2' option proto 'pppoe' option username 'user from ISP' option password 'pass from ISP' option peerdns '0' option ipv6 'auto' list dns '1.1.1.2' list dns '1.0.0.2' config device 'wan_dev' option name 'dsl0' option macaddr '00:00:00:00:00:00' config interface 'wan6' option ifname '@wan' option proto 'dhcpv6' option reqprefix 'auto' option reqaddress 'try' config switch option name 'switch0' option reset '1' option enable_vlan '1' config switch_vlan option device 'switch0' option vlan '1' option ports '6t 5 4 2 1 0' option vid '1' config switch_vlan option device 'switch0' option vlan '2' option ports '6t' option vid '2'
VDSL used to work with a newer firmware, but in early February 2021 it started running slowly on a 8/1 fallback profile.
The version that works right now is 5.7.6.10.0.7.
root@homehub:~# /etc/init.d/dsl_control status ATU-C Vendor ID: Broadcom 178.30 ATU-C System Vendor ID: Broadcom Chipset: Lantiq-VRX200 Firmware Version: 5.7.6.10.0.7 API Version: 4.17.18.6 XTSE Capabilities: 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2 Annex: B Line Mode: G.993.5 (VDSL2 with down- and upstream vectoring) Profile: 17a Line State: UP [0x801: showtime_tc_sync] Forward Error Correction Seconds (FECS): Near: 0 / Far: 2 Errored seconds (ES): Near: 0 / Far: 3 Severely Errored Seconds (SES): Near: 0 / Far: 0 Loss of Signal Seconds (LOSS): Near: 0 / Far: 0 Unavailable Seconds (UAS): Near: 99 / Far: 99 Header Error Code Errors (HEC): Near: 0 / Far: 0 Non Pre-emtive CRC errors (CRC_P): Near: 0 / Far: 0 Pre-emtive CRC errors (CRCP_P): Near: 0 / Far: 0 Power Management Mode: L0 - Synchronized Latency [Interleave Delay]: 0.15 ms [Fast] 0.0 ms [Fast] Data Rate: Down: 60.839 Mb/s / Up: 23.120 Mb/s Line Attenuation (LATN): Down: 8.3 dB / Up: 6.4 dB Signal Attenuation (SATN): Down: 8.4 dB / Up: 6.3 dB Noise Margin (SNR): Down: 5.0 dB / Up: 6.4 dB Aggregate Transmit Power (ACTATP): Down: -5.6 dB / Up: 12.5 dB Max. Attainable Data Rate (ATTNDR): Down: 64.368 Mb/s / Up: 33.830 Mb/s Line Uptime Seconds: 1819 Line Uptime: 30m 19s
It is necessary to tag the port used for the connection. When using DSA, switch configuration is not needed.
BusyBox v1.35.0 (2022-01-15 22:05:55 UTC) built-in shell (ash) _______ ________ __ | |.-----.-----.-----.| | | |.----.| |_ | - || _ | -__| || | | || _|| _| |_______|| __|_____|__|__||________||__| |____| |__| W I R E L E S S F R E E D O M ----------------------------------------------------- OpenWrt SNAPSHOT, r18589-e821849c4f ----------------------------------------------------- root@openwrt:~# cat /etc/config/network config interface 'loopback' option device 'lo' option proto 'static' option ipaddr '127.0.0.1' option netmask '255.0.0.0' config globals 'globals' option ula_prefix 'fd90:2947:a695::/48' config atm-bridge 'atm' option vpi '1' option vci '32' option encaps 'llc' option payload 'bridged' option nameprefix 'dsl' config dsl 'dsl' option annex 'a' option tone 'av' option ds_snr_offset '0' config device option name 'br-lan' option type 'bridge' list ports 'lan1' list ports 'lan2' list ports 'lan3' list ports 'lan4' list ports 'wan' config device option name 'lan1' option macaddr '18:62:2c:45:7a:1a' config device option name 'lan2' option macaddr '18:62:2c:45:7a:1a' config device option name 'lan3' option macaddr '18:62:2c:45:7a:1a' config device option name 'lan4' option macaddr '18:62:2c:45:7a:1a' config interface 'lan' option device 'br-lan' option proto 'static' option ipaddr '192.168.1.1' option netmask '255.255.255.0' option ip6assign '60' config device option name 'dsl0' option macaddr '18:62:2c:45:7a:1b' config interface 'wan6' option device '@wan' option proto 'dhcpv6' config interface 'wan' option device 'br0.40' option proto 'pppoe' option username 'heremyuser@mdsl.mnet-online.de' option password 'heremypassword' option ipv6 '1' config device option name 'br0' option type 'bridge' list ports 'wan' config bridge-vlan option device 'br0' option vlan '40' list ports 'wan:t'
Case label | swconfig/kernel port number |
---|---|
1 | 4 |
2 | 2 |
3 | 0 |
4 | 1 |
WAN (red) | 5 |
- | 6 (CPU) |
- | 3 (unused) |
Depending on your version of LuCI and your /etc/board.json
, LuCI may display ports in various orders (matching the labels/matching the swconfig numbering/not matching anything) and may or may not list the WAN port even though it's available via swconfig.
/etc/board.json
. Put up with the internal numbering or upgrade LuCI. On the bright side, you don't need to edit anything to make use of the WAN port./etc/board.json
. You can either use /etc/config/network
instead or edit /etc/board.json to make the UI include the WAN port (and if necessary, correct the numbering).Notes about this quirky layout:
eth0
is the (only) interface through which the switch is configured, yet if you want to see traffic on switch port 5 (WAN) you'll need to add it to a VLAN and you'll see the traffic on eth1.N
, which isn't presented as a choice in LuCI. (eth1 seems to behave both as a second CPU port and as a physical port on the switch, depending on context.)eth1.2
./etc/board.d/02_network
generates /etc/board.json
which newer LuCI uses when presenting the Network → Switch page./etc/board.d/02_network
as of r48941, but (with newer LuCI) you can edit /etc/board.json./etc/board.d/02_network
as of 96f6bd501 so should have a correct /etc/board.json
, but may not expose the WAN port.eth1
may be unstable.Assumptions:
/etc/board.json
already, or you're confident you can regenerate defaults using /etc/board.d/*
later
Replace /etc/board.json
with the following. Note that by doing this, you're not configuring anything. /etc/board.json
is only meant to describe hardware properties and defaults. The changes to roles
and network
are just for internal consistency. Nonetheless, you should put your own unit's MAC address in network:*:macaddr
.
{ "model": { "id": "BTHOMEHUBV5A", "name": "BT Home Hub 5A" }, "led": { "wifi": { "name": "wifi", "type": "trigger", "sysfs": "bthomehubv5a:blue:wireless", "trigger": "phy0tpt" }, "internet": { "name": "internet", "type": "netdev", "sysfs": "bthomehubv5a:blue:broadband", "device": "nas0", "mode": "link tx rx" }, "dimmed": { "name": "dimmed", "sysfs": "dimmed", "default": "0" } }, "switch": { "switch0": { "enable": true, "reset": true, "ports": [ { "num": 0, "role": "lan", "index": 3 }, { "num": 1, "role": "lan", "index": 4 }, { "num": 2, "role": "lan", "index": 2 }, { "num": 4, "role": "lan", "index": 1 }, { "num": 5, "role": "wan", "index": 5 }, { "num": 6, "device": "eth0", "need_tag": true } ], "roles": [ { "role": "lan", "ports": "0 1 2 4 6t", "device": "eth0.1" } { "role": "wan", "ports": "5 6t", "device": "eth1.2" } ] } }, "network": { "lan": { "ifname": "eth0.1", "protocol": "static", "macaddr": "18:62:2c:XX:XX:XX" }, "wan": { "ifname": "eth1.2", "protocol": "dhcp", "macaddr": <copy this from lan above, bump last octet up by one> } } }
To update from any previously installed version of OpenWrt, or LEDE prior to r2363 (30 Nov 2016), to LEDE snapshot r2363 and later, it is recommended to restore the stock BT Firmware, and then proceed to install the latest LEDE snapshot from scratch. Alternatively, a 'migrate' script is also available where no original nanddump is available - use earlier 'LEDE install image' v0.1 (Nov 2016) where the 'migrate' script has been tested. v1.0 (Nov 2017) has NOT been tested.