You just forgot a few details about how to use ddrescue. The procedure is as follows:
1 - To recover quickly: the -n parameter does not stress when encountering a bad sector
I prefer to add time in log file names: easier if we generate more in one day
ddrescue -B -v -n /dev/XXX /dev/YYY /ZZZ/ddrescue_logfile_AAAA-MM-JJ-HHMM.log
2 - We did another pass to try to recover the non-read the first pass. Needless course in the absence of bad sectors:
Be careful to indicate the same .log file, since it is from there that will identify areas to recover. 16 sectors are treated at once (c-16) and retries is 2 (-r 2).
ddrescue -B -v -c 16 -r 2 /dev/XXX /dev/YYY /ZZZ/ddrescue_logfile_AAAA-MM-JJ-HHMM.log
3 - If needed redo a third passage:
This time, it does only one sector at a time (-c 1) and the emphasis is heavily (5 retries: r-5).
ddrescue -B -v -c 1 -r 5 /dev/XXX /dev/YYY /ZZZ/ddrescue_logfile_AAAA-MM-JJ-HHMM.log