figuring out the Antenna Tracker

3691139590?profile=originalNot many people know but we have an piece of open source software for controlling an Antenna Tracker.  It's been built by Tridge (Arduplane lead developer) for use in the outback challenge.

Sadly we have no documentation and, as far as I know, nobody except Tridge has used it.  Still given Tridge's track record on building great software I suspect it works well and if it doesn't, I'm sure we can fix it.  So to not let this piece of code go to waste, I'd like some help from people who are interested to give it a try and help me figure out how it works.

Here's the little that I know:

  • It runs on any of our supported board (APM1, APM2, PX4, Pixhawk, Flymaple and perhaps VRBrain)
  • For APM1/APM2 users building the code is as easy as opening our hacked ArduinoIDE and selecting File > SketchBook > Tools > AntennaTracker and then building in the normal way.  For PX4/Pixhawk, our autobuilder doesn't automatically build a binary but I can provide one if people are interested.
  • It can control a Pan and Tilt gimbal like this or this found on
  • It may or may not require a GPS
  • It must somehow receive vehicle position updates from the ground station which has the telemetry radio that is connected to the vehicle. Maybe through a USB cable.  Tridge probably uses the python ground station, MAVProxy, to passthrough the vehicle position data to the AT but perhaps we can get MichaelO to build out a similar feature in Mission Planner.
  • I imagine this antenna tracker could also be used to keep a camera focused on the vehicle which might be good for easing the burden on creating videos of our vehicles.

So if you want to give it a try please do and stick any findings, questions or issues below. Alternatively Issues can go into the issues list.

I'll start sticking things into the wiki as they become clear.

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

Join diydrones

Email me when people reply –


                • Developer

                  You have a file in your ardupilot directory.  Rename it to something else so its not used.

                  It should be "make clean" - not make clear. 

                  After you have moved the out of the way try

                  make clean

                  make apm2

                  again in the AntennaTracker directory and let us know.

                  Thanks, Grant.

                  • Developer

                    Hi Tim.  Glad you got it working.

                    The AntennaTracker changes will be in both master and master-AVR.  master will have the changes so it works on Pixhawk and Linux compatible boards and master-AVR for APM2 hardware boards.

                    Thanks, Grant.

                  • Grant, thanks for your last suggestion which lead me to a final solution.  I have not made any changes to the files and I don't know why I kept getting the reply that I was ahead of the origin.  No matter what I tried (reset --hard or clean -fd and then doing a pull --rebase) I continued to get a response that I was ahead of the origin.  I finally started from scratch and re-cloned the repo.  After I did this I was able to compile with make.  One more question..As development for AntennaTracker continues will the additions make it into the master-AVR for tracker or will they only be added to master?  Thanks again for you assistance. 

                  • Developer

                    Hi Tim.  I assume you have made no code changes in your repository.  If you have you will need to stash them with "git stash" BEFORE you run this command.  See in your post it has the line

                    Your branch is ahead of 'origin/master-AVR' by 1264 commits.

                    This means you effectively have master-AVR with all the master changes in it.  So you need to reset back to the head of master-AVR with this command

                    git reset --hard

                    This WILL delete any local changes you have made so make sure you stash first if you have anything.

                    Then go through the make clean, make apm2 again and let us know.

                    Thanks, Grant.

                  • Renamed file to and tried again with make clean not make clear.  Sorry about that.  The result is the same though. 

                    timgold@timgold-VirtualBox:~/ardupilot$ ls
                    AntennaTracker     modules
                    apm.pdef.xml   Parameters.html
                    APMrover2             COPYING.txt
                    ArduCopter            docs    
                    binaries              eclipse.cproject  tmp
                    Build.AntennaTracker  eclipse.project   Tools
                    Build.APMrover2       libraries         uncrustify_cpp.cfg
                    Build.ArduCopter      Makefile          uncrustify_headers.cfg
                    Build.ArduPlane       mk                Vagrantfile
                    timgold@timgold-VirtualBox:~/ardupilot$ cd AntennaTracker/
                    timgold@timgold-VirtualBox:~/ardupilot/AntennaTracker$ git checkout master-AVR
                    M    modules/PX4NuttX
                    Already on 'master-AVR'
                    Your branch is ahead of 'origin/master-AVR' by 1264 commits.
                      (use "git push" to publish your local commits)
                    timgold@timgold-VirtualBox:~/ardupilot/AntennaTracker$ git pull --rebase
                    remote: Counting objects: 172, done.
                    remote: Compressing objects: 100% (100/100), done.
                    Receiving objects: 100% (172/172), 118.78 KiB | 21.00 KiB/s, done.
                    remote: Total 172 (delta 134), reused 70 (delta 70), pack-reused 2
                    Resolving deltas: 100% (134/134), completed with 31 local objects.
                    From git://
                       2ffabe9..f08a4af  master     -> origin/master
                    Current branch master-AVR is up to date.
                    timgold@timgold-VirtualBox:~/ardupilot/AntennaTracker$ make clean
                    timgold@timgold-VirtualBox:~/ardupilot/AntennaTracker$ make apm2
                    ../mk/ *** apm2 is deprecated on master branch; use master-AVR.  Stop.

  • I am making some headway on getting things working, but one things has me stumped.  I am using the M8N gps, and have excellent hdop (1.3) and sat count (11) but the antenna tracker is wandering all over the place.  Here is a screenshot from MP.  The antenna tracker is located in the house on the right, about 100 feet away.  I thought perhaps over time it would settle out, but no dice.3702116120?profile=original

    • This is the reason why I implemented a special filter in my custom build. I simply avarage GPS data using only 5% of the most recent position and adding it to 95% of previously calculated position. It is of course only valid if your tracker is not moving around.

      I am still short on free time but these changes will eventually make it into master... Be patient :)

    • m8n is very "touchy" about RF noise, if your tracker is compact and GPS is right next to servos and your RFD900 than I think RF noise is your problem. 

      • Good call Artem.  It was definitely RF interference.  I did a very quick test by isolating the m8n gps with some tin foil.  The position accuracy improved immediately.  So I took the time to swap the gps to a old neo-6m I had laying around, and isolated it with some aluminum tape, creating a nice ground plane at the same time.  Accuracy is consistently within about 10 feet now.  Much better.  Thanks for pointing me in the right direction.

      • If it was a rf noise issue, wouldn't the hdop be higher and sat count lower?

