I few of us have been playing around with Testing out and hopefully fixing some of the camera support on Zephyr for a few of the Arduino boards,
like the GIGA and Portenta H7.
After running into some issues, thought I would retry on MBED.
Some of the Zephyr issues:
ArduinoCore-zephyr:
Portenta H7: Using SPI with camera on Mid-carrier - Camera FAILS TO START · Issue #151 · arduino/ArduinoCore-zephyr
GIGA: GC2145 fails when attached to the Giga Display Shiedl · Issue #136 · arduino/ArduinoCore-zephyr
So yesterday: I tried building some of the example sketches that are part of the Arducam_zephyr library to run on the Portenta H7 plugged into a mid carrier board.
And they all fail to start. Looking through the library code, I found that the setup is not configured to use the pinout of the DVP camera connector on the MID carrier board.
My changes so far include:
diff --git a/src/arducam_dvp.cpp b/src/arducam_dvp.cpp
index 69a989d..83473d0 100644
--- a/src/arducam_dvp.cpp
+++ b/src/arducam_dvp.cpp
@@ -34,15 +34,15 @@
#if defined (ARDUINO_PORTENTA_H7_M7) || defined (ARDUINO_PORTENTA_H7_M4)
#define DCMI_TIM (TIM1)
-#define DCMI_TIM_PIN (GPIO_PIN_1)
-#define DCMI_TIM_PORT (GPIOK)
+#define DCMI_TIM_PIN (GPIO_PIN_8)
+#define DCMI_TIM_PORT (GPIOA)
#define DCMI_TIM_AF (GPIO_AF1_TIM1)
#define DCMI_TIM_CHANNEL (TIM_CHANNEL_1)
#define DCMI_TIM_CLK_ENABLE() __TIM1_CLK_ENABLE()
#define DCMI_TIM_CLK_DISABLE() __TIM1_CLK_DISABLE()
#define DCMI_TIM_PCLK_FREQ() HAL_RCC_GetPCLK2Freq()
-#define DCMI_TIM_FREQUENCY (6000000)
-#define DCMI_RESET_PIN (PC_13)
+#define DCMI_TIM_FREQUENCY (10000000)
+#define DCMI_RESET_PIN (PE_3) //(PC_13)
arduino::MbedI2C CameraWire(I2C_SDA, I2C_SCL);
#elif defined(ARDUINO_NICLA_VISION)
But most of the cameras still have issues starting up as there is nothing
in the code base to handle the power down pin. I believe that
there probably needs to be defines like the DCMI_RESET_PIN as part of
this.
I also have not checked to see the pinouts of the camera if one uses
the Portenta Video shield.
So potentially the setup should have some #defines or the like, where
maybe could act like zephyr where you can define which shield you are
using...
New Arducam issue:
Library does not work with Portenta H7 plugged into portenta mid carrier · Issue #8 · ArduCAM/Arducam_dvp
But my main question is
Who (if anyone) is supporting this?
As This library has only 2 commits (2 years ago).
It hasd 7 active (0 closed) issues and 1 open and 0 closed PRs.
None of which have had any comments on, except by the Issue/Pr Authors.
Thanks
Kurt