I even recovered a card that had been off to professional recovery and deemed unrecoverable. I think half the memory chips in the card were fried so I used DD rescue to recover what data I could and then photorec to sift the wreckage. The owner was delighted to receive some of the photos.
If you ever have to do this, use DD rescue to image the source media as a first step. Sometimes you don't get a second read!
As another commenter noted, create an exact dupe/image of the volume as the very first thing you do.
Also: if it doesn't successfully retrieve files on the first go, try another configuration. I think it took me 3 attempts to get it right.
A fun perk, also noted in the article: you may get back some surprises along with the files you expect - older files revealed in the sediment!
This reminds me to try it again.