Convert Mission Planner (ArduCopter) Waypoint Missions to Litchi CSV Format to execute on DJI Drones

Overview

Mission Planner to Litchi

Convert Mission Planner (ArduCopter) Waypoint Surveys to Litchi CSV Format to execute on DJI Drones

Litchi doesn't support Survey mode yet, but here is a workaround! You will need Mission Planner installed in order to plan your mission.

Warning: This script was tested successfully 3 times, should work pretty stable. I'm not responsible for any damage of your drones.

Click here to Download for Windows

Mac version not available

Here's how to use it:
  1. Open Mission Planner
  2. Go to the Plan tab in Mission Planner

  1. Click the Polygon Icon --> Draw a Polygon

  1. Using clicks on the map, select the area you want to map

  1. Right-click inside the polygon, select Auto WP --> Survey (Grid)

  1. Adjust Settings like Altitude and Speed, also enable Advanced Options

  1. In the Camera Config Tab, Set your camera settings, make sure the FOV values are correct after inputing all camera settings. You can save your camera preset by using the Save button. Also make sure the CAM_TRIGG_DIST is selected!

  1. Go back to the Simple Tab, and click Accept

  1. Make sure the layout on the map is correct. Example:

  1. Save this mission as .waypoints file. Recommended save location is Desktop!

  1. Place the mission file and exe file on your Desktop

  1. Open the script and type the name of the mission file (ending with .waypoints) then press Enter

  1. The converted file (.csv) should be saved on your Desktop. Click Enter to exit the script.

  1. Go to Litchi Mission Settings and make sure that the selected in red settings (in the screenshot below) are set to desired values. Path Mode must be set to Straight Lines, otherwise the Auto-Photo mode will not work!

  1. Open Litchi Mission Hub and go to File --> Import

  1. Select file and click Import to new mission

  1. Review mission!

  1. Save Mission!

