TF Mini Laser Rangefinder

Last Updated on 18. October 2026 by SuffocationLink status: OK

An dieser Stelle teste ich mal einen recht teuren Sensor für >36€, welcher die anderen Entfernungsmesser um „Längen“ schlägt ;). Der Sensor hat einen winzigen Anschluss (GH1.25-4p SMT type). Hierfür liegen zwei Kabel bei. Eines mit zwei GH1.25-4p Steckern und eines mit den gewohnten Pin-Headern, welches es ermöglicht, den Sensor direkt am Arduino zu betreiben. Der Sensor wird mit 4.6V – 6 V versorgt. Somit ist ein Einsatz an 3.3V-Mikrocontrollern nur über Logik-Level-Converter möglich.

Ich wollte eigentlich die I²C-Version testen, leider ist die UART-Version hier angekommen, weshalb ich diese nun hier vorstelle. Da ich keine Doku über die I²C-Version gefunden habe, bin ich mir immer noch nicht sicher, ob mit dem aktuellen Sensor nicht auch I²C möglich wäre. Wenn ihr mehr wisst, lasst einen Kommentar da. )

Facts

TFmini
MessgrößeEntfernung
MessprinzipLidar
Messbereich300–12000 mm
Accuracy1 % (unter 6 m), 2 % (6–12 m)
Öffnungswinkel2,3°
Frequenz/Wellenlänge850 nm
Operating voltage4,5–6 V
Stromaufnahme≤ 120 mW (≈ 24 mA bei 5 V)
SchnittstellenUART
Abmessungen42 × 15 × 16 mm
Weight6,1 g
DescriptionLidar-Entfernungssensor

Connections

TFMini BSource: Data sheetLink status: OK
DescriptionWorth
1 massGround
2 Versorgungsspannung 4.6V-6V
3 UART InputTXD
4 UART SendRXD
TFMini Connections with Label

Serial port data

DescriptionWorth
Baudrate 115200
Datenbits8
Stoppbits1
Parity checkN/A
TFMini connection data for the serial interface

Areas of application

  • Distance measurement
  • Kartographie (bis 12m)
  • For drones for altitude determination
  • Pass control
  • Contactless triggering

Views

Programming

Libraries

Arduino

I'm LibrarianLink status: OK gibt es auch einige Bibliotheken für den TFMini. Mit der oberen von Peter Jansen hatte ich Probleme. Deswegen habe ich den zweiten Eintrag für meinen ersten Test gewählt.

Alternatives

Letztendlich habe ich die Lib von Peter Jansen noch zum Laufen gebracht. Somit hier der Link zur Bibliothek und zum Bugfix.

https://github.com/opensensinglab/tfminiLink status: OK

Bugfix: https://github.com/opensensinglab/tfmini/issues/9Link status: OK

ESPx

Die Bibliothek von Peter Jansen soll auch mit dem ESP funktionieren, allerdings müssen hierfür wohl alle Serial.print(ln) ’s aus der .cpp-Datei entfernt werden (See alsoLink status: OK). Ich habe das Projekt geforkt und sowohl die Printlines entfernt als auch den Bugfix für die Checksumme eingebaut. Unfortunately, I haven't been able to test it yet.

https://github.com/sfambach/tfmini_espLink status: OK

Wiring

Here is the wiring of the sensor via the UART. Unfortunately, the sensor looks a bit different from the original, so please note the pin assignment in the table below.

TFMini Schematic Connection
ArduinoGY530
5VVehicle Identification Number
GroundGround
Pin D0TX
Pin D1RX
Connecting TF Mini to Arduino

Da die UART meist auch für Ausgaben auf der Console benötigt wird, bietet sich beim Leonardo/Uno-Board die Verwendung eines Software-UART an. Bei diesem können die RX/TX Pins fast frei gewählt werden, zum Beispiel Pin 10/11.

ArduinoGY530
5VVehicle Identification Number
GroundGround
Pin D11TX
Pin D10RX
Connecting TF Mini to Arduino

Test programme

Testprogramm auswählen, kompilieren und auf den Arduino spielen. Evtl. die Pins und den seriellen Port umstellen.

