Separately, I can’t get anything above 1080p to work. I’ve bumped GPU memory and CMA, but every resolution higher than 1920x1080 gives me buffer errors. Has anyone got this camera running at a higher resolution?
Welcome. That kernel version 6.1.19-v8+ is a hint - it usually means you ran rpi-update at some point. The driver package you’re trying to install (64mp_pi_hawk_eye_kernel_driver) is built against the stock bullseye-arm64-v5 kernel, so the installer can’t find a matching package for your kernel.
To help with the resolution issue, can you post your /boot/config.txt, /boot/cmdline.txt, and the picamera2 config you’re using for the working 1080p setup?
The package error is because of that unsupported kernel. 6.1.19-v8+ comes from rpi-update. The Arducam 64MP kernel driver package is built for bullseye-arm64-v5, so the installer literally can’t find a matching package for your kernel.
Trying to run the full 64MP resolution tends to produce that size error. 16MP (4624x3472) is the resolution that works well.
I tried the 4624x3472 resolution but video recording still fails. When it tries to start the H264 encoder I get ProcessLookupError: [Errno 3] No such process. Full log:
root@rpicamera-0004:/home/pi# python video-test.py
[23:21:57.504375418] [5812] INFO Camera camera_manager.cpp:299 libcamera v0.0.0+4225-74d023d8
[23:21:57.526716757] [5817] WARN CameraSensorProperties camera_sensor_properties.cpp:243 No static properties available for ‘arducam_64mp’
[23:21:57.526770109] [5817] WARN CameraSensorProperties camera_sensor_properties.cpp:245 Please consider updating the camera sensor properties database
[23:21:57.554703644] [5817] WARN RPI raspberrypi.cpp:1357 Mismatch between Unicam and CamHelper for embedded data usage!
[23:21:57.555601449] [5817] INFO RPI raspberrypi.cpp:1476 Registered camera /base/soc/i2c0mux/i2c@1/arducam_64mp@1a to Unicam device /dev/media2 and ISP device /dev/media1
[23:21:57.561419365] [5812] INFO Camera camera.cpp:1028 configuring streams: (0) 4624x3472-XBGR8888
[23:21:57.561748490] [5817] INFO RPI raspberrypi.cpp:851 Sensor: /base/soc/i2c0mux/i2c@1/arducam_64mp@1a - Selected sensor format: 4624x3472-SRGGB10_1X10 - Selected unicam format: 4624x3472-pRAA
Traceback (most recent call last):
File “/home/pi/video-test.py”, line 25, in
picam2.start_recording(encoder, output, Quality.VERY_HIGH)
File “/usr/lib/python3/dist-packages/picamera2/picamera2.py”, line 1507, in start_recording
self.start_encoder(encoder, output, pts=pts, quality=quality)
File “/usr/lib/python3/dist-packages/picamera2/picamera2.py”, line 1466, in start_encoder
self.encoder.start()
File “/usr/lib/python3/dist-packages/picamera2/encoders/encoder.py”, line 212, in start
self._start()
File “/usr/lib/python3/dist-packages/picamera2/encoders/h264_encoder.py”, line 69, in _start
super()._start()
File “/usr/lib/python3/dist-packages/picamera2/encoders/v4l2_encoder.py”, line 136, in _start
fcntl.ioctl(self.vd, VIDIOC_STREAMON, typev)
ProcessLookupError: [Errno 3] No such process
video-test.py line 25 is:
picam2.start_recording(encoder, output, Quality.VERY_HIGH)
Thanks for the full log. Can you confirm what you’re actually running right now? In particular:
uname -r
cat /proc/cpuinfo | grep Revision
libcamera version
whether dtoverlay=arducam-64mp is present in /boot/config.txt
The sensor does register in the log, so the camera is detected. But the encoder dying at VIDIOC_STREAMON points again at the kernel/driver mismatch. I want to check whether you’re still on the rpi-update kernel.
I’ve already tried bumping GPU memory and CMA and added alloc_in_cma_threshold=16. 1080p is still the only resolution that works - anything higher gives buffer errors.
You’re still on kernel 6.1.19-v8+. That’s the rpi-update kernel, and that’s the core issue here. Adding dtoverlay=arducam-64mp and changing the resolution won’t help if the kernel underneath doesn’t match what the Arducam driver package expects.
To wrap it up:
Flash the official Raspberry Pi OS image and stay on its stock kernel (bullseye-arm64-v5). Don’t run rpi-update.
Make sure dtoverlay=arducam-64mp is in /boot/config.txt under [all], then reboot.
Use 4624x3472 (16MP). The full 64MP resolution can produce the size/buffer error, but 16MP works well.
Once you’re genuinely on the stock bullseye-arm64-v5 kernel, the installer should find the 64mp_pi_hawk_eye_kernel_driver package, and the encoder should start cleanly instead of dying at VIDIOC_STREAMON.