Setup general autopilot parameters
After the firmware has been uploaded, you will need to setup both standard and custom ArduCopter parameters. You can use your standard tools for this using Mission Planner or any other ArduCopter-compatible software. Or, you can also use Skybrush Live itself.
The list of available custom ArduCopter parameters defined for the new SHOW flight mode are listed in the Appendix. The most important ones are also detailed in the following sections of this tutorial.
The following standard ArduCopter parameters are also need to be checked and set up properly.
If you work with multiple drones, first of all, make sure that each of them has a unique ID (set by the
|This parameter is 8-bit only, so you can only manage up to around 250 drones by default. If you need more, you have to setup multiple Wi-fi interfaces in your GCS laptop, and configure Skybrush Server to derive drone IDs that also include a "network identifier" so you can distinguish drone 42 in network 1 from drone 42 in network 2 and so on (see more details in the Wifi setup part of this tutorial).
We require to use MAVLink 2 protocol instead of MAVLink 1 in all serial channels where MAVLink is used:
where x is the number of the channel you configure.
MAVLink 2 is required for the serial wifi channel and for MAVLink-driven LED support, too.
To disable excess communication on the wifi channel, please disable all unwanted messages:
where x should be the number of the serial channel of your wifi connection.
Please note that Mission Planner and other GCS software tend to change these parameters permanently without notice, which might result in bandwidth shortage if many drones are used.
To prevent the drone from activating its failsafe mode of operation when the RC reception is lost temporarily during a show, disable the RC failsafe:
This is required if you use a remote controller, otherwise it is optional.
Drone shows require accurate horizontal and vertical positioning of the drones. The horizontal positioning is provided by GPS in outdoor shows and some beacon-based navigation system in indoor shows. The vertical positioning is a bit more complex as there are usually two possible altitude sources in a drone: the pressure sensor and the GPS. The pressure sensor provides altitude above home level (AHL), and it is assumed to be zero at takeoff. The GPS provides altitude above mean sea level (AMSL). Autopilots usually maintain an assumed offset between the two altitude sources and they fuse the two measurements, assigning a higher weight to the pressure sensor because GPS-based altitude readings are not very accurate if you do not use RTK corrections.
The preferred set of parameters is different, based on whether you want to fly without RTK corrections or with RTK corrections. Without RTK corrections, the pressure sensor should be the primary source of altitude and Skybrush Live must be configured to control the show based on AHL because this is what the pressure sensor provides. In this setup, GPS altitude will be blended into the altitude reported by the pressure sensor, but only with a relatively low weight:
EK3_PRIMARY 0 EK3_SRC1_POSXY 3 EK3_SRC1_VELXY 3 EK3_SRC1_POSZ 1 EK3_SRC1_VELZ 3 EK3_SRC1_YAW 1
The above settings instruct the drone to use GPS for velocity and horizontal position, but to use the pressure sensor for vertical position.
If you want to fly with RTK corrections, the primary source of altitude should be the GPS. Our firmware is smart enough to use the GPS as the altitude source only if RTK corrections are present (and it falls back to the pressure sensor in case of loss of RTK corrections). The preferred settings should be:
EK3_PRIMARY 0 EK3_SRC1_POSXY 3 EK3_SRC1_VELXY 3 EK3_SRC1_POSZ 3 EK3_SRC1_VELZ 3 EK3_SRC1_YAW 1
Skybrush uses the built-in position and waypoint controllers of the ArduCopter firmware, and it sends updated setpoints to these controllers at a high frequency (several times per second). The default settings of the controllers are better suited for use-cases when setpoints are changed infrequently, and the controllers themselves have a tendendy to shape or limit the inputs they are provided with. In order to avoid the firmware code to alter Skybrush’s commands significantly, the limits of the position and waypoint controllers should be raised. A reasonable set of default settings for most mid-sized show drones is as follows:
PSC_JERK_XY 20 PSC_JERK_Z 20 WPNAV_ACCEL 800 WPNAV_ACCEL_Z 500 WPNAV_SPEED 1000 WPNAV_SPEED_DN 300 WPNAV_SPEED_UP 550 WPNAV_JERK 10
If you are using an older version of our firmware, it might happen that some of these parameters do not exist yet; feel free to ignore these.
At show start drones first arm their motors and spin them at low speed, then take off only after a few seconds. To prevent the drone from disarming its motors before takeoff, set the following:
Any value higher than 10 is OK, but do NOT set it less than 10.