So I have been able to do the testing I mentioned, and here are the details.
If you want the TL;DR version, know that if your R7800 is experiencing the "loss of settings on power cycle or reboot" issue while running official Netgear or Voxel firmwares, you MAY (not guaranteed) be able to return to a functional device that actually preserves settings on a reboot or power cycle if you flash a different firmware like OpenWRT. This has nothing to do with official Netgear or Voxel firmwares being defective--instead, I speculate that it has everything to do with the fact that the NAND flash chip in some units is not robust, and it is easily "worn out" or damaged. And since OpenWRT uses a very different flash layout map versus the official Netgear and Voxel firmwares, it is able to preserve settings across a reboot or power cycle because it stores its configuration data on a different physical segment of the flash chip that is not yet damaged. In the long run, note that this is all complete speculation on my part--I am definitely not an expert, just an observer. So while the interpretation seem to fit the observations, I am happy for an expert to step up, and set this all straight!!!
If you want more details, keep reading...
-------------------------------------------------------------------------
Briefly to recap, my R7800 is afflicted with the "loss of settings on power cycle or reboot" issue. This appears to be a hardware problem--that the area of the flash chip used to store settings and configuration gets "worn out" prematurely or becomes defective electronically due to something like a power loss or fluctuation. This is NOT normal--there are reports of many r7800s running successfully for years despite hundreds of flashings and real life foibles like power anomalies. These older, more robust R7800s appear to use Micron- and SkyHigh-brand NAND flash chips. But the ones experiencing this loss of settings issue appear to be using Macronix-brand NAND flash chips. At this point, it is not clear if this affects all Macronix-brand flash chips--it may simply be that there was a less robust batch of Macronix NAND that made it into production, and so this only affects a limited number of routers.
With this interpretation of the issue being hardware-related, there was initial speculation that it would affect all R7800s firmwares equally. But after experiencing the issue while running Voxel's latest v1.0.2.75.2SF firmware, I was surprised to see that when I flashed the router with OpenWRT instead, it did not have this problem. It worked normally, and I was able to reboot or cycle the power without losing settings.
This led to the additional speculation that despite the issue likely being hardware-based, it might not actually affect all firmwares as initially expected. This is because the flash layout map between different firmwares can differ significantly. The flash layout maps for official Netgear and Voxel firmwares are identical, which makes sense as Voxel uses the official firmware as a base. But the flash layout map of OpenWRT is significantly different. So the thought is that an OpenWRT installation does not necessarily access the same "worn out" or electronically defective area of the flash chip that official Netgear/Voxel firmware uses.
To provide supporting evidence for this assertion, I flashed three official Netgear firmwares to my R7800 last night to make observations. I tried the latest published one (v1.0.2.68), the version that came installed from factory when I received this R7800 (v1.0.2.62), and the oldest published firmware I could find (v1.0.0.20). The reason for attempting the oldest published firmware that I could find was for more than just kicks and giggles--I explain this below in the discussion of flash layout maps.
For all three official Netgear firmwares, I installed them via the tftp method. After firmware installation, I then did factory resets to give them a fresh start (by holding the reset button for 7+ seconds while the router was on). Under all three firmwares, I experimented by making basic configuration changes, then used the power button to shut the router off, wait two seconds, and then turn it back on again. In all cases, the simple configuration changes that I made were lost, indeed, when I browsed to 192.168.1.1 where one would expect to find the web GUI, instead, I was greeted with the "Netgear Service Terms and Conditions" page to begin the setup process again. The only exception was the earliest router firmware (v1.0.0.20), which does not force this service terms and conditions setup routine, and thus, it let me arrive to the web GUI directly. But the settings were still lost under that firmware as well due to the power cycle.
For good measure, I reflashed OpenWRT, and was once again able to reboot and power cycle without a loss of settings. Indeed, I was able to quickly reload an OpenWRT configuration backup file with all my customizations so I would not have to type them in again by hand, and it worked!
The above provides pretty good evidence of SOMETHING, and one way to interpret this SOMETHING is that the area of the flash chip used by official Netgear firmware to store settings and configuration data is damaged, i.e. either "worn out" or defective electronically. And since OpenWRT has a significantly different flash layout map, it stores its data in a physically different segment/partition of the flash chip that is still functional. Thus, it (OpenWRT) is able to retain its settings for now, but if it were to ever access the same physical portion of the flash chip that is either "worn out" or defective electronically, well, it would have the same issue as well.
There are two potentially interesting implications for this explanation if it indeed is correct, and quite frankly, this is whole reason I have written up this extended discussion. Let me stress that this all conjecture now, but at least it seems to well fit the observations that have been made. In particular, the implications may be helpful for folks whose R7800s are afflicted with the "loss of settings on power cycle or reboot" issue, and that are no longer covered by warranty for an RMA exchange. Here they are:
1.) Flashing an alternative firmware like OpenWRT may allow these folks to return their R7800 to basic functionality as the settings may no longer get vaporized on a reboot or power cycle. Woo-hoo, and great, right??? The detraction is that OpenWRT is, for sure, not quite as simple and easy to use as Voxel's firmware. So there would be a steeper learning curve. The other thing to keep in mind is that if some physical portion of the flash chip is indeed bad, if an R7800 running OpenWRT ever tries to access that portion of the chip, it will have the same problem as any other firmware.
2.) There is still free space on the 128MB NAND flash chip--Voxel's firmware does not fill it up completely. So it might be possible to arrange the flash layout maps to put the configuration partition (mtd11--more about this below) in a different physical location on the flash chip that is not damaged. So one could still run Voxel's firmware, but it would be a special version that uses a custom flash layout.
The only way to figure out if the above implications are valid is to actually try them out. For most people whose routers are suffering from this affliction, it would probably be easy enough to test out implication #1. If OpenWRT allows your router to return to functionality, great! But yeah, you will have a steeper learning curve with OpenWRT. Testing out implication #2 is harder--I suspect it would require a pretty significant effort on Voxel's part to adjust his firmware such that it uses a different flash layout map (maybe not?). But he probably does not have time for this, and he probably has a lot of good reasons for NOT wanting to do it anyways. But who knows...
Final point is about flash layout maps because I have seen something rather puzzling with the official Netgear firmware. But I think it is puzzling only because I have no real experience or expertise on this front--I am just making observations. Anyway, in each of three official Netgear firmware installs, I enabled telnet so I could see the flash layout that was being used ("cat /proc/mtd"). All three returned identical results as per below:
Code:
dev: size erasesize name
mtd0: 00c80000 00020000 "qcadata"
mtd1: 00500000 00020000 "APPSBL"
mtd2: 00080000 00020000 "APPSBLENV"
mtd3: 00140000 00020000 "ART"
mtd4: 00140000 00020000 "ART.bak"
mtd5: 00220000 00020000 "kernel"
mtd6: 01de0000 00020000 "rootfs"
mtd7: 04480000 00020000 "netgear"
mtd8: 02000000 00020000 "firmware"
mtd9: 00080000 00020000 "crashdump"
mtd10: 00380000 00020000 "language"
mtd11: 00120000 00020000 "config"
mtd12: 00120000 00020000 "pot"
mtd13: 00010000 00001000 "m25p80"
mtd14: 0001f000 0001f000 "cert"
mtd15: 0005d000 0001f000 "pot.bak"
mtd16: 001b2000 0001f000 "traffic_meter"
mtd17: 001b2000 0001f000 "traffic_meter.bak"
mtd18: 001b2000 0001f000 "dongle"
mtd19: 037b4000 0001f000 "overlay_volume"
The sizes of the mtdXX partitions are given in hexadecimal values. But if you hex2dec them to turn them into decimal bytes, you come up with a total sum of 231,301,120 bytes (this is exactly 220MB). As a novice with no experience, this seems puzzling to me as the NAND chip in the R7800 is only 128MB in size, i.e. 134,217,728 bytes. So how can official Netgear firmware have a map that spans 220MB in size when the actual capacity of the NAND chip is only 128MB??? Maybe they are using some type of on-the-fly compression/decompression like the old SoftRAM and RAM Doubler products of MS-DOS and Windows 95 days??? This does not make sense to me, but again, I have no expertise in this whatsoever, and I am only making observations.