USB Rescue Firmware Procedure

Configure NAS devices so that corrupted firmware can be repaired/replaced using a USB stick inserted into the NAS… and provide detailed instructions. Devices with an LED display should also indicate the “rescue” firmware status and/or progress. Note: If such a procedure has already been implemented, there are no instructions to be found, and WD Support appears to be utterly clueless about it.

Case in point, my WD PR4100 NAS is currently bricked after the power failed during a firmware upgrade/upload using the dashboard. By bricked, I mean there is no network connection, no dashboard, and no rescue firmware… as touted in the manual. Fortunately, I have sufficient skills which will hopefully enable me to recover my bricked NAS by using the internal UART port, after the required “tools” arrive, but this complex procedure should not be necessary.

All you have to do is configure the bootloader to look for certain files on a USB stick in much the same way as a PC might look for external boot drives/partitions before booting from the internal hard drive. As a safety measure, one might also require a certain button combination to be pressed.

Two possibilities come to mind for a USB firmware recovery procedure, as it pertains to loading “rescue” firmware files from an attached USB stick. During the bootloader (U-Boot ?) phase of the boot process…

  1. Look for a specially named stock firmware bin file.
  2. Look for specially named rescue firmware files like those stored in NAND partitions.

In the second case, the required files are uImage and uRamdisk, both of which exist in the GPL firmware source code files, as well as being contained in the firmware bin file itself. MD5 checksum files may also be required.

There are countless scenarios which can cause firmware to become corrupted, thus bricking the device. In these cases, it’s nothing less than stupid to rely on a lengthy and expensive RMA process that only causes needless frustration and anxiety for end users, when a simple USB firmware “rescue” procedure could save the day in a matter of minutes. You have firmware, you have USB ports, so why not put them to good use?

In addition, it might also be a good idea to incorporate an HDMI port into the hardware and enable USB keyboard support so that a computer monitor and keyboard could be attached to the NAS to monitor and/or interact with the boot process if required. This would virtually eliminate the need to interface with the device using the UART port in all but the most severe cases. Plus, an HDMI port and USB keyboard support could also be touted and/or used as an added feature.


Idea status: Acknowledge.

As far as fiddling with the hardware goes, good luck and keep posting about the progress!