Netgear wndr3700v3 only works with version 19.07.0

Yesterday, I tried to install openwrt on my netgear wndr3700v3. I followed these instructions: https://openwrt.org/toh/netgear/wndr3700#oem_easy_installation.

I used this file:
https://downloads.openwrt.org/releases/24.10.4/targets/bcm47xx/mips74k/openwrt-24.10.4-bcm47xx-mips74k-netgear_wndr3700-v3-squashfs.chk

It started the installation, the power light was blinking amber, which means its upgrading the firmware. But it kept blinking amber for almost an hour, and I couldn't connect to 192.168.1.1 in my browser. So I did a power cycle, which appears to have been a mistake.

Now when I power it on the power light turns solid amber, and nothing else happens, except sometimes the lan port leds flicker green. And if I connect an ethernet cable to any of the ports, its corresponding led turns on.

I've tried to fix it using the method described here: https://openwrt.org/toh/netgear/wndr3700#recovery_flash_in_failsafe_mode

But the ping requests never make it.

ping 192.168.1.1                                                              
PING 192.168.1.1 (192.168.1.1) 56(84) bytes of data.
From 192.168.1.2 icmp_seq=45 Destination Host Unreachable

tftp won't make it either:

[I] ⋊> ~/Downloads tftp   
(to) 
usage: connect host-name [port]
tftp> verbose
Verbose mode on.
tftp> trace
Packet tracing on.
tftp> rexmt 1
tftp> binary
mode set to octet
tftp> connect 192.168.1.1
Connected to 192.168.1.1 (192.168.1.1), port 69
tftp> put WNDR3700v3-V1.0.0.42_1.0.33.chk
putting WNDR3700v3-V1.0.0.42_1.0.33.chk to 192.168.1.1:WNDR3700v3-V1.0.0.42_1.0.33.chk [octet]
sent WRQ <file=WNDR3700v3-V1.0.0.42_1.0.33.chk, mode=octet>
sent WRQ <file=WNDR3700v3-V1.0.0.42_1.0.33.chk, mode=octet>
... a bunch more WRQ's .. 
Transfer timed out.

tftp>

What should I do? Any advice would be appreciated.

This generation of Netgear devices generally imbed the nmrpflash protocol. It allows to recover the device with the OEM firmware. Try various timings between launching the command and powering on the device. Wait one minute after the reboot message, because in some cases the flashing process isn't finished yet. Disable the firewall. I have used it on the 3700v2 and v4, so ... I assume for the v3 :wink:

https://www.downloads.netgear.com/files/GDC/WNDR3700V3/WNDR3700v3-V1.0.0.42_1.0.33.zip

After recovery, do not flash the latest 24.10. Try an older version, this one for example. I'm suspecting a file too large with 24.10.

https://downloads.openwrt.org/releases/21.02.7/targets/bcm47xx/mips74k/openwrt-21.02.7-bcm47xx-mips74k-netgear_wndr3700-v3-squashfs.chk

I downloaded nmrpflash, and after a couple of tries, it successfully installed the stock firmware. Then I tried to install openwrt-21.02.7.chk using the tftp method here:

because its the recommended method, but I couldn't get it to boot into the recovery mode where you hold the button until the power led steadily blinks green. The light just stays solid orange until i let go of the button, then it turns solid green and the router is restored to factory settings.

So, I tried the OEM easy installation again with openwrt-21.02.7.chk. it uploaded fine, but never rebooted. Now I can't access the router admin page at 192.168.1.1, and the power light is steadily blinking amber. But I still have internet access, and the wifi lights are on.
I don't think I should interrupt it and reboot, because last time I did that, it bricked it.

So I don't really know what to do next. Can anyone guess what I might have done wrong, and how I can fix it?

1 Like

I tried to install openwrt on my wndr3700v3, but it wasn't working. I did some trouble shooting, and tried installing via different methods. I only got it working when I installed this file:

https://downloads.openwrt.org/releases/19.07.0/targets/brcm47xx/mips74k/openwrt-19.07.0-brcm47xx-mips74k-netgear-wndr3700-v3-squashfs.chk

