Benewake TFmini LIDAR works on Ardupilot

Hi,David.


This is a simple diagram.
If you have any question you could send email to me.

hi mincy, thanks… for what kind of lidar is this scheme, after i have soldered all the wiring how i can set up the arduino boar and the parameters.
My email is dchaim84@gmail. com… yours?

Good pm, after few time of trials maybe my lidar is working but i don’t know if the parameters are corrects

I have tested the tfmini on the TF software, changed the Device command to 47 57 02 00 00 00 04 06 and confirmed the serial output was getting readings through Tera Term. However, after changing my mission planner parameters to be configured with the serial 4/5 port I still see no reading through mission planner. Do i need an update on the lidar firmware? Any other suggestions? Also I tried modifying the ‘LightWare’ serial driver but that was locally through my computer. Would I have to flash settings onto the pixhawk with an SD card to change the Lightware serial driver?
Thank you

Hi, Justin. As you hope to use TFmini with your Pixhawk, I’d like to suggest below:

After you connected TFmini with PC and entered the display software, please select “Pixmode”, then the TFmini will be changed to pixmode. Then connect TFmini with TELEM 2port, please make sure you connect the cables correctly and configure rightly as the TFmini operation manual I sent by email and configure the data. (Pls refer to Attachment 3: Application of TFmini in Pixhawk)

Hi @ppoirier, just get my Tfmini that I want to use first with Serial (telem2). Working great on the PC interface via my FTDI232, seems very accurate. Just to be sure of my config before installing it to my Pixhawk:

  1. Activate Pix mode in PC interface (no need to save?)
  2. Apply the parameters described in the Benewake doc:
    SERIAL2_PROTOCOL = 9 (Lidar)
    SERIAL2_BAUD = 115
    RNGFND_TYPE = 8 (LightWareSerial)
    RNGFND_SCALING = 1
    RNGFND_MIN_CM = 5
    RNGFND_MAX_CM = 600
    RNGFND_GNDCLEAR = 5

I put 600 for RNGFND_MAX_CM in order to not have bad surprises…
Seems working like this, but if you have any other recommendation, you’re welcome!

@chris661 Yes that looks good for serial. I would change minimum to 30 cm because of the TFMINI issue on short distance error.
Please note that the TFMINI goes to “0” when out of range you can have it ‘‘push’’ 12 Meter instead ==Send command 42 57 02 00 00 00 00 20,
TFmini will output 12m range data for distance greater than max range (6 Meter outdoor)

For me setting this RNGFND_MAX_CM = 600 means that if lidar distance measured is 601 the baro is on and lidar off, Am I wrong?
So If it distance from lidar is 0 it’s still under MIN_CM so, I’m confused…

Yes thats a range so ts not using sensor below 5 CM and above 600 CM

this point I do not understand, why is it useful to push it 12 meters instead of 0? because both values are out of the defined range

With altitude it does not seem to have a negative impact but when you change orientation as for avoidance it makes the vekicle stop . Look here TF-Mini-Obstacle Avoidance Issue 3.5.5

@ppoirier I have a question about implementing the tfmini if you have the time:

I am currently trying to test if the tfmini is functioning properly, using the benewake app but unfortunately I am not getting any readout in standard or pix mode. Connecting to the correct serial port via Tera Term isn’t giving any readout either. I wonder if this is because I am using an sparkfun redboard instead of a ttl to usb converter. Could this be the issue? I can see the red light on the transmitting lens of the tfmini indicating it is receiving power, and the right voltage too.

Anything helps, thanks

Hi!

I bought two Benewake Lidar Lite which I received yesterday.
I connect one of them to Telemetry1 port on a Pixracer (not Pixhawk).
I adjusted all the parameters as described in the documentation.

When I connect Pixracer to Mission Planner I have the message “Bad Lidar” flashing and some times I get som random meassure readings like 599 4 39 but often it is 0.
I have only 0 for volt.

What to do?

I have not test it with computer and the application but I assume it would work without any changes.

I have not change Lidar Lite to “pixmode”, I thought it was default from factory.

Should it tell me volt when I connected to Telemetry port?

I’m a bit confused because I have some measurement from the Lidar but It is not correct and not consistent. Do someone know If it is because Lidar is NOT in Pixmode?

I use Telemetry 1 instead of 2, but I think they are the same, or?

Hi. Regarding to your questions, pls contact bw (at) benewake (dot) com for TFmini connected to Pixhawk operation manual or download from the Benewake website. As you mentioned bad LiDAR health, pls check whether you’ve selected Pix mode, check the picture. And double check whether the TFmini cable connection is right. also, check whether it’s caused by lack of power supply, if yes, pls provide separate power supply to the TFmini.

Micaelkarlsson, Default the Benewake TFmini is not in pix mode, you need to change it (and the change needs to stay).
With a serial adapter you should see some output, in either mode. Also in the benewake software you should see an output. If you do not please check all connections and the serial adapter.

Telem 1 or 2 doesn’t matter, as long as you change the settings in arducopter.

1 Like

Hello! Great!

Then I will check with ftdi adapter and change the settings. I was a bit puzzled (is that right word?) when the distance some time changed but the response in mission planner felt randomized.

Hello,
The red board is like an arduino uno and there’s only one serial port. You cannot use the usb and the tx-rx concurently on a uno because its the same port. Please get a ftdi, its a good little tool for only 2$

2 Likes

I just set the lidar to Pixmode and suddenly everything workes! Thanks for all the help Nando and ppoirer!

could be cool referencing the TFMINI there.

Testing the TFMINI on Pixhawk serial (Telem2). When I read on MP the sensor values I get sonarrange around 0.7, real distance. When moving the drone, I can measure the length of my office, around 4 meters, so it works.
TFMINI2
When I take off, I read altitude (in Yaapu interface) 0. When I land, windy day, I read altitude 3.5m (drone landed). So for me this is the baro altitude, not the RangeFinder altitude which should be activated between 30 and 600cm. So what did I missed in parameters? Thanks.

TERRAIN_ENABLE=0
TERRAIN_FOLLOW=0