AntennaTracker v1.0 on NAVIO2 with Bebop2

ArduPilot's Antenna Tracker firmware has been making some quiet progress over the past few months.  They're all documented in the Release Notes but at a high level the improvements include:

  • More accurate control due to bug fixes in how the vehicle's position estimation was done
  • Smoother movement through additional filtering
  • Separate servo types possible for yaw and pitch axes
  • Tilt compensation meaning it tracks the vehicle accurately even when the tracker is leaned over
  • Improved Mission Planner setup screen (i.e. Extended tuning page)

The parts I used to build my tracker included:

I used a NAVIO2 instead of a Pixhawk mostly because it's easier to make a Wifi connection this way.

I haven't yet tested the range of the telemetry connection to the Bebop2 but I suspect it's between 1km ~ 2km.  In fact, the antenna used here is not ideal for use with the Bebop2, a simpler non-Helical antenna like this one would likely do better.

Some limitations of this setup:

  • we don't yet support receiving live video from the Bebop2 but this is coming within the next couple of months so during this test I simply had telemetry data from both Tracker and Bebop2 visible in the Mission Planner
  • the networking connection between the PC to the RPI2 was quite simple but not very flexible.  For whatever reason the PC and RPI2 nearly always appear with the same IP addresses so the Tracker startup scripts were hardcoded to always uses these.  It would be better to setup dhcp on the RPI2 to set PC's IP address
  • the bebop's Wifi ssid is hard-coded in the script on the RPI2.  If someone wanted to repeat this setup they would need to change this to match their particular Bebop.

In case people want to replicate this setup, I've uploaded an image to here.

Thanks to the beta testers for their ideas and feedback and Stefan Lynka for his code contributions.

Views: 2759

Comment by Randy on July 30, 2016 at 1:37am

@Monroe, I also noticed the lag.  I'm sure that can be reduced by reducing the input filtering on the PID controllers.  So there are a couple of new parameters (YAW2SRV_FILT, PITCH2SRV_FILT I think) that are currently set very low (0.1 I think).  That makes everything really smooth but might be introducing some unnecessary delay.

We should also double check the slew rate 'cuz I think it's a bit low by default.

We could also introduce a feed-forward into the control to make it respond more instantaneously.  Right now, because it lacks that, an angle error needs to be present before it starts moving so it's always play a bit of catch-up.

The hand-off is totally possible I think.  With the wifi connection (and the access point being on the drone in this case), there's no reason why multiple ground stations (and their antenna trackers) couldn't connect at the same time.  We might just need to modify the ardupilot startup script on the drone (i.e. the Bebop2) so that it listens on a bunch of extra ports.

Comment by Monroe King on July 30, 2016 at 2:04am

Hummm does the tracker produce a log file?

Being able to hand off would be really good for search and rescue to cover really large territory.

Being mobile would be great for the desert too.

Haha your gonna make me break out my old tracker and fix it up!

Is there a group or mailing list or something for the tracker?

Comment by lianpinkoh on August 10, 2016 at 6:28pm

@Randy, I have just received my order of AirMax 900 16dBi Yagi antenna which I intend to use to build a tracker following instructions from These are massive antennae! My question is, given that this yagi has dual SMA cables/connectors, when using with the RFD900 radio, do I just connect both SMA of the yagi to the two SMA of the RFD900? Thanks!

Comment by Randy on August 11, 2016 at 3:46am


Yes, I think that's how it should work.  I've heard that the size of the antenna grows exponentially (or at least not linearly) as the dBi goes up.  So that antenna, at 16dBi, I can imagine is quite large.  It'll be interesting to see what it's like once it's together.

Comment by lianpinkoh on August 14, 2016 at 8:07pm

@Randy, here it is mounted on a crappy tripod. Need to get a stronger one before I snap something! But it is huge at 5.88 lbs (pan-and-tilt rated at 6 lbs).

Comment by Randy on August 14, 2016 at 8:51pm


Looking good!  It really is quite massive, you'll probably be able to fly to the moon and still have a good telemetry connection!

Comment by Dusan on August 15, 2016 at 6:13pm

Just need driver to read PWM from Pixhawk

Comment by lianpinkoh on September 10, 2016 at 6:10pm

@Randy, here's an update on my tracker. All the mechanics and electronics are set up (using a bridging 3DR radio to GCS). I'm having trouble with the tuning. Any chance you are willing to share your parameters?

Video of tracker

Comment by isfandyar01 on October 10, 2018 at 6:00am

hey can you guide me how you made it

Comment by isfandyar01 on October 10, 2018 at 11:32pm

am trying o built antenna tracker using navio and raspberry pi 


You need to be a member of DIY Drones to add comments!

Join DIY Drones

© 2019   Created by Chris Anderson.   Powered by

Badges  |  Report an Issue  |  Terms of Service