So ridiculous these sensors and data lanes on everything embedded can't get us 240FPS at even VGA resolution.
So ridiculous these sensors and data lanes on everything embedded can't get us 240FPS at even VGA resolution.
This article been on the HN frontpage at least twice: "A Guide to Recording 660FPS Video On A $6 Raspberry Pi Camera" - https://blog.robertelder.org/recording-660-fps-on-raspberry-...
- Aug 6, 2019 | 103 comments | https://news.ycombinator.com/item?id=20627574
- Dec 27, 2021 | 64 comments | https://news.ycombinator.com/item?id=29703293
Obviously, the resolution is really low (640x64) but for the price, the quality seems quite nice.
Edit: Raspberry Pi compute module 4 has all 4 CSI-2 data lanes exposed. So you can get full bandwidth of this interface and could use high resolution sensors.
The new sensor is IMX708 and probably not supported yet.
Looking at https://github.com/raspberrypi/raspiraw/blob/master/imx477_m... it's not immediately obvious where to get the all the values from.
Fiddling with "struct mode_def imx477_modes[]" when you already have the rest of the header file would be the obvious thing to do and would probably work out fine but that is mostly trial-and-error and not a proper method.
In order to enable higher framerates you need to set up additional "modes" in some configuration file. I assume that by default only "relatively reliable modes" are configured. That's where the limitation to 120 FPS comes from. Calculating other modes requires some special tool that is specific to the camera chip. Also you need some luck that those modes actually work for you.
The V1 camera module (OV5647) only supported two lanes, so it was a fair enough decision then, but they had a chance to change it when they changed connector on the PiZero.
The connector even had the 4 extra pins specifically to support 4 lane CSI, but it was as if it was forgotten about. The V2 camera came out not long after so the combination would have made for a massive upgrade.
I think they ended up back peddling from the new connector due to the horrific combination of a too thin custom flat flex cable with a connector that could barely meet its 10 mating cycle rating.
It didn’t have to be that way, a standard 0.5mm FFC with decent swing down latch connector is 10x more robust.
The limiting factor is how long it takes to shift a row of pixels out of the CCD and into the ADC - wide-but-short videos can be recorded at 200+ fps pretty easily.