The library that is available for V1X does not work on V2X. In V2X parts of the HB01B0 driver are included in MBED-OS target. Many changes have happened to the different structures, while they have the same name, but they do not match and even conflict.
D10 is by default NOT defined for EDGE, while this is necessary as the sketch tries to enable the 1.8V power to the camera.
Finally, I was able to power on and get a working connection with the camera. BUT as the processor is interrupted for "something" on a regular basis, the current HB10B-code in V2.0.6. is NOT able to capture all the camera data. Thus the picture is scrambled.
Solution
Honestly, I do NOT understand why parts of the HB01B0 driver have been moved in the MBED-OS target. It makes life unnecessarily complex with all the structure changes, while the coding logic is exactly the same. Also no working example code was provided with V2x as the current code can not handle it without changes. Even if there is one example, that is another library (and thus cost and confusion) to maintain.
My advice is REMOVE THE HB01B0 DRIVER PORTIONS FROM MBED-OS TARGET. KEEP IT SIMPLE
As you remove this from the MBED-OS target, minimum changes are needed to the original V1X HB01B0 library to make it work on BOTH V1x and V2X boards library. I have documented the results, the changes needed and an updated library on https://github.com/paulvha/apollo3/tree/master/hb01b0
Based on a forum post (https://forum.sparkfun.com/viewtopic.php?f=153&t=55548), I have put a lot of time in making the HB01B0 camera to work on version 2.0.6. There are a number of issues to be addressed:
The library that is available for V1X does not work on V2X. In V2X parts of the HB01B0 driver are included in MBED-OS target. Many changes have happened to the different structures, while they have the same name, but they do not match and even conflict.
D10 is by default NOT defined for EDGE, while this is necessary as the sketch tries to enable the 1.8V power to the camera.
Finally, I was able to power on and get a working connection with the camera. BUT as the processor is interrupted for "something" on a regular basis, the current HB10B-code in V2.0.6. is NOT able to capture all the camera data. Thus the picture is scrambled.
Solution Honestly, I do NOT understand why parts of the HB01B0 driver have been moved in the MBED-OS target. It makes life unnecessarily complex with all the structure changes, while the coding logic is exactly the same. Also no working example code was provided with V2x as the current code can not handle it without changes. Even if there is one example, that is another library (and thus cost and confusion) to maintain. My advice is REMOVE THE HB01B0 DRIVER PORTIONS FROM MBED-OS TARGET. KEEP IT SIMPLE
As you remove this from the MBED-OS target, minimum changes are needed to the original V1X HB01B0 library to make it work on BOTH V1x and V2X boards library. I have documented the results, the changes needed and an updated library on https://github.com/paulvha/apollo3/tree/master/hb01b0
regards Paul