Comments
  • 7 stay for and take photo actions

    7 stay for and take photo actions

    What has been added?

    • utilization of litchi_wp package
    • Mission Planner command list in docs folder (command with the id)
    • enum class to handle Mission Planner commands more easily

    What has been changed?

    • code was rewritten to be more self-explanatory
    • code was prepared to support more Mission Planner commands
    • documentation has been updated
      • select absolute height in MP so litchi can handle the AGL part
      • explanation how the capture interval is set

    Review

    • The changes are fairly extensive, so I would appreciate tests of the application prior to the merge.
    enhancement 
    opened by JoeKae 17
  • Unable to convert

    Unable to convert

    I have followed your steps to creat a mission in mission planner then convert the .mission file to .csv using the tool how ever the script is closing prematurely without generating a result . could you please help . thanks Rohit

    opened by rohitmalhotra2203 11
  • Mission Planner to Litchi crashing on win11

    Mission Planner to Litchi crashing on win11

    I open MPTL on desktop and the .waypoints is on desktop too.

    I input the filename include .waypoints and the exe closes out everytime.

    Could this be a win11 issue perhaps?

    I have reinstalled and tried a few files from mission planner with the same issue.

    opened by Nguyentunnel 6
  • "Stay for" and "Take photo" actions

    Hi, I've noticed that "Mission Planner" and your "MissionPlanner-to-Litchi" converter doesn't include the actions for the drone to take photos in pre-determined spots. How this "auto-photo" mode you mentioned in the README works? How do Litchi knows the correct place to take the photos? I've set the path to Straight Lines.

    Also the "Above Ground" fields should be checked by default in the CSV creation (conversion) process so Litchi can calculate the correct height for each location when importing the mission.

    documentation 
    opened by brunoaduarte 4
  • api-ms-win-core-path-l1-1-1.ddl is missing

    api-ms-win-core-path-l1-1-1.ddl is missing

    Hi. Thanks for this coverter. I have an issue: When trying to start the script, a pop-up windows appears saying: The program can't start because api-ms-win-core-path-l1-1-1.ddl is missing from your computer. I searched and found the .dll file on the computer so I don't know what the problem is. I also checked it on another computer and the message was the same. Any thoughts?

    opened by av1444 4
  • AGL not set

    AGL not set

    If set to terrain relative height in mission planner, the kml output from mission planner is using agl heights. But the converted waypoints by this script are not set to agl.

    • Check if whis can be set in a waypoint file
    • add this feature
    bug 
    opened by JoeKae 2
  • Gimbal control (DO_MOUNT_CONTROL) Ignored

    Gimbal control (DO_MOUNT_CONTROL) Ignored

    I inserted a mount control waypoint in the MP interface to set the gimbal to -90deg, but that is dropped in the conversion process. (As are the takeoff and RTL commands)

    image

    enhancement 
    opened by WarrenSchultz 2
  • adds file selector gui

    adds file selector gui

    What has been added?

    GUI

    This PR adds a simple tkinter file selection GUI. You can select a single file or multiple files for conversion. The converted files are saved to the same directory that the source file is located in.

    What has been changed?

    README

    The Readme.md was changed to reflect the added GUI.

    Structure of the project

    The mp_to_litchi.py was put in a python package and is used as an import in the run.py. The filename of mp_to_litchi.py and the package as well was shortened to mp2litchi and mp2litchi.py respectively.

    opened by JoeKae 1
  • Update mp_to_litchi.py

    Update mp_to_litchi.py

    Allow to user script with arguments for process multiple files in batch. Save result to original file folder with original filename and csv extension.

    opened by VladimirPobedinskiy 1
  • Doc: Mission Planner survey modes

    Doc: Mission Planner survey modes

    There are different parameters for the survey generator in mission planner.

    We should split the main Readme and put a manual for each supported Mission Planner survey workflows in a seperate documentation.

    documentation 
    opened by JoeKae 0
  • gui pitch

    gui pitch

    What is this?

    This draft PR is intended to have a discussion with active collaboration regarding the new gui.

    This is a pitch for a gui. The framework used is Pyside6. I did watch some tutorials on youtube and made this mockup using the Qt designer.

    image

    Menu structure idea

    The idea is to have 3 main screens.

    1. Home: How to use (Maybe ? icon is better)
    2. List: List of all dropped files with buttons to convert all, convert single file, change settings for file
    3. settings: The default settings for all files that are dropped into the app

    The app should show the second screen on startup.

    Everything is subject to change.

    How to use this?

    Prerequisites

    • Python >=3.10
    • Pyside6
    pip install pyside6
    

    Run

    Run the gui_v2.py file.

    Edit gui

    Use the Qt designer, located in your virtual environment directory: Lib\site-packages\PySide6\designer.exe After doing changes run make gui in a terminal.

    Code documentation

    The code is not well documented yet, as frequent major changes are to be expected.

    enhancement 
    opened by JoeKae 4
  • Feat: improve mission time with DO_DIGICAM_CONTROL and Delay at WP

    Feat: improve mission time with DO_DIGICAM_CONTROL and Delay at WP

    When Mission Planner is creating a survey utilizing the DO_DIGICAM_CONTROL Trigger Method and a Delay at WP > 0, then Mission Planner is not only creating a delay at photo waypoints but at all waypoints.

    While this might be desirable in some cases, it usually is not. Removing the delay from non photo waypoints could improve the mission time.

    I suggest a checkbox that triggers removing those unnecessary delays. Before adding this, there should be the new gui.

    enhancement 
    opened by JoeKae 2
Releases(Alpha)
Owner
Yaros
Launchpadder, programmer, Youtuber!
Yaros
Geometric Vector Perceptrons --- a rotation-equivariant GNN for learning from biomolecular structure

Geometric Vector Perceptron Implementation of equivariant GVP-GNNs as described in Learning from Protein Structure with Geometric Vector Perceptrons b

Dror Lab 142 Dec 29, 2022
PyTorch implementation of Towards Accurate Alignment in Real-time 3D Hand-Mesh Reconstruction (ICCV 2021).

Towards Accurate Alignment in Real-time 3D Hand-Mesh Reconstruction Introduction This is official PyTorch implementation of Towards Accurate Alignment

TANG Xiao 96 Dec 27, 2022
Transparent Transformer Segmentation

Transparent Transformer Segmentation Introduction This repository contains the data and code for IJCAI 2021 paper Segmenting transparent object in the

谢恩泽 140 Jan 02, 2023
Code for "Neural 3D Scene Reconstruction with the Manhattan-world Assumption" CVPR 2022 Oral