I tried to installing 24.10.4 through the oem update manager, the luci update page, and nmrpflash. It would upload to the router fine, but the router would never reboot, and when I turned it off and on again, the power light stayed solid orange, and there would never be any other activity. I could only fix it by using nmrpflash to reinstall the oem firmware, or openwrt-19.07.0.
I tried a couple other versions (21.02.0, 19.07.3, 19.07.5) but it would only ever work with 19.07.0. I don't think its that the newer openwrt versions are too big, because they're all smaller than the stock firmware, which is 7.3 megabytes.
Is this router actually compatible with the latest version? If so, how can i install it? Is it possible that my router is slightly different (newer, older, whatever) than the standard wndr3700v3, so mine isn't compatible?

What is the output of cat /proc/mtd ?
This device has only 8 MB of flash, it is short.
Try to create a stripped test version: remove all wifi parts for example. Goal is to create a very light image. For example this list of packages for 22.03.7. This lead to a 5MB image instead of 5.9.

base-files busybox ca-bundle dnsmasq dropbear firewall4 fstools kmod-gpio-button-hotplug kmod-leds-gpio kmod-nft-offload libc libgcc libustream-wolfssl logd mtd netifd nftables nvram odhcp6c odhcpd-ipv6only opkg otrx procd procd-seccomp procd-ujail swconfig uci uclient-fetch urandom-seed urngd luci

Close this thread as you have opened another one.
I have always installed these devices by flashing within OEM firmware. Never had to use TFTP.

It looks like the v3 is a Broadcom device so this also applies:

1 Like

Thank you! this worked! once i got it installed, i set it up with an old 120 mb usb stick. is there a way to combine this with the internal storage, so i have more room?

Give details of what you achieved (version, packages) for others users to read.

Have a look at this.

i was having trouble installing openwrt 24.10.4 on my netgear3700v3. apparently, the standard build was too large for the device's flash, so it wouldn't install properly. to fix this, i used the firmware selector to build a smaller build of an older version, which was small enough that it installed and ran correctly.

2 Likes

thanks for all the help so far. i followed the instructions in the page you sent me, and successfully set the drive up as extroot. after i rebooted, it showed up properly in both luci and in the router terminal via serial connection. i installed some packages, mostly wifi drivers, and then i rebooted again. this time, it wasn't so smooth. here's a snippet of the boot log:

root@OpenWrt:~# [ 4447.233975] b43-phy0: Loading firmware version 666.2 (2011-02-23 01:15:07)
[ 4447.246040] usb 2-1: USB disconnect, device number 2
[ 4447.305942] device offline error, dev sda, sector 2052 op 0x1:(WRITE) flags 0x3000 phys_seg 1 prio class 2
[ 4447.315913] Buffer I/O error on dev sda1, logical block 2, lost async page write
[ 4447.323724] device offline error, dev sda, sector 2570 op 0x1:(WRITE) flags 0x3000 phys_seg 1 prio class 2
[ 4447.333730] Buffer I/O error on dev sda1, logical block 261, lost async page write
[ 4447.342968] device offline error, dev sda, sector 2598 op 0x1:(WRITE) flags 0x3000 phys_seg 1 prio class 2
[ 4447.352967] Buffer I/O error on dev sda1, logical block 275, lost async page write
[ 4447.361001] device offline error, dev sda, sector 2636 op 0x1:(WRITE) flags 0x3000 phys_seg 1 prio class 2
[ 4447.370971] Buffer I/O error on dev sda1, logical block 294, lost async page write
[ 4447.395329] device offline error, dev sda, sector 3112 op 0x1:(WRITE) flags 0x3000 phys_seg 2 prio class 2
[ 4447.405299] Buffer I/O error on dev sda1, logical block 532, lost async page write
[ 4447.413103] Buffer I/O error on dev sda1, logical block 533, lost async page write
[ 4447.421742] device offline error, dev sda, sector 18146 op 0x1:(WRITE) flags 0x3000 phys_seg 1 prio class 2
[ 4447.431807] Buffer I/O error on dev sda1, logical block 8049, lost async page write
[ 4447.439839] device offline error, dev sda, sector 18216 op 0x1:(WRITE) flags 0x3000 phys_seg 1 prio class 2
[ 4447.449906] Buffer I/O error on dev sda1, logical block 8084, lost async page write
[ 4447.472819] EXT4-fs (sda1): shut down requested (2)
[ 4447.477954] Aborting journal on device sda1-8.
[ 4447.482594] device offline error, dev sda, sector 100354 op 0x1:(WRITE) flags 0x9800 phys_seg 1 prio class 2
[ 4447.492744] Buffer I/O error on dev sda1, logical block 49153, lost sync page write
[ 4447.500652] JBD2: I/O error when updating journal superblock for sda1-8.
[ 4447.920977] br-lan: port 2(phy0-ap0) entered blocking state
[ 4447.926811] br-lan: port 2(phy0-ap0) entered disabled state
[ 4447.932584] b43 bcma0:1 phy0-ap0: entered allmulticast mode
[ 4447.939050] b43 bcma0:1 phy0-ap0: entered promiscuous mode
[ 4448.136605] br-lan: port 2(phy0-ap0) entered blocking state
[ 4448.142335] br-lan: port 2(phy0-ap0) entered forwarding state

