Failing to use IMX462 on Compute Module 4


I’m trying to use the Low Light 2MP IMX462 STARVIS Camera but I’m having issues.

I went through the quick start guide and have done the following:

wget -O
chmod +x
./ -p libcamera_dev
./ -p libcamera_apps

and added dtoverlay=arducam-pivariety to /boot/firmware/config.txt.

I have:

$ dmesg | grep -E "imx477|imx219|arducam"
[    8.694301] arducam-pivariety 10-000c: firmware version: 0x10002

But when i use the camera, I get:

$ libcamera-still -t 5000 -n -o test.jpg
[0:12:20.090178436] [1913]  INFO Camera camera_manager.cpp:284 libcamera v0.1.0+246-9fb4698e-dirty (2024-02-27T06:28:07+00:00)
[0:12:20.122404793] [1916]  WARN CameraSensorProperties camera_sensor_properties.cpp:274 No static properties available for 'arducam-pivariety'
[0:12:20.122461941] [1916]  WARN CameraSensorProperties camera_sensor_properties.cpp:276 Please consider updating the camera sensor properties database
[0:12:20.132822722] [1916] ERROR IPAProxy ipa_proxy.cpp:149 Configuration file 'arducam-pivariety.json' not found for IPA module 'rpi/vc4'
[0:12:20.164066693] [1916] ERROR RPI pipeline_base.cpp:825 Failed to load a suitable IPA library
[0:12:20.164127082] [1916] ERROR RPI vc4.cpp:217 Failed to register camera arducam-pivariety 10-000c: -22
ERROR: *** no cameras available ***

What could it be? Thanks!

I changed the /boot/firmware/config.txt file with dtoverlay=imx462 which seems to have gotten me a bit farther, but I’m still running into issues.

I now have this:

$ libcamera-hello 
[0:01:46.243577090] [1787]  INFO Camera camera_manager.cpp:284 libcamera v0.1.0+246-9fb4698e-dirty (2024-02-27T06:28:07+00:00)
[0:01:46.309512610] [1790]  INFO RPI vc4.cpp:455 Registered camera /base/soc/i2c0mux/i2c@1/imx290@1a to Unicam device /dev/media0 and ISP device /dev/media1
[0:01:46.309637684] [1790]  INFO RPI pipeline_base.cpp:1169 Using configuration file '/usr/share/libcamera/pipeline/rpi/vc4/rpi_apps.yaml'
Preview window unavailable
Mode selection for 960:540:12:P
    SRGGB10_CSI2P,1280x720/0 - Score: 1125
    SRGGB10_CSI2P,1920x1080/0 - Score: 1375
    SRGGB12_CSI2P,1280x720/0 - Score: 125
    SRGGB12_CSI2P,1920x1080/0 - Score: 375
Stream configuration adjusted
[0:01:46.313408774] [1787]  INFO Camera camera.cpp:1183 configuring streams: (0) 960x540-YUV420 (1) 1280x720-SRGGB12_CSI2P
[0:01:46.316690734] [1790]  INFO RPI vc4.cpp:619 Sensor: /base/soc/i2c0mux/i2c@1/imx290@1a - Selected sensor format: 1280x720-SRGGB12_1X12 - Selected unicam format: 1280x720-pRCC
[0:01:46.369713394] [1790] ERROR V4L2 v4l2_videodevice.cpp:1906 /dev/video0[14:cap]: Failed to start streaming: Input/output error
ERROR: *** failed to start camera ***

Has anyone ever had this issue?

This is the correct way to enable the camera driver.

I think you do not install the libcamera from the Arducam branch. Please follow the commands below to install it:

./ -p libcamera_dev
./ -p libcamera_apps

I went through a re-installation of everything and it looks like it’s working fine now!

I’m using a Waveshare base board B and when following the official guide I disabled camera_auto_detect, which I guess seems to have made the cameras unavailable. Now, I kept camera_auto_detect=1 and it’s working fine. Thanks.

1 Like