Fly an R/C plane via the Internet

103 views
Skip to first unread message

Tom Pittenger

unread,
Dec 19, 2010, 3:31:03 AM12/19/10
to uavde...@googlegroups.com, UAV Project, uavdevb...@googlegroups.com
Howdy Folks,

Here's a little video I put together showing a proof of concept of how to fly an R/C airplane via the internet using a cellphone.

Latency is an issue, especially while it's using TCP instead of UDP, but with Pilot-Assist (auto-stabilize) the location of the pilot and of the plane are irrelevant as long as the plane stays in cell phone coverage.

-Tom Pittenger

Peter Hollands

unread,
Dec 19, 2010, 5:55:57 AM12/19/10
to uavdevb...@googlegroups.com, uavde...@googlegroups.com, UAV Project
Hi Tom,

The video is great fun. Thanks for posting.

Can you explain the full route of technologies from the UDB 2 serial port to Happy K's GCS in a little more detail ?

What I think I saw was:-
UDB2 serial port to Pic33F with 2.4Ghz (tcp/ip wifi)
Pic33F 2.4Ghz to Nexus 1 (tcp/ip wifi)
Nexus 1 at 2.4Ghz to laptop (tcp/ip wifi but alto potentially tcp/ip via GSM net).
Laptop out of Comm1 to FTDI board, into another FTDI board, and back into COMM X at 19800 baud ?

I shall find out more about the latest Google Nexus phone when one arrives over the Christmas holidays.

Bill's new clock patch for the cpu is available for testing (3.6 cpu speed improvement), which means you could try that patch to move the serial baud up to much faster rates, if you like. Bill has tested the serial baud rates up to over 900Kb, as opposed to our current rate of 19.2Kb.

Best wishes, Pete

Tom Pittenger

unread,
Dec 19, 2010, 11:42:24 AM12/19/10
to uavde...@googlegroups.com
Peter,

Here are a few diagrams I made of the data path from my presentation I did for school.
The RS232 speed from UDB to PIC32 is 19200 but the FTDI loopback speeds could be anything between the server and GCS.

Marcus,

Please change the email subject to cpu speed or something. I hope everyone can read this response in the cluster of cpu speed emails.


-TomP
TCPserver.JPG
Tom's Schematic 2_withPIC32_withFTDI.JPG
TheWholePicture3a.JPG

Marcus Fahlén

unread,
Dec 19, 2010, 12:02:53 PM12/19/10
to uavde...@googlegroups.com
Sorry Tom, got a little carried away there. I will see to that the posts regarding UART speed get moved to another thread...

/ Marc

Aadeesh

unread,
Dec 20, 2010, 8:54:49 AM12/20/10
to uavdevboard
Hi Tom, Nice Work. I am really Impressed.

I think the Google Nexus is being used only for the WiFi connection to
RC plane, isn't it ?
Which software are you using on laptop ?

-Aadeesh

On Dec 19, 10:02 pm, Marcus Fahlén <marcus.fah...@gmail.com> wrote:
> Sorry Tom, got a little carried away there. I will see to that the posts
> regarding UART speed get moved to another thread...
>
> / Marc
>
> On Sun, Dec 19, 2010 at 5:42 PM, Tom Pittenger <magic...@gmail.com> wrote:
> > Peter,
>
> > Here are a few diagrams I made of the data path from my presentation I did
> > for school.
> > The RS232 speed from UDB to PIC32 is 19200 but the FTDI loopback speeds
> > could be anything between the server and GCS.
>
> > Marcus,
>
> > Please change the email subject to cpu speed or something. I hope everyone
> > can read this response in the cluster of cpu speed emails.
>
> > -TomP
>
> > On Sun, Dec 19, 2010 at 2:55 AM, Peter Hollands <peter.holla...@gmail.com>wrote:
>
> >> Hi Tom,
>
> >> The video is great fun. Thanks for posting.
>
> >> Can you explain the full route of technologies from the UDB 2 serial port
> >> to Happy K's GCS in a little more detail ?
>
> >> What I think I saw was:-
> >> UDB2 serial port to Pic33F with 2.4Ghz (tcp/ip wifi)
> >> Pic33F 2.4Ghz to Nexus 1 (tcp/ip wifi)
> >> Nexus 1 at 2.4Ghz to laptop (tcp/ip wifi but alto potentially tcp/ip via
> >> GSM net).
> >> Laptop out of Comm1 to FTDI board, into another FTDI board, and back into
> >> COMM X at 19800 baud ?
>
> >> I shall find out more about the latest Google Nexus phone<http://www.carphonewarehouse.com/mobiles/nexus-s>when one arrives over the Christmas holidays.
>
> >> Bill's new clock patch for the cpu is available for testing (3.6 cpu speed
> >> improvement), which means you could try that patch to move the serial baud
> >> up to much faster rates, if you like. Bill has tested the serial baud rates
> >> up to over 900Kb, as opposed to our current rate of 19.2Kb.
>
> >> Best wishes, Pete
>

