As Blkt said, return/exchange if you can. There are currently no workarounds on DD-WRT. It's certainly possible, and part of the solution is already in place, as it does detect and skip bad blocks during installation. Unfortunately, there has been no indication when/if it will ever run on affected devices. I'm not knowledgeable enough to trace the issue further, much less develop & implement the solution.
The OpenWRT workaround is manually changing the offset something which cannot be done automatically.
Builds after build 44809 have some form of bad block detection but there is no bad block detection/compensation for critical areas.
I asked BS again and he was very clear:
"I cannot replace broken NAND chips"
I'm glad to hear some actual news on the topic. While on a personal level I'd love to get a fix, I also realize BS investing time to work around cheap nand chips would take away time from further developing the FW as a whole. At least 1 of the 3 I bought flashed over without issues. Maybe I'll try to sell off the one with bad bricks that I didn't kill & pick up another ea8500 🤣
Until recently it was very rare but it seems there are more bad NAND chips nowadays
That's why I tried a 3rd one. I was hoping I just got unlucky when 1 of 2 I initially purchased was affected. It's really unfortunate, because on paper these are some of the best DD-WRT devices available. Hopefully cheap nand chips don't become the norm for Netgear & others in coming years.
Before I accidentally killed the first bad one, I ran
Code:
nand bad
In U-boot. Beyond the blocks DD-WRT detected during flashing, there were several more on other parts of the chip unused by DD-WRT.
i had an r7800 that wouldnt flash via gui - dd-wrt or netgear, didnt matter.
had trouble getting tftp flash to go until i found this article and followed the debricking instructions.
in case anyone else is trying to follow the linked guide for debricking but cant get it to work when you click 'put', it says to set your host in the tftp settings to 192.168.1.1... but it actually needs to be 192.168.1.10 (same as the interface static ip).