Video drivers for Zephyr not working for NUCLEO-U575ZI-Q

Hello, I am attempting to use the video drivers from the github PR here: drivers: video: Add support for arducam mega by ArduCAM · Pull Request #66994 · zephyrproject-rtos/zephyr · GitHub. Apologies if this should be posted there, but I figured this may be more specific to the camera and dev kit setup than the PR.

I have tested the video drivers with a RPI Pico and confirmed they are working. I am now trying to port the example to support the NUCLEO-U575ZI-Q development board.

This issue I am seeing happens in the arducam_mega_init() function where these two functions are called: arducam_mega_soft_reset(dev), arducam_mega_check_connection(dev).

Reset register write:

A couple of notes:

  1. I can only configure SCLK to 2.5MHz or 5MHz. I am currently unable to configure to exactly 4MHz.
  2. I have confirmed that the Pico example works fine at 5MHz SCLK.
  3. I have a suspicion that the toggle of MOSI prior to CS going low on the reset register write is causing problems. However, I have not been able to change the behavior of the lower level STM32 to change this yet.

Does anyone have any ideas on what might be wrong here or have suggestions for a workaround?

Thanks!

1 Like

I could only attach one image to the original post because I am a new user, but here are traces of both the pico and nucelo.

Pico reset reg write:

Pic reg reads (1):

Pic reg reads (2):

Nucleo reset reg write:

Nucelo reg read (1):

Nucleo reg read (2):
image

This register read repeats until the max retry limit is met and the driver init fails.