Chris Anderson

unread,
Dec 20, 2010, 11:15:14 AM12/20/10
to uavdevboard
Cool stuff! Posted: http://diydrones.com/profiles/blogs/proof-of-concept-flying-the
--
Chris Anderson
Editor in Chief
Wired Magazine
ch...@wired.com
Twitter: chr1sa
Books: The Long Tail; FREE
Blogs: longtail.com, geekdad.com
Startup: BookTour.com
Geeky hobby: DIYDrones.com

José Carlito de Oliveira Filho

unread,
Dec 20, 2010, 11:27:05 AM12/20/10
to uavde...@googlegroups.com
Hi all,

It´s been four years now since I started to work with GSM modems, I mainly use cinterium products like the TC65i and I can tell you that the only GSM connection that will allow you to fly a plane is the CSD connection or a voice call, cause GPRS, EDGE, 3G and 3.5G(some of them) will add a latency of at least 100ms, that´s crash for sure.

I´ve tried 3.5G on Ireland and they have a very good GSM structure that allowed me to control a rover with a bit less than 100ms of latency, but If you´re going for model airplanes it wont work at all.

So this is my tip, use a CSD connection or a Voice call to control your plane and you´ll be successfull

Carlito


Date: Mon, 20 Dec 2010 08:15:14 -0800
Subject: Re: Fly an R/C plane via the Internet
From: analogu...@gmail.com
To: uavde...@googlegroups.com

Tom Pittenger

unread,
Dec 20, 2010, 12:37:24 PM12/20/10
to uavde...@googlegroups.com
Carlito,

When flying via the internet, you will undoubtedly incur lag and using TCP greatly adds to that. I'm on family xmas "vacation" right now but by New Years I should have it using UDP which should cut the lag down, maybe in half. I'll probably have a TCP/UDP toggle for "A/B" comparison.

Manual flight as-is would be pretty hard, like you say, but what saves the day is the UDB's stabilized flight mode. Then all you have to do is point the plane around.

-TomP


2010/12/20 José Carlito de Oliveira Filho <carlito...@hotmail.com>

José Carlito de Oliveira Filho

unread,
Dec 20, 2010, 12:38:58 PM12/20/10
to uavde...@googlegroups.com
Oh yeah, you´re 100% right!  Go UDP protocol and go UDB Flying machine!


Date: Mon, 20 Dec 2010 09:37:24 -0800
Subject: Re: Fly an R/C plane via the Internet(Latency)
From: magi...@gmail.com
To: uavde...@googlegroups.com

Tom Pittenger

unread,
Dec 20, 2010, 12:50:51 PM12/20/10
to uavde...@googlegroups.com
Aadeesh,
The phone is indeed only acting as a "WiFi to 3G" converter. The dsPIC30 is a redheaded step child to Microchip and had great difficulty getting the IP library to fit (which I did) and run (did not) on the UDB. The UDBv4 will include this technology.

My youtube video has these 3 links

The joystick/TCP_server App is something I wrote in VS2k8 C#, simple form App. However, I want to work on it a little more before I release it to the world. Nothing magical about it, it's just a TCP server that forwards it's data out the serial port. Joystick input is packetized and sent back to the phone/UDB.

-TomP


On Mon, Dec 20, 2010 at 5:54 AM, Aadeesh <aade...@gmail.com> wrote:

Tom Pittenger

unread,
Dec 20, 2010, 12:58:43 PM12/20/10
to uavde...@googlegroups.com
Chris,

