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
Website for D2C paper

D2C This is the repository that contains source code for the D2C Website. If you find D2C useful for your work please cite: @article{sinha2021d2c au

1 Oct 21, 2021
A set of tools for creating and testing machine learning features, with a scikit-learn compatible API

Feature Forge This library provides a set of tools that can be useful in many machine learning applications (classification, clustering, regression, e

Machinalis 380 Nov 05, 2022
Official Implementation for the paper DeepFace-EMD: Re-ranking Using Patch-wise Earth Mover’s Distance Improves Out-Of-Distribution Face Identification

DeepFace-EMD: Re-ranking Using Patch-wise Earth Mover’s Distance Improves Out-Of-Distribution Face Identification Official Implementation for the pape

Anh M. Nguyen 36 Dec 28, 2022
Pytorch implementation of Supporting Clustering with Contrastive Learning, NAACL 2021

Supporting Clustering with Contrastive Learning SCCL (NAACL 2021) Dejiao Zhang, Feng Nan, Xiaokai Wei, Shangwen Li, Henghui Zhu, Kathleen McKeown, Ram

231 Jan 05, 2023
Dynamica causal Bayesian optimisation

Dynamic Causal Bayesian Optimization This is a Python implementation of Dynamic Causal Bayesian Optimization as presented at NeurIPS 2021. Abstract Th

nd308 18 Nov 22, 2022
PyTorch implementation of the Pose Residual Network (PRN)

Pose Residual Network This repository contains a PyTorch implementation of the Pose Residual Network (PRN) presented in our ECCV 2018 paper: Muhammed

Salih Karagoz 289 Nov 28, 2022
Learning High-Speed Flight in the Wild

Learning High-Speed Flight in the Wild This repo contains the code associated to the paper Learning Agile Flight in the Wild. For more information, pl

Robotics and Perception Group 391 Dec 29, 2022
PFLD pytorch Implementation

PFLD-pytorch Implementation of PFLD A Practical Facial Landmark Detector by pytorch. 1. install requirements pip3 install -r requirements.txt 2. Datas

zhaozhichao 669 Jan 02, 2023
Using machine learning to predict and analyze high and low reader engagement for New York Times articles posted to Facebook.

How The New York Times can increase Engagement on Facebook Using machine learning to understand characteristics of news content that garners "high" Fa

Jessica Miles 0 Sep 16, 2021
Ludwig is a toolbox that allows to train and evaluate deep learning models without the need to write code.

Translated in 🇰🇷 Korean/ Ludwig is a toolbox that allows users to train and test deep learning models without the need to write code. It is built on

Ludwig 8.7k Jan 05, 2023
CaLiGraph Ontology as a Challenge for Semantic Reasoners ([email protected]'21)

CaLiGraph for Semantic Reasoning Evaluation Challenge This repository contains code and data to use CaLiGraph as a benchmark dataset in the Semantic R

Nico Heist 0 Jun 08, 2022
mlpack: a scalable C++ machine learning library --

a fast, flexible machine learning library Home | Documentation | Doxygen | Community | Help | IRC Chat Download: current stable version (3.4.2) mlpack

mlpack 4.2k Jan 09, 2023
Cortex-compatible model server for Python and TensorFlow

Nucleus model server Nucleus is a model server for TensorFlow and generic Python models. It is compatible with Cortex clusters, Kubernetes clusters, a

Cortex Labs 14 Nov 27, 2022
Code for our NeurIPS 2021 paper Mining the Benefits of Two-stage and One-stage HOI Detection

CDN Code for our NeurIPS 2021 paper "Mining the Benefits of Two-stage and One-stage HOI Detection". Contributed by Aixi Zhang*, Yue Liao*, Si Liu, Mia

71 Dec 14, 2022
Convolutional Neural Network for Text Classification in Tensorflow

This code belongs to the "Implementing a CNN for Text Classification in Tensorflow" blog post. It is slightly simplified implementation of Kim's Convo

Denny Britz 5.5k Jan 02, 2023
Official implementation of CVPR2020 paper "Deep Generative Model for Robust Imbalance Classification"

Deep Generative Model for Robust Imbalance Classification Deep Generative Model for Robust Imbalance Classification Xinyue Wang, Yilin Lyu, Liping Jin

9 Nov 01, 2022
PyTorch implementation of Munchausen Reinforcement Learning based on DQN and SAC. Handles discrete and continuous action spaces

Exploring Munchausen Reinforcement Learning This is the project repository of my team in the "Advanced Deep Learning for Robotics" course at TUM. Our

Mohamed Amine Ketata 10 Mar 10, 2022
GLaRA: Graph-based Labeling Rule Augmentation for Weakly Supervised Named Entity Recognition

GLaRA: Graph-based Labeling Rule Augmentation for Weakly Supervised Named Entity Recognition

Xinyan Zhao 29 Dec 26, 2022
PyTorch implementation of our ICCV 2021 paper Intrinsic-Extrinsic Preserved GANs for Unsupervised 3D Pose Transfer.

Unsupervised_IEPGAN This is the PyTorch implementation of our ICCV 2021 paper Intrinsic-Extrinsic Preserved GANs for Unsupervised 3D Pose Transfer. Ha

25 Oct 26, 2022
NIMA: Neural IMage Assessment

PyTorch NIMA: Neural IMage Assessment PyTorch implementation of Neural IMage Assessment by Hossein Talebi and Peyman Milanfar. You can learn more from

Kyryl Truskovskyi 293 Dec 30, 2022