I was having trouble with my Canon LiDE 20 scanner... again. This time, the scanner refused working. It was detected fine, but then I got either errors or black pages when I was trying to scan.
The reason is that in modern Linux kernels, USB power saving has been enabled. Some older scanners just won’t work correctly in this mode. However, it is easy to turn it off on Fedora:
echo -1 >/sys/module/usbcore/parameters/autosuspend
USB auto suspend is then turned off for all USB devices that are connected from now on (until next reboot, of course), so make sure to plug in your scanner after invoking this line.