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
77
Reaction score
45
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

Well-known member
Joined
Feb 20, 2020
Messages
81
Reaction score
28
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.
 

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!
 
Joined
Dec 16, 2020
Messages
3
Reaction score
0
Hi Sir,

I need some advice from you. I had done programming on Tello and make it fly autonomously. Now, I am thinking to add on Ultrasonic sensor on Tello for collision avoidance function.

Do you think I need to use Raspbian or just using Arduino will be good? And how can I connect the reading of Ultrasonic Sesnor into my Python code to run another coding when the reading is in a range.

Hope to hear from you soon.

Thanks!
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.
  • 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.
 

martinpi

Well-known member
Joined
Dec 15, 2019
Messages
77
Reaction score
45
Location
Vienna. Austria
Website
martinpi.at
Hi Sir,

I need some advice from you. I had done programming on Tello and make it fly autonomously. Now, I am thinking to add on Ultrasonic sensor on Tello for collision avoidance function.

Do you think I need to use Raspbian or just using Arduino will be good? And how can I connect the reading of Ultrasonic Sesnor into my Python code to run another coding when the reading is in a range.

Hope to hear from you soon.

Thanks!
Hi,

the first thing to consider is the WLAN connection to your Arduino or Raspberry. The Raspberry Pi Zero W has an onboard WLAN. I don't know if there is am Arduino with onboard WLAN, and using a WLAN (or bluetooth,...) adapter adds weight and drag. That's why I prefer the Raspberry. The advantage of the Arduino is that the programs starts at power-up. So far, I have not yet achieved this on Raspbian - it must be possible but I did not yet figure it out. So I lose some time before I can take off which costs battery life and Tello might overheat before I am ready to go.

For the ultrasonic sensor you will find a library. If not, the thing is not too complicated: You send a trigger pulse to the sensor, wait until you get the echo and calculate the time in-between.
On the other hand, the ultrasonic sensor seems not to cope well with the noise of the rotors. So I am trying an optical sensor. This has an analogue output and the Raspberry does not have analogue inputs, so I need an ADC. The ADC is very small and the additional code is not complicated.

I have not done much recently, so there is not much progress in the moment.

I wish you much fun and success!
Martin
 
Joined
Dec 16, 2020
Messages
3
Reaction score
0
Hi,

the first thing to consider is the WLAN connection to your Arduino or Raspberry. The Raspberry Pi Zero W has an onboard WLAN. I don't know if there is am Arduino with onboard WLAN, and using a WLAN (or bluetooth,...) adapter adds weight and drag. That's why I prefer the Raspberry. The advantage of the Arduino is that the programs starts at power-up. So far, I have not yet achieved this on Raspbian - it must be possible but I did not yet figure it out. So I lose some time before I can take off which costs battery life and Tello might overheat before I am ready to go.

For the ultrasonic sensor you will find a library. If not, the thing is not too complicated: You send a trigger pulse to the sensor, wait until you get the echo and calculate the time in-between.
On the other hand, the ultrasonic sensor seems not to cope well with the noise of the rotors. So I am trying an optical sensor. This has an analogue output and the Raspberry does not have analogue inputs, so I need an ADC. The ADC is very small and the additional code is not complicated.

I have not done much recently, so there is not much progress in the moment.

I wish you much fun and success!
Martin
Hi Martin,

Thanks for your reply!

I am now facing some problems during the connection between Rasp Zero, Sensors and Tello. I am confusing on how to power up the Rasp from battery of Tello.

Hope to get some more information from you about how to connect them together.

Regards,
Vincent
 

martinpi

Well-known member
Joined
Dec 15, 2019
Messages
77
Reaction score
45
Location
Vienna. Austria
Website
martinpi.at
Hi Martin,

Thanks for your reply!

I am now facing some problems during the connection between Rasp Zero, Sensors and Tello. I am confusing on how to power up the Rasp from battery of Tello.

Hope to get some more information from you about how to connect them together.

Regards,
Vincent
Powering the Raspi from Tello's onboard battery is the easy part.
You need an OTG cable (USB On The Go). Cut the cable in two parts. You need only the part with the micro-USB plug (the small plug).
Solder the red and black wires to 5V/GND on the Raspberry. That's all.

The current can flow in both directions.

When parked on the ground, you can power the Raspi via a USB cable. This will charge Tello's battery while programming.
When you disconnect the cable and switch Tello on, the Raspi is powered off and on. That's the only drawback.
 

djaps27

Member
Joined
Jan 4, 2020
Messages
11
Reaction score
4
Hey @martinpi, what kind of test Tello do before outputing 5V to Rasp?

I am asking that because I have a problem trying to add onboard repeater. Before cutting it and soldering, Tello + OTG + Repeater worked like a charm. After soldering black and red wire only, Tello doesn't provide power to repeater. And I checked repeater once again, it works when I solder normal usb and try it on power bank for example.

Thanks in advance.
 

martinpi

Well-known member
Joined
Dec 15, 2019
Messages
77
Reaction score
45
Location
Vienna. Austria
Website
martinpi.at
Hey @martinpi, what kind of test Tello do before outputing 5V to Rasp?

I am asking that because I have a problem trying to add onboard repeater. Before cutting it and soldering, Tello + OTG + Repeater worked like a charm. After soldering black and red wire only, Tello doesn't provide power to repeater. And I checked repeater once again, it works when I solder normal usb and try it on power bank for example.

Thanks in advance.

Test: measure the voltage with a voltmeter.

1) Are you sure you took an OTG cable, not a regular USB cable?
2) Tello must be switched on to deliver power. It is not only a straight connection to plus/minus of the battery
 

djaps27

Member
Joined
Jan 4, 2020
Messages
11
Reaction score
4
Thanks, I will try to measure the voltage.

Yes I am sure that is OTG cable, also I am awared that Tello should be on. :D

I just checked output voltage, it is around 3V...

For me, most confusing thing is that this worked propperly before cutting it.

SOLVED: It was a OTG cable problem. I just buyed a better one.
 
Last edited:
Joined
Dec 16, 2020
Messages
3
Reaction score
0
Powering the Raspi from Tello's onboard battery is the easy part.
You need an OTG cable (USB On The Go). Cut the cable in two parts. You need only the part with the micro-USB plug (the small plug).
Solder the red and black wires to 5V/GND on the Raspberry. That's all.

The current can flow in both directions.

When parked on the ground, you can power the Raspi via a USB cable. This will charge Tello's battery while programming.
When you disconnect the cable and switch Tello on, the Raspi is powered off and on. That's the only drawback.
Hi Martinpi,

I am facing a new problem. I had powered up my Raspi via battery of drone. But I cant connect my pi via ssh from my laptop. Which means i cant run the program that had been done in Raspi.

How do you Run the program of Raspi after u powered it up by Drone's battery.
 

New Threads

Members online

Forum statistics

Threads
4,866
Messages
35,470
Members
12,820
Latest member
hansi