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: 65636

Reply to This

Replies to This Discussion

I did the accelerator calibration before I changed the mounting orientation. Do I need to redo the accel cal after I change the orientation? I mounted with the front pointing up.

Can I see with the AT altitude and quad altitude so I can see if there are both the same.

Also I was looking at the tracker .tlog and could not find the VCC and servo voltage. I wanted to see if I was getting any spikes but those were not logged. Can I then them on?





I think you will need to redo the calibration or maybe just try setting AHRS_TRIM_X, Y, Z all to zero.  10 degrees is the limit of those trim values so I strongly suspect that they were set to their maximum during the accel calibration probably because the tracker wasn't held "level" during the first step of the calibration.  "level" might not be what you think it is if the orientation parameter was set incorrectly.  By the way, those trim values are stored in radians so "10" won't likely appear but instead "0.174" will be there.

It doesn't look like the tracker monitors the battery.  The servo outs will certainly be in the tlogs and dataflash logs though.

By the way, instead of updating the AHRS_TRIM_X, Y, Z values directly in the parameter list, it's also possible to set them using the mission planner's accel calibration screen.  The 2nd greeb button below the caption, "Level your Autopilot to set default accelerometer offsets (1 axis/AHRS trims)" should work.

I think your problem is much more simple than everyone thinks. Current versions of Antenna Tracker use raw baro for altitude measurement and it may lead to pitch issues. During first connection (when tracker is powered on and link is ok) tracker reads vehicle's raw baro value, compares it with its own raw baro and uses the difference as a calibration value. It than uses that calibration value as if it was a factory offset between 2 different baros located at the same altitude. What it means is that you must connect your tracker to the vehicle while it is on the ground, otherwise your tracker will think that current altitude reported by vehicle's baro is equal to it's own, thus pointing down instead of pointing at your target. If you are testing your tracker on a live target (for example copter that is loitering in the air) you will get an offset if you enable your tracker while your copter is already in the air. Try restarting both at similar altitude.

Randy, baro readings can vary a lot over short distances. I experienced it while testing my tracker - I noticed 17 meters altitude difference across 100 meters of distance which was most likely caused by rotary winds between buildings. That effect is much less visible in Copter during normal operation, since baro is being compensated by accelerometers and GPS.

It is also worth pointing out, that current versions of AT make no use of advanced altitude estimation done in Copter or Plane firmware. Using raw baro value is the most simple, yet the most ugly soluton producing decent results at longer distances but poor results at low distances.

Abovementioned problems were my main motivation for switching to gps based altitude which I mentioned a while ago. I am not experienced enough to make use of full altitude estimation (baro + gps + acc) so I settled with GPS altitude but there is a lot room for improvements.

Thanks to everyone who's worked on this so far - I'm really looking forward to using it!

Question: I've built it all, now what do I do? The AT Manual stops there.
When I have a radio connected with the same netID as the aircraft, does it automatically connect? How do I get it talking to the aircraft? I have turned both the AT and the aircraft on, and the AT just sits there.

I got it working. My Quad has a bit of a temperature drift in altitude as it warms up. I turned everything on. Waited about 3 minutes. Then sent a Preflight Cal commend first to the Quad then to the Tracker. After that everything was good and no trim was required.

Now I need some good weather. I am in Illinois and it was –2F and windy this morning. Can’t wait for spring.





If you using a Pixhawk controller for the AT, don't forget to press the safety button and supply a voltage regulator to the Main Output center pins for your servos.

The AT will connect automatically to the aircraft. You will hear a long tone when the telemetry connects and a short tone when the telemetry disconnects.

Make sure the mode is set to AUTO. If using the Pixhawk, you can connect to the USB with Mission Planner to see what is going on.

If you're using a 3DR radio (or equivalent) the green lights on the radios should stop flashing and go solid when a connection has been made.  The light on the Pixhawk should also go solid green once it's got the position from the vehicle.

Thanks for the help!
I'm using an APM 2.6.
What should happen? It should move to point at the aircraft without me doing anything? If I move the tripod around, should the antenna dynamically move to keep pointing at the aircraft?


yes to both questions.  I haven't backported the most recent set of changes to work on the APM2.6 yet so there's some features (like dataflash logging) that it won't have but hopefully it'll still work.

Hi Randy,

I installed my new Pixhawk on the AT and I'm having an issue with pitch on the v0.7.5 firmware.Yaw works fine but pitch just points down. According to the Wiki,

"Lower pwm values should cause the tracker to aim down, higher pwm values to aim up."

On my AT, the yaw follows the Wiki, but for pitch, lower pwm makes the pitch go higher. I have tried unchecking the "Reverse" box for pitch and nothing changing. Even after a re-boot, the box remains unchecked but the pitch still goes higher with a lower pwm value. Also related, the "Pitch Gain" parameters seem to have no effect. I can set them all to zero values and see no difference in operation. My current settings are in the image below.

Any ideas on these issues?

Try setting normal/reverse in the full parameter list. Sometimes the settings in the other screens have no effect.

Reply to Discussion


© 2019   Created by Chris Anderson.   Powered by

Badges  |  Report an Issue  |  Terms of Service