Hi Team,
I’m working with an Arducam IMX519 autofocus camera on NVIDIA Jetson Orin Nano, running:
- JetPack: 6.2
- L4T: 36.4.3
- Jetson System Firmware: 36.4.3
Camera sensor is detected and streaming correctly, but autofocus / lens movement does not work.
What works
- Camera streams correctly via Argus:
gst-launch-1.0 nvarguscamerasrc sensor-id=0 ! fakesink
- Sensor modes are detected correctly (4656×3496, 3840×2160, 1920×1080, etc.)
- No CSI, ISP, or Argus stability issues
What does NOT work
- Autofocus / manual focus via Arducam examples:
sudo python FocuserExample.py -i 9
sudo python AutofocusTest.py -i 9
Result:
- Script runs
- Camera opens
- Lens does not move
- Program exits without error
I2C investigation
Available buses:
ls /dev/i2c-*
/dev/i2c-0 1 2 4 5 7 9 10 11
Scanning CAM-related bus:
sudo i2cdetect -r -y 10
Result:
UU
This suggests the VCM I2C address is already claimed by the kernel driver, so user-space I2C access (used by Arducam focus scripts) is blocked.
Observation
It appears that on Jetson Orin Nano + JetPack 6.x, the focus motor (VCM) is bound in the device tree / kernel, unlike older Nano or Xavier NX platforms where Arducam scripts directly controlled I2C.
As a result:
- Sensor works
- Streaming works
- Focus control via Arducam Python scripts does not
Questions
- Is IMX519 autofocus officially supported on Jetson Orin Nano (JP 6.x)?
- Is the VCM expected to be controlled via V4L2 controls instead of user-space I2C on Orin?
- If so, which V4L2 focus controls should be exposed (
focus_absolute,focus_auto)? - Alternatively, is there a recommended DT or driver configuration to enable Arducam’s focus examples on Orin Nano?
Goal
Enable reliable autofocus or manual focus control on IMX519 while keeping full Argus/GStreamer compatibility on Jetson Orin Nano.
Any guidance from Arducam or NVIDIA on the correct control path for focus on Orin would be greatly appreciated.
Thanks in advance.