Crop Sprayer Liquid Level Sensor

I have a Richen Power Liquid Level Sensor… It has its PWM output (1100 us when the tank is empty and 1900 us when the tank is full. What i need is to read these PWM values through an AUX port and display in the mission planer to know the liquid level in the tank. Also to trigger RTL at certain PWM value such as at 1150 us as an example.
Have any one tried similar set up to display the PWM input values in the mission planer and setting up RTL triggering at a certain PWM value


bit of a hack but you can use the new fuel level battery monitor type, this will also trigger RTL, It has not made it to the stable release yet tho.

1 Like

Hey Sanks,
Got the Richen sensor working today, needed to provide 5v power to the AUX rail on the pixhawk, and then run a servo lead from a separate Aux port to the sensor. During my tests I only got it to work on 4.0dev and not stable version so as Pete said above it is not fully supported in stable release.

1 Like

Hello impete

I have sorted this issue of displaying the liquid level…
1st use the Aux port u like, in my case I left the BRD_PWM_COUNT=4 where my AUX 1,2,3,4 works as the Servo outs and AUX 5 and 6 are PWM in puts.
I connected 5v BEC to AUX 6 as AUX rails don’t provide power and PWM in from Richen Power connected to the AUX 5 as the PWM input.
and then in the mission planer I have set the following params


Then in the mission planer go to quick tab double click any of the value and select rxrssi .
Then Calibrate the Liquid sensor
Must Have the firmware above 3.5

(Love From Sri Lanka)


Hi skhyperion I manage to display my tank level in RXRSSI with your method, however I can’t assign this value as a battery voltage reading to be able to activate the RTL failsafe when my tank is empty ?

Did you succeed on your side ?

Try the method here:
The fuel level sensor driver was written and tested with the richen module.

1 Like

Lorsque j’utilise cette méthode je n’arrive pas obtenir une valeur de courant je suis toujours à 0.

Chez vous cela fonctionne correctement cette méthode .

Je n'ai pas testé récemment, mais oui.

I just retested and I still arrive at the same result I manage to have my value correctly displayed on RXRSSI when I use the Skhyperion method on the other hand I am still blocked for the method a second battery in order to benefit from the RTL when the tank is empty.
Anyone using this feature and who could help me?

Thank you

Hiii James

I have got it working nicely and I have to check on the RTL function ill update you on that…

Thank You Soo Much
With Love From Sri Lanka :sri_lanka:

Hey chr89

Yes i got it working try below workaround and it works
And once ur done set the
as u nead …

(Love from Sri Lanka :sri_lanka: )

Hello skhyperion,
I just bought the Richen Power Liquid Level Sensor and I can’t make it work with the ardupilot method.
I see that you have managed to make it work and also have the RTL action.
Could you help me with the parameters? I have use 5V bec to give power to Sensor.
Thanks in advance

Are you using ArduCopter 4.1.0-beta6?
As far as I know Richen power needs that.

It works with 4.0.3 onwards as battery sensor

Ok. But with which configuration?
Can you help me with parameters?
Thanks in advance

if you connect more than one liquid level sensor, is there a way to show both of them? I tried reading the wiki article about rssi, but it seems you can only it for just one pwm input

If you are still looking for a sensor for gasoline please send me an email as we do have a product where you can use. I am attaching the info at the link.

We do also have a new sensor for the liquid tanks where you use for spraying.

You can send me an email for further info

Hello we do have a sensor where you can set as second battery on ardupilot and set RTL when treshold is triggered.

Let me know if you are interested in.

@MamboJambo can you provide documentation and a driver for your products? It looks interesting but we’ll need to know how they’re supported.

Dear James,

In order to make it useful we used the smbus generic function, since that function is developed for batteries it displays voltage and we simulate the tank capacity as full voltage value. In that sense if tank volume is 10 lt, it displays 10v for full tank.

We do also display the fuel flow under current in ml/min depending on the capacity and fuel level drop.