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
DeLag: Detecting Latency Degradation Patterns in Service-based Systems

DeLag: Detecting Latency Degradation Patterns in Service-based Systems Replication package of the work "DeLag: Detecting Latency Degradation Patterns

SEALABQualityGroup @ University of L'Aquila 2 Mar 24, 2022
Liecasadi - liecasadi implements Lie groups operation written in CasADi

liecasadi liecasadi implements Lie groups operation written in CasADi, mainly di

Artificial and Mechanical Intelligence 14 Nov 05, 2022
We utilize deep reinforcement learning to obtain favorable trajectories for visual-inertial system calibration.

Unified Data Collection for Visual-Inertial Calibration via Deep Reinforcement Learning Update: The lastest code will be updated in this branch. Pleas

ETHZ ASL 27 Dec 29, 2022
An AI Assistant More Than a Toolkit

tymon An AI Assistant More Than a Toolkit The reason for creating framework tymon is simple. making AI more like an assistant, helping us to complete

TymonXie 46 Oct 24, 2022
Robot Hacking Manual (RHM). From robotics to cybersecurity. Papers, notes and writeups from a journey into robot cybersecurity.

RHM: Robot Hacking Manual Download in PDF RHM v0.4 ┃ Read online The Robot Hacking Manual (RHM) is an introductory series about cybersecurity for robo

Víctor Mayoral Vilches 233 Dec 30, 2022
2020 CCF大数据与计算智能大赛-非结构化商业文本信息中隐私信息识别-第7名方案

2020CCF-NER 2020 CCF大数据与计算智能大赛-非结构化商业文本信息中隐私信息识别-第7名方案 bert base + flat + crf + fgm + swa + pu learning策略 + clue数据集 = test1单模0.906 词向量

67 Oct 19, 2022
StocksMA is a package to facilitate access to financial and economic data of Moroccan stocks.

Creating easier access to the Moroccan stock market data What is StocksMA ? StocksMA is a package to facilitate access to financial and economic data

Salah Eddine LABIAD 28 Jan 04, 2023
Custom IMDB Dataset is extracted between 2020-2021 and custom distilBERT model is trained for movie success probability prediction

IMDB Success Predictor Project involves Web Scraping custom IMDB data between 2020 and 2021 of 10000 movies and shows sorted by number of votes ,fine

Gautam Diwan 1 Jan 18, 2022
[NeurIPS 2021] Galerkin Transformer: a linear attention without softmax

[NeurIPS 2021] Galerkin Transformer: linear attention without softmax Summary A non-numerical analyst oriented explanation on Toward Data Science abou

Shuhao Cao 159 Dec 20, 2022
The code used for the free [email protected] Webinar series on Reinforcement Learning in Finance

Reinforcement Learning in Finance [email protected] Webinar This repository provides the code f

Yves Hilpisch 62 Dec 22, 2022
GazeScroller - Using Facial Movements to perform Hands-free Gesture on the system

GazeScroller Using Facial Movements to perform Hands-free Gesture on the system

2 Jan 05, 2022
Created as part of CS50 AI's coursework. This AI makes use of knowledge entailment to calculate the best probabilities to win Minesweeper.

Minesweeper-AI Created as part of CS50 AI's coursework. This AI makes use of knowledge entailment to calculate the best probabilities to win Minesweep

Beckham 0 Jul 20, 2022
noisy labels; missing labels; semi-supervised learning; entropy; uncertainty; robustness and generalisation.

ProSelfLC: CVPR 2021 ProSelfLC: Progressive Self Label Correction for Training Robust Deep Neural Networks For any specific discussion or potential fu

amos_xwang 57 Dec 04, 2022
MOpt-AFL provided by the paper "MOPT: Optimized Mutation Scheduling for Fuzzers"

MOpt-AFL 1. Description MOpt-AFL is a AFL-based fuzzer that utilizes a customized Particle Swarm Optimization (PSO) algorithm to find the optimal sele

172 Dec 18, 2022
Public repository of the 3DV 2021 paper "Generative Zero-Shot Learning for Semantic Segmentation of 3D Point Clouds"

Generative Zero-Shot Learning for Semantic Segmentation of 3D Point Clouds Björn Michele1), Alexandre Boulch1), Gilles Puy1), Maxime Bucher1) and Rena

valeo.ai 15 Dec 22, 2022
🌊 Online machine learning in Python

In a nutshell River is a Python library for online machine learning. It is the result of a merger between creme and scikit-multiflow. River's ambition

OnlineML 4k Jan 02, 2023
The source code for the Cutoff data augmentation approach proposed in this paper: "A Simple but Tough-to-Beat Data Augmentation Approach for Natural Language Understanding and Generation".

Cutoff: A Simple Data Augmentation Approach for Natural Language This repository contains source code necessary to reproduce the results presented in

Dinghan Shen 49 Dec 22, 2022
Official repository for "Action-Based Conversations Dataset: A Corpus for Building More In-Depth Task-Oriented Dialogue Systems"

Action-Based Conversations Dataset (ABCD) This respository contains the code and data for ABCD (Chen et al., 2021) Introduction Whereas existing goal-

ASAPP Research 49 Oct 09, 2022
Model serving at scale

Run inference at scale Cortex is an open source platform for large-scale machine learning inference workloads. Workloads Realtime APIs - respond to pr

Cortex Labs 7.9k Jan 06, 2023