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

Onboard Raspberry Pi

martinpi

Well-known member
Joined
Dec 15, 2019
Messages
56
Reaction score
34
Location
Vienna. Austria
Website
martinpi.at
I packed a Raspberry Pi Zero W on top of Tello.

DSC00102.JPG DSC00100.JPG

DSC00107.JPG DSC00106.JPG

What can you do with the Raspi?
  • Use a camera to record Full-HD video and store it on the Micro SD card, getting rid of distortions caused by the WLAN transmission (check if this is legal in your country)
  • Use a sensor like a distance sensor (ultrasonic, infrared, laser, ...) for collision avoidance.
  • Add GPS to follow a path
  • Your ideas?

How do you power the Raspi?
Take an OTG cable, cut off the plug and solder the red and black wires to the 5V/GND soldering pads of the Raspi PCB.
When Tello is switched on, it makes its self-test and then it outputs nicely stabilized 5V on the USB socket.
When Tello is parked on the ground and turned off, you can power Raspi via USB.
In this case, Tello's battery is charged while you are programming.

How much current will Raspi consume?
I was not able to measure the current as Raspi wouldn't power up with the additional resistance of the amperemeter.
Flying time is reduced to approx. 50% i.e. 6 minutes

Can Tello carry the weight?
The additional weight of the raspi and the mounting device is about 30g, an ultrasonic sensor adds another 10g.
Tello flies well. Not tested in windy conditions.

How do you mount the Raspi on Tello?
I put it on top, in order not to obstruct the vertical camera.
There is a solution on thingiverse, see Raspberry Pi Zero Tello mount by zeroTM.
They put the PCB on the Tello horizontally, but I mounted it vertically in order not to obstruct the air flow.
I used the clamp from the tile mount Tello Tile Mount by keizi666 which fits perfectly and made a mount out of 2mm plywood.

How to connect the WLAN?
This is a tricky question.

Just for taking videos, connect your mobile to Tello and fly normally using an app like the original app or Tello FPV.
Connect Raspi and PC to a network so the PC can send commands to raspi like start/stop video.
You can use Tello's camera as viewfinder for Raspi's camera.

For the sensor thing, it would be nice to connect the PC, Tello and Raspi together so the PC can read out the sensor from Raspi and send commands to Tello.

What did not work:
Connect both the PC and the Raspi to the AP provided by Tello.
You can connect more than one device to Tello's AP, but they cannot communicate with each other as Tello dosn't route the packages

If you have a Tello EDU you can connect it to an exterior AP like your home WLAN router, connect PC and Raspi to the same AP.
This works, but Tello doesn't stream video when connected to an AP.

Another solution is a second WLAN adapter in your PC. They are cheap and can be plugged into the USB of the PC.
It worked out of the box under Windows and under Linux.

(edit) Will the additional WLAN cause electromagnetic disturbance?
Possibly. I am testing it.

What software do you run on Raspi?
Raspberry Pi runs under Linux. The distribution is Raspbian, which is a Debian derivate.
You have the choice of the "full" or the "light" version of Raspbian.
The full version comes with a GUI (graphical uer interface) similar to Windows.
The light version has only a CLI (command line interface).
The Raspberry Pi Zero W is not really convincing with the GUI, so I use the light version.

You can install whatever software you like.
Probably the most popular programming language will be Python which is already built in.
You can access the discrete IO's with Python, use the I2C to connect peripherals such as sensors, and so on.
you can install Python modules with pip just as you do it on the PC.

All Linux distributions come witth a C-compiler (gcc, GNU C-Compiler) built in.

Old folks like me grew up with the once-famous Norton Commander. Long before Windows came up, this was kind of a graphical user interface.
On Linux, there is the "midnight commander". It is a must. It is the first thing I install when I set up a linux system.

You can copy files via WLAN using scp ("secure copy").

How do you communicate with Raspi?
On the ground, connect keyboard (and mouse for the full version) and an HDMI monitor and use Raspi like you would use any other computer.

Via network you can mirror Raspi's display to the PC via VNC and use your mouse and keyboard, but this is only possible with Raspbian Full which I don't recommend it for the Zero.

You can connect to Raspi via SSH (secure shell) and use it like connected to a terminal (like in the old days).
This is text-only, so you cannot see the camera preview or plot graphs with matplotlib.
Many people use putty, but I prefer to run ssh in a command window (aka cmd, DOS-box, shell, ...).

To read out sensors, send commands and confirmations to/from Raspi, you can write a (Python) program just like the communication with the Tello SDK.

What am I doing?
I am currently experimenting and writing programs, when there is something worth sharing I will let you.
Hopefully some of you will join in so we can share experience and programs.

(edit) Do you really need a Raspberry PI or would an Arduino do?
Depends upon what you attempt to do.
Only for sending sensor data to the ground, the Nano ESP (Pretzelboard) is maybe working as well, and with an easier handling.
I will try this as well.

Is it worth while?
Well, you can buy quadrocopters from DJI which have all the abilities already built in.
Hardware costs of the homebrew solution are almost neglectible, so it will be cheaper.
I spend lots of time. But it's a hobby.

In times like these (Corona crisis) when you sit at home, you have something nice and rewarding to do.
 
Last edited:

Dan

Active member
Joined
Feb 20, 2020
Messages
41
Reaction score
17
I packed a Raspberry Pi Zero W on top of Tello.

View attachment 5882 View attachment 5885

View attachment 5886 View attachment 5888

