Netgear LBR20

The NETGEAR ORBI LBR20 is an arm_cortex-a7+neon-vfpv4, Qualcomm Atheros IPQ4019 / QCA9886 system with a Quectel EG18-NA (North America version) Cat 18 4G LTE modem chip.

Orbi LBR20, Front Orbi LBR20, Back

Image Credits: https://www.the-ambient.com/reviews/netgear-orbi-4g-lte-router-lbr20-review-2532/

Flash the current SNAPSHOT of the Openwrt Factory image, through the Netgear/Voxel firmware.

  • You will get a warning that the version you are trying to flash is older. Just click 'Yes' and proceed.
  • Settings in the NVRAM (the settings for the Netgear/Voxel configuration you are currently running) do not get reset.
    • If you flash back to Netgear/Voxel, the LBR20 will start with the settings you had before you flashed Openwrt.
    • This is convenient, because if you have a little difficulty with Openwrt or need to test something out, the N/V firmware will still have your previous settings.

To consistently get the LBR20 into TFTP recovery mode, such as when you want to flash back to Netgear/Voxel from an active Openwrt image, pull power from the connector on the back, press and hold the RESET button with a SIM tool, and push the power connector back in. Wait 30 seconds before releasing the RESET button. The LBR20's white tower light should be regularly turning on and off, and the power LED indicator near the power port, should be blinking RED.

Now you can set your ethernet adapter to 192.168.1.10 and use your laptop to tftp an image into the device on port 69, as per normal NETGEAR TFTP recovery.

Use the LAN2 port as the wired connection to your laptop when configuring the ORBI LBR20, not the WAN/LAN1 port.

Follow the TFTP flash guide on this page, above.

See the TFTP flash guide above.

Use the LAN2 port as the wired connection to your laptop when flashing/configuring the ORBI LBR20, not the WAN/LAN1 port.

Openwrt does not enable IPv6 on the cell connection by default. Only IPv4. That's a problem, because downloads.openwrt.org does not fully support IPv4, so you will get errors when trying to run 'opkg update' then e.g. 'opkg install luci-ssl' (so you can have web access, as SNAPSHOT does not contain Luci). There are kludgy work-arounds for the underlying wget, but the best thing is to use an SCP app (such as WinSCP) to connect into the LBR20, and edit the file /etc/config/network, changing the 'pdptype' value to be 'ipv4v6' instead of 'ipv4', and then save and restart the router. You should have basic cell connectivity now, particularly if the Orbi LBR20 was working previously on the Netgear/Voxel firmware, as the Quectel modem will pull configuration information from the SIM card.

  • The only text editor included with SNAPSHOT, is VI. Not nano or anything reasonably easier and intuitive. So you are in a Catch-22 if you want to ssh into the LBR20 and edit the network config. Unless you want to learn VI. That is why the suggestion to use SCP.

Quectel modems in general have an earned reputation for having firmware stability issues and design flaws. If you run into frustrating issues specifically with regards to the cell connection/modem, it is not likely to be Openwrt. The modem runs its own closed-source firmware, like a router within a router, and, unless it's in QMI mode (AT+QCFG=“usbnet”,0), which is the default [where the IP assignment from the cell provider is directly assigned to the wwan interface] the modem also does its own routing inside the modem, which means you will get a double-NAT situation [e.g. if you use MBIM and NDIS instead]:

  • DO NOT, under any circumstances, tell the ORBI LBR20 tower LED lights (referred to as 'backlights' in the LED Configuration page in Luci) to blink in coordination with wwan0 (cell modem) receive/transmit. That causes some kind of hardware signal interference, which will cause a crash of your cellular connection/modem. If you notice, the Netgear and Voxel firmware do not use the tower light for that indicator, and in those, that light is completely off when the LBR20 is connected and running properly. A solid LED when the link status is ON, such as a purple light by using both the red and blue LEDs, does not interfere.
  • NETGEAR provided only 2 firmware revisions for the LBR20 (NA models), that could only be flashed through the Netgear (or Voxel) firmware; an A05, and A06 01.002. Both can have issues causing disconnects, or the modem to become unresponsive, sometimes requiring a reboot. The latest (05/2024) firmware, A06 01.008, seems very stable [A12 for EG18-EA (EU) models], but is only available on the Quectel Support Forum. See also EG18NAPAR01xxxM4G Firmware Request; Quectel staff will email modem firmware to you on request - they do not at present have a download site. It can take a week for them to response. It may be faster to register to the forum and email another member who has already received it!
  • If you run the stock A05/A06, and do not have a wan watchdog script running in cron (Scheduled Tasks) to try to compensate for the issues, the 4G LTE connection will just 'die', and you will have no internet.
  • Qfirehose Quectel Modem Upgrade-Flashing Procedure: Once you have acquired the qfirehose binary, put it in /root and mark it as executable. Unzip the Quectel-provided firmware to your computer, and upload the contents [update folder, contents.xml, and md5.txt] to the /tmp folder. There isn't enough user-storage space partitioned on the Orbi LBR20 to put it in /root. Disable your wan-watchdog.sh script. From a terminal (laptop) with a wired connection to the router, run qfirehose -f /tmp. Allow the flash procedure to finish to 100% and confirm completion:
          * [083.292]: Upgrade module successfully.
    • The modem (not the entire router) will reboot in 10 seconds, and then reconnect to the cell provider.
    • Using picocom /dev/ttyUSB2, send the modem an AT+QGMR, to display the current firmware revision.
      • The latest A06 01.008 modem firmware, does not display a 01.008 revision code after the ...A06M4G response.
      • The Netgear-provided A05 firmware, also does not display a revision code after the A05M4G response.
      • The /dev/ttyUSB2 may disappear after flashing, and be replaced with /dev/ttyUSB3 (0,1,2&3 → 0,1,3&4). That is a temporary artifact of flashing the modem. You might try picocom /dev/ttyUSB3, or reboot the ORBI LBR20, and the assignments will revert to 0,1,2&3.

