I finally managed to buy a 3000 series scope that looked to have the NAND corruption problem. In this case it was specifically a DSOX3024A. It gave the Agilent text splash screen, then the megazoom IV image and then a few seconds later would reboot and start the process over again. I've wanted one for quite a while to see what it would take to fix it.
I was able to fully recover the scope with nothing more then a flash drive. This process will likely work for any 2000a or 3000a series scope that has NAND corruption and has firmware 2.35 or below. I am not breaking any new ground here, just using the tools already provided in this thread a few years ago.
Firmware versions 2.35 and below allow the scope to partially boot from the USB drive if a properly constructed image is created for it. This was used quite nicely to hack the scope early on, I am pleased that the same process also works to recover from a NAND corruption failure.
Plesa describes how to create the USB image in this post:
https://www.eevblog.com/forum/testgear/dsox2000-and-3000-series-licence-have-anyone-tried-to-hack-that-scope/msg322242/#msg322242To recover the scope though you don't need to patch the .dll file, just use it as it is as we're trying to recover the scope, not hack it.
For the USB drive to boot you need to have the same version of firmware on the flash drive as is already installed in the scope, or a very close version. So if you don't know what was installed you may need to try several versions. If you use the wrong version the scope will likely hang during the boot process at some point.
You can find an archive of older firmware versions in this thread and on xdevs.com. For a mostly complete list of firmware versions you can check the firmware release notes on the Keysight website.
You should also put a copy of version 2.35 firmware on the flash drive - we'll use this image to recover the scope once it has booted.
If you build the USB drive image correctly the scope should boot to the normal operating screen with the flash drive plugged into the front USB slot. It may give an error or two but at this point you can update the firmware from the 2.35 image you copied to the flash drive. I recommend version 2.35 in case something goes wrong and you encounter further errors. It is the newest version that allows booting from the flash drive. You will need to remove the flash drive when the scope reboots as part of the firmware update or it may want to try booting from it again. Once the scope is recovered and running version 2.35 with no errors you can then update it to the newest firmware(2.43 at this time) which will keep the corruption issue from reoccurring.
I don't know if the NAND corruption issue is identical for every scope so it is possible this won't work for all problems but it is certainly worth a try if you have the boot loop. If your scope has versions 2.36-2.39 then recovery will likely require a network card and the serial console connection. Keysight has so far also replaced/repaired scopes that have this problem for no charge even if out of warranty so that is certainly an option as well.
I did connect to the serial console while doing this, but again, it wasn't needed.
This is what the error looked like on the serial console before it rebooted:
Exception 'Data Abort' (4): Thread-Id=05d40002(pth=837d59e4), Proc-Id=03500006(pprc=837d17ac) 'infiniivisionLauncher.exe', VM-active=03500006(pprc=837d17ac) 'infiniivisionLauncher.exe'
PC=40d13c28(infiniivisioncore.dll+0x00003c28) RA=40d917bc(infiniivisioncore.dll+0x000817bc) SP=02a9fb08, BVA=00000000
The exception 0x80000002 occurred at address 0x40D13C28.
After loading version 2.43 I see this:
-----> InfiniiVision is running <-----
failed open \Secure\InfiniiVision\LudicrousSpeed.usb
So I guess my scope does not contain a Tesla
Now, to leave the scope stock at 200 MHz, or is the 500 MHz mod calling?
For anyone trying to fix a corruption issue by all means post any questions or PM, I'm always happy to help.
Pic of the happy patient attached.