0

On the DroneKit.io page, it mentions using DroneKit Python when creating Ground Control Stations for Windows. However, there appears to be no documentation for this.

Is it meant to simply simulate a com port and act as a proxy for other Ground Control Stations, which just makes it easier hijack the MAVLink?

Also, it mentions Python being used for low-latency processes. This seems to be oxymoronic. Is there a reason that it would be better than just using C/C++ for the purpose of hijacking the MAVLink?

Thanks!

Indeed
  • 139
  • 14

1 Answers1

3

DroneKit-Python can be used either to create a python-based ground station or it can be run on a companion computer. There is no practical difference between the two except how you set up the connection to the vehicle from the computer running the script. The different ways of starting MAVProxy for the different connections are covered in the Getting Started documentation.

The reason that there is no "specific" documentation on using DK-Python for GCS is primarily "marketing". The far bigger market for ground station GCS software is in tablets/phones that will use DK-Android or a future iOS port. DK-Python has been positioned solely as for use in the air interface. Even though there is no "specific" documentation, in fact all the existing documentation is relevant.

Is it meant to simply simulate a com port and act as a proxy for other Ground Control Stations, which just makes it easier hijack the MAVLink?

No. See above.

Also, it mentions Python being used for low-latency processes. This seems to be oxymoronic. Is there a reason that it would be better than just using C/C++ for the purpose of hijacking the MAVLink?

It doesn't mention low-latency processes, so the answer is "invalid question".

You're probably misreading the text "that require a low-latency link". The point here is that if you have dronekit-python running on a companion computer and connected by a fast link you can do real time handling of incoming sensor data. This allows computer vision control of the UAV. However if you run DK-Python on a ground control station you will have a much slower link. You can still control movement of the UAV but the latency will be much higher.

Hope that helps!

Hamish Willee
  • 372
  • 1
  • 3
  • 11
  • Thanks for your help. I still feel that Python has higher latency than C and isn't as good at running computationally intensive processes, but it's better than trying to sell a product which requires a 1-to-1 ratio of phones to drones as a third party developer. – Indeed Jul 14 '15 at 15:27
  • It really doesn't matter how fast your processing is on the computer if the bottleneck by several orders of magnitude is the comms link :-) Of course C code can be faster than than Python code - but given how much easier Python is to program and the above point, worth checking if there is enough speed with Python before worrying about programming using a language that isn't supported. – Hamish Willee Jul 15 '15 at 02:10