Support for NETGEAR WNDR4300 v2

ok back to stock i reached the console interupted boot (when i do this its unlegable) so i typed your nand commands blindly they appeared to work (i guess) it rebooted, i interupted boot again, fw_recovery, then tftp upload on, but i only had the latest stock update .img, i did not change the name but it uploaded and booted back up to netgear firmware, my copies of the openwrt img from the debian drive seem to be corrupted on windows as i tried to reinstall openwrt but it bricked again i noticed the firmware file size was at 0kbs my initial install was from the debian drive all the copies i put on windows seem corrputed probly a pc hardware issue ill look into. Thank you for all your help "realmicu" and im glad i ordered a 4 pack of TTL cables the first one was bad.

So if my u-boot text output is garbled is it partially corrupted i have the right baud rate set, i can interupt the boot sequence and type commands but anything being output from the commands is garbled until openwrt starts to boot then i finally get actual words and txt? Is there a way to reinstall the u-boot i cant seem to find much info about it from the netgear website or is it supposed to be like that on boot up?

I had the same problem, WNDR4300 v2 unlike other Netgear routers has problem with low quality USB TTL UART modules (mostly CH340 clones). My advice is to use something based on PL2303.
Pls do not type comands without proper output, 'nand markbad' requires an offset provided by 'nand bad' so if your screen is garbled you may worsen things instead of fixing them.
Sysupgrade is for .bin files only, recovery uses .img files.

is there anyway to scrub the bad nand blocks from stock firmware it appears i cant reinstall the built openwrt image till i fix that i set it to install from stock netgear firmware threw web ui and after reboot it think it stays at uboot possibly to select the correct root= boot partition but i cant see anything, just guessing after reboot it goes back to the same error message posted before kernel panic until i tftp stock firmware again, ill try another ttl or can i identify the bad blocks from the mtd partitions from the errored output above?

I'm afraid there are no tools in vendor OS that will help you to find and mark bad blocks. You should do that from u-boot prompt prior to OpenWrt installation.

1 Like

Thank you. It works!

1 Like

Yes, it's my github account, the repo comes from NETGEAR official opensource code library.
I remember you had send me an email, and I have told you these information.
The official code compile environment require very old ubuntu version.
Thanks for you.

@Tech49, I failed to build the img file. Could you please send me the img you have built? Thank you so much in advance! Email:

I think I may have bricked my router, can't enter text in the serial console nor can I manage to TFTP into it to restore the original firmware, if only I could find a way to use JTAG...

I bought this router "Netgear WNDR4200 v2" from amazon 5 years ago, there was witten v1 on the description, but they sent me the v2... 3years with the stock firmware, then 2years ago it reboots and it didn't hold the configuration settings on save anymore, bad memory probably... who knows. After reset the login page never appear, showing an ending spinning wheel (url is BT_index.html something like). Unusable, like a bricked router since I cannot log into with a browser from the web ui.

Last week I read this post so I decided to give it a shot. I attached the usb via serial UART with a minicom teminal session. I reflashed the stock firmware via tftp many times with success, but stil the same problem. I've analyzed boot logs: bad memory at first block 0x00000 :smiley: when uboot start, but the flashing via tfpt had no problem at all.

Then I tried with the openwrt. I compiled the patched version from @realmicu on a ubuntu20 vm, issued the nand commands (I had 5 bad blocks already listed) and flashed, but I had the result described from @Tech49, kernel panic loop. After another flash openwt did not panic anymore and it worked!!! Then I installed luci with opkg to have access from the browser. In the end I don't know why it worked, probably just the reflash or I issued the right nand command or simply because I recall those damaged areas with md command. It is running from some days now.

Thank you people, especially @realmicu!!

1 Like

Hi Albio,

Thank you for nice words, glad to see it all works!
Thankfully this is a dual flash router with u-boot and all vital hardware data residing on SPI NOR chip (slower but more reliable flash memory) so dead block at 0x00000 on SPI NAND is not a big problem here. WNDR4300(v1) has only NAND chip so everything is loaded there, but I had never experienced any bad blocks on that one, so I guess its flash memory must be of recognizably better quality.


1 Like

I ended up flashing to stock because of the memory issue, but I will try openwrt again now that I know a reflash can fix it!

For those having ubi errors: the error seems identical to the one here with wndr4500v3 (almost identical hardware, too): WNDR4500v3 - Kernel Panic - not syncing: VFS

I was having exact issue too on my wndr4300v2 (first boot after flashing openwrt factory img was fine, then rebooted to bootloop), and sysupgrade solved the problem.

Btw uboot does not work at all with my uart adapter. Switched to breed for wndr4500v3 and it works perfectly.

1 Like

How do i install B.R.E.E.D. to the wndr4300v2?

Breed's webui is in Chinese if you don't mind; telnet and uart consol is pure English though :slight_smile:

Here's its info:
Download for wndr4500v3 to use with wndr4300v2:

For flashing, use uboot flashing (if you have access), or in openwrt, install kmod-mtd-rw and then "mtd write" to u-boot. For entering breed, keep one button pressed while powering on the router; LED will blink in a heartbeat-like rhythm.

FYI breed doesn't seem to have nand "mark bad" function; however there is nandtest in mtd-utils that can do the job when booted to linux.

I had the same problem on my WNDR4300v2.



Ok last ditch effort on my end can someone look up the hex address on there wndr4300v2 for the bad nand so i can mark the same one bad on mine and see if i can reinstall?

I don't think it's a good idea because different nand chips could have different actual bad blocks and marking the blocks as bad could be disruptive and may render it useless. So be careful with whatever you want to do.

I guess the only other way is building a kernel boot img then try a reinstall from gui

1 Like

Just wanted to confirm my success this way. Use nmrpflash to flash the latest snapshot factory.img, SSH to the router once it comes up, and install the latest snapshot sysupgrade.bin.