tinyLiDAR

Crowdfunded

We were simply amazed by the level of interest from so many brilliant people around the world. From makers to photonics research scientists – it’s all thanks to their generosity that we have tinyLiDAR available today. Thank you!

Highest Performance

With 60Hz sample rates, reading speeds in excess of 900Hz and factory pre-calibration for every unit; tinyLiDAR is the highest performing VL53L0X based time-of-flight ranging module available.

Easy to Use

The high performance is thanks to our custom firmware residing in the on-board 32bit ultra-low power microcontroller. It abstracts out the complex low level VL53L0X control tasks so you can get your results using only simple I2C commands from any micro.

Features

Advanced Technology: Eye safe VCSEL Class 1 Laser

Ultra Fast: up to 60Hz sample rates and up to approx 930Hz I2C reading rates even with an Arduino UNO.

Accurate: to 3% with mm precision. Every unit is pre-calibrated by us before shipping.

The VL53L0X Time-of-Flight distance sensor is a very small SMD device that requires surface mount soldering before it can be used. If you look closer at it, you can see there are two small holes in the package to let light through. In order to prevent soldering chemicals from damaging the sensor, a piece of yellow polyimide (high temperature) tape is used on top of this sensor. After reflow SMD soldering, the tape should be removed before using the sensor. In fact, the high soldering temperatures also change parameters inside the sensor and this results in a random offset distance that must be calibrated out before using it for any accurate distance sensing application.
That is what we do here before shipping the tinyLiDAR modules.
The offset calibration is done per ST spec in a shielded chamber at exactly 100mm distance in “high accuracy” mode. We then test it for other items and normally leave it in the “tinyLiDAR” mode which is not as accurate but has a very quick response. This “factory” offset calibration we perform is stored in non-volatile storage on board tinyLiDAR‘s 32bit micro and is therefore accessible whenever you type “reset” on the GUI Terminal. If desired, you can perform your own custom offset calibration but the factory version is never erased so you can get back to it with “reset” whenever you like.

I2C speed was set at the default 100Kbps rate and the default 4.7K pull-up resistors (provided on the tinyLiDAR board) were used.

tinyLiDAR is controlled by any standard I2C host that can support clock stretching. The Raspberry Pi has a standard I2C port (with built-in 1.8K pullups) but has had problems with clock stretching every since it was first introduced. The problem is due to the Broadcom chipset hardware and there are limited software solutions to remedy this. You could update the kernel as shown here in section 6. or simply use the pigpio software solution as we did. It supports clock stretching and works very well with tinyLiDAR. Download the Terminal Gui (now at r0.95) for Raspberry Pi 3 at the bottom of this page after installing the pigpio library

If you ever get in a situation where your tinyLiDAR is not responding. It could be due to mainly two reasons. First it could be set to a unknown I2C address and second, it could be in a strange locked/glitched state. Normally, tinyLiDAR will recover on its own if it is glitched if the watchdog timer is enabled. However, if the watchdog timer is disabled, then you can easily recover by either power cycling the board by removing all wires to the board or by carefully pressing the reset button with your finger nail. The button is very small and doesn’t need a lot of force to activate but you will know when it presses down by feeling the button cap move a very short distance. The next step to resetting tinyLiDAR is with the “RESET” command. This is easily accomplished using the tinyLiDAR Terminal GUI Sketch (see downloads section at the bottom of this webpage. Just load up this sketch in an Arduino UNO and type “RESET” without the quotation marks. It will take a couple of seconds to clear out any user settings and set the tinyLiDAR back to the factory default I2C address of 0x10. You can then press ENTER a few times and check that the tinyLiDAR board is responding again by blinking the blue LED every time it takes a measurement.

What is the connector on the back of tinyLiDAR? microed_co
2018-04-03T20:01:28+00:00

It is known as a “Grove” 4pin universal connector. There are many cables made by Seeed Studio that you can use for this connector. Examples are DigiKey #1597-1092-ND (MPN 110990210) for the Grove to 4pin male header types which can be inserted into your breadboard and 1597-1079-ND (MPN 110990031) for the Grove to Grove 4pin “un-buckled” type cables. We prefer the un-buckled type (instead of buckled) as they require less force when removing them from small boards.