Airspeed sensor not working

Using QGC v3.1.1, after choosing one of VTOL airframes (Quadrotor X Tailsitter), I was at the airspeed calibration step. After connecting the digital airspeed sensor to my Pixhawk’s I2C port, I click OK, but I get the following message:

[cal] calibration started: 2 dpress
[cal] Ensure sensor is not measuring wind
[cal] airspeed error count non zero
[cal] calibration failed: dpress

I also connected external batteries to the POWER port and also tried supplying 5.1V to one of servo rails, but I still got the same message. I also tried another sensor and still have the same issue. This is the only step I got stuck. I went through all other sensor calibrations successfully. What should I do?

This may just be by chance but I went into the circuit breaker param, turned off the airspeed sensor unplugged from power rebooted then turned it back on rebooted and calibrated and it went through airspeed sensor was hovering between 0.4 and 0.8 m/s

Ok. It is working now. What I did was I first upgraded to the latest QGC v3.1.3, then twisted wires connecting the A/S sensor and the I2C splitter. Someone mentioned the wires are too long and I figured there may be some interference causing it.

This is a bug that I encountered many times but didn’t get the time to report as I fixed it myself. The problem is that if a single error on I2C occurs, it aborts. But errors in communication happen and it isn’t a reason to abort. @LorenzMeier?

Here is my fix, it starts in airspeed_calibration.cpp, line 145

There is still some commented trash left for debug reasons (just ignore it), since I wasn’t sure how the fix will behave, but it has proven itself now in 40+ flights.

	        /* (not) any differential pressure failure a reason to abort */
		if (diff_pres.error_count != 0) {
			//calibration_log_critical(mavlink_log_pub, "[cal] airspeed error %ul", diff_pres.error_count);
			//feedback_calibration_failed(mavlink_log_pub);
			//warnx("Ignoring error for debug reasons. Reboot the plane fo safety reasons");
			//goto error_return;

			// Don't use the code above because it prevents calibration as soon as a single I2C failure accurs.
			// Instead just report the error and continue with calibration.
			if (!_error_sent) {
				mavlink_log_critical(mavlink_log_pub, "[cal] airspeed error %ul", diff_pres.error_count);
				_error_sent = true;
			}
		}

@vvid - we recently discovered the ms4525 airspeed driver error count was including more than just errors. Can you try again with master, or cherry-pick this commit? https://github.com/PX4/Firmware/commit/384e3bb6939b1c701bc8b78ff0264e7a908e87c5#diff-bcf64e5798d7c4b9cbf7fd62e5a0bedb

I hope I can try it tomorrow, I’m super busy this week…

Hi all,

Sorry for posting in this old topic, but my question fits best here, I guess.

I’m trying to set up a VTOL similar to the Fun Quad Cub VTOL. I’m using the Eagle Tree V3 Airspeed sensor, which used to work fine up until 2 weeks ago. It is connected to the I2C input of the Pixhawk using an I2C splitter. When I’m trying to do an airspeed sensor calibration, it says:
[cal] No airspeed sensor found.

I checked this with two different pixhawks (2.4.8) and tow different Eagle Tree V3 airspeed sensors. A hardware issue can thus be excluded.

When I change the “SENS_DPRESS_ANSC” Parameter to a value other than 0, it would start the calibration, but stop with the error message:
[cal] calibration failed: airspeed

Does anyone have an Idea of how to solve this problem?

Could you verify the firmware version when it was working and the current one? I had a similar issue with an ET airspeed sensor. Didn’t even consider that it might be related to the upgraded firmware so I’m curious. Thanks.

Which Firmware version are you using now and which Pixhawk?

In the 1.7.3 Release the for the Pixhawk with the silicon error the Eagle Tree driver is not included due to flash restrictions.

@michbeck Just wanted to confirm what @acfloria saying that ET airspeed sensor is not supported in 1.7.3. That would explain why it was working 2 weeks ago, as I ran into the same issue. I tested this morning and confirmed that in fact my ET airspeed work and calibrates in 1.6.5 but not recognized at all in 1.7.3. I’m wondering if this should be filed as an issue or was it a conscious decision by dev team to discontinue driver support for it? @LorenzMeier @dagar @acfloria Thoughts?

@michbeck If you upgraded to v1.7.0 or higher, go to FW_ARSP_MODE and Enable it and see if that makes it work. If that doesn’t, and you have a 32-bit board, you’ll need to use px4fmu-v3_default.px4 (not v2).