Thanks for the post, I'm honored!

I'm halfway embarrassed by that video because it was such a rush job. I was heading out with family for xmas "vacation" so I threw something together before I left.

By New Years I'll have some new videos with more planning and a better example of it used with GCS.

-TomP

Aadeesh

unread,
Dec 21, 2010, 10:51:22 AM12/21/10
to uavdevboard
I understood pretty much. As i am not into programming windows apps at
all, I want to learn to make apps like your joystick/TCP_server.
I am good with the networking part of it.

Can you guide me on this or direct me to some tutorials/books which
teaches this ?
It would be helpful.

Aadeesh

On Dec 20, 10:50 pm, Tom Pittenger <magic...@gmail.com> wrote:
> Aadeesh,
> The phone is indeed only acting as a "WiFi to 3G" converter. The dsPIC30 is
> a redheaded step child to Microchip and had great difficulty getting the IP
> library to fit (which I did) and run (did not) on the UDB. The UDBv4 will
> include this technology.
>
> My youtube video has these 3 links
> Android WiFi Tether:http://code.google.com/p/android-wifi...<http://code.google.com/p/android-wifi-tether/>
> UDB:http://code.google.com/p/gentlenav/
> HappyKillmore's GCS:http://code.google.com/p/happykillmor...<http://code.google.com/p/happykillmore-gcs/>
>
> <http://code.google.com/p/happykillmore-gcs/>The joystick/TCP_server App is
> something I wrote in VS2k8 C#, simple form App. However, I want to work on
> it a little more before I release it to the world. Nothing magical about it,
> it's just a TCP server that forwards it's data out the serial port. Joystick
> input is packetized and sent back to the phone/UDB.
>
> -TomP
>

Tom Pittenger

unread,
Dec 21, 2010, 11:38:30 AM12/21/10
to uavde...@googlegroups.com
Aadeesh,

For programming, Google is your friend. I wrote this in C# using Visual Studio 2008. The Express version is a free download.


For the C# TCP server I used:

and for the C# direct X joystick input I used:

-TomP

Aadeesh

unread,
Dec 22, 2010, 9:01:26 AM12/22/10
to uavdevboard
Nice. I am getting interested in it.
I think, using a gamepad number of channels would be easy to fly
plane.
I will try with it this weekend.

Some days back, I made a manual control system using Xbee using two
arduinos.
But, i faced problems in coding on the receiver, which later i
replaced it with the Pololu Servo Controller.
Its working good with a little bit latency.

How do you decode the Joystick values on the UDB ?

Aadeesh
On Dec 21, 9:38 pm, Tom Pittenger <magic...@gmail.com> wrote:
> Aadeesh,
>
> For programming, Google is your friend. I wrote this in C# using Visual
> Studio 2008. The Express version is a free download.
>
> For the C# TCP server I used:http://www.lmgtfy.com/?q=C%23+TCP+server&l=1
>
> <http://www.lmgtfy.com/?q=C%23+TCP+server&l=1>and for the C# direct X
> joystick input I used:http://www.lmgtfy.com/?q=C%23+directX+joystick+input&l=1
>
> -TomP
>

stev...@live.cn

unread,
Dec 22, 2010, 10:17:27 AM12/22/10
to uavdevboard
Hi Tom,

Really impressive!
In terms of improving latency, have you consider using DTMF instead of
wifi? In that way you can benefit from the wideness of the mobile
network and possibly with smaller latency since you get your cellphone
on the plane.

Cheers,
Steven


On 12月19日, 下午7时31分, Tom Pittenger <magic...@gmail.com> wrote:
> Howdy Folks,
>
> Here's a little video I put together showing a proof of concept of how to
> fly an R/C airplane via the internet using a cellphone.http://www.youtube.com/watch?v=B4UlEf379b8

Sourav Ghosh

unread,
Oct 25, 2016, 6:32:10 PM10/25/16
to uavdevboard, CSUF...@yahoogroups.com, uavdevb...@googlegroups.com, magi...@gmail.com
Hello every one my self Sourav and I am a aeronautics student so actually i want to make a quad copter that can fly via pc or mobile. So can anyone help me out in that please.
Reply all
Reply to author
Forward
0 new messages