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

[WIP] Add basic Rally/Safe Points in RTL #7743

Closed
wants to merge 4 commits into from
Closed

[WIP] Add basic Rally/Safe Points in RTL #7743

wants to merge 4 commits into from

Conversation

bkueng
Copy link
Member

@bkueng bkueng commented Aug 7, 2017

This adds a basic implementation for Safe Points in RTL. If there are Safe Points, the vehicle will fly to the closest one (including the home position).

I decided to add it to RTL (versus the Landing mode in navigator), because the Landing is also used in failure cases such as GPS or global position loss.

@DonLakeFlyer I'll need QGC support to test this. From what I see the point upload is not enabled in mavlink/qgroundcontrol#5474 due to https://github.com/mavlink/qgroundcontrol/blob/master/src/MissionManager/RallyPointManager.cc#L42.

@dagar @sanderux

@sanderux
Copy link
Member

sanderux commented Aug 7, 2017

Looking really good.
Perhaps we should make a distinction between a commanded RTL or a failsafe RTL. Or even make it a separate mode Land at Safe Point. I would imagine a low battery event set correctly might prefer RTL over Safe Point whereas a QuadChute event would favor Safe Point.

Also when manually switching RTL the Safe Point behavior might not always be the intended behavior.

Also i believe QGC can add a RTL at the end of a mission if it does not contain a landing item, Safe Point would also not be the preferred behavior there.

@dagar
Copy link
Member

dagar commented Aug 7, 2017

I'm also wondering if we need to distinguish this from explicitly returning to home and how it fits with user expectations for return.

@bkueng bkueng force-pushed the rally_points branch 2 times, most recently from e6e67e8 to 4d1483d Compare August 8, 2017 09:02
@LorenzMeier
Copy link
Member

@bkueng I think we should have two distinct behaviours: One option is to fly to a safe point on a new command or failsafe action (need to check if something exists in the MAVLink spec) and the other to treat all equal and to fly to a safe location.

The very likely corner case being that you define safe points but the user is expecting RTL to return the vehicle (like pulling on a leash), not landing it out there. RTL Is right now the only method of conveniently getting a vehicle back that is at the edge of VLOS flight.

@Antiheavy
Copy link
Contributor

Antiheavy commented Oct 30, 2017

There is some discussion here: mavlink/qgroundcontrol#5725 and here: #8116 about how this Safe/Rally point capability should be it's own mode and not part of "Return" mode. One benefit of this would be the user could select "Rally" or "Safespot"as a failsafe behavior for certain events and still select "Return" as failsafe behavior for other events.

@TSC21
Copy link
Member

TSC21 commented Mar 21, 2018

@bkueng do you have a plan to get back to this? Can we start by rebasing? @arwagoner FYI

@DonLakeFlyer
Copy link
Contributor

FYI: Rally Points are supported in QGC. They were tested with MockLink which supports all the new mission type protocol.

@bkueng
Copy link
Member Author

bkueng commented Mar 26, 2018

@bkueng do you have a plan to get back to this? Can we start by rebasing? @arwagoner FYI

I think we first need to clarify and agree on the behavior that we want and the use-cases.

@TSC21
Copy link
Member

TSC21 commented Mar 26, 2018

Sure. What about discussing this in a call?

@bkueng bkueng added the devcall label Mar 27, 2018
@bkueng
Copy link
Member Author

bkueng commented Mar 27, 2018

dev-call?

@TSC21
Copy link
Member

TSC21 commented Mar 27, 2018

I am usually not available at the time of the dev calls so that's why I was suggesting an extra one

@bkueng
Copy link
Member Author

bkueng commented Mar 27, 2018

Ok, can you organize it?

@jros92
Copy link

jros92 commented Dec 31, 2018

I was trying to use this branch as the basis for a failsafe feature I would like to develop, and checked out the branch, but cannot get it to build due to incompatibilities with submodules (SITL build). Is it possible to use this feature without having to do a complete rebase? Or is anyone working on rebasing this already? Thanks!

@bkueng
Copy link
Member Author

bkueng commented Jan 7, 2019

You'd have to rebase. But feel free to create a new PR if you have it working, I'm not working on this.
The biggest problem was that we (or at least I) never had a clear view of what the behavior should be.

@dagar dagar removed the devcall label Jan 30, 2019
@dagar dagar removed the devcall label Jan 30, 2019
@PX4 PX4 deleted a comment from stale bot Jul 15, 2019
@stale stale bot removed the Admin: Wont fix label Jul 15, 2019
@julianoes julianoes requested a review from dagar July 15, 2019 17:07
@julianoes
Copy link
Contributor

@bkueng is this still applicable?

@bkueng
Copy link
Member Author

bkueng commented Jul 16, 2019

Yes, but the branch is just too outdated, so closing.

@bkueng bkueng closed this Jul 16, 2019
@julianoes julianoes deleted the rally_points branch July 18, 2019 11:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

10 participants