Comparison summary between different SDK's and it uses - HU-ICT-LAB/RobotWars GitHub Wiki

Introduction

On this page, we will explain the different SDK's that we found and tested and at the end a short summery about the pro's and cons

Plaintext sdk

The robot can be controlled with code with different approaches. The first method is controlling the robot via a text sdk provided from Robotmaster. This method uses a websocket to connect to the robot and read strings out that translates to actions. For each string sent, it will be placed on top of a queue that cannot be interrupted.

Python api from robotmaster python SDK

The second method is using the python api from the robotmaster SDK. This uses python 3.7 as interpreter. With the use of this api, we can easily use extra python libraries for machine learning and gathering data. This gives us more control over the robot on how we want to use it and python is our preferred programming language.

Community made api for python

We had found another python api framework made by a community member that looked nice at first but is not needed for this project. It claims to make a more user friendly framework but what it basically does it, that it takes the original api and slaps on some extra code to make it work faster out of the box but not necessarily easier. we only use this framework to look up some examples but not use the frame itself.

Plaintext

Pros Cons
Easy to use Has a few bugs
can be used in other programming languages like C, C++, Rust, Java slow
socket communication only
long commands to do something

Python api

Pros Cons
Python programming environment Has no framework for multi processing
Good documentation about function
Supported by community

Community made api

Pros Cons
Has pre-made programs Maintained by only 1 person
Framework has nice to have features 1 version outdated

Sources:

Introduction to the Plaintext SDK — RoboMaster Developer Guide documentation. (2021). Robomaster-Dev.Readthedocs.Io. Retrieved 26 January 2022, from https://robomaster-dev.readthedocs.io/en/latest/text_sdk/intro.html

Getting Started with RoboMaster SDK - Basics — RoboMaster Developer Guide documentation. (2021). Robomaster-Dev.Readthedocs.Io. Retrieved 26 January 2022, from https://robomaster-dev.readthedocs.io/en/latest/python_sdk/beginner.html

N. (2020). GitHub - nanmu42/robomasterpy: DJI RoboMaster Python SDK and programing framework | 大疆机甲大师的Python SDK和编程框架. GitHub. Retrieved 26 January 2022, from https://github.com/nanmu42/robomasterpy

Related Issues

Issues: #49