Hello Tello Pilot!
Join our DJI Tello community & remove this banner.
Sign up

Tello. Whats possible?

Hi,

Can I deactivate the automatic landing (bad signal) with pytello?

Regards
Michel
 
I bought a more powerful antenna for a better wifi and getting pretty good results when I plug it to my desktop computer. (Best flight till now was over 200m and still got good signal)

But when I run the antenna on my Laptop I get lots of errors. But when I use the intern Laptop Wifi it works fine. I attach a video (has to be open with mplayer) and the log file with the errors to this post.

This are the specs from the wifi extender

Technical Data:
Manufacturer / Model:ALFA Networks / Cylinder-150 (Tube-N)Chipset:Ralink RT3070Frequency Band:2.4 GHz (Standard)WiFi Standards:IEEE 802.11b: 11 Mbps
IEEE 802.11g: 54 Mbps
IEEE 802.11n: 150 MBpsTX Power:ETSI: 100mW / 20dbm
EXPORT: 1000mW / 30bm
RX Sensitivity:-96dBm@11MBit
-92dBm@54MBit
-90dBm@150MBitOperating Modes:Infrastructure, Ad-Hoc, Soft-APSecurity:64/128-bit WEP, WPA/WPA2, WPA-PSK/WPA2-PSK (TKIP/AES)Channels:USA 11, Europa 13Antenna-Connector:N maleAppliance:In- and OutdoorI/O Interface:USB 1.1 / 2.0Supported OS:Windows 2000 / XP / Vista / 7 / 8 / 10, Linux, Mac OS (10.5 - 10.12)

Manufacturer:InterlineModel:IH-G07-F2425-VType of Antenna:Omnidirectional AntennaGain:7dBiImpedance:50 OhmFrequency:2,4 - 2,5 GHz
(IEEE 802.11 b/g/n)VSWR:max. 2.1Polarisation:Vertical (Linear)Beam width:360° Horizontal
24° VerticalConnector:N femaleAppliance:In- and Outdoor (IP64)DC-Ground:Yesmax. Windload:16N (@170km/h)Dimensions:36,0cm x 2,6cmWeight:320gColor:WhiteOperating Temperature:-20° to +60° C


My desktop runs a Readon Rx 460, my laptop is a Lenovo Yoga with standard Intel HD Graphics 520.


Please, I hope somebody can help me with this!
 

Attachments

  • 2018-05-14 20_35_21 video fail.zip
    6.4 MB · Views: 18
  • fail.txt
    40.5 KB · Views: 4
I bought a more powerful antenna for a better wifi and getting pretty good results when I plug it to my desktop computer. (Best flight till now was over 200m and still got good signal)

But when I run the antenna on my Laptop I get lots of errors. But when I use the intern Laptop Wifi it works fine. I attach a video (has to be open with mplayer) and the log file with the errors to this post.

This are the specs from the wifi extender

Technical Data:
Manufacturer / Model:ALFA Networks / Cylinder-150 (Tube-N)Chipset:Ralink RT3070Frequency Band:2.4 GHz (Standard)WiFi Standards:IEEE 802.11b: 11 Mbps
IEEE 802.11g: 54 Mbps
IEEE 802.11n: 150 MBpsTX Power:ETSI: 100mW / 20dbm
EXPORT: 1000mW / 30bm
RX Sensitivity:-96dBm@11MBit
-92dBm@54MBit
-90dBm@150MBitOperating Modes:Infrastructure, Ad-Hoc, Soft-APSecurity:64/128-bit WEP, WPA/WPA2, WPA-PSK/WPA2-PSK (TKIP/AES)Channels:USA 11, Europa 13Antenna-Connector:N maleAppliance:In- and OutdoorI/O Interface:USB 1.1 / 2.0Supported OS:Windows 2000 / XP / Vista / 7 / 8 / 10, Linux, Mac OS (10.5 - 10.12)

Manufacturer:InterlineModel:IH-G07-F2425-VType of Antenna:Omnidirectional AntennaGain:7dBiImpedance:50 OhmFrequency:2,4 - 2,5 GHz
(IEEE 802.11 b/g/n)VSWR:max. 2.1Polarisation:Vertical (Linear)Beam width:360° Horizontal
24° VerticalConnector:N femaleAppliance:In- and Outdoor (IP64)DC-Ground:Yesmax. Windload:16N (@170km/h)Dimensions:36,0cm x 2,6cmWeight:320gColor:WhiteOperating Temperature:-20° to +60° C


My desktop runs a Readon Rx 460, my laptop is a Lenovo Yoga with standard Intel HD Graphics 520.


Please, I hope somebody can help me with this!
What are the power requirements of that range extender and does your laptop fulfill them?
 
I'm waiting on the green light from work to submit the patches, but I've reverse engineered a few more corners of the protocol and added rudimentary support to TelloPy. (Although I may switch to pytello soon, since its protocol handlers are more complete; TelloPy was just easier to get something up and running now with.)

TELLO_CMD_PALM_LANDING
Payload: a single zero byte (optional?)
Puts the Tello in palm-landing mode. Place your hand under it within five seconds and it will land.

TELLO_CMD_SWITCH_PICTURE_VIDEO
Payload: a single byte, 0 for picture mode, 1 for video mode. Other values confuse the Tello and you'll need to reboot it.
In picture mode, it sends a 960x720 @ 30fps video stream. In video mode, it sends a 1280x720 @ 30fps cropped stream -- it shows you a bit less horizontally and a lot less vertically than picture mode. So picture mode is actually better for flying, especially if you want maximum downward-looking field of view!