Here is a wan_watchdog.sh script that tests the connection, and if it receives no response from several well-known DNS providers, it can:

  1. Tell the modem to soft-off.
  2. Tell the modem to soft-on (boot up).
  3. Restart the interface, and
  4. Reboot the router (if everything prior was unsuccessful).
  • You will need to add the packages 'socat' and 'fping'.
  • Save this as 'wan-watchdog.sh' in your /root/. Make it executable (chmod +x wan-watchdog.sh)
  • Add
     */4 * * * * /root/wan-watchdog.sh 

    in your Scheduled Tasks.

#!/bin/sh
 
routeruptime=$(ubus call system info | jsonfilter -e "$['uptime']")
echo $routeruptime "seconds of uptime since last reboot."
sleep 2
	if [[ $routeruptime -gt 300 ]]; then
	echo "Router uptime greater than 5 minutes, continuing.."
	sleep 2 
	else
	echo "Been up for less than 5 minutes, quitting script."
	exit 0
	fi

TRIES="0"
while [[ "${TRIES}" -lt 3 ]]
do
	echo "Attempt" $TRIES "..."
	echo "Attempting to ping a variety of well-known ipv4 and ipv6 addresses..."
	# ONE site failure will not fail fping. All of them failing, will.
	if fping --alive 1.1.1.1 9.9.9.9 8.8.8.8 2001:4860:4860::8888 2620:fe::fe | grep -q .
#	if fping --alive blablahblah | grep -q . # this will intentionally make the script fail, when we are testing.
	then
	echo "POSITIVE ONLINE SUCCESS: Not doing anything. EXITING IMMEDIATELY" # Positive reply from one (1) of the fping destinations - do nothing.
		exit 0
	fi
	sleep 1 # Pause 1 second, before incrementing the number of tries, and re-trying the fping.
    TRIES=$(($TRIES+1))
done

echo "PING FAILED 3 CONSECUTIVE TIMES. Attempting to restart wwan cell connection."
sleep 2
# There are a variety of ways to restart the Quectel/4G interface.
# The original script used hub-ctrl to turn-off, then turn-on, the USB hub.
# However, devices like the Orbi LBR20 with a EM18-xx 4G chip, don't use a
# USB bus. Older devices like the GL-X750, do (through a mini-pci-e slot). 
# Restart hub: (GL-X750/EC25-AF)
# hub-ctrl -b 001 -d 002 -P 2 -p 0
# More general use: EG18xx EC25xx etc:
ifup qmippp # restarts the interface
sleep 15 # give the modem time to reconnect
# Alternative method (older modem firmware, ymmv)
# Tell the modem to turn off without actually disconnecting the tty serial 
# communication interface:
# echo AT+CFUN=0 | socat - /dev/ttyUSB2,crnl # This does wear the storage on the modem.
# sleep 3
# Tell the modem to turn on
# echo AT+CFUN=1 | socat - /dev/ttyUSB2,crnl
# sleep 7
echo "Restarted QMIPPP" >> /root/wan_reset_log.txt # Make a record in the log.
date >> /root/wan_reset_log.txt # Write the date. This will be persistent between reboots.
# sleep 2 # pause before bringing the hub back up
# hub-ctrl -b 001 -d 002 -P 2 -p 1
# Test if the previous steps worked. If yes, exit. If no, reboot.
#	if fping --alive 1.1.1.1 9.9.9.9 8.8.8.8 2001:4860:4860::8888 2620:fe::fe | grep -q .
#	then
#	echo "SUCCESS: 'ifup qmippp' worked, no need for network restart." >> /root/wan_reset_log.txt
#	echo "SUCCESS: 'ifup qmippp' worked, no need for network restart."
#	exit 0
#	fi
#	echo "FAILURE: 'ifup qmippp' did not work by itself, the modem is unresponsive. Restarting network..."
#	sleep 3
#	/etc/init.d/network restart
#	sleep 25
		if fping --alive 1.1.1.1 9.9.9.9 8.8.8.8 2001:4860:4860::8888 2620:fe::fe | grep -q .
		then
		echo "SUCCESS: WWAN restart worked, no need for reboot" >> /root/wan_reset_log.txt
		echo "SUCCESS: WWAN restart worked, no need for reboot"
		exit 0
		fi
		echo "FAILURE: reboot required." >> /root/wan_reset_log.txt
		echo "FAILURE: reboot required. Rebooting..."
		sleep 3
		reboot

