Not 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.

Views: 65699

Reply to This

Replies to This Discussion

You may have seen that I've done a blog post about Tracker version 1.0.  Basically this is 0.8 but it's got three improvements including the tilt compensation and PITCH_MIN and PITCH_MAX parameters replace the PITCH_RANGE parameter.  Version 1.0 is available through the Mission Planner's Beta firmwares link and if people think it's ok, I'll make it the official version next week some time.


Sorry for the slow reply.  I've never used a Yuneec copter but I don't think they use MAVLink as their communication protocol so I don't think they will be compatible.  I'm not actually sure which flight control software Yuneec uses but I've heard it's KMEL (now owned by Qualcomm).  I think like many companies they're pursuing open and closed solutions.


Thanks for the blog link. I had not seen it before. KMEL makes sense for the Yuneec. I have a Q500+ 4K model so I was curious about tapping into some of the closed designs.

I'll load v1.0 firmware and test it soon.

Hi Randy,

I just finished building my new RPi3/Navio+/Wifi based tracker. I would like to test it with a SITL vehicle, via the Mavlink mirror feature in MP.

I have no problem understanding, how I would need to set it up with a serial link to the vehicle, but I could not manage to get it to work over a network connection. My tracker has two Wifi dongles connected (The RPi3 onboard wifi gave me lots of problems). One is acting as a client to the real vehicles wifi AP, the other one is in AP mode.

How should the antennatracker start command look like?

Do you use mavproxy on the tracker?



Nevermind, I found a solution. When using tcp, APM can act as a client or server. 

I've gone ahead and release Tracker-1.0.0 as the official release.  I've tested it and I'm pretty sure it's better than 0.8 but if issues do come up we can either roll back or push out a patched release.

Note that I've created this issue for Mission Planner to allow setting the PITCH_MIN and PITCH_MAX parameters conveniently from the Extended Tuning screen.  Hopefully MichaelO will take care of that soon but in any case, until that's done you'll see the older PITCH_RANGE field is greyed out but you can still set the two new parameters from the Full Parameter List or Full Parameter Tree screens.

Hi Randy,

Thanks for the update and thanks for bringing the AT to its first release! 

I still plan to test out v1.0.0 but got side tracked with poor weather and quadplane experiments. Since my quadplanes will also use my AT, I know it will eventually be tested. :)


Since I do not have any available ports on my air-frame to jack in a ADSB receiver, has there been any discussion or progress on adding it to the antenna tracker configuration with air avoidance messages uploaded to UAV via Mavlink or or for that, matter a CGS to aircraft via Mavlink messages?

Can this be done without impacting the message size and possible packet losses?

Hi Randy,

I tried version 1.0 but run into some problems:

1. While connecting, half way through loading the parameters from the tracker, the update slows down a lot
2. I get error messages "failed to update home position"
3. Heavy, unstoppable oscillations in both pitch and yaw
4. Yaw points 180 degrees wrong direction

I rolled back to version 0.8, and all works fine.


If you've got a lot that would be great.  It's really total guess work without a log I'm afraid.

Hi Randy,

I uploaded all my logs from the 15th, where I started testing version 1.0 and changed back to 0.8. Not sure which logs has what info, so I dumped them all here:

Hope it helps.

Randy said:


If you've got a lot that would be great.  It's really total guess work without a log I'm afraid.


Thanks for the logs.  Can you confirm that the yaw servos reverse checkbox is set correctly?  On the latest beta mission planner (i'm unsure about the latest official mission planner) there is a reverse checkbox on the extended tuning screen, a slider and a test button (I'm pretty sure you've already seen these).  When you move the slider and push test the tracker should move in the same direction as the slider.

  • put the slider all the way to the left and push the test button (sometimes you need to push it several times) and the antenna should rotate to the left (i.e. counter-clockwise)
  • put the slider all the way to the right and push the test button - the tracker should rotate to the right (i.e. clockwise).
  • if it doesn't move in the correct direction, click the reverse checkbox and try again.

It's very possible though that a bug has been introduced in the handling of continuous rotation servos because I see this is what you're using for your yaw servo.  I don't have one of these so it's difficult to test.

I guess next time I'll wait longer before doing the release!


The point is that with 0.8, all is working perfectly. So I guess all my settings should be ok. When I installed 1.0, I didn't touch or change anything. Or is there a difference between 0.8 and 1.0?

I double checked, it is as you mention. Slider left, he turn ccw, right cw.

Reply to Discussion



Season Two of the Trust Time Trial (T3) Contest 
A list of all T3 contests is here. The current round, the Vertical Horizontal one, is here

© 2019   Created by Chris Anderson.   Powered by

Badges  |  Report an Issue  |  Terms of Service