TELLO_CMD_TAKE_PICTURE
Payload: none.
The Tello will drop a few video frames as it takes the picture, then send a few TELLO_CMD_FILE_SIZE packets. If you ack them (by echoing them back to the tello unmodified) it will follow with a stream of TELLO_CMD_FILE_DATA packets. Presumably, if you ack those correctly it'll send TELLO_CMD_FILE_COMPLETE, but I haven't figured out how to do that, so instead it sends me multiple copies of the file (!). Or perhaps I have to send TELLO_CMD_FILE_COMPLETE once I have the whole file?

TELLO_CMD_FILE_SIZE
Payload: Variable. Seems to be either a single zero byte, or: { byte always_0x01; uint32_t file_size; uint16_t unknown; }
Sending TELLO_CMD_TAKE_PICTURE seems to result in two TELLO_CMD_FILE_SIZE packets, one with the actual file size and one containing a single zero.

TELLO_CMD_FILE_DATA
Payload: a 12-byte header followed by the actual file data. The header has the format:
{
uint16_t unknown; // always 0?
uint32_t coarse; // increases by 1 every 8 packets
uint32_t fine; // increases by 1 every packet
uint16_t size;
}
I'm not sure why there are separate "coarse" and "fine" fields; "fine" on its own seems enough. size always seems to be 1024 except for the last packet. The packets will contain duplicates and may be delivered out of order, so it's important to use the coarse/fine values to make sure each one goes in the right place in the file.

The actual image is a normal JPEG once you peel off the headers and reassemble the chunks in the right order.
 
There is coarse and fine because there is only an ack command for the coarse part. The file complete is sent TO the drone to tell it that all chunks have arrived and it can consider the file sent.
 
So -- ack once I have all eight chunks with the same coarse value, and then send TELLO_CMD_FILE_COMPLETE (with no payload) once I have the whole file?
 
I wrote a very simple python app to drive your Ryze Tello from desktop or smartphone.
It uses Kivy (Kivy: Cross-platform Python Framework for NUI) to create a basic platform independent GUI.
I still haven't tried KivyTello on Android due to lack of time.
I used the great Tello library from hanyazou/TelloPy This library works well despite the Kivy event loop dislikes many multithreaded python libraries.
Sorry, no video capture for now...
Look at mcecchi/KivyTello

P.S: I also tried PingguSoft / pytello / source / — Bitbucket from @bluejune but I got a trouble using this great library with Kivy... :cry:

KiviTello.png
 
Last edited:
My hacking on TelloPy has mostly involved getting it working with a keyboard, since I don't have a PS3 or PS4 controller.

What I've ended up with is a basic single-window setup with drone status information in the title bar and the video feed filling the window itself; movement (but not direct axis control) via the keyboard. It can also switch between 4:3 and 16:9 modes on the fly, record video to disk in either mode, and take photos. mplayer -wid is used for the live stream and mencoder for saving video.

It's extremely ugly since I needed it for a specific project and was focused on getting it up and running fast rather than keeping it tidy, but I'll be publishing it to github as soon as I can (hopefully later this week), and perhaps spending some time cleaning it up.
 
  • Like
Reactions: Inakigarm
Looks like there is still more to be figured out on video. I have measured that I am getting about 1/5 the data that the official Tello app gets. I think there might be a video ack or something that is missing. Has anyone else compared their video quality to the stock app?
 
Looks like there is still more to be figured out on video. I have measured that I am getting about 1/5 the data that the official Tello app gets. I think there might be a video ack or something that is missing. Has anyone else compared their video quality to the stock app?
Video feed on desktop playing through mplayer is fantastic. I’d say better than the app.
 
Important update

KiviTello finally works on Android!

I used Kivy Launcher for the first test (https://play.google.com/store/apps/details?id=org.kivy.pygame&hl=en).

Once the Kivy launcher is installed, you can put KivyTello
folder in the Kivy directory in your external storage directory
(often available at /sdcard even in devices where this memory
is internal), e.g. :

/sdcard/kivy/KiviTello

KivyTello waits 60 seconds before exiting if you don't connect Tello in the meantime.

KiviTello can be packaged for Android (see Create a package for Android — Kivy 1.10.1.dev0 documentation) and I'll do it as soon as possible.
 
Video feed on desktop playing through mplayer is fantastic. I’d say better than the app.
It looks ok until you try to record something noisy like grass. Then the stock app looks a lot better.
 
It looks ok until you try to record something noisy like grass. Then the stock app looks a lot better.
Stock app drops broken frame, so you can see some frames are dropped in the recorded video.
But the playing with mplayer will show the broken frames instead of dropping so you see greenish broken screen.
 
Stock app drops broken frame, so you can see some frames are dropped in the recorded video.
But the playing with mplayer will show the broken frames instead of dropping so you see greenish broken screen.
I am saying the quality is worse even when there are no dropped frames. And recording with the stock app makes a file 4 times as large as the raw data I get.
 
Interesting.
On my S8, aTello images exhibit the same corruption (in the default gallery) as images taken in the official app.

The images are fine in simple gallery and pixlr, just the Samsung gallery

Screenshot_20180607-075451_Gallery.jpg
Screenshot_20180607-075521_Gallery.jpg

Wonder what the hell throwing the Samsung app off so much.
 
Has anyone decoded the log headers/messages from the Tello?

This should allow for a lot more intelligent control of the drone.

This is GOOD stuff! There seems to be heading and optical flow info as well as a wealth of other data. Far more data than I thought was possible. Its like the FlyData structure on steroids.

I think we can finally do the missing stuff that the sdk can do like "turn right 90" or "move forward 2m".
 

Members online

No members online now.

Forum statistics

Threads
5,696
Messages
39,955
Members
17,054
Latest member
Soccer843