Real-Time 3D Room Mapping With ESP32, VL53L5CX Sensor And IMU

ST’s VL53L5CX is a very small 8×8 grid ranging sensor that can perform distance measurements at a distance of up to 4 meters. In a recent video,[Henrique Ferrolho] demonstrated that this little sensor can also be used to perform a 3D scan of a room. The sensor data can be combined with an IMU to add orientation information to the scan data. These data streams are then combined by an ESP32 MCU that streams the data as JSON to a connected computer.

Continue reading “Real-Time 3D Room Mapping With ESP32, VL53L5CX Sensor And IMU”

Reconstructing 3D Objects With A Tiny Distance Sensor

There are a whole bunch of different ways to create 3D scans of objects these days. Researchers at the [UW Graphics Lab] have demonstrated how to use a small, cheap time-of-flight sensor to generate scans effectively.

Not yet perfect, but the technique does work…

The key is in how time-of-flight sensors work. They shoot out a distinct pulse of light, and then determine how long that pulse takes to bounce back. This allows them to perform a simple ranging calculation to determine how far they are from a surface or object.

However, in truth, these sensors aren’t measuring distance to a single point. They’re measuring the intensity of the received return pulse over time, called the “transient histogram”, and then processing it. If you use the full mathematical information in the histogram, rather than just the range figures, it’s possible to recreate 3D geometry as seen by the sensor, through the use of some neat mathematics and a neural network. It’s all explained in great detail in the research paper.

The technique isn’t perfect; there are some inconsistencies with what it captures and the true geometry of the objects its looking at. Still, the technique is young, and more work could refine its outputs further.

If you don’t mind getting messy, there are other neat scanning techniques out there—like using a camera and some milk.

Continue reading “Reconstructing 3D Objects With A Tiny Distance Sensor”

Playing Rock, Paper Scissors With A Time Of Flight Sensor

You can do all kinds of wonderful things with cameras and image recognition. However, sometimes spatial data is useful, too. As [madmcu] demonstrates, you can use depth data from a time-of-flight sensor for gesture recognition, as seen in this rock-paper-scissors demo.

If you’re unfamiliar with time-of-flight sensors, they’re easy enough to understand. They measure distance by determining the time it takes photons to travel from one place to another. For example, by shooting out light from the sensor and measuring how long it takes to bounce back, the sensor can determine how far away an object is. Take an array of time-of-flight measurements, and you can get simple spatial data for further analysis.

The build uses an Arduino Uno R4 Minima, paired with a demo board for the VL53L5CX time-of-flight sensor. The software is developed using NanoEdge AI Studio. In a basic sense, the system uses a machine learning model to classify data captured by the time-of-flight sensor into gestures matching rock, paper, or scissors—or nothing, if no hand is present. If you don’t find [madmcu]’s tutorial enough, you can take a look at the original version from STMicroelectronics, too.

It takes some training, and it only works in the right lighting conditions, but this is a functional system that can determine real hand sign and play the game. We’ve seen similar techniques help more advanced robots cheat at this game before, too! What a time to be alive.

‘Radar’ Glasses Grant Vision-free Distance Sensing

[tpsully]’s Radar Glasses are designed as a way of sensing the world without the benefits of normal vision. They consist of a distance sensor on the front and a vibration motor mounted to the bridge for haptic feedback. The little motor vibrates in proportion to the sensor’s readings, providing hands-free and intuitive feedback to the wearer. Inspired in part by his own experiences with temporary blindness, [tpsully] prototyped the glasses from an accessibility perspective.

The sensor is a VL53L1X time-of-flight sensor, a LiDAR sensor that measures distances with the help of pulsed laser light. The glasses do not actually use RADAR (which is radio-based), but the operation is in a sense quite similar.

