Completely different scenario, but at my last job we used GetDataBack from
www.runtime.org. It's not freeware, but the company paid for it and it did what we needed. In our scenario, a RAID card in a server had died. The card was replaced, and my boss initialized the drives on the new card, which completely destroyed the RAID structure. This software was able to re-build and recover most of the data. I have had success with Recuva also for non-RAID situations, just wanted to point out a paid software if you need something more powerful.