This reply was deleted.


DIY Robocars via Twitter
RT @Heavy02011: ⁦@diyrobocars⁩ : A Home-brew computer club* for Connected Autonomous Driving. talk at #piandmore ⁦@PiAndMore⁩ on Jan 23rd h…
11 hours ago
DIY Robocars via Twitter
RT @a1k0n: New blog post! Deep dive into my ceiling light based localization algorithm which runs in 1ms on a Raspberry Pi 3:…
11 hours ago
DIY Robocars via Twitter
Great new guide to using @donkey_car
11 hours ago
DIY Robocars via Twitter
RT @chr1sa: The next @DIYRobocars virtual AI race is tomorrow morn at 9:00am PT. You can watch live on Twitch
DIY Robocars via Twitter
New version of Intel OpenBot! This resolves many of the issues with the first version, including a much smoother tr…
DIY Drones via Twitter
Using ArduRover with an RTK GPS
DIY Drones via Twitter
DIY Robocars via Twitter
DIY Robocars via Twitter
Jan 15
DIY Robocars via Twitter
Jan 15
DIY Drones via Twitter
Jan 14
DIY Robocars via Twitter
RT @Heavy02011: @diyrobocars : A Home-brew computer club* for Connected Autonomous Driving on Jan 23rd, 2021 #Meetu…
Jan 14
DIY Robocars via Twitter
Jan 14
David Hori liked Isabella Domi's profile
Jan 12
DIY Robocars via Twitter
RT @Heavy02011: ⁦@diyrobocars⁩ Autonomous Driving Assembly at #rC3. join us at ⁦@f1tenth⁩ ⁦@DAVGtech⁩ ⁦@DWalmroth⁩…
Jan 11
DIY Robocars via Twitter
RT @chr1sa: New car designs coming for our next @DIYRobocars @donkey_car virtual race on the 23rd. Choose any one you want at race time Le…
Jan 11