@@ -1099,6 +1099,32 @@ def SHT3X(self):
1099
1099
if m is None :
1100
1100
raise NotAchievedException ("Did not get good TEMP message" )
1101
1101
1102
+ def SurfaceSensorless (self ):
1103
+ """Test surface mode with sensorless thrust"""
1104
+ # set GCS failsafe to SURFACE
1105
+ self .wait_ready_to_arm ()
1106
+ self .arm_vehicle ()
1107
+ self .change_mode ("STABILIZE" )
1108
+ self .set_parameter ("MAV_GCS_SYSID" , self .mav .source_system )
1109
+
1110
+ self .set_rc (Joystick .Throttle , 1100 )
1111
+ self .wait_altitude (altitude_min = - 10 , altitude_max = - 9 , relative = False , timeout = 60 )
1112
+ self .set_rc (Joystick .Throttle , 1500 )
1113
+
1114
+ self .context_push ()
1115
+ self .setGCSfailsafe (4 )
1116
+ self .set_parameter ("SIM_BARO_DISABLE" , 1 )
1117
+ self .set_heartbeat_rate (0 )
1118
+ self .wait_mode ("SURFACE" )
1119
+ self .progress ("Surface mode engaged" )
1120
+ self .wait_altitude (altitude_min = - 1 , altitude_max = 0 , relative = False , timeout = 60 )
1121
+ self .progress ("Vehicle resurfaced" )
1122
+ self .set_heartbeat_rate (self .speedup )
1123
+ self .wait_statustext ("GCS Failsafe Cleared" , timeout = 60 )
1124
+ self .progress ("Baro-less Surface mode OK" )
1125
+ self .disarm_vehicle ()
1126
+ self .context_pop ()
1127
+
1102
1128
def tests (self ):
1103
1129
'''return list of all tests'''
1104
1130
ret = super (AutoTestSub , self ).tests ()
@@ -1135,6 +1161,7 @@ def tests(self):
1135
1161
self .INA3221 ,
1136
1162
self .PosHoldBounceBack ,
1137
1163
self .SHT3X ,
1164
+ self .SurfaceSensorless ,
1138
1165
])
1139
1166
1140
1167
return ret
0 commit comments