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
Code for classifying international patents based on the text of their titles/abstracts

Patent Classification Goal: To train a machine learning classifier that can automatically classify international patents downloaded from the WIPO webs

Prashanth Rao 1 Nov 08, 2022
Official repository for Few-shot Image Generation via Cross-domain Correspondence (CVPR '21)

Few-shot Image Generation via Cross-domain Correspondence Utkarsh Ojha, Yijun Li, Jingwan Lu, Alexei A. Efros, Yong Jae Lee, Eli Shechtman, Richard Zh

Utkarsh Ojha 251 Dec 11, 2022
Code for "Searching for Efficient Multi-Stage Vision Transformers"

Searching for Efficient Multi-Stage Vision Transformers This repository contains the official Pytorch implementation of "Searching for Efficient Multi

Yi-Lun Liao 62 Oct 25, 2022
Swin-Transformer is basically a hierarchical Transformer whose representation is computed with shifted windows.

Swin-Transformer Swin-Transformer is basically a hierarchical Transformer whose representation is computed with shifted windows. For more details, ple

旷视天元 MegEngine 9 Mar 14, 2022
YoloAll is a collection of yolo all versions. you you use YoloAll to test yolov3/yolov5/yolox/yolo_fastest

官方讨论群 QQ群:552703875 微信群:15158106211(先加作者微信,再邀请入群) YoloAll项目简介 YoloAll是一个将当前主流Yolo版本集成到同一个UI界面下的推理预测工具。可以迅速切换不同的yolo版本,并且可以针对图片,视频,摄像头码流进行实时推理,可以很方便,直观

DL-Practise 244 Jan 01, 2023
CHERRY is a python library for predicting the interactions between viral and prokaryotic genomes

CHERRY is a python library for predicting the interactions between viral and prokaryotic genomes. CHERRY is based on a deep learning model, which consists of a graph convolutional encoder and a link

Kenneth Shang 12 Dec 15, 2022
Supplementary materials to "Spin-optomechanical quantum interface enabled by an ultrasmall mechanical and optical mode volume cavity" by H. Raniwala, S. Krastanov, M. Eichenfield, and D. R. Englund, 2022

Supplementary materials to "Spin-optomechanical quantum interface enabled by an ultrasmall mechanical and optical mode volume cavity" by H. Raniwala,

Stefan Krastanov 1 Jan 17, 2022
Solve a Rubiks Cube using Python Opencv and Kociemba module

Rubiks_Cube_Solver Solve a Rubiks Cube using Python Opencv and Kociemba module Main Steps Get the countours of the cube check whether there are tota

Adarsh Badagala 176 Jan 01, 2023
Molecular Sets (MOSES): A benchmarking platform for molecular generation models

Molecular Sets (MOSES): A benchmarking platform for molecular generation models Deep generative models are rapidly becoming popular for the discovery

Neelesh C A 3 Oct 14, 2022
Implement A3C for Mujoco gym envs

pytorch-a3c-mujoco Disclaimer: my implementation right now is unstable (you ca refer to the learning curve below), I'm not sure if it's my problems. A

Andrew 70 Dec 12, 2022
Distributionally robust neural networks for group shifts

Distributionally Robust Neural Networks for Group Shifts: On the Importance of Regularization for Worst-Case Generalization This code implements the g

151 Dec 25, 2022
Data visualization app for H&M competition in kaggle

handm_data_visualize_app Data visualization app by streamlit for H&M competition in kaggle. competition page: https://www.kaggle.com/competitions/h-an

Kyohei Uto 12 Apr 30, 2022
Implementation of Retrieval-Augmented Denoising Diffusion Probabilistic Models in Pytorch

Retrieval-Augmented Denoising Diffusion Probabilistic Models (wip) Implementation of Retrieval-Augmented Denoising Diffusion Probabilistic Models in P

Phil Wang 55 Jan 01, 2023
BT-Unet: A-Self-supervised-learning-framework-for-biomedical-image-segmentation-using-Barlow-Twins

BT-Unet: A-Self-supervised-learning-framework-for-biomedical-image-segmentation-using-Barlow-Twins Deep learning has brought most profound contributio

Narinder Singh Punn 12 Dec 04, 2022
Implementation of DocFormer: End-to-End Transformer for Document Understanding, a multi-modal transformer based architecture for the task of Visual Document Understanding (VDU)

DocFormer - PyTorch Implementation of DocFormer: End-to-End Transformer for Document Understanding, a multi-modal transformer based architecture for t

171 Jan 06, 2023
Flask101 - FullStack Web Development with Python & JS - From TAQWA

Task: Create a CLI Calculator Step 0: Creating Virtual Environment $ python -m

Hossain Foysal 1 May 31, 2022
Comp445 project - Data Communications & Computer Networks

COMP-445 Data Communications & Computer Networks Change Python version in Conda

Peng Zhao 2 Oct 03, 2022
This tutorial repository is to introduce the functionality of KGTK to first-time users

Welcome to the KGTK notebook tutorial The goal of this tutorial repository is to introduce the functionality of KGTK to first-time users. The Knowledg

USC ISI I2 58 Dec 21, 2022
Code for our ICCV 2021 Paper "OadTR: Online Action Detection with Transformers".

Code for our ICCV 2021 Paper "OadTR: Online Action Detection with Transformers".

66 Dec 15, 2022
Reinforcement learning library in JAX.

Reinforcement learning library in JAX.

Yicheng Luo 96 Oct 30, 2022