No autofocus avilable, i2c remote errors, libcamera-still --autofocus SegFaults

Hi there,

I,m having troubles using the autofocus on the 64 mp camera.

durst@pi4:~ $ libcamera-hello 
Preview window unavailable
[0:00:29.552565204] [1249]  INFO Camera camera_manager.cpp:293 libcamera v0.0.0+3896-6019b245
[0:00:29.561626648] [1251]  WARN CameraSensorProperties camera_sensor_properties.cpp:174 No static properties available for 'arducam_64mp'
[0:00:29.561740259] [1251]  WARN CameraSensorProperties camera_sensor_properties.cpp:176 Please consider updating the camera sensor properties database
Ioctl read i2c error:: Remote I/O error
Ioctl read i2c error:: Remote I/O error
Ioctl read i2c error:: Remote I/O error
Ioctl read i2c error:: Remote I/O error
Ioctl read i2c error:: Remote I/O error
Ioctl read i2c error:: Remote I/O error
Ioctl read i2c error:: Remote I/O error
Ioctl read i2c error:: Remote I/O error
[0:00:29.605697982] [1251]  WARN RPI raspberrypi.cpp:1280 Mismatch between Unicam and CamHelper for embedded data usage!
[0:00:29.607635500] [1251] ERROR DelayedControls delayed_controls.cpp:87 Delay request for control id 0x009a090a but control is not exposed by device /dev/v4l-subdev0
[0:00:29.607978278] [1251]  INFO RPI raspberrypi.cpp:1404 Registered camera /base/soc/i2c0mux/i2c@1/arducam_64mp@1a to Unicam device /dev/media3 and ISP device /dev/media1
[0:00:29.609284167] [1249]  INFO Camera camera.cpp:1035 configuring streams: (0) 4624x3472-YUV420
[0:00:29.610103222] [1251]  INFO RPI raspberrypi.cpp:765 Sensor: /base/soc/i2c0mux/i2c@1/arducam_64mp@1a - Selected sensor format: 4624x3472-SRGGB10_1X10 - Selected unicam format: 4624x3472-pRAA
durst@pi4:~ $ v4l2-ctl -d /dev/v4l-subdev0 --all

User Controls

                       exposure 0x00980911 (int)    : min=9 max=3482 step=1 default=35 value=3482
                horizontal_flip 0x00980914 (bool)   : default=0 value=0 flags=modify-layout
                  vertical_flip 0x00980915 (bool)   : default=0 value=0 flags=modify-layout

Camera Controls

             camera_orientation 0x009a0922 (menu)   : min=0 max=2 default=2 value=2 flags=read-only
				0: Front
				1: Back
				2: External
         camera_sensor_rotation 0x009a0923 (int)    : min=0 max=0 step=1 default=0 value=0 flags=read-only

Image Source Controls

              vertical_blanking 0x009e0901 (int)    : min=58 max=8385008 step=1 default=58 value=58
            horizontal_blanking 0x009e0902 (int)    : min=20871 max=20871 step=1 default=20871 value=20871 flags=read-only
                  analogue_gain 0x009e0903 (int)    : min=0 max=1008 step=1 default=0 value=600
                red_pixel_value 0x009e0904 (int)    : min=0 max=4095 step=1 default=4095 value=4095
          green_red_pixel_value 0x009e0905 (int)    : min=0 max=4095 step=1 default=4095 value=4095
               blue_pixel_value 0x009e0906 (int)    : min=0 max=4095 step=1 default=4095 value=4095
         green_blue_pixel_value 0x009e0907 (int)    : min=0 max=4095 step=1 default=4095 value=4095

Image Processing Controls

                     pixel_rate 0x009f0902 (int64)  : min=900000000 max=900000000 step=1 default=900000000 value=900000000 flags=read-only
                   test_pattern 0x009f0903 (menu)   : min=0 max=4 default=0 value=0
				0: Disabled
				1: Color Bars
				2: Solid Color
				3: Grey Color Bars
				4: PN9
                   digital_gain 0x009f0905 (int)    : min=256 max=4095 step=1 default=256 value=256
[    8.033475] arducam_64mp 10-001a: Device found Arducam 64MP.
[    8.034985] arducam_64mp 10-001a: Consider updating driver arducam_64mp to match on endpoints

Linux pi4 5.15.61-v7l+ #1579 SMP Fri Aug 26 11:13:03 BST 2022 armv7l GNU/Linux
durst@pi4:~ $ libcamera-hello --autofocus
Preview window unavailable
[0:06:15.163844441] [1267]  INFO Camera camera_manager.cpp:293 libcamera v0.0.0+3896-6019b245
[0:06:15.167271295] [1269]  WARN CameraSensorProperties camera_sensor_properties.cpp:174 No static properties available for 'arducam_64mp'
[0:06:15.167315536] [1269]  WARN CameraSensorProperties camera_sensor_properties.cpp:176 Please consider updating the camera sensor properties database
Ioctl read i2c error:: Remote I/O error
Ioctl read i2c error:: Remote I/O error
Ioctl read i2c error:: Remote I/O error
Ioctl read i2c error:: Remote I/O error
Ioctl read i2c error:: Remote I/O error
Ioctl read i2c error:: Remote I/O error
Ioctl read i2c error:: Remote I/O error
Ioctl read i2c error:: Remote I/O error
[0:06:15.182278013] [1269]  WARN RPI raspberrypi.cpp:1280 Mismatch between Unicam and CamHelper for embedded data usage!
[0:06:15.183208262] [1269] ERROR DelayedControls delayed_controls.cpp:87 Delay request for control id 0x009a090a but control is not exposed by device /dev/v4l-subdev0
[0:06:15.183366335] [1269]  INFO RPI raspberrypi.cpp:1404 Registered camera /base/soc/i2c0mux/i2c@1/arducam_64mp@1a to Unicam device /dev/media3 and ISP device /dev/media1
[0:06:15.184014884] [1267]  INFO Camera camera.cpp:1035 configuring streams: (0) 4624x3472-YUV420
[0:06:15.184596785] [1269]  INFO RPI raspberrypi.cpp:765 Sensor: /base/soc/i2c0mux/i2c@1/arducam_64mp@1a - Selected sensor format: 4624x3472-SRGGB10_1X10 - Selected unicam format: 4624x3472-pRAA
Segmentation fault

