@@ -1107,6 +1107,32 @@ def SHT3X(self):
1107
1107
if m is None :
1108
1108
raise NotAchievedException ("Did not get good TEMP message" )
1109
1109
1110
+ def SurfaceSensorless (self ):
1111
+ """Test surface mode with sensorless thrust"""
1112
+ # set GCS failsafe to SURFACE
1113
+ self .wait_ready_to_arm ()
1114
+ self .arm_vehicle ()
1115
+ self .change_mode ("STABILIZE" )
1116
+ self .set_parameter ("MAV_GCS_SYSID" , self .mav .source_system )
1117
+
1118
+ self .set_rc (Joystick .Throttle , 1100 )
1119
+ self .wait_altitude (altitude_min = - 10 , altitude_max = - 9 , relative = False , timeout = 60 )
1120
+ self .set_rc (Joystick .Throttle , 1500 )
1121
+
1122
+ self .context_push ()
1123
+ self .setGCSfailsafe (4 )
1124
+ self .set_parameter ("SIM_BARO_DISABLE" , 1 )
1125
+ self .set_heartbeat_rate (0 )
1126
+ self .wait_mode ("SURFACE" )
1127
+ self .progress ("Surface mode engaged" )
1128
+ self .wait_altitude (altitude_min = - 1 , altitude_max = 0 , relative = False , timeout = 60 )
1129
+ self .progress ("Vehicle resurfaced" )
1130
+ self .set_heartbeat_rate (self .speedup )
1131
+ self .wait_statustext ("GCS Failsafe Cleared" , timeout = 60 )
1132
+ self .progress ("Baro-less Surface mode OK" )
1133
+ self .disarm_vehicle ()
1134
+ self .context_pop ()
1135
+
1110
1136
def tests (self ):
1111
1137
'''return list of all tests'''
1112
1138
ret = super (AutoTestSub , self ).tests ()
@@ -1143,6 +1169,7 @@ def tests(self):
1143
1169
self .INA3221 ,
1144
1170
self .PosHoldBounceBack ,
1145
1171
self .SHT3X ,
1172
+ self .SurfaceSensorless ,
1146
1173
])
1147
1174
1148
1175
return ret
0 commit comments