The SparkFun Qwiic Mini dToF TMF8821 Imager is a direct time-of-flight (dToF) sensor that includes a single modular package with an associated Vertical Cavity Surface Emitting Laser (VCSEL) from AMS. The dToF device is based on Single Photon Avalanche Photodiode (SPAD), time-to-digital converter (TDC) and histogram technology to achieve a 5000mm detection range. Due to its lens on the SPAD, it supports 3x3, 4x4, and 3x6 multizone output data and a very wide, dynamically adjustable field of view. A multi-lens-array (MLA) inside the package above the VCSEL widens up the FoI (field of illumination). All processing of the raw data is performed on-chip and the TMF8821 provides distance information together with confidence values on its I2C interface. The high performance on-chip optical filter blocks most of the ambient light, and enables distance measurements in dark and sunlight environments.
To make it even easier to get your readings, all communication is enacted exclusively via I2C, utilizing our handy Qwiic system so no soldering is required to connect it to the rest of your system. However, we still have broken out 0.1”-spaced pins in case you prefer to use a breadboard. The TMF8821 offers two configurable GPIO pins and one enable (EN) pin, which are broken out as PTH pads. The board also includes a power LED and I2C pull-up resistors, each configurable via jumpers. This Mini version has a footprint that is half the size (0.5in. x 1.0in.) of our standard Qwiic Mini dToF TMF8821 Imager board. Additionally, we moved the Qwiic connectors to the back of the board. These design changes favor mounting applications where the TMF8821 sensor faces outward from an enclosure or chassis, and keeps your Qwiic cables cleanly tucked away.
This sensor is great for projects such as distance measurement for camera autofocus - Laser Detect Autofocus - LDAF (mobile phone), presence detection (computing and communication), object detection and collision avoidance (robotics), and light curtain (industrial).
Note: CLASS 1 LASER PRODUCT CLASSIFIED IEC 60825-1 2014.
The SparkFun Qwiic Connect System is an ecosystem of I2C sensors, actuators, shields and cables that make prototyping faster and less prone to error. All Qwiic-enabled boards use a common 1mm pitch, 4-pin JST connector. This reduces the amount of required PCB space, and polarized connections mean you can’t hook it up wrong.
If a board needs code or communicates somehow, you're going to need to know how to program or interface with it. The programming skill is all about communication and code.
Skill Level: Competent - The toolchain for programming is a bit more complex and will examples may not be explicitly provided for you. You will be required to have a fundamental knowledge of programming and be required to provide your own code. You may need to modify existing libraries or code to work with your specific hardware. Sensor and hardware interfaces will be SPI or I2C.
See all skill levels
If it requires power, you need to know how much, what all the pins do, and how to hook it up. You may need to reference datasheets, schematics, and know the ins and outs of electronics.
Skill Level: Rookie - You may be required to know a bit more about the component, such as orientation, or how to hook it up, in addition to power requirements. You will need to understand polarized components.
See all skill levels
No reviews yet.
Looking for answers to technical questions?
We welcome your comments and suggestions below. However, if you are looking for solutions to technical questions please see our Technical Assistance page.
Log in or register to post comments.
Im not able to get this board working. Im running the Example-01_Basic program that comes with the sparkfun library, and get the error: Error - The TMF882X failed to initialize - is the board connected? I get this error with two different boards, both the TMF8820 and TMF881. Im using a teensy and connecting to the power/iic pins on the side of the board. I have tried a iic scanner program, and can ping the boards address properly. Not sure what to do, I assume this might be a library error?
had same issue with teensy Lc and 3.2, try a 4.1 and it works