News 05/10/2022 To make the comparison on ScanNet easier, we provide all quantitative and qualitative results of baselines here, including COLMAP, COL

ZJU3DV 365 Dec 30, 2022
Code for WECHSEL: Effective initialization of subword embeddings for cross-lingual transfer of monolingual language models.

WECHSEL Code for WECHSEL: Effective initialization of subword embeddings for cross-lingual transfer of monolingual language models. arXiv: https://arx

Institute of Computational Perception 45 Dec 29, 2022
Offline Multi-Agent Reinforcement Learning Implementations: Solving Overcooked Game with Data-Driven Method

Overcooked-AI We suppose to apply traditional offline reinforcement learning technique to multi-agent algorithm. In this repository, we implemented be

Baek In-Chang 14 Sep 16, 2022
Code to reproduce the results for Statistically Robust Neural Network Classification, published in UAI 2021

Code to reproduce the results for Statistically Robust Neural Network Classification, published in UAI 2021

1 Jun 02, 2022
This is an official source code for implementation on Extensive Deep Temporal Point Process

Extensive Deep Temporal Point Process This is an official source code for implementation on Extensive Deep Temporal Point Process, which is composed o

Haitao Lin 8 Aug 15, 2022
Generates all variables from your .tf files into a variables.tf file.

tfvg Generates all variables from your .tf files into a variables.tf file. It searches for every var.variable_name in your .tf files and generates a v

1 Dec 01, 2022
Everything you want about DP-Based Federated Learning, including Papers and Code. (Mechanism: Laplace or Gaussian, Dataset: femnist, shakespeare, mnist, cifar-10 and fashion-mnist. )

Differential Privacy (DP) Based Federated Learning (FL) Everything about DP-based FL you need is here. (所有你需要的DP-based FL的信息都在这里) Code Tip: the code o

wenzhu 83 Dec 24, 2022
Neural Network Libraries

Neural Network Libraries Neural Network Libraries is a deep learning framework that is intended to be used for research, development and production. W

Sony 2.6k Dec 30, 2022
PyMatting: A Python Library for Alpha Matting

Given an input image and a hand-drawn trimap (top row), alpha matting estimates the alpha channel of a foreground object which can then be composed onto a different background (bottom row).

PyMatting 1.4k Dec 30, 2022
A Simple Key-Value Data-store written in Python

mercury-db This is a File Based Key-Value Datastore that supports basic CRUD (Create, Read, Update, Delete) operations developed using Python. The dat

Vaidhyanathan S M 1 Jan 09, 2022
Labelbox is the fastest way to annotate data to build and ship artificial intelligence applications

Labelbox Labelbox is the fastest way to annotate data to build and ship artificial intelligence applications. Use this github repository to help you s

labelbox 1.7k Dec 29, 2022
La source de mon module 'pyfade' disponible sur Pypi.

Version: 1.2 Introduction Pyfade est un module permettant de créer des dégradés colorés. Il vous permettra de changer chaque ligne de votre texte par

Billy 20 Sep 12, 2021
ReSSL: Relational Self-Supervised Learning with Weak Augmentation

ReSSL: Relational Self-Supervised Learning with Weak Augmentation This repository contains PyTorch evaluation code, training code and pretrained model

mingkai 45 Oct 25, 2022
Memory Efficient Attention (O(sqrt(n)) for Jax and PyTorch

Memory Efficient Attention This is unofficial implementation of Self-attention Does Not Need O(n^2) Memory for Jax and PyTorch. Implementation is almo

Amin Rezaei 126 Dec 27, 2022
Streamlit tool to explore coco datasets

What is this This tool given a COCO annotations file and COCO predictions file will let you explore your dataset, visualize results and calculate impo

Jakub Cieslik 75 Dec 16, 2022
Code for "Retrieving Black-box Optimal Images from External Databases" (WSDM 2022)

Retrieving Black-box Optimal Images from External Databases (WSDM 2022) We propose how a user retreives an optimal image from external databases of we

joisino 5 Apr 13, 2022
OneFlow is a performance-centered and open-source deep learning framework.

OneFlow OneFlow is a performance-centered and open-source deep learning framework. Latest News Version 0.5.0 is out! First class support for eager exe

OneFlow 4.2k Jan 07, 2023