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 –


    • I'm using CR servos, but if I setup CR in the extended tuning, it oscillates like crazy. So I use CR, but choose position.
      • It is not supposed to work like that at all. Position servos may work with CR code, not the other way around. This is why you get strange oscillations and go beyond mechanical limits. It will be extremely difficult to tune it properly, thus I highly recommend using CR code with CR servos. Can you describe your problems with CR code?

        • I changed back to position servo on pitch, and all works well now, other than that the yaw starts to rotate (and not always) when connection is lost. It seems my observation earlier that it rotates in the direction it was moving when the connection got lost is correct.

          Using the CR mode before, my problem was that it oscillated in pitch heavily, unstopable. No matter which value I changed form the tuning settings, it just kept going on and on. That's why I think an autotune function would be a great feature.

          Funny enough, CR servo on pitch worked very well with position mode, other than going over the mechanical limit and burning the servo.

          Eventually, I would like to use a heavy dish antenna to increase the range and I think that will only possible using a gear and CR mode.

    • This is odd. Are you using CR servos or position servos? The tracker should enter scan mode automatically and it possibly does that ignoring some limits (thus burning servos). This can happen if you set your RCx_MIN and MAX incorrectly on position servos. With CR servos firmware only relies on AHRS but it still doesn't explain why it moves past limits. I don't remember now but maybe the version you used is meant for my tracker that operated without any limits in every axis - not many people use CR servos and I was the only one to have CR servo on pitch axis.

      • I have disconnected the pitch servo as I'm flying long distances and put my pitch manually to almost level.

        But I noticed yaw is doing the same. When connection lost, he sometimes (not always) turns randomly.

        I may have seen this: he moves bit by bit, following the plane. The connection gets lost when he just move d. As a result, he keeps on moving in the direction he was moving just as the connection got lost.

        Not 100% sure, but it seems to be that way.
  • Files were too big, here they are again

  • Here are some log files

  • 3702185605?profile=originalI have modified a MFD antenna tracker according the pictures. I use 2 360 degrees servos for both pitch and yaw.

    Yaw does have a slipring, so can rotate free. Pitch is limited to minus 15 (down) to plus 90 (up). I have mounted the pixhawk on the boom and I use Jakub's software as I use this tracker in a more or less professional environment and I need it to work.

    So far, so good.

    But I have encountered the following problems:

    1) When the tracker looses connection with the target, it starts to randomly move. For yaw, no problem, but for pitch, I have now burned 2 servos because they come to the mechanical end stop and still want to move further

    2) If I select 360 degrees servos in the setup, the whole thing starts to oscillate like crazy

    3) PID settings are very hard to figure out




  • Developer

    To add a bit of hope for those struggling to get the tracker working.  This is a video from Philip Rowse who got his tracker working for the first time over the weekend.

    • gee you lucky been trying for 6 months  still no go 

This reply was deleted.


DIY Robocars via Twitter
RT @DanielChiaJH: Great racing against @a1k0n today at @diyrobocars! Pretty cool to both break sun-9s at the track today I think I got very…
20 hours ago
DIY Robocars via Twitter
Broadcasting the @circuitlaunch race live now at Races begin around 2:00pm PT
DIY Robocars via Twitter
RT @a1k0n: ran a huge number of hyperparameter tuning experiments yesterday; now I can train a new policy, far with better quality, in 15 m…
DIY Robocars via Twitter
RT @a1k0n: Did I get rid of hand-tuned parameters? Yes. Am I still hand-tuning more parameters? Also yes. I have a few knobs to address the…
DIY Robocars via Twitter
RT @a1k0n: I'm not going to spoil it, but (after charging the battery) this works way better than it has any right to. The car is now faste…
DIY Robocars via Twitter
RT @a1k0n: Decided to just see what happens if I run the sim-trained neural net on the car, with some safety rails around max throttle slew…
Sep 26
DIY Robocars via Twitter
Sep 24
DIY Robocars via Twitter
RT @SmallpixelCar: @a1k0n @diyrobocars I learned from this. This is my speed profile. Looks like I am too conservative on the right side of…
Sep 24
DIY Robocars via Twitter
RT @a1k0n: @SmallpixelCar @diyrobocars Dot color is speed; brighter is faster. Yeah, it has less room to explore in the tighter part, and t…
Sep 24
DIY Robocars via Twitter
RT @a1k0n: I'm gonna try to do proper offline reinforcement learning for @diyrobocars and throw away all my manual parameter tuning for the…
Sep 23
DIY Robocars via Twitter
RT @circuitlaunch: DIY Robocars & Brazilian BBQ - Sat 10/1. Our track combines hairpin curves with an intersection for max danger. Take tha…
Sep 22
DIY Robocars via Twitter
RT @SmallpixelCar: Had an great test today on @RAMS_RC_Club track. However the car starts to drift at 40mph. Some experts recommended to ch…
Sep 11
DIY Robocars via Twitter
RT @gclue_akira: 世界最速 チームtamiyaのaiカー
Sep 10
DIY Robocars via Twitter
RT @DanielChiaJH: Always a good time working on my @diyrobocars car at @circuitlaunch. Still got some work to do if I’m to beat @a1k0n howe…
Sep 10
DIY Robocars via Twitter
RT @SmallpixelCar: My new speed profile for @RAMS_RC_Club track
Sep 10
DIY Robocars via Twitter
RT @SmallpixelCar: Practiced at @RAMS_RC_Club today with my new @ARRMARC car
Aug 28