Stuart Watt Posted Saturday at 06:19 PM Posted Saturday at 06:19 PM Armbianmonitor: https://paste.armbian.com/buvetusife I'm struggling to get the Pi Camera 3/IMX708 detected by the Zero 2W. It's an IMX708 sensor, and that is correctly showing in dmesg, but the V4L2 devices (/dev/video0, /dev/video1) for the camera are not set up. All the normal encoder devices are fine. I'm using a custom build but it's essentially minimal (and no desktop) current with trixie and no extensions, following the standard command for building an image. The dmesg log reads as follows: [ 10.719672] imx708 10-001a: camera module ID 0x0302 [ 10.719876] imx708 10-001a: ctrl(id:0x9f0902,val:0x232aaf80) is not handled [ 10.722275] imx708 10-001a: ctrl(id:0x9e0902,val:0x2b20) is not handled But I don't think this is problematic, as stock Raspbian shows precisely the same log messages, and it does correctly set up the devices. I've added the overlay and turned off (or tried to) the camera auto detection, but the imx708 messages were being logged even before I added the overlay, so I am not sure it was needed. In any event, nothing changed. Any thoughts on ways to get this up and running? 0 Quote
eselarm Posted Sunday at 08:24 AM Posted Sunday at 08:24 AM (edited) What is your plan with that camera? My latest try with raspbian (armv6) trixie based failed w.r.t. V4L2. So that is with start.elf, not start_x.elf. The latter works fine on bookworm based raspbian for camara v1. Camera v3 never worked with legacy firmware mode (start_x=1), so needs libcamera. For easy handling, the latest RPL variant of libcamera named rpicam should work, but then you'll be essentially back to RaspberryPiOS. If you have standard Debian Trixie based, all that modified libcamera is not there and more important, you will have other firmware files (bootcode.bin start.elf fixup.dat). Armbian takes the version from Ubuntu AFAIK, Debian is yet another version as is the latest from RaspberryPiOS (64-bit patched Debian or 32-bit patched and re-compiled Raspbian). The package name is raspi-frmware, check which versions there are with sudo apt list -a raspi-frmware and in addition, the 3 files themselves, I did timestamp or suffix them with sha256sum in the past on order to keep track of the various ones delivered for various OSses and images. I assume the Armbian kernel is compiled from same RPi kernel tree as RaspberryPiOS, so overlays for the v3 camera should be there and functionally the same. I currently have 1 camera v1 base RPI3B+ running, still bookworm, but I might boot it with Debian Trixie/Sid and see what mainline libcamera does. Probably then Armbian bcm2711 edge kernel, at least something that provides overlays as Debian kernels have almost none, at least not for camera sensors. Edited Sunday at 08:31 AM by eselarm 0 Quote
Stuart Watt Posted 1 hour ago Author Posted 1 hour ago @eselarm Good question, not yet sure what to do. First off, new stock Raspbian worked (for me) out of the box, at least for both V4L2 and libcamera. I'd have yelled at them if they didn't, as that's Raspberry hardware and software up and down the stack, so they have no excuses. I mostly want to use libcamera, but for me, libcamera and V4L2 were in total agreement on both Raspbian and Armbian. On Raspbian, both detected the IMX708, and on Armbian, neither did -- or, rather, /dev/video0 never got set up, despite the module loading fine and dmesg logging it in Armbian. To add, also, with the zram swap system in place, I can't actually compile libcamera (or the apps) on the Armbian Zero 2W, due to lack of memory (!). I ran out the will to work around that at the time. So I built the Debian libcamera packages (all of them) on a Pi 5 and copied them over. Only the trixie-backports modules actually ran through okay, but they did. That seemed to work fine -- and as I said, neither V4L2 nor libcamera set up an accessible camera device -- and they agree -- so I think the issue is kernel-side, not in userspace. I suspect it's in the device tree somewhere. My guess is if we get V4L2 happy, then libcamera will be. The main advantage of V4L2 is that the device list is a clear tell for camera detection on boot, one that doesn't need a much installation work. Also, I didn't yet get to the rpicam apps framework. I will, because I actually use it for the cow I want to deploy. But that's an extra layer beyond libcamera itself. the standard libcamera-tools package contains the cam binary which is enough to detect devices. If I can get V4L2 happy, or if cam can capture an image, then I know the kernel side is fine, and it's all my problem. I'll be happy to take it from that point. Your point about raspi-firmware is very helpful. That would fit some of what I've seen here. I'll dig in and check on that. I would not assume it's using a Raspberry vendor kernel. I didn't try that. And Broadcom shenanigans apart, I hope I don't need to. What's weird is the IMX708 kernel module is definitely loaded and active and detecting the hardware on the Armbian Debian trixie. Most of the Broadcom stuff is there -- all the hardware encoders show up. Just not the camera itself. Many thanks -- I'll dig in today and see if I can progress. 0 Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.