New SDP33 Airspeed Sensor and Ardpuplane

I’ve now added dual airspeed sensor support to that tree as well. So we can do flights with both an existing sensor and a SDP33 and compare the results.
In my bench tests the SDP33 looks good so far


I’ve opened a PR for the driver:

@Remi2Matos one review comment on the PR from michael is where the various magic constants come from. Do you know what the original source document for those is? Or a reference for how to calculate them?


On my first PR, it has been bench-tested with wind turbine with a 3d printed tube to making same comparison, with a MS4525 & SDP33. On FMU-v2 (latest stable branch) and appears to work correctly, like you said.
Thanks @tridge for your review, seems good for me.
To answer yours questions : Magic constants & Correction factors : just ported to PX4 driver (I’m not an expert, just hacker/tester) so I can’t say what it really does mean …
Sorry about my messy code (My first code in this Wide Autopilot World).

Cheers, Remi

The constants (pitot model) are from Sensirion. There’s a bit more info here:

@tridge, I read your comments about one pitot, two sensors. Interesting. Will the dual-airspeed code allow two completely independent pitot+sensor systems? And might the failure detection compare both airspeed #'s to a GPS speed or other speed source to detect bad airspeed sensor, blocked pitot, etc.?


That was just for bench testing, in a real aircraft I’d expect to use two separate pitot tubes.

yes, that would be the normal setup I think

in the future I expect we will use the airspeed innovations in the EKF to switch between the two, or blend the two in some way, but for now I’d like to get support in for simple failover
Cheers, Tridge

no problem at all! I’m really grateful for your work on the driver.

ok, thanks. I’ll put some explanation in the code.

HI Andrew,

is there any update for the new SDP33?

Hi Everyone, sorry for the delay on this.
I’ve just pushed out plane 3.8.5beta1, which has support for the SDP33, and also supports dual airspeed sensors.
I’d really appreciate it if someone would do a flight with both a SDP33 and another airspeed sensor and send me the dataflash log so I can compare the SDP33 results with another sensor. Please also send a photo showing the physical setup of the two sensors.
You will need to set ARSPD2_TYPE=6 to enable the SDP33 as the secondary airspeed sensor. You can additionally control which i2c bus the sensor is connected to using the ARSPD2_BUS parameter (default is bus1, which is the normal “external” i2c bus).
Before you fly, make sure that if you log on the ground that you are getting logging of both sensors by looking for both ARSP and ASP2 log messages.
The 3.8.5beta1 build is building now, it should be available in an hour or so.
Cheers, Tridge


Great ! Thanks a lot.

I have just installed 3.8.5beta1 on a pixhawk 1. Everything works fine on the bench (SDP33 as single sensor and also as second sensor together with an ms5525). Test with a quickly assembled provisional “bracket”:

Unfortunately, the weather is too bad for flying today (thunderstorms and hailstorms are expected to continue until Thursday or Friday). I would like to take advantage of the bad weather and build a stable aluminum bracket on which both pitot tubes are mounted in parallel (about 2-3 cm distance) in front of the nose of the aircraft.

Regards Rolf

thanks @Rolf, looking forward to the flight log!

Measurement flight is done. Results and link to the flightlog to find there: Plane 3.8.5beta1 released

Hi, I also got two ot the SDP33 sensors and can’t get them to work. Tested it on a PH2 with AP3.8.5B1. There is no error, but also no values changing. Tried it as single sensor.

Hi David,

Is the value of ARSPD_TYPE / ARSPD2_TYPE set to 6 ? Correct ARSPD_BUS for PH2 ?

Sure. Type to 6, bus left at 1.

Other Airspeedsensors are working ? I2C SDA/SCL mismatched ?

Others are working. He recognizes the sensor somehow, because he is not giving fault message. When SDA/SLC would be crossed, he would give “bad airspeed health” I assume.

I think you use a preconfigured I2C cable with JST-GH 4 pin connectors on both sides, so you can not swap anything with that cable.

Just for information: I soldered a JST-GH to DF13 cable since i use a pixhawk 1:
1 (red) VCC +5V
2 (black) SCL +3.3
3 (black) SDA +3.3
4 (black) GND GND

I just checked the messages if you did not connect the sensors:
There is no error message ! (ArduPlane V3.8.5beta1 )

if it also does not work with PX4 stack, i would turn to drotek

Regards Rolf

1 Like