@OpenWrt:~# 
@OpenWrt:~# 

it seems like on this second boot, something serious happened with the usb system. i did a bunch of troubleshooting, including reinstalling drivers, reformating the drive both on the router and on my linux box, tested with other drives, i even reinstalled the whole openwrt firmware again, but nothing changed. it doesn't seem to recognize usb devices at all anymore. it never says anything in dmesg, or cat /proc/partitions, tho dmesg does report it loads the drivers and sees the usb bus:

[   15.404678] random: jshn: uninitialized urandom read (4 bytes read)
[   15.437457] random: ubusd: uninitialized urandom read (4 bytes read)
[   15.444604] random: ubus: uninitialized urandom read (4 bytes read)
[   16.541297] random: jsonfilter: uninitialized urandom read (4 bytes read)
[   18.047099] kmodloader: loading kernel modules from /etc/modules.d/*
[   18.403191] usbcore: registered new interface driver usbfs
[   18.409170] usbcore: registered new interface driver hub
[   18.414949] usbcore: registered new device driver usb
[   18.514128] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[   18.725250] SCSI subsystem initialized
[   18.810521] fsl-ehci: Freescale EHCI Host controller driver
[   18.835637] ehci-platform: EHCI generic platform driver
[   18.841137] ehci-platform ehci-platform.0: EHCI Host Controller
[   18.847359] ehci-platform ehci-platform.0: new USB bus registered, assigned bus number 1
[   18.855887] ehci-platform ehci-platform.0: irq 5, io mem 0x18004000
[   18.883764] ehci-platform ehci-platform.0: USB 2.0 started, EHCI 1.00
[   18.907144] hub 1-0:1.0: USB hub found
[   18.913162] hub 1-0:1.0: 2 ports detected
[   18.968976] uhci_hcd: USB Universal Host Controller Interface driver
[   19.174124] usbcore: registered new interface driver usb-storage
[   19.475470] kmodloader: done loading kernel modules from /etc/modules.d/*
[   19.866214] urngd: v1.0.2 started.
[   22.537326] random: crng init done
[   22.540818] random: 18 urandom warning(s) missed 

i dont know what's happening, but my best guess is somehow, the router can no longer read and write usb devices. it powers them fine, i know this cause a hard drive spins up, and my rockbox'd ipod charges, but the ipod doesn't show a usb connection, and the drive's data lights remain solid, whereas normally they blink when connected to a port.

i would really like to be able to use the extroot setup, i think that would really improve the usability of this router. (im mostly using it to learn and experiment with, so it's not critical)

do you have any idea what could be causing this behavior, and what i can do as a fix/workaround?

also, unrelated and much less important, i can't figure out how to control the leds as described here:

thanks for taking time to help a noob out!