The VL53L1X has a maximum range of up to 4 meters (roughly 13 feet) in a relatively narrow field of view. A user therefore scans their surroundings by sweeping their head across a desired area, feeling the vibration intensity change in response, and allowing them to build up a sort of mental depth map of the immediate area. This physical scanning resembles RADAR antenna sweeps, and serves essentially the same purpose.

There are some other projects with similar ideas, such as the wrist-mounted digital white cane and the hip-mounted Walk-Bot which integrates multiple angles of sensing, but something about the glasses form factor seems attractively intuitive.

Thanks to [Daniel] for the tip, and remember that if you have something you’d like to let us know about, the tips line is where you can do that.

E-Ink Equipped Sourdough Starter Jar

One of the unexpected side effects of our this pandemic is a sudden growth in the global population of captive colonies of Lactobacillus bacteria and yeast. Also known as sourdough starters, they are usually found in jars with curious names written on top, living off a mixture of flour and water. They require close monitoring to keep them healthy and to determine when they are ready for baking. [Noah Feehan] has been working to instrument and automate the process for the past two years, and has created a high-tech jar to keep an eye on his sourdough starter.

For a sourdough starter to stay active, it must be kept within a certain temperature range, and performance is measured by how much the level inside the jar rises. Existing open source and commercial projects monitor these two parameters and transmit data out, but [Noah] wanted to include a few more features. The height of a sourdough starter rises due to the production of CO2, so he added an SCD-30 sensor module, which includes a temperature and humidity sensor. For level monitoring, an VL6180 time-of-flight sensor is mounted over a hole on top of the jar. [Noah] wanted to be able to see recent CO2 production and height stats right on the jar, a ESP32 module with onboard E-ink display was used. To draw air over the CO2 sensor at a constant rate, a small extraction fan was also added. Power is provided by a small LiPo battery. For long term logging, the data is sent over MQTT to a server running Mycodo environmental regulation software.

There are still several software improvements [Noah] would like to make, including battery life, user interface and alerts, but everything is open-source and available on GitHub, so feel free to jump in and build your own.

Lidar House Looks Good, Looks All Around

A lighthouse beams light out to make itself and its shoreline visible. [Daniel’s] lighthouse has the opposite function, using lasers to map out the area around itself. Using an Arduino and a ToF sensor, the concept is relatively simple. However, connecting to something that rotates 360 degrees is always a challenge.

The lighthouse is inexpensive — about $40 — and small. Small enough, in fact, to mount on top of a robot, which would give you great situational awareness on a robot big enough to support it. You can see the device in action in the video below. Continue reading “Lidar House Looks Good, Looks All Around”

Lazydoro Mothers You Into Being Productive

The Pomodoro Technique has helped countless people ramp up their productivity since it was devised in the late 1980s. Breaking down tasks into 25 minute chunks can improve your focus tremendously, provided you show up, start the timer, and get to work.

Lazydoro takes the psychology focus even further. In [romilly.cocking]’s interpretation, a time-of-flight (ToF) sensor is your productivity Santa Claus — it knows whether you’re doing your part by simply applying butt to chair, and your present is a productive 25 minutes where not a second is wasted futzing with timers and worrying about time lost to such administrative tasks. When Lazydoro senses that you have arrived, the Raspi Zero starts a 25-minute Pomodoro timer, and represents the time remaining across a Pimoroni BLINKT LED matrix.

But hold on, you haven’t heard the best part yet. Lazydoro was designed with real life in mind, because [romilly] thought of everything. Whenever you leave your chair, a 5-minute timer starts, and there’s a beep when time is up. If you make it through the 25 minutes and hear the victory beep, then it’s break time. But if you get up too soon, the work timer stops, and the 5-minute timer becomes your limited space in which to fret, stare out the window, or get the snack you think you desperately need to keep going. This makes Lazydoro awesome even without the Pomodoro part, because simply sitting back down is a big step one.

If you make a circuit sculpture Pomodoro and stare at it on your 5-minute breaks, you might achieve productivity enlightenment.