Routing APM communications to Internet


I’ve been wondering, what would be the easiest way to route telemetry and commands from APM to Internet. Using 3G modem, would provide almost unlimited range (I know there has been some discussions about this in DiyDrones forum. Here in Finland the GSM network is very covering, but due the way the cellular towers are optimized, maximum altitude where the connection works is probably less than 200 m.)

In theory, list of required hardware is not long. One just needs to receive messages from APM and encapsulate them to UDP packets and send via 3G modem and vice versa. Unfortunately handling PPP communications is too large task for simple microcontrollers. I ended up using BeagleBoard for the sake of easy development and since I had one at hand. I realize that BeagleBoard (which essentially is full computer by itself) is an overkill, but it’s not very heavy and fits easily inside Maja’s fuselage. Basically any embedded system, capable of running linux and acting as an usb host would do. Maybe in the future I figure out some additional tasks for BeagleBoard to do.

The setup works quite nice now. Unfortunately I haven't been able to do much flight testing. Weather constantly sucks this winter here in Finland. As you can see I already installed skis, but there's not even snow, even though it's almost new year.

I wrote more detailed post to my blog, with link to sources:

E-mail me when people leave their comments –

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

Join diydrones


  • If the weight is not an issue, I guess that setup is fine. I encourage you to try the USB 3g modem though. I did not find it hard to setup and performance vise, it's peanuts compared to the video processing you do and should not cause measurable amount of extra load to the system. What do you use to transcode the video? gstreamer perhaps?

  • Some 3G routers are quite small, some are even meant to be carried with you in your pocket. Using such a tiny router could simplify the setup as you will not have to go through the pain of making a 3G Dongle work on RPI. Its true though that it will add a little bit of extra weight but not too much if you use the right Router.

    Another advantage while using a router is that you can do any networking settings a lot easier without having to configure the RPI to act as a router.

  • First of all my 3g router doen't have a ethernet port. Only wifi. I use 35mhz so it's no problem. The router is small and light weight so that's no problem either.

    The Raspberry Pi is not powerfull enough to run all together. I use the Pi only for video conversion. And to do this i also need to overclock the pi. Running 3g modem and telemetry will overload the pi and it will not work. By using a seperate 3g router i take the load of the other hardware and let the router do all the communication.

  • And why waste weight for a router when you can have 3G connectivity just by connecting USB 3G stick to RPI?

  • That's awesome!

    Is this the adapter you are using: ? If not can you please point me to the exact one?

    Just curious, if you have a router onboard, why not connect your RPI to the 3G Router via ethernet cable? The wifi connection might have a bad impact over the other radio equipment that you might have on board such as a 2.4Ghz receiver.


  • Hi

    For a long time i have been using a Raspberry Pi with a USB video capture device (Terratec Grabby) connected with my Hero2 to transcode the SD video into 352x288 10fps at 500kbit and it works very good over 3g network. I have a wifi adapter in my Raspberry Pi and connect this to a 3g wifi router onboard. I also connect to APM2.5 via the same link. I'm working on a blogpost to describe mye setup :-)


  • here you can see how to hookup up your APM to an RPI and get telemetry over 3G:

  • Cool!

  • @Eraser: This was more of a proof of concept type thing. Like how easily 3G connection can be used, how well it will work and what's needed.

    For normal flying I'm using 60mW version of 2.4GHz xbee, which has quite acceptable range but nothing to brag about. The problem with radio gear is that you can't use 900 MHz devices here, so it makes kind of hard to find off the shelf solution since most people seem to use 900MHz gear.

    I'm currently building antenna tracker for video antenna, but when I'm not flying fpv, I might start to use 3G in the future, since simplifies the ground station a bit.

  • Well, if the reason is range, I would use a radio with a good receive sensitivity <= -100db a 5 db gain antenna on the craft and a 10-15 db gain antenna on the ground..

    What kind of range are you trying to achieve?

    1 watt 900 mhz radios are capable of >10 miles normal terrain.. 75 + with towers..

    The reason I mentioned the pelican case is that you can place that on a hilltop or rooftop prior to flying.

This reply was deleted.