The timing of this is poor, but I figured people might want to try an alternative to the quickly developing Andropilot.  I'd like to release what I have been working on, just to get feedback and bug reports.

The development of Copter-GCS stalled quite some time ago, but I recently picked up the source and started fixing bugs and adding features.  The app still has some quirks, and the UI is pretty terrible, but the function is there:

It includes:

-A full Heads Up Display

-Mission planning, with all commands and parameters available

-Follow-Me with offset mode, Guided Mode flight

-a Command Line terminal

-built for Android 2.2 and up

-full parameter editing

-works for Arduplane and Arducopter

-text to speach announces mode changes and waypoints reached


The included mission planner needs some instructions for use. All possible options are available, so it may be a bit dangerous if you don't use them correctly.


-to set a waypoint, long press in the map view, or use the "add waypoint" button in the list view menu.

-waypoint 0 is the uav's home location. It is important to keep the elevation frame as "Mav_frame_global" this means you are using actual ground elevation

-this app will automatically set the ground elevation (from Google's API) which is why it may pause for a few seconds when the first waypoint is added.

-when you add additional waypoints, the default frame is "mav_frame_global_relative_alt", which is an altitude relative to the home elevation, which is 75 meters by default.

-you can add as many waypoints as you like, then go to the list view to edit them, change then to do_jump or whatever, add in the parameters, etc. Then go back to the map and Save to UAV. I would suggest after you get confirmation, you Load from UAV to check that everyhting is correct

-All mission commands available to Mavlink have been included in this app, but there are some options that have not been implemented by Ardupilot or Arducopter.  Not all waypoint types will work, for example, DO_SET_RELAY doesn't work for APM2 UAVs.










The app connects to your telemetry with a bluetooth to XBee/3DR radio bridge:

APM<-->XBee/3DR<------------------------->XBee/3DR<-->Bluetooth<----------->Android Phone/Tablet

The bridge consists of an XBee or 3DR radio, and a Bluetooth radio, connected by serial port. There are expensive solutions for this, but I have made a inexpensive bluetooth module that includes a power regulator, a bluetooth radio, and a plug for my xbee.  If anyone is interested, I can detail the build process, and/or offer a hardware kit (with the smd bluetooth chip already soldered). The good thing about this set up, as opposed to a usb link to the radio, is (obviously) it is wire-free, and it is possible to have a stationary antenna, and even add in antenna tracking, and it is easily switched to link with a bluetooth enabled laptop..

According to [Pieter], this [DealExtreme Link] ($8.20 w/ free shipping to USA) works almost out of the box.  Set it to 57000 baud by connecting it to your computer with an FDTI cable, RX to TX, TX to RX, power and ground.  Open your serial terminal (I use RealTerm) with 9600 baud. Make sure LED on module is blinking (DON'T pair it with anything yet) Type in transmit field AT+BAUD7 and hit send (UPPER case letters or it wont work). You should get a OK response indicating that it worked.  You'll have to power cycle the bluetooth before the change takes effect.  Then pair with your phone.

Connect to a XBee adapter like this:

Another connection option is to connect the bluetooth directly to the APM telemetry port.  Remember the bluetooth range is short, so you won't be able to control it in the air, but you can set missions and tune param while on the ground.  Instructions from Ioan:

Cheap Bluetooth serial module (CBSM):

CBSM VCC -> APM Telemetry VCC

CBSM GND -> APM Telemetry GND

CBSM TX -> APM Telemetry RX

CBSM RX -> APM Telemetry TX

and then the phone connects directly to the APM's bluetooth adapter: 

Phone <----> APM + Bluetooth

If anyone wants to test, please remember that it is still BETA software, so there are certainly bugs.  


Also, feel free to make suggestions and feature requests....

This community has been very helpful and supportive, so I feel bad requesting donations, but I have put lots of time into this application, and I'm sure Bart has as well.  If you want to buy me a beer (or a PX4), you can donate whatever you like here: PAYPAL




























































Confirmed Bugs:
-crashes without internet connection

-flight modes on arducopter do not show correctly

-auto rotation while in MAV_CMD list crashes app


Feature Suggestions:
-connect to xbee/3dr/APM2 over usb

-keep screen on (added)


Views: 23089

Reply to This

Replies to This Discussion

I've put together some data, diagrams and instructions on connecting HC-05 in this document:

Connecting HC-05 to Arduino based controllers

Tested today Android-GCS using two air module for connecting MPNG using a BT module as a bridge between radio modem and Android smartphone.

It works great!

Her are some slides and pict of the conventional connection and the bridge connection.

Thank you seth for this great app.



I posted something earlier but can't seem to find it ... must have not clicked on send. Anyways, based on what you posted, I can get a 900 mhz (433 in your case) 3dr air module radio, connect bluetooth to air module by + - +, gnd - gnd, rx - tx, and tx - rx. Open up the android program and communication should flow between the arducopter telemetry and the ground station, right? The bluetooth module you're using, can you provide a link of where you got it? Is it a HC-05? The communication protocol between the 3dr radio and the bluetooth module are (i.e., baud rate, data bits, parity, stop bits, and flow control)? Is it a safe assumption that the communication protocol is the same between the android ground station and bluetooth radio? If not you dont mind care to give some details? Thanks.

I'm using two radio modems air modules (one on the model and one on ground station connected to BT:

BT module is this:

I've left all default parameters. Changed only baud rate on bluetooth and radio modems to 57,6K. That's all. It worked great at first try.



MavLink connection was tested before using a USB-radio modem connected to an air module to be certain that Mission Planner and MPNG were working ok.

Roger, this system is truly very simple.  A HC-05 is very cheap and available in many places, but there are other alternatives if you like.  The default baud rate of the APM and the 3DR radio is 57600, so you only have to change one parameter in the bluetooth module, everything else works "out of the box".  Attach TX to RX, and RX to TX, connect 3.3v and ground, link the BT to your android, and you're good to go.  

Actually the hardest part is getting 3.3v regulated, and if you are powering the 3DR, it will provide regulated power for you.

When you get your modules, we can help walk you through the setup, if you are still having problems.  If you like, I can even wire it up for you for a few bucks, and send along.

Great tests Luciano , thanks!

Yesterday other tests using radio modem - bluetooth - Android.

I've done some missions planned and saved on copter using Android-GCS and they worked great and I was able to follow the complete missions on Android without the need to follow the copter as before with bluetooth only.

Yesterday I've tried also GUIDED MODE (and FOLLOW ME) from Android but it doesn't work at all.  I put copter in LOITER and than I switch to GUIDED. Copter waits for commands. In Android-GCS I enable "Guided mode" and then I point a spot on the map. Android-GCS confirm that target has been sent...but copter do not move. GUIDED MODE works great using Mission Planner with radio modem connected to the same copter (MegaPirateNG 2.9).

Has anybody tried this mode with Android-GCS? Any suggestion to make GUIDED MODE (and FOLLOW ME)  working with Android?


Luciano, I admit that I have not tested guided mode myself, since until recently I only flew an arduplane. However, I now have a tricopter, and have learned to fly it enough that I feel comfortable testing this feature.

So, fixing guided mode is next on the list.

Thanks for the bug report!


Great app, although I have not been able to find where it stores tlog files.  I can see the kml files but no tlog files.

Can you point me to the save location please.

Regards. Andy.

HiI am hopeful you will be able to clear a few things up for me if you have a minute

i have purchased the module your link shows.  Can i just ask you to clear up a few things to make sure my head is in the same place


once ive changed to correct baud rate

I need to add 4 pins to the UART0 holes on the apm2.5 + board

i then cable from apm2.5 board directly to the BT module crossing rx and tx,

bond with phones blue tooth and it should work.


Am I correct so far ?


do i need to modify the power to the BT module work on 5v ?


Thanks in advance and I look forward to your reply



Hi ,

where can i get the source code of the Android GCS , I would like to make a few changes and develop it

if possible can i have the link of the source code ,if not can you mail it to

Android GCS is very far behind, you should rather contribute to Andropilot, a very promising, and well working alternative.

Reply to Discussion


© 2020   Created by Chris Anderson.   Powered by

Badges  |  Report an Issue  |  Terms of Service