What can you do with the Raspi?
  • Use a camera to record Full-HD video and store it on the Micro SD card, getting rid of distortions caused by the WLAN transmission (check if this is legal in your country)
  • Use a sensor like a distance sensor (ultrasonic, infrared, laser, ...) for collision avoidance.
  • Your ideas?

How do you power the Raspi?
Take an OTG cable, cut off the plug and solder the red and black wires to the 5V/GND soldering pads of the Raspi PCB.
When Tello is switched on, it makes its self-test and then it outputs nicely stabilized 5V on the USB socket.
When Tello is parked on the ground and turned off, you can power Raspi via USB.
In this case, Tello's battery is charged while you are programming.

How much current will Raspi consume?
I was not able to measure the current as Raspi wouldn't power up with the additional resistance of the amperemeter.
Flying time is reduced to approx. 50% i.e. 6 minutes

Can Tello carry the weight?
The additional weight is about 30g, an ultrasonic sensor adds another 10g.
Tello flies well. Not tested in windy conditions.

How do you mount the Raspi on Tello?
I put it on top, in order not to obstruct the vertical camera.
There is a solution on thingiverse, see Raspberry Pi Zero Tello mount by zeroTM.
They put the PCB on the Tello horizontally, but I mounted it vertically in order not to obstruct the air flow.
I used the clamp from the tile mount Tello Tile Mount by keizi666 which fits perfectly and made a mount out of 3mm plywood.

How to connect the WLAN?
This is a tricky question.

Just for taking videos, connect your mobile to Tello and fly normally using an app like the original app or Tello FPV.
Connect Raspi and PC to a network so the PC can send commands to raspi like start/stop video.
You can use Tello's camera as viewfinder for Raspi's camera.

For the sensor thing, it would be nice to connect the PC, Tello and Raspi together so the PC can read out the sensor from Raspi and send commands to Tello.

What did not work:
Connect both the PC and the Raspi to the AP provided by Tello.
You can connect more than one device to Tello's AP, but they cannot communicate with each other as Tello dosn't route the packages

If you have a Tello EDU you can connect it to an exterior AP like your home WLAN router, connect PC and Raspi to the same AP.
This works, but Tello doesn't stream video when connected to an AP.

Another solution is a second WLAN adapter in your PC. They are cheap and can be plugged into the USB of the PC.
It worked out of the box under Windows and under Linux.

What software do you run on Raspi?
Raspberry Pi runs under Linux. Raspbian, which is a Debian derivate.
You have the choice of the "full" or the "light" version of Raspbian.
The full version comes with a GUI (graphical uer interface) similar to Windows.
The light version has only a CLI (command line interface).
The Raspberry Pi Zero W is not really convincing with the GUI, so I use the light version.

You can install whatever software you like.
Probably the most popular thing will be Python. You can access the discrete IO's with Python, use the I2C to connect peripherals such as sensors,
you can install Python modules with pip just as you do it on the PC.

Old folks like me grew up with the once-famous Norton Commander. Long before Windows came up, this was kind of a graphical user interface.
On Linux, there is the "midnight commander". It is a must. It is the first thing I install when I set up a linux system.

You can copy files via WLAN using scp ("secure copy").

How do you communicate with Raspi?
On the ground, connect keyboard (and mouse for the full version) and an HDMI monitor and use Raspi like you would use any other computer.

Via network you can mirror Raspi's display to the PC via VNC and use your mouse and keyboard, but this is only possible with Raspbian Full which I don't recommend it for the Zero.

You can connect to Raspi via SSH (secure shell) and use it like connected to a terminal (like in the old days).
This is text-only, so you cannot see the camera preview or plot graphs with matplotlib.
Many people use putty, but I prefer to run ssh in a command window (aka cmd, DOS-box, shell, ...).

To read out sensors, send commands and confirmations to/from Raspi, you can write a (Python) program just like the communication with the Tello SDK.

What am I doing?
I am currently experimenting and writing programs, when there is something worth sharing I will let you.
Hopefully some of you will join in so we can share experience and programs.

Is it worth while?
Well, you can buy quadrocopters from DJI which have all the abilities already built in.
Hardware costs of the homebrew solution are almost neglectible, so it will be cheaper.
I spend lots of time. But it's a hobby.

In times like these (Corona crisis) when you sit at home, you have something nice and rewarding to do.
Hello

Great idea.

We are using the Micro-drones for payload releases, , flipping eggs with 3D printer holders, etc. We use the Rapsberry Pi versions and the Arduino for many
programs. WE ( MECATX ) are located in Texas,USA. You can contact me at [email protected]. You can see our work on YouTube channel MECATX. Good luck adn I hope the hear from you.
 

Generalpingouin

New member
Joined
Apr 13, 2019
Messages
1
Reaction score
1
Your ideas?
Hi @martinpi ... a possible idea : configure the PI as a Wifi bridge that will propagate the Tello connection... But with some man-in-the-middle proxy that will store part of the message (the video flow) on the card... This way you can have video recording on SD cqrd, without frame drops...
 
  • Like
Reactions: CallmeDash

lizzie

New member
Joined
Mar 23, 2020
Messages
2
Reaction score
0
Hi @martinpi - this project looks great!

Quick question about the ultrasonic sensor you added. Why did you add this along with the Raspi? And which direction/plane is it primarily useful in?

Thanks and looking forward to what else you share!
 

New Threads

Members online

Forum statistics

Threads
4,490
Messages
33,227
Members
11,605
Latest member
Lawrence Bhuyan