3D Robotics

Adding wireless telemetry to ArduPilot

You may have noticed that we had wireless telemetry in our flight testing last week. It's really easy to add. The first thing to keep in mind is that you should use Xbee modules in a different frequency range than your RC equipment. If you've got 72Mhz RC gear, you can use 2.4Ghz Xbee modules. We use Xbee Pro wireless modules with a Adafruit adapter board on the aircraft side, and a Sparkfun USB adapter board on the ground/laptop side. If you've got 2.4Ghz RC gear, you should use 900Mhz Xbee modules. We use a Xbee Pro with the wire antenna for the aircraft, and and Xbee Pro with a SMA antenna connector (and a good 900Mhz antenna) on the ground, with the same adapter boards as above. Next, you need to set up your Xbee modules. They ship with a default of 9600bps, which you must change to 4800 bps for ArduPilot 1.0 or 57,600bps for ArduPilot 2.x. Connect them with your FTDI cable (see instructions here) then use Digi's X-CTU utility to change the baud rate to 4800 or 57,600 (in the modem configuration tab--press the Read button and then click on and change the baud rate line). You should also give them unique Network IDs so they'll be paired. Just use any 3-digit number, and just make sure you've set it the same on both modules. (Don't use 999 if you're going to be flying around me--that's mine!). When you're done with the settings, click "Write". Remember that after you change the baud rate you have to switch back to the PC Settings tab and change the baud rate there, too, or the utility won't be able to communicate with the module. (Switch it back to 9600 when you're switch to the second module, if it's still in the default mode, and repeat the process.) On the ArduPilot side, use three jumper wires to connect the following pins circled in red on the board below: --Xbee RX to ArduPilot FTDI port TXO --Xbee 5v+ and GND to the VCC and GND pins next to the FTDI port.

It will end up looking like this:

(Note: the above is to get telemetry from the Autopilot. If you just want to see the NMEA data from the GPS module, connect the TX pin to ArduPilot's RXI pin, right next to the to TXO pin, instead.) On the ground side, connect the other Xbee module to your laptop with your FTDI cable, as described here. That's it! If you open up a terminal program on your laptop and set the baud rate to 4800 or 56,000, depending on which ArduPilot software version you're using, you should see ArduPilot telemetry coming in. Anytime there is a "Serial.println" in the code, that data will be sent through the Xbees to the ground. You can record any data you want, and even GPS datalog from the ground! Couldn't be easier. BTW, if you want to test the range of your Xbee link, connect the plane-side Xbee module's RX and TX pins together to create a loopback circuit and use the X-CTU utlitity's range test function. For the modules we're using you should get around a mile. Once you've got the wireless connection set up, you can use our Ground Station to display real-time telemetry with ArduPilot 2.1 and up:

E-mail me when people leave their comments –

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

Join diydrones

Comments

  • @Peter
    ardustation source code is over here
  • Jordi,

    Is the source code for the ardustation available for those who wish to modify it ?
  • It's the approach I've chosen and it's in the finish line now. Only difference is I use 35Mhz for RC instead of 72Mhz. With the 3 different RF signals, it seems there are no interferences. But I try to keep antennas and devices at max distance from each other in the airframe. I also tried to have differing antenna orientations, but with no noticeable differences in result. For now, I do not have made longer distances tests, neither standard RC Tx/Rx ground test with undeployed Tx antenna.
  • Developer
    Muot,
    You should not have problems. But your government may confuse your plane as an electromagnetic flying weapon trying to jam their systems. LOL. (kidding).
  • I want to build a UAV with telemetry and video down-link. Are there any major interference issues with a 72MHz RC gear, 900MHz XBee, and a 2.4GHz video transmitter combination? Has anyone done this type of setup before? Any suggestions and tips would be really appreciated before I put out some hard earned cash. Thanks.
  • Hi Earl,
    Sorry for the late reply.
    Thanks for the information, no problem with the SMA plugs/sockets, I've got both.
    Cheers
    John
  • The layout on XBee boards are for an external RPSMA that are very common. I did just that on my wire ant one. I got the connector from an old wifi card.
  • Hi again TCIII,
    Thanks for that information.
    So the Xbee Pro 60mw will be OK for the 'plane but I cannot see a 2.4GHz unit ( that is not a series 2.5 ) with an SMA connector so I can fit an external antenna.
    I have been looking on the Sparkfun site, is there another site that might have one?
    Or do you know if it is possible to fit an SMA connector in place of the wire antenna?
    Many Thanks again.
    John
  • Admin
    John,

    The Sparkfun adapter provides a USB interface and 3.3vdc power for the Xbee module while the Adafruit adapter provides 3.3vdc from 5vdc and level translation from 5vdc to 3.3vdc for the Xbee module. The Xbee modules are transreceivers and can both transmit and receive. Using the Xbee modules for telemetry, the aircraft Xbee module will transmit to the ground stantion module which will be in the receive mode.

    I have several of the Xbee 2mw 2.5 modules and they have to be programmed to talk to each other, with more than just the same ID, which is not hard to do, but you have got to know what you are doing. If you can, I would recommend getting the Xbee Pro modules that are not the 2.5 version and only need to have their IDs programmed to function right out of the box.

    Regards,
    TCIII
  • Hi TCIII and David,
    Thanks for the reply.
    You are correct about the 900MHz, it not allowed in the UK. I should have said the Xbee pro 60mW which is 2.4GHz and the Xbee Pro 50mW series 2.5.
    Don't know why I said the 900 units...must have had a 'senior moment'!
    Am I correct in saying that the Adafruit board connects to the Xbee putting it into a transmission state where the Sparkfun adapter makes the Xbee Pro 50mW RPSMA into a receiver?
    Thanks again to you both.
    John
This reply was deleted.