Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Plane: backport takeoff fix PR 28792 #28901

Open
wants to merge 2 commits into
base: ArduPilot-4.6
Choose a base branch
from

Conversation

tridge
Copy link
Contributor

@tridge tridge commented Dec 18, 2024

back port of #28792

@rmackay9
Copy link
Contributor

This one is failing CI so I didn't include it in 4.6.0-beta3. I tried to restart it but somehow couldn't find the "restarted failed jobs" button in CI

@Georacer
Copy link
Contributor

Georacer commented Jan 22, 2025

I don't have rights to restart jobs. And I guess a re-base isn't an option in this case. Any suggestions?

But it's TakeoffIdleThrottle that's failing, so we might actually have an issue here. I'll investigate.

Comment on lines 4914 to 4940
def TakeoffIdleThrottle(self):
'''Apply idle throttle before takeoff.'''
self.customise_SITL_commandline(
[],
model='plane-catapult',
defaults_filepath=self.model_defaults_filepath("plane")
)
self.set_parameters({
"TKOFF_THR_IDLE": 20.0,
"TKOFF_THR_MINSPD": 3.0,
})
self.change_mode("TAKEOFF")

self.wait_ready_to_arm()
self.arm_vehicle()

# Ensure that the throttle rises to idle throttle.
expected_idle_throttle = 1000+10*self.get_parameter("TKOFF_THR_IDLE")
self.assert_servo_channel_range(3, expected_idle_throttle-10, expected_idle_throttle+10)

# Launch the catapult
self.set_servo(6, 1000)

self.delay_sim_time(5)
self.change_mode('RTL')

self.fly_home_land_and_disarm()
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This test was apparently accidentally brought in.
It refers to #28351, which is a feature not backported to 4.6.

tridge and others added 2 commits February 11, 2025 10:14
When an airspeed sensor is not used, during a takeoff, the pitch angle
is asymptotically driven to 0 as the takeoff altitude is approached.
Some airplanes will then stop climbing and fail to reach altitude.

To prevent an indefinite wait for the takeoff altitude to be reached, a
dedicated level-off timeout has been introduced.
@tridge tridge force-pushed the pr-takeoff-level-off-4.6 branch from 6448c7f to 278be8c Compare February 10, 2025 23:14
@tridge
Copy link
Contributor Author

tridge commented Feb 10, 2025

@Georacer I've removed the bad test, thanks
how critical do you think this backport is for 4.6.0 ?

@tridge tridge added the Plane label Feb 10, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
Status: No status
Development

Successfully merging this pull request may close these issues.

3 participants