Have 2 cameras with 2 cables both not working (clicking on boot). Both worked earlier on arm64 image.

Thx in adv.
LGeorg

@georg.klima

Please show me what’s in the config file.

cat /boot/config.txt

Hi Edward, sorry forgot that!

durst@pi4:~ $ cat /boot/config.txt 
# For more options and information see
# http://rpf.io/configtxt
# Some settings may impact device functionality. See link above for details

# uncomment if you get no picture on HDMI for a default "safe" mode
#hdmi_safe=1

# uncomment the following to adjust overscan. Use positive numbers if console
# goes off screen, and negative if there is too much border
#overscan_left=16
#overscan_right=16
#overscan_top=16
#overscan_bottom=16

# uncomment to force a console size. By default it will be display's size minus
# overscan.
#framebuffer_width=1280
#framebuffer_height=720

# uncomment if hdmi display is not detected and composite is being output
#hdmi_force_hotplug=1

# uncomment to force a specific HDMI mode (this will force VGA)
#hdmi_group=1
#hdmi_mode=1

# uncomment to force a HDMI mode rather than DVI. This can make audio work in
# DMT (computer monitor) modes
#hdmi_drive=2

# uncomment to increase signal to HDMI, if you have interference, blanking, or
# no display
#config_hdmi_boost=4

# uncomment for composite PAL
#sdtv_mode=2

#uncomment to overclock the arm. 700 MHz is the default.
#arm_freq=800

# Uncomment some or all of these to enable the optional hardware interfaces
#dtparam=i2c_arm=on
#dtparam=i2s=on
#dtparam=i2c_vc=on
#dtparam=spi=on

# Uncomment this to enable infrared communication.
#dtoverlay=gpio-ir,gpio_pin=17
#dtoverlay=gpio-ir-tx,gpio_pin=18

# Additional overlays and parameters are documented /boot/overlays/README

# Enable audio (loads snd_bcm2835)
#dtparam=audio=on

# Automatically load overlays for detected cameras
camera_auto_detect=1

# Automatically load overlays for detected DSI displays
#display_auto_detect=1

# Enable DRM VC4 V3D driver
#dtoverlay=vc4-kms-v3d
max_framebuffers=2

# Disable compensation for displays with overscan
disable_overscan=1

[cm4]
# Enable host mode on the 2711 built-in XHCI USB controller.
# This line should be removed if the legacy DWC2 controller is required
# (e.g. for USB device mode) or if USB support is not required.
otg_mode=1

[all]

[pi4]
# Run as fast as firmware / board allows
arm_boost=1
dtoverlay=vc4-kms-v3d,cma-512
#dtoverlay=arducam-64mp,media-controller=0
dtoverlay=arducam-64mp

durst@pi4:~ $ i2cdetect -y 10
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:                         -- -- -- -- -- -- -- -- 
10: -- -- -- -- -- -- -- -- -- -- UU -- -- -- -- -- 
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
70: -- -- -- -- -- -- -- --  
durst@pi4:~ $ lsb_release -a
No LSB modules are available.
Distributor ID:	Raspbian
Description:	Raspbian GNU/Linux 11 (bullseye)
Release:	11
Codename:	bullseye
durst@pi4:~ $ uname -a
Linux pi4 5.15.61-v7l+ #1579 SMP Fri Aug 26 11:13:03 BST 2022 armv7l GNU/Linux
durst@pi4:~ $ sudo apt list --installed |grep libcamera

WARNING: apt does not have a stable CLI interface. Use with caution in scripts.

libcamera-apps/now 0.0.9 armhf [installed,local]
libcamera-dev/now 0.0.9 armhf [installed,local]

@georg.klima

If you want to use autofocus, you need to install the motor driver. We are working hard to merge this part into the official one.

wget -O install_pivariety_pkgs.sh https://github.com/ArduCAM/Arducam-Pivariety-V4L2-Driver/releases/download/install_script/install_pivariety_pkgs.sh
chmod +x install_pivariety_pkgs.sh
./install_pivariety_pkgs.sh -p 64mp_pi_hawk_eye_kernel_driver

change dtoverlay=arducam-64mp to dtoverlay=arducam_64mp

Reboot and try again.

Sorry 4 the missunderstanding!

Camera is in fact working except autofocus and the driver is in the overlays of a plain std. raspi SD image.

Read this: Arducam-Pivariety-V4L2-Driver/README.md at master · ArduCAM/Arducam-Pivariety-V4L2-Driver · GitHub and thought it’s true for the 64mp too.

I’m really sorry that I wasted you time!

LGeorg