Selection Example Program of the TFMini Library

Here is my draft

Source code TFminiFirstTest.ino (GitHub GistLink status: OK)

/**
 * Example from the library. 
 * I changed the two hardware serials to one software serial
 * More details under http://www.fambach.net/FTMini-Laser/
 * 
 * The original lib to be no longer existing in Git, install it via Arduino Gui (keyword = tfmini, Author= hideakitai)
 *  
 */

#include "TFmini.h"
#include <SoftwareSerial.h>

/**
 * Prepare the sensor
 */
SoftwareSerial mySerial(10, 11);  
TFmini tfmini;

void setup()
{
    Serial.begin(115200);

    // init the sensor
    mySerial.begin(TFmini::DEFAULT_BAUDRATE);
    tfmini.attach(mySerial);
}

void loop()
{
        // get some data from the sensor
        if (tfmini.available())
        {
            Serial.print("tfmini ");
            Serial.println(1);
            Serial.print("distance : ");
            Serial.println(tfmini.getDistance());
            Serial.print("strength : ");
            Serial.println(tfmini.getStrength());
            Serial.print("int time : ");
            Serial.println(tfmini.getIntegrationTime());
        }
}

https://github.com/sfambach/TF-Mini-LidarLink status: OK

And this is what comes out on the console:

TFMini Konsolenausgabe

Problems

No connection

Check the wiring and simply swap RX and TX.

Miscellaneous

Telegrammaufbau

[0x59, 0x59, Length low, Length high, Strength low, Strength high, reserved, Signal Quality, checksum]

  • Jedes Telegramm beginnt mit zwei Byte 0x59 und endet mit der Checksumme
  • Entfernung = (Länge high << 8) + Länge low.
  • Stärke = (Stärke high << 8 )+ Stärke low.
  • Reserviert = heißt so viel wie nicht genutzt.
  • Signal Quality = 0, 255.
  • Für die Checksumme werden alle Bytes ausschließlich der Checksumme und des Headers summiert ( Länge low + Länge high + Stärke low + Stärke high + reserviert + Signal Qualität).

Test programmes (UPDATE 19.07.2021)

Ich habe ein Git-Repository mit ein paar Testprogrammen angelegt, welche die Inbetriebnahme erleichtern sollen.

https://github.com/sfambach/TF-Mini-LidarLink status: OK

Fritzing Parts

There's a Fritzing part on Git, but unfortunately, it doesn't quite fit.

https://github.com/PulsedLight3D/LIDAR-Lite-Fritzing-PartLink status: OK

Conclusion

Der Sensor funktioniert und hat eine unschlagbare Reichweite. Leider nimmt er es nicht so genau und der Preis ist auch mit ~36€ sehr hoch. Wer jedoch über die Entfernung von 4 Metern der Sonarsensoren hinaus will und schnelle Messungen benötigt, findet mit diesem Sensor einen Verbündeten.

Similar

Sources

Manufacturer's websiteLink status: OK

Technical Support for TF-MINILink status: Broken

Data sheetLink status: OK

FritzingpartLink status: OK

TFMini on GitLink status: OK

TFMini Library with ESP AdaptationLink status: OK

Arduino LibraryLink status: OK

https://learn.sparkfun.com/tutorials/tfmini—micro-lidar-module-hookup-guide/allLink status: OK

https://github.com/opensensinglab/tfmini/issues/6Link status: OK

DateChangeAuthor
18.10.2026TablePress-Tabelle durch Datenblock aus dem Modell ersetztSuffocation
10.10.2026Gist-Einbettung durch Code-Block ersetzt (Gist als Quelle verlinkt)Suffocation
08.10.2026Überschriften-Hierarchie korrigiert (H1→H2, Unterebenen eine Stufe tiefer)Suffocation
04.10.2026Rechtschreibung korrigiert: Tippfehler, Kommas, Groß-/Kleinschreibung, Bindestriche, FormulierungenSuffocation
03.10.2026Log-Liste eingefügtSuffocation
30.04.2020Post createdSuffocation
Changelog

Leave a Reply

Your email address will not be published. Required fields are marked *