Storing WAYPOINT files onboard a drone

Hi All,

I would like to be able to store my mission files (waypoints, fences, rally points) onboard my drone somehow (e.g. on the micro SD card of my Cube Orange).

Thanks to this, I could reduce the time needed to upload each of these files to the drone, which can take a long time and can be hindered by poor cellular (as we are using cellular based telemetry), and instead just somehow select which of the files that are already on the drone should be used for a given flight.

Here’s some key context: we are conducting exclusively BVLOS operations with a remote pilot (the pilot is not located near the drone takeoff location or anywhere along the flight path), and flying missions fully in AUTO mode, up to 50 km total (25 km out, 25 km back to Home). We are using cellular based telemetry, so things like radio telemetry antennas line of sight etc are not a problem, although there is some more latency.

Is there anyway in which I can store multiple waypoint / fence / rally point files onboard the Cube Orange (e.g. like LUA scripts are stored) in a way that allows me to select which files the drone should use for a given flight and does not require uploading them to the drone remotely each time? Thanks!

There is already a Lua script for this!

You might have to modify based on your needs - but should be a good starting point.

2 Likes

Also here is a thread that goes in-depth on the topic: Switch Missions 'on the fly' - #67 by HaBa

2 Likes

This is super new - but looks like some support may have been added natively in Copter 4.4.

This looks like it’s only in Copter so far, but I’m looking forward to trying it out! I hope it works on the F4 boards that can’t run LUA.

No BRD_SD_MISSION parameter on a Kakute F7 I have sitting on the bench so perhaps not.

Darn. Custom build maybe? I wonder what would be “lighter”, the native version, or Lua?

I looked at that but I don’t see a data field that includes it.

Unless I’ve misunderstood this, the new feature in copter 4.4.0 is to increase the number of waypoints in a single mission. I.e. the current limit is around 650 waypoints, whereas this new feature would allow up to 4000 waypoints. But it doesn’t seem to enable multiple different missions and switching on the fly?

What do you mean by “on the fly”?
I haven’t tried it but I would guess it has the same functionality as the Lua script and you can select up to 3 missions stored on the card with a switch on Arming. The Simulator seems to suggest this with a " RCx: MissionReset MIDDLE" message.

The wiki seems to suggest it’s just to store one very large mission on the SD card rather than 3 missions like the lua script allows: Planning a Mission with Waypoints and Events — Copter documentation

I think the mission reset thing you’re referencing is to restart the mission from the first waypoint at any time, as mentioned in the wiki link above.

Given that you can now store thousands of waypoints, you don’t even really need a script to choose between stored missions. Just save one large one with multiple takeoffs and landings. Make notes of which waypoint numbers contain the takeoff waypoints, and use a GCS to set a takeoff waypoint as the current waypoint to fly what amounts to a “sub-mission.”

For example, I just ran this short mission in SITL:

image

After the first landing, it disarmed and awaited further input. I advanced the waypoint to 6 and armed again to fly the rest. I could just as easily have started at waypoint 6 from the beginning to only fly that portion.

3 Likes

@Yuri_Rage This is a smart solution. A way to make it even simpler to swap between each of the routes you have set by the waypoints between the takeoff/landing points is just using the SET_WAYPOINT feature in MAVLink (available on Mission Planner under the HUD). That way you can skip around to different takeoffs and do different routes.

Is this parameter available in ArduPlane (v.4.3.5 stable), “BRD_SD_MISSION” ?

There is ArduPlane 4.4.0 stable. Use that one.

@amilcarlucas The BRD_SD_MISSION is available in that version of ArduPlane?

I do not know that for sure. It depends on your board. So you need to test it.

Do you know if the Cube Orange supports this @amilcarlucas ?

Yes it does support it.

1 Like

Thanks for confirming!