Short Review - New Arducam TOF sensor (Kickstarter)

tldr; Till the end of September, you can get the new Arducam TOF camera on Kickstarter*, where you can now get the device for ~US$30 instead of US$50. What looks like a normal camera, is a depth sensor with a resolution of 240x180 pixel. This sensor is capable of capturing depth (3D) information with 30fps on a Raspberry Pi 4.

Disclaimer: I got this sensor free of charge from Arducam. No money changed hands, and I am just doing some independent testing and evaluation. This post reflects my findings and opinion.

An important note on Kickstarter and other Crowdfunding platforms: Before taking part in any campaign as a backer, please read T&Cs. Rewards aren’t guaranteed! Always do your own research on the project and companies involved!


What is time of flight (ToF)

The Arducam ToF module emits 940 nm invisible infrared light, which bounces off the object's surface. The 240x180-resolution image sensor detects that light and calculates the distance to the objects.

A similar module can be found in modern smartphones, which some companies falsely call "LIDAR". Smartphones use this module to either detect the shape of the person's face, scan rooms or even full environments. For instance, the Apple iPad Pro 2020 seems to have a 0.03MP ToF sensor¹, which is even lower than this 0.04MP Arducam module. Another well-known ToF sensor sits in the Kinect, which has a 0.3MP sensor. But remember that resolution is just one part of the equation.

What stands out is that the Arducam ToF comes open-source, as a bare module of only 38x38mm, which can be easily integrated into existing projects. Furthermore, it comes with easily customizable python, C and C++ scripts, that can be found on this Arducams GitHub Repository.


Using the Arducam ToF module

It only took me a couple of minutes to set up the module with a Raspberry Pi 4 by following the official documentation. The camera can be connected through the known CSI camera ribbon cable and after installing the drivers, the provided example scripts can be used to easily generate depth maps or even point clouds.

OpenScan Classic through the eyes of the Arducam ToF module

The color of the depth map indicates the distance of the surface to the camera. The more red, the closer the object. Blue indicates larger distances (see below). I was absolutely surprised, that the camera was able to capture even the smaller details like the 5 mm wide stepper motor cable. Another interesting observation is the reflection on the underside of the turntable. The yellowish color indicates, that it measured the signal coming from the wall (behind the OpenScan Classic.)

Note, that there are two operational modes available: 2 m and 4 m, where the increased range of the latter one comes at the cost of more noise.

Since I have been on a very tight schedule for several weeks, I just modeled a quick 3d printed enclosure for the ToF module, set up the Raspberry Pi and added the module to the stand on the last Maker Faire in Prague.