I've had similar issues on Google Glass, which has no auto-focus. Commercial libraries like Scandit and even the paid app by the zxing author have better support for blurry images and are able to handle, for example pixels which are partially white/black instead of trying to bin everything into on or off, but the open source version lacks this capability. So sometimes it is possible to do without good focus if you have a better algorithm.