Tuesday, May 17, 2016

Recent work almost certainly lost, but soldiering on


The Windows System Repair (which insisted it could not be cancelled) ran 30-40 hours before ceasing all disk activity and sitting helplessly inert. When I power cycled the laptop, I received a SMART error message to expect imminent disk failure. However, that occured before I could access the disk to remove anything.

Disk diagnostics on the laptop returned "Unusual Error" and immediately aborted. My standalone disk cloning box couldn't read it. I connected it to another PC and ran a good disk recovery utility. The drive takes a full set of recovery actions on each and every IO - I think 256 times is the magic number. That is why the system repair ran so long.

When I mount the disk to my other PC, it does its continual error recovery cycling amid each IO, but it did show up eventually. The disk recovery utility (Seagate) found the partitions and I selected the one with my data on it. The detailed scan ran excruciatingly slow - after four hours, I had found 232 directory entries and no files yet, with a projected completion time of over 10 years.

It does eventually get the data, but so slow as to be impractical. It does appear the data is intact and can eventually be read, although I am not sure how completely since it was just starting into the drive when I bailed out.

I could use a hard disk recovery service - they will swap electronics, replace heads if necessary and then extract as much data as possible. The downside is price - a minimum of $600 and some quoted up to $2400. While it is painful to have lost about a month of coding and some fpga logic, plus the huge annoyance of reinstalling applications and toolchains, it is also hard to justify spending that much money given the risk that key files might still not be fully recovered.

I did buy a 960GB SSD to use in the laptop and will receive a replacement hard disk drive with Windows and drivers installed, as the seller of the laptop considers this an in-warranty event.

All this pain because I didn't verify that I had a correctly operating backup in place on the laptop - assuming I was safe until it was too late.


I sent very detailed specs to the metalworker to get a quote for the cylinder, with holes predrilled for the pin feed but it is up to me to find/create them. I have received several good suggestions from readers of the blog, all of which I am considering carefully.


I will have to recreate everything I had built for the new GUI - screens, restructured logic in the model-controller-view pattern, and test it all again. At least I should be able to take a workable approach straight away, rather than fighting to learn what works as I did in past weeks. I also need to find and download all the images I was using for the interface. All achievable, once I put in the time.

I have adjusted or refined parts of the fpga logic, as well as having converted it to work successfully on the Vivado toolchain for the new fpga board. All that will have to be redone and I hope I can figure out what changes I had to make. Here, I can imagine burning debugging hours in the future only to spot a problem that I realize had been fixed but lost in the great crash of May 2016.


  1. Going forward, you might consider an incremental backup utility that runs in the background. I used to use Carbonite but more recently switched to CrashPlan which runs on Windows, linux and Mac computers.

  2. I use CrashPlan too, and highly recommend it. Retrieving data from the cloud turned out to be orders of magnitude faster than my local backups with Bacula. CrashPlan can also back up locally to anothet computer.

    The one less dark cloud is that I have found, and you probably too, is that it's a lot quicker to reconstruct your work from scratch than it was initially, since you can bypass all the dead-ends you hit the first time. Back in the "olden days" I'd usually have a listing to start from too, but no one prints listings any more.

  3. I used Mozy on other systems but didn't get it properly set up for the laptop. I will look into Crashplan as soon as I rebuild the system