This month came the announcement of some new camera modules from Raspberry Pi. All eyes were on version 3 of their standard camera module, but they also sneaked out a new version of their high quality camera with an M12 lens mount. The version 3 module is definitely worth a look, so I jumped on a train to Cambridge for the Raspberry Pi Store, and bought myself one for review.
There’s nothing new about a Pi camera module as they’ve been available for years in both official and third party forms, so to be noteworthy the new one has to offer something a bit special. It uses a 12 megapixel sensor, and is available both in autofocus and wide angle versions in both standard and NoIR variants. Wide angle and autofocus modules may be new in the official cameras, but these are both things which have been on the third-party market for years.
So if an autofocus camera module for your Pi isn’t that new, what can we bring to a review that isn’t simply exclaiming over the small things? Perhaps it’s better instead to view the new camera in the context of the state of the Pi camera ecosystem, and what better way to do that than to turn a Pi and some modules into a usable camera!
This Isn’t Just Any Camera, It’s A Hackaday Camera!
Along with the V3 non-wide-angle camera module then, I bought a Pimoroni Display HAT Mini, and a Pi Zero W. The camera module itself is the same small PCB as its predecessors, but with a slightly bigger silver protrusion around the lens for the autofocus mechanism.
My reasoning was that these parts could form the nucleus of a camera system, and to complete the hardware side I put together a camera case in OpenSCAD. It’s not that special, just a parameterised project box with cut-outs for the module and the Pimoroni display, and an impressive-looking but zero-function lens hood tube for the front.
A bit of printing and some small screws later, I had a camera, or at least something that looks a lot like one. A digital camera is nothing without software, and for the past year or two on the command line this has meant libcamera for the Raspberry Pi. You can still use the earlier software stack if you desire, but it’s no longer supported. Likewise on the programming side the Picamera Python library is being deprecated, and replaced by the picamera2 library. I was able to hack together an awful Python camera script that (slowly) updates the Pimoroni screen as a viewfinder, and uses one of its buttons as a shutter. I am no software developer, so I’m certain there will be Hackaday readers who could do a far better job.
It’s all very well to talk about the peripherals, but what matters with a camera is the pictures it takes. The sensor is a Sony IMX708, which we’re told has all of their new sensor technologies, but proves difficult to find on the Sony Semicon website. I can find reference to it being used as a secondary rear camera on some pretty recent mobile phones, if that helps give you and idea of its capabilities. The killer feature on this module is the autofocus lens, which is under full control via software and can be either set for a particular focus or put in automatic mode. My script used the latter, and I set to work taking a few pictures around my hackerspace.
Autofocus Is Where It’s At
The first thing to note is that Sony’s autofocus algorithm is very good in the automatic mode, as long as there’s something pretty clear for it to see as the subject. A close-up of some screwdriver bits or a Pi Zero came out in beautiful detail, as did a landscape scene, but looking down a table along a tape measure had it confused between the foreground, middle ground, and distance on alternate shots. The tape measure was pushing the envelope to prove a point and happily for more accomplished programmers than me there’s a windowed autofocus mode to allow more targeted focusing.
Everyone uses flowers as an example shot.
Native resolution of a Pi Zero, from about 30cm.
The camera found it difficult to choose where to focus. Outdoors in January, and as you’d expect it’s a bit grey. This camera is good at close-up shots.
My impression of this camera module is that it’s much more of a step forward from the V2 module than the V2 was from their first model. The extra resolution is nice, but the autofocus makes it much more useful. If the HQ camera module wishes it were a mirrorless compact camera then this module wishes it were a decent quality mid-range mobile phone camera, and in this it doesn’t do too badly.
The question is then for $25 or so is it worth the outlay? I’d say yes, if you have an application for a decent quality small camera module. There are still cheaper cameras, and even other modules with autofocus to be found on the usual electronics sites, but this one isn’t too much more expensive for the benefit of much wider support. I don’t regret buying mine, and I’ll be putting some work in to making a much more efficient script for it.
Before we leave this piece, it’s worth mentioning the Raspberry Pi shop in central Cambridge, where I bought the module. It’s their public showcase to the world, but it’s also somewhere you can buy a Pi even in times of shortage if you’re prepared to make the journey. (Visit the Centre for Computing History while you’re there!) The staff are knowledgeable and helpful, and there are a few Pi prototypes to be seen at the counter. I’m fortunate in being able to get to Cambridge without too much grief, but even for those of you who can’t it’s somewhere to put on the list to visit if you get the chance.
Image Source: Zoltan Kiraly / Shutterstock