The default network configuration in Openwrt is:

Interface Name Description Default configuration
br-lan WAN/LAN1 & LAN2 192.168.1.1/24
wwan0 QMI Modem mode Working, but only IPv4 by default

</WRAP>

hardware.button on howto use and configure the hardware button(s). Here, we merely name the buttons, so we can use them in the above Howto.

The Netgear LBR20 has the following buttons:

BUTTON Event
Sync For setting up mesh nodes with the stock firmware
Reset Reset/TFTP recovery mode

FIXME

  1. This table is automatically generated, once the correct filters for Brand and Model are set.
  2. If you see “Nothing.” instead of a table, please edit this section and adjust the filters with the proper Brand and Model. Just try, it's easy.
  3. If you still don't see a table here, or a table filled with '¿': Is there already a Techdata page available for Netgear LBR20 ? If not: Create one.
  4. If you see a table with the desired device data, everything is OK and you can delete this text and the <WRAP> that encloses it.
  5. If it still doesn't work: Don't panic, calm down, take a deep breath and contact a wiki admin (tmomas) for help.

---- datatemplatelist dttpllist ---- template: meta:template_datatemplatelist cols : Brand, Model, Versions, Device Type, Availability, Supported Since Commit_git, Supported since Rel, Supported current Rel, Unsupported, Bootloader, CPU, Target, CPU MHz, Flash MBs, RAM MB, Switch, Ethernet 100M ports_, Ethernet Gbit ports_, Comments network ports_, Modem, VLAN, WLAN 2.4GHz, WLAN 5.0GHz, WLAN Hardwares, WLAN Comments_, Detachable Antennas_, USB ports_, SATA ports_, Comments USB SATA ports_, Serial, JTAG, LED count, Button count, Power supply, Device Techdata_pageid, Forum topic URL_url, wikidevi URL_url, OEM Device Homepage URL_url, Firmware OEM Stock URL_url, Firmware OpenWrt Install URL_url, Firmware OpenWrt Upgrade URL_url, Comments_ filter : Brand=Netgear filter : Model=LBR20 filter : Versions=


See above photos.

Note: This will void your warranty!

Here's a good video on how to open it up: https://www.youtube.com/watch?v=ModkiMVGvu8

  • Remove the 8mm nuts on the LTE External antenna connectors.
  • There are Torx screws above and to the outer side of the LTE Antenna ports, behind the rear label.
  • Cut the bottom label in half along the seam, or peel it off.
  • Remove the two rubber feet on either side, that bridge the front and back halves of the case.
  • Now you can slide the front half of the case down, and it will lift directly off.

port.serial general information about the serial port, serial port cable, etc.

How to connect to the Serial Port of this specific device:
Insert photo of PCB with markings for serial port

FIXME Replace EXAMPLE by real values.

Serial connection parameters
for Netgear LBR20 @@Version@@
EXAMPLE 115200, 8N1, 3.3V

port.jtag general information about the JTAG port, JTAG cable, etc.

How to connect to the JTAG Port of this specific device:
Insert photo of PCB with markings for JTAG port

See the above Youtube video, as after he separates the case, it goes into how to install additional antennas. The ORBI LBR20 has internal UF.L connectors.

COPY HERE THE BOOTLOG WITH THE ORIGINAL FIRMWARE


COPY HERE THE BOOTLOG ONCE OPENWRT IS INSTALLED AND RUNNING


Space for additional notes, links to forum threads or other resources.

  • ...

FIXME Add tags below, then remove this fixme.

How to add tags

This website uses cookies. By using the website, you agree with storing cookies on your computer. Also you acknowledge that you have read and understand our Privacy Policy. If you do not agree leave the website.More information about cookies
  • Last modified: 2024/11/26 17:58
  • by s2s2