Benewake LiDAR TFMini Plus UART istnt working

Hello,
I bought a Benewake TFMini Plus LiDAR sensor to use as a rangefinder for automatic landings.
It’s the UART version of the sensor.
My flight controller is a SpeedyBee F405 Wing, and I connected the LiDAR to UART4.
I followed the configuration steps shown in the Painless360 YouTube tutorial about automatic landings.

However, I noticed that the sensor used in the video is an I²C version, while mine is the UART version.
So, I also referred to the ArduPilot documentation to set the correct RNGFND1_TYPE parameter to 20 for UART communication.

Of course, I’ve already tried the following troubleshooting steps:

  • Swapped RX and TX in case they were reversed
  • Tried using a different UART port
  • Even tested whether my sensor might be an I²C version after all
  • Tryed Baudrate 9600 and 115200
  • Watched all Rangefinder Parameter and Sonar Range in the Status

Unfortunately, nothing has worked so far.

I’m completely new to ArduPilot, so I would really appreciate well-explained solution suggestions that I can easily follow and check step by step.

Thank you :slight_smile:

Greetings In_Go!

A few things to verify…

Have you been able to see if the unit works with Benewake’s GUI viewer and a TTL to USB adapter?

Have it connected to a good 5v power source and its ground on the FC?

Is SERIALx_PROTOCOL set to 9?

Baud for that serial port should be 115200.

1 Like

Bennewake waste of money and time. Could not get it working after days of trying.
I have given up.

Hi Mike!

thank you for your message. I dont have the USB adapter. I used a Arduino Nano and it was possible to read a distance in the Serial Monitor.

Yes the 5V and the ground works totally fine. SERIALx_PROTOCOL is set to 9.

I have read that the LiDAR can also be use in I2C after some settings…

Greetings
Ingo

Hi Fred,

oh thats not good. Maybe we get here a solution for our problem. :slight_smile:

1 Like

Sorry it’s being stubborn.

If you have another available, I would try a different UART to see if that may work.

I purchased the TFmini Plus two months ago and had to convert it to I2C since no spare UART’s were available.

Haven’t had any issues with it so far.

Conversion to I2C mode was easy, but I think converting back to UART may be more of a challenge.

1 Like

I tryed to set the sensor in i2c mode but with no success. I think there are diffenent types of these TF mini Plus. Versions there can only be use in UART or Versions there can also be use in UART or i2c.

However, I have ordered a new i2c LiDAR with the opportunity for UART. I will keep updating you.

I have an update. The new Benewake LiDAR TFmini Plus arrived over the past few days. I was able to connect it via UART to my Speedybee F405 Wing board without any issues and get it up and running. No idea why the old one didn’t work.

Now I have a new question for you. I’ve installed and configured everything in a Multiplex FunCub with a 1400 mm wingspan. My current problem is that the aircraft would perform a perfect landing — but the ground is still about 3 meters away. I don’t understand why the LiDAR is working perfectly, yet the aircraft won’t properly descend all the way to the ground.

It behaves as if the last waypoint of the mission has a set altitude of 3 m AGL. Does anyone have an idea what could be causing this? For example, the parameter LAND_FLARE_ALT is set to 0.1 m altitude, yet it still holds at around 2 m AGL. Where does this discrepancy come from?

And yes, I also enabled the option for the LiDAR to be used starting from 6 m AGL. I also tested the “Assist” feature.

I’m attaching my parameters. Maybe someone would do me a huge favor and take a careful look at them.

Big thanks
FunCub_NG_vers_2.param (19.5 KB)

Ingo

Hi Ingo,

I just noticed your reply!

I haven’t ventured into fixed-wing yet (I’m a traditional helicopter guy), but can you share a .bin log file? I’m willing to try to find an answer.

Hi Mike,

you can see the *.bin File in my new Ticket: Autonomous Landing: Flare is too high - #18 by In_Go

There is a Google Drive link with the *.bin File.