Use M12 Lenses on Raspberry Pi Camera V2 with Ease for Wide Angle, Telephoto and Macro Shooting, or Even Turn It into a Spy Camera
Before we start
Arducam offers lens solution to all Pi camera modules. This blog is about using alternative lenses on the RPi Cam V2. If you are interested in how to use the M12 lens on the latest 12MP IMX477 Pi camera, Learn how to use M12 lenses on the RPi HQ camera here.
Give the Official Raspberry Camera an Upgrade
Consumer Electronics is more or less about pushing specs to the limit, so consumers can always buy newer and more powerful gadgets when they want it. In a fully competitive market like smartphones, we get faster CPUs, nicer screens, and better cameras so frequently that we always regret our recent purchases. But that is not totally true for the Raspberry Pi ecosystem. With the educational purpose in mind, it barely meets the basic requirements with slow and trivial annual upgrades, especially in its camera lineup. Since the first release of 5MP V1 cameras in 2013, we’ve only got one major upgrades – Raspberry Pi Camera V2 – for the past 6 years. Even with the Raspberry Pi NoIR cameras counted, the whole Pi camera family consists of only four members.
The latest raspi camera, the RPI camera V2, is an 8-megapixel module connected to the MIPI CSI-2 port on the Raspberry Pi Board. It’s theoretically the best Raspberry Pi camera as well as the ceiling of its kind. Because unlike the V1 5MP OV5647 cameras, it’s encrypted on the camera board to prevent third-party manufacturers from building their variations.
Although the V2 camera aims to be the best and the only 8MP Pi camera, it’s still not a perfect option. Cameras are not all about more active pixels, and the optical performance of the lenses is also a vital part of producing satisfying frames. Unfortunately, it’s nearly impossible to modify the lens of the Raspberry Pi Camera V2. You might have a lens adjustment tool to change the focus a little bit, but what if you want it to see in a wider angle in applications like drones?
So here is the question: the 8MP Raspberry Pi camera is encrypted on the camera board, and its lens is hard to replace. What can we do to upgrade this camera?
Drop-in replacement modules for Pi camera V2
To modify and build upgrades to the V2 camera, we have to answer the two questions above first. If the camera board is encrypted, we need to have the original board; If the lens is hard to replace, we will find something replaceable in the camera module.
The Raspberry Pi camera V2 does have something replaceable, and that’s related to how the whole camera module is designed and assembled. In order to keep the cost down and manufacture easy, Pi camera modules adopt compact smartphone-camera-like modules. However, unlike a smartphone where the camera is directly connected to the motherboard for image processing, the Raspberry Pi uses an extra camera board to handle and pass the camera data to the MIPI CSI-2 slot on the Pi motherboard.
The Pi’s smartphone-camera-like IMX219 module is a combination of lens, sensor, and connector, and is connected to the Pi camera board via a BTB(board-to-board) connector. You can take it off from the camera board once the BTB connector is detached. The trick is, if you cannot replace the lens alone, you replace the lens-sensor-connector combination as a whole, which is to attach a similar smartphone-camera-like module to the Pi camera board, just with a different lens.
Introducing Arducam drop-in replacement modules for the Raspberry Pi camera V2. They are a series of customized “M12 lens+IMX219” combinations with the same connectors as those of the smartphone-camera-like module on V2 Pi cameras. As they come with an M12 lens holder, it’s easily customizable with various kinds of M12 lenses, ranging from telephoto to macro lens, from zero distortion to fisheye lens, and from manual focus to autofocus lens.
Currently, Arducam has 3 IMX219 drop-in replacement modules ready for ordering, and they are low distortion lens, wide-angle lens, and software autofocus lens. All of these modules work with the Raspberry Pi camera V2 natively without any additional software configuration. Just detach the BTB connector, take the original module off, and re-attach Arducam modules to the BTB connector. You are now ready to enjoy the autofocus feature on V2 cameras or see from a wider angle of view as you want. We also accept customization of the M12 lens mounted.
Here is our video that shows how to assemble and use these modules:
Make the V2 module a spy camera and use it on any Raspberry Pi Models
Now that we’ve understood the flexibility of the BTB connector and the smartphone-camera-like module, we can take a step further to make more interesting products. As the smartphone-camera-like module connects to the Pi board via a connector instead of soldering, we can adapt or extend it.
In our case, we designed an extension cable to free the smartphone-camera-like module from the camera board. This extension cable has doubled ended BTB connectors on a flex ribbon cable, and you could easily put it between the camera board and the IMX219 module for the extension.
So what’s the use of the extension then? We might consider the Raspberry Pi camera module a compact one, but it’ll still be too bulky for some applications, especially when you need to put your camera in a narrow space like through a hole or inside a tube, such as endoscopic uses or spy cameras.
In some other cases, the form factor of spy cameras makes it perfect for wearable devices where you can only keep the small sensor module in the front and the camera board in the back with a long but narrow extension cable.
By detaching the smartphone-camera-like IMX219 module from the board, the size of the standalone image-capturing unit is much smaller. It’s also fully compatible with the Raspberry Pi camera V2 without additional software changes and works with all the drop-in replacement modules that we have mentioned above for more complex combos.
If you like in our 5MP spy cameras or M12 lens camera modules for Raspberry Pi but want higher resolutions, you might give this solution a try. What’s more, since the Raspberry Pi camera module V2 is compatible with the NVIDIA Jetson Nano, you can also easily move this solution to that platform if you want.