Develop standard, re-usable inexpensive solutions for IP-enabled always-on UAVs over cellular IP networks such as GPRS, 3G, 4G etc.

Primary goal: Telemetry over low cost cellular [achieved in testing]

Secondary goal: Bi-directional GCS/Telemetry over cellular IP [achieved in testing]

Tertiary goal: High speed IP for streaming IP video over cellular 3G/4G

STATUS: Bi-directional telemetry over cellular IP (UDP or TCP) is now working. It has been flown successfully while logging live telemetry to a GCS at home, several miles away [distance is really unlimited]. Currently working on improving code, more testing and broader hardware support.

570 Members
Join Us!

You need to be a member of diydrones to add comments!

Join diydrones

Comments are closed.


  • at 4.4.2) VPN - Network


    I always was thinking, a VPN – Network is the coolest art for ip-connections of drones. For me, in the long run a secure communication between two or more drones could be fun.  It also is a possibility to hook up telemetry over 3G / telemetry over IP connection to APM Planner or QGroundControl in the case you have a Data-Sim, which is not accessible over the internet. For me VPN was always too tricky, but …

    I) Drone (Android/Client) < 3G > Homerouter (Server) e.g. Fritz!Box

    Homerouter (Server):

    a) Check your Router if it has a VPN-Option (use manual).

    b) I am running a excito linux-router, so I had to do a full setup and I have also to build certs and keys (for server and client) myself.

    > server IP:


    Drone (Android/Client)

    (I used a cert/key configuration so I have to copy these files: Client ca.crt, client.crt, client.key to my android mobile)

    > client/drone IP:

    II) Drone (Client) < 3G > Homerouter (Server) < wlan > Notebook (APM Mission Planer)

    a) Your Router should has a VPN-Option for open/routing the Home-Lan

    b) Using my linux router I (my LAN 192.168.x.0) had to

    cd /etc/openvpn
       nano server.conf
    and comment out or add "route 192.168.x.0"
       cd /etc/
       nano sysctl.conf
    and comment out or add "net.ipv4.ip_forward=1"

    > client/drone IP:
    > server IP:
    > Notebook (APM Planner) IP: 192.168.x.y

    Conclusion: Ok. Sounds difficult, but it is easier than one might think. 
    One surprising weaknesses of the 3G – OpenVpn connection 
    is the delay (500 to 2000ms) and no chance for a video over 3g (for steering) in my

    P.S.: next step - multiple client mode (drone.1 <3G – router – 3G > drone.2)

    christian joachim gruber
    [meta]contemporary art/s

  • I am working on a simple test-setup for a telemetry over celluar IP, described in this older post:

    Some additional information.

    at 1) Drone as server:

    I am lucky, because I have a cellular data provider which offers the option for “open Internet” connection (but I have to open it myself in my provider settings”, that means I get a public IP (dynamic) and not a private one (NAT). You could ping your phone from a different network/internet, if it responds you are fine.

    If not, the best way is to set up a VPN Network (vpn server on your home-router). This is a little tricky, but very save and future proof …


    at 4.1) Serial – Bluetooth modul: HC-06

    I smoked my old one, now I got a new one. It was v1.05 with a 3,3-5V input. So I am fine (no soldering).


    At 4.2) Android Mobile/Handset

    Main reason for this posting. Because I went crazy. I bought a used xperia active, because it is small and waterproof. But I couldn’t set up a BT connection. No problem with my old xperia X10i. WTF.

    So I learned the hard way, sony stopped to support the Bluetooth SPP profile 2011. So my nephew now has a new phone ;). Maybe a old nexus (but JB 4.2 has also some issues with spp, be aware!).


    At) 4.4.1 Bluetooth SSP – android – tcp/ip connection:

    So I only use “Connection Terminal” now. It is not so intuitive, but if you got used to it, you will love the simple style. I am just missing an auto REconnect feature. And you must(!) start BT/Serial before you start Connection Terminal. (I also miss a UDP server) so I had to set up a TCP server.

    christian joachim gruber
    [meta]contemporary art/s


  • Hi, I just joined this group and I'm new to ardupilot in general. Just planning on building my first "airbot" :).

    I find this GCS vis IP very interesting! Here in Finland, you can get a USB 3G stick for €10/month and the coverage is pretty good here. In my home internet connection (internet via cable TV) there even is a 3G stick included for free (I live in a small town and cable goes down every once in a while).

    I have been reading all the comments now and it seems as there has been impressive progress. I couldn't, however, find any indication on the status.

    Is there a beta or even production version available already? Something where I could plug in a 3G-stick and then use GCS via 3G?

  • @alan: USB_ModeSwitch handles the problem of switching between MicroSD/windows drivers and modem-function of the dongle(s).

    Some additional notes. If you use two dongles (one in your drone and one in your ground station, there are two additional error possibilitys which could drive you crazy.

    a) some providers do not allow, that your dongle/IP adress is seen from outside, so you can't run a server solution (ask provider/change provider)

    b) using 2 dongles with 2 sims of the *same* provider, i could not get a connection with the my service. With the same setup, but different providers (dongle 1 with provider A and dongle 2 with provider B) i had no problems.

    Best solution would be, adding your drone (IP homenetwork) and ground station (IP homenetwork) via a VPN in your home network ... but i 've never checked the delay-times.

    Best. c.

  • good post c j g

    It appears the Pi usb does not provide suffient current to drive a dongle which probably means using an extension cable and splitting it to take the date to the Pi and the power to the APM output or to the BEC. This would also allow the dongle to be placed in the best position for the signal. 

  • at 3) here you can get the arm version of wvdial:

    deb vincent main

    Best c.

    Index of /
  • ... sorry, maybe somebody could re-format my post, unfortunately i made a ctrl v. thanks.

  • Hi,

    i am very new i your topic, but i messed a lot of time with linux / GSM 3G (ubuntu, openwrt, excito) connections. I have to admit I don´t touch the source code, so … but this could help to get an IP-connection to your rasberry pi

    1) I never could get a 100% stable 3G connection 24/7 running. Sometimes they lose the connections (sometimes the provider is responsible for it, sometimes the usb-dongle itself). Newer dongles are better.

    2) After testing betavine, and some other tools … I went back to wvdial … easy and 99% stable

    3) you need 3 files wvdial & USB_ModeSwitch & USB_ModeSwitch_data.

    Important: wvdial has to be build for the Arm architecture, I don`t know, if this is done for the Raspberry Pi … if not (maybe larson ??? should contact carl at excito, who has done this for the excito bubba)

    4) usb-dongle, there are a lot dongles on the market, but the often are the same. To start I would suggest a dongle which is not brand-new and

    Important: it should be in the USB_ModeSwitch_data, it saves a lot of time

    5) Install wvdial & USB_ModeSwitch & USB_ModeSwitch_data per

    apt-get install …

    6) Edit wvdial.conf with your provider data (this example is for

    ------ /etc/wvdial.conf --------------
    Code: Select all
    [Dialer Defaults]
    Area Code =
    Ask Password = 0
    Auto DNS = 1
    Baud = 460800
    Carrier Check = 0
    Compuserve = 0
    Dial Command = ATD
    DialMessage1 =
    DialMessage2 =
    Force Address =
    ISDN = 0
    Idle Seconds = 3000
    Init1 = ATZ
    Init2 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
    Init3 = AT+CGDCONT=1,"IP",""
    Modem = /dev/ttyUSB0
    Modem Type = Analog Modem
    New PPPD = yes
    Password = ;
    Phone = *99#
    Stupid Mode = 1
    Username = ;
    Auto Reconnect = On
    ------ end of /etc/wvdial.conf ------

    The best way is *NOT* to use SIM pin codes

    6) Edit /etc/network/interfaces and add this lines:

    auto ppp0
    iface ppp0 inet wvdial

    7) Test
    Type * wvdial * and you should get a connection
    Contrl Z and then type bg

    restart the Raspberry Pi and you should
    8) For setting up a address
    I use the linux-client: ddclient :

    9) now you could connect to your Raspberry Pi – Drone with your adress

    … hope this information is helpful. Best c.
  • I have a Vodafone Mobile Connect dongle which has a USB mass storage drive with the VMC Lite installer. As mentioned in an earlier post it has a Micro SD slot. Inserting a Micro SD card into a USB Drive works and both can be accessed. Unfortunately I haven’t got a Rasberry Pi at the moment so I am using a Linux emulator on my PC. In Linux mode it does recognise the dongle and appears to start loading into Linux NetworkManager unfortunately it then starts to boot into Windows and I can’t get any further. I cannot delete or rename the VMC files. If anyone has a Rasberry Pi or a Linux only machine they may like to try this. I am sure it will need a few tweaks to get it going so have a look here.  for the debian files.

  • Just to clarify, you can't have point-to-point communication between two 3G dongles. If you could do this, then one pair of 3G dongles could overload their respective cells and use all bandwidth available. Handled over IP shouldn't be any problem though but some operators may have stricter firewalls than others.

This reply was deleted.

need help understanding if we can rin it on a 2560 multiwii?

hi guys might have a project that require telemetry especially tracking and logging . how do I get about setting up an multiwii 2560 drone to communicate to GSM module and what would be on the server side if it uses 3G 4G systems im looking for people to collabthe idea is to run it off a web browser and serversuggested links pertaining to hardwares and codes on both aircraft side and server side would be helpfulthanks

Read more…
2 Replies

Telemetry via LTE, Controlling your infrastructure.

Hey guys, I'm brand new to this forum, but far from brand new to the sUAS industry.  I've been a engineer and developer in this arena since about 2012.  I wanted to hop into this discussion to get some insight and exposure for some of the stuff I've been working on.  I'm the Chief Innovations Officer at Fenix Group Solutions out here in D.C.  I wanted to expose you guys (hopefully reaching the developer community) to VCore.  VCore is a fully virtualized 4G LTE core network in the form factor of…

Read more…
3 Replies

WiFi Drone Disabler - Security Matters

Hey guys,I came across an article about making a Drone WiFi disabler on Make that I thought was cool. Then I realized that this could be a future problem for some people. In short, make sure that you are setting up encryption especially if running SoftAp.This hack basically makes use of the fact that some manufacturers don't set the encryption by default when first launched out of the box. This is just a heads up to everyone so you aren't a future…

Read more…
0 Replies