Good luck

We are having the same issue to get the Airspeed sensor to work using the 4525D digital sensor plugged into the i2C port. Using the default parameters set for the AS sensor it just reports ,
[cal] calibration started: 2 airspeed
[cal] No airspeed sensor found

We are suing Generic Quad Plane VTOL and just installed QGC3.3 daily build yesterday. Is there any settings in parameters we need to manually adjust to make this work?

I saw in another post an issue about the voltage on the i2C being 3v and the is 5v’s? Is this still relevant?

  • Try swapping the two middle wire.
  • Feel the sensor to make sure it’s not getting warm/hot. If it is, the positive and negative wires may be backwards.

Good luck.

no luck, still didn’t work

Hi everyone!!

I have been also struggling with getting my airspeed sensor working. I have done a lot of searching but found no solutions yet. Heres is my current set up:

Flight controller: Pixhawk 4
Firmware: PX4 1.8 (Running standard fixed wing aircraft)
QGroundcontrol version: 3.2.4
Sensor: px4 airspeed V1.3 (Sold by Holybro. Link: https://shop.holybro.com/digital-air-speed-sensor_p1029.html )

My issue is that when I click calibrate I receive these messages:

[cal] calibration started: 2 airspeed
[cal] No airspeed sensor found

Here are the things I have tried:
-Twisted all cables
-Tried different cables
-Swapped I2c lines
-Research and check params relating to airspeed sensor
-Drop logic level lines from 5v-3.3v (More on this)
-Through finding a sensor (Lost the link to it) sold specifically for the Pixhawk family, claiming that it was unique because it had a level shifter onboard that dropped the I2c lines from 5v to 3.3v. Implying that most other sensors ve their I2c lines at 5v. I looked at photos of it closely and it did have more components on it compared to all other px4 airspeed sensors on the market so this gave me mild justification to believe that my sensor has its I2c lines at 5v. A long shot, I know, but im looking for anything now. I have been struggling for a long time on this. For this reason I bought a I2c level shifter from sparkfun and wired it in to drop my I2c lines from what I believe to be 5v, down to 3.3v.

After all this I still get the same error and i’m pulling my hair out. Im not sure if im just being foolish and doing something incredibly simple wrong, or what else is going on, but any help would be appreciated. If your asking why I haven’t bought the other sensor that says its made specifically for the Pixhawk, its because I blindly closed the web page a week ago and of course, didn’t have it bookmarked.

Thank you in advance for any input, and if you know the sensor im talking about, a link would be much appreciated.

Ahh!!! Found the link to the sensor. M Robotics sells it.

  • Just curious… what airframe have you selected?
  • Is FW_ARSP_MODE Enabled?

Are you referring to the two middle wires (Rx / Tx) or the two outer ones (+ / - voltage)?

Good luck.

Hi @rollys

  • I have the Standard Plane aircraft selected.
  • FW-ARSP-MODE is enabled
  • The SCL and SDA lines were switched. Pins 2 and 3 on the connector.

All of these were already true, thus the sensor still does not function.

I appreciate the response. :slight_smile:

I have the exact same issue Ben. I have a Pixhawk 4 and had the MS4525DO sensor (the normal 5V one). I read the same articles as you it seems and thought it must be a voltage issue so I bought the next gen airspeed sensor - the MS5525 because it looked like 3V would be sufficient.

MS5525

Unfortunately that didn’t work either so now I have 2 airspeed sensors, both of which throw up the error:

[cal] calibration started: 2 airspeed
[cal] No airspeed sensor found

In short, I wouldn’t buy the MS5525 hoping that will fix it :frowning:

I’m stuck until someone much brighter than me solves this.

Al

Just for the record, I’m also having this problem with the SDP3x Airspeed Sensor not detected by Pixhawk. I have it plugged into the I2c port on a Pixhawk 2.1 Cube using the PX4 1.8.0 firmware. I’m trying to get the Generic Delta VTOL airframe profile working. It seems not to detect anything plugged into the I2c port.

Thing is, this sensor worked on previous firmware builds. I ran a test and loaded on Ardupilot and the sensor shows up so it’s a firmware problem. Can’t progress with out it. Would love to hear from the developer community and find a solution.

Is there a simple way to roll back to a previous PX4 firmware build?