iI recently experienced the same problem of an ENOSPEC error. In my case all things was running perfectly until iI put my camera into a PiCam housing. I found this housing (even if desinged for the PiCamera) pushes the chip just as far that the connector between cam and board was loosened. Pushing it back in place solved my problem. Its maybe not that easy to see if the connector is properly in place which cause missinterpretation.
I guess this will not be the usual case but as the first post suggested this should enhance the cataloge of possible causes to this error.
cheers