I just spent days trying to solve this cups error message.

Every time I tried to print with my HP OfficeJet V40xi I would get "open device failed; will retry in 30 seconds." I'd get the same error trying to print as root. Lord knows the number of times I Googled for and answer and the "fixes" I've tried. Nothing worked. Luckily, I discovered it was a simple file permissions problem. Doing:
chmod 700 /usr/lib/cups/backend/hp
...as root fixed it for me. I wanted to share this fix in case anyone else runs into the same problem.