hybridgroup.gobot/platforms/dji/tello
Silke Hofstra d7a05969c2 tello: update FlightData struct
- Correct the name of EmSky, EmGround and GroundSpeed to Flying,
  OnGround and VerticalSpeed.
- Remove FlySpeed, WifiDisturb and WifiStrength as these are not part
  of the data.
- Add AirSpeed() and GroundSpeed() for calculating the airspeed and
  ground speed.

Signed-off-by: Silke Hofstra <silke@slxh.eu>
2018-10-04 11:24:34 +02:00
..
README.md tello: cleanup docs 2018-04-19 09:50:40 +02:00
crc.go tello: refactor crc8 and crc16 functions 2018-04-24 10:29:59 +02:00
driver.go tello: update FlightData struct 2018-10-04 11:24:34 +02:00
driver_test.go specify end of msgType position 2018-07-13 09:19:09 +02:00
pitch.go tello: ability to send real-time stick commands 2018-04-13 13:50:11 +02:00
pitch_test.go tello: ability to send real-time stick commands 2018-04-13 13:50:11 +02:00

README.md

Tello

This package contains the Gobot driver for the Ryze Tello drone, sold by DJI.

For more information on this drone, go to: https://www.ryzerobotics.com/tello

How to Install

go get -d -u gobot.io/x/gobot/...

How to Use

Connect to the drone's Wi-Fi network from your computer. It will be named something like "TELLO-XXXXXX".

Once you are connected you can run the Gobot code on your computer to control the drone.

Here is a sample of how you initialize and use the driver:

package main

import (
	"fmt"
	"time"

	"gobot.io/x/gobot"
	"gobot.io/x/gobot/platforms/dji/tello"
)

func main() {
	drone := tello.NewDriver("8888")

	work := func() {
		drone.TakeOff()

		gobot.After(5*time.Second, func() {
			drone.Land()
		})
	}

	robot := gobot.NewRobot("tello",
		[]gobot.Connection{},
		[]gobot.Device{drone},
		work,
	)

	robot.Start()
}

References

This driver could not exist without the awesome members of the unofficial Tello forum:

https://tellopilots.com/forums/tello-development.8/

Special thanks to @Kragrathea who figured out a LOT of the packets and code as implemented in C#: https://github.com/Kragrathea/TelloPC

Also thanks to @microlinux with the Python library which served as the first example for the Tello community: https://github.com/microlinux/tello

Thank you to bluejune for the https://bitbucket.org/PingguSoft/pytello repo, especially the Wireshark Lua dissector which has proven indispensable.