Difference between revisions of "Modems"

From PaparazziUAV
Jump to navigation Jump to search
Line 132: Line 132:


for direct connection to USB (no FTDI cable required)
for direct connection to USB (no FTDI cable required)


Third alternative:
Third alternative:

Revision as of 07:23, 15 August 2010

The Paparazzi autopilot features a 5V tolerant 3V TTL serial port to interface with any common radio modem. The bidirectional link provides real-time telemetry and in-flight tuning and navigation commands. The system is also capable overlaying the appropriate protocols to communicate thru non-transparent devices such as the Coronis Wavecard or Maxstream API-enabled products, allowing for hardware addressing for multiple aircraft or future enhancements such as data-relaying, inter-aircraft communication, RSSI signal monitoring and automatic in-flight modem power adjustment. Below is a list of some of the common modems used with Paparazzi, for details on configuring your modem see the Airframe Configuration page.

Digi XBee modules

Digi (formerly Maxstream) offers an increasing variety of Zigbee protocol modems well suited for Paparazzi in 2.4 GHz, 900MHz and 868Mhz frequencies. The "Pro" series are long range, up to 40km! Standard series are slightly smaller/lighter/lower power consumption and very short range. All versions are all pin compatible and weigh around 2 grams with wire antennas. All Digi modems can be operated in transparent mode (as a serial line replacement) or in "API mode" with hardware addressing, managed networking, and RSSI (signal strength) data with the Paparazzi "Xbee" option. Three antenna options are offered: the SMA version is ideal for ground modems, wire antennas for aircraft, and chip antennas for those with very limited space.

  • XBee (PRO) ZB (the current series)
  • XBee (PRO) ZNet 2.5 (formerly Series 2) (only legacy -> use XBee-PRO ZB)

The XBee & XBee-PRO ZB share hardware (ember stack) with XBee & XBee-PRO ZNet 2.5. As a result, modules can be "converted" from one platform to another by loading different firmware onto a given module.

These two also share the same hardware and can be converted from one to another by flashing a different firmware:

  • XBee-PRO 802.15.4 (formerly Series 1)
  • XBee-PRO DigiMesh 2.4

Note: Products based on XBee ZNet 2.5 (formerly Series 2) modules are not compatible with earlier XBee 802.15.4 (Series 1) modules.

Module Comparison

Module Point-to-Multipoint ZigBee/Mesh Hardware Software stack Frequency TX Power normal/PRO Notes
XBee ZB yes Ember EmberZNet PRO 3.1 (ZigBee 2007) 2.4 GHz 2mW/50mW coordinator needed
XBee ZNet 2.5 yes Ember EmberZNet 2.5 ZigBee 2.4 GHz 2mW/50mW (only legacy -> use XBee-PRO ZB) coordinator needed
XBee DigiMesh 2.4 yes ? 2.4 GHz all nodes equal (no special coordinators/routers/end-devices)
XBee 802.15.4 yes ? 2.4 GHz
XBee-PRO 868 yes ? 868 MHz 500mW Only High Power Frequency allowed in the UK. 2.4GHz limited to 10mW


Comparison Conclusion

(Copied from DIGI manual)

If the application strictly needs to communicate in a point-to-point or a point-to-multipoint fashion, 802.15.4 will be able handle all the communications between your devices and will be simpler to implement than trying to use a module with ZigBee firmware to accomplish the same goal. ZigBee is necessary if you need to use repeating or the mesh networking functionality.

-Interpretation for paparazzi: if inter-aircraft communication is required one should go for the zigbee ZB series 2 modules.

Pinout

Maxstream XBee pinout


Xbee 20-pin Header Name Notes Suggested Color
1 +3.3v Power Red
2 DOUT Tx output - connect to Autopilot Rx Green
3 DIN Rx input - connect to Autopilot Tx Blue
10 GND Ground Black

The image view is from above, top, thus NOT at the side where the connector pins come out

Note : DTR and RTS need to be wired for upgrading firmware

GCS Adaptation

Adafruit XBee adapter board)
Adafruit XBee adapter with FTDI cable)

Adafruit (yes, that really is their name) offers a great adapter board kit for the Xbee modules that includes a 5-3.3V voltage regulator, power and activity LEDs, and pins to connect directly to your FTDI cable for $10! Some assembly required.


First alternative:

http://www.droids.it/cmsvb4/content.php?143-990.001-XBee-Simple-Board

simpler, lighter, smaller footprint, bit more expensive, comes assembled and tested. --GR


Second alternative:

http://www.droids.it/cmsvb4/content.php?152-990.002-XBee-USB-Board

for direct connection to USB (no FTDI cable required)


Third alternative:

https://mini.ppzuav.com/osc/product_info.php?cPath=13&products_id=111

FTDI Utility Board 1.0 of ppzuav.com

Digi XBee Pro 2.4GHz (802.15.4, "Series 1")

  • Note: Products based on XBee ZNet 2.5 (formerly Series 2) modules do not communicate with products based on XBee 802.15.4 (formerly Series 1) modules.

These relatively cheap and light modules implement the ZigBee/IEEE 802.15.4 norm. They allow up to 1.6km (1 mile) range (Paparazzi tested to 2.5km (1.5 miles)). The main drawback of using such 2.4Ghz modules for datalink is that it will interfere with the 2.4Ghz analog video transmitters and a inevitable decrease in range when in proximity to any wifi devices. For the plane, get the whip antenna version if you are not planning to build a custom antenna.

XBee Pro USB Stand-alone Modem (XBP24-PKC-001-UA)
  • Frequency Band 2.4Ghz
  • Output Power 100mW (Xbee Pro)
  • Sensitivity -100 dBm
  • RF Data Rate Up to 250 Kbps
  • Interface data rate Up to 115.2 Kbps
  • Power Draw (typical) 214 mA TX / 55 mA RX
  • Supply Voltage 3.3v
  • Range (typical, depends on antenna & environment) Up to 1500m line-of-sight
  • Dimensions 24 x 33mm
  • Weight 4 grams
  • Interface 20-pin mini connector
  • Chip antenna, ¼ monopole integrated whip antenna or a U.FL antenna connector (3 versions)
  • Price: Approximately $32
XBee Pro OEM Modem

Mouser: 888-XBP24-PKC-001-UA
NOTE: If you wish to use this unit with another XBee type other than the 802.15.4 (i.e. XBee-PRO ZB) then purchase a modem with the U.fl connector.


Documentation

Reviving a non-responding Xbee Pro

To bring an apparently dead XBee Pro Series 2 back to life, do the following:

  1. Connect the USB device that holds the XBee to your laptop/desktop (without the XBee connected).
  2. Open X-CTU.
  3. In the tab used to program the device, select the proper modem (normally you would do a READ to get the values).
  4. Choose the option you want to program (i.e., "END DEVICE" or "COORDINATOR") as if you were programming it.
  5. With the XBee not in the device, click "WRITE". It will hang, timeout, and bring up a dialog box.
  6. Before you click OK to the dialog box, plug in the XBee module (carefully).
  7. Click OK to clear the message and it should start programming automatically.

Digi XBee Pro ZB

The low-power XBee ZB and extended-range XBee-PRO ZB use the ZigBee PRO Feature Set for advanced mesh networking.

Maxstream XBee Pro ZB
  • Low-cost, low-power mesh networking
  • Interoperability with ZigBee PRO Feature Set devices from other vendors*
  • Support for larger, more dense mesh networks
  • 128-bit AES encryption
  • Frequency agility
  • Over-the-air firmware updates (change firmware remotely)
  • ISM 2.4 GHz operating frequency
  • XBee: 2 mW (+3 dBm) power output (up to 400 ft RF LOS range)
  • XBee-PRO: 50 mW (+17 dBm) power output (up to 1 mile RF LOS range)
  • RPSMA connector, U.FL connector, Chip antenna, or Wired Whip antenna
  • price : ~34 USD

These are available from Mouser:
888-XBP24-Z7WIT-004 XBee-PRO ZB with whip antenna
888-XBP24-Z7SIT-004 XBee-PRO ZB with RPSMA

Setup

For the ZigBee ZNet 2.5 and ZB modules to work one of the modules has to be flashed with the coordinator firmware. All the others in the same PAN can either run as routers or end-devices.

  • Flash one module (ground station) with the coordinator AT firmware
  • Flash aircraft module with router or end-device AT firmware

To allow modules to join any PAN set the PAN ID to zero (default setting). Then the coordinator will generate a random PAN ID and routers and end-devices will join the first PAN they find.

If you operate in an environment with multiple zigbee PANs it is recommended to set the PAN ID explicitly:

  • Set PAN ID to some unique (but same) ID on both modules
  • Set a Node Identifier for each module (e.g. ground, aircraft)

Documentation

Digi XBee Pro 868

WARNING - THESE MODEMS HAVE A 10% DUTY CYCLE, AND CURRENTLY HAVE SEVERE ISSUES WITH PAPARAZZI

868MHz is a limited band. Please read the 868MHz Issues

XBee-PRO 868 modules are long range embedded RF modules for European applications. Purpose-built for exceptional RF performance, XBee-PRO 868 modules are ideal for applications with challenging RF environments, such as urban deployments, or where devices are several kilometers apart.


Maxstream XBee Pro 868
  • 868 MHz short range device (SRD) G3 band for Europe
  • Software selectable Transmit Power
  • 40 km RF LOS w/ dipole antennas
  • 80 km RF LOS w/ high gain antennas (TX Power reduced)
  • Simple to use peer-to-peer/point-to-mulitpoint topology
  • 128-bit AES encryption
  • 500 mW EIRP
  • 24 kbps RF data rate
  • price : ~70 USD

Getting Them Working

Even with the xbee868.xml telemetry file, XBee868s will not last over 6 minutes. There is a special 868 build flag (in slayer1.xml), and matching option for the datalink but I could not get this to work. Eventually, I got them to work for about 20 minutes, which happily is the flight endurance of a heavily overloaded GWS Formosa.

I did this using a command window, but you could use X-CTU if you are a wuss or have Windows handy.

  1. Attach Xbee and start serial comm program (I use screen /dev/ttyUSB0 <baud rate, just a number, no angled brackets>, you can also use pico- or microcom)
  2. Type AT and enter. You should get an OK back.
  3. ATMT and enter. You should get a number—this represents the number of extra times each packet will be broadcast. We now need to change this to zero.
  4. ATMT0 and enter => OK
  5. ATRR and enter. This number is the number of retries that will be sent if an ACK is not received. Disabling this will also have the side effect of disabling ACKs, giving us more packets to play with.
  6. ATRR0 and enter => OK
  7. Type ATWR to store the new stuff in the firmware. You should get an OK.
  8. Set the datalink to transparent mode both in your airframe file and on the datalink.

You may also want to drop the power level to 1mW for testing, or it won't actually work - they are just too damn powerful to talk to each other at a range of a couple of feet. I also used 1mW for flying - never lost the link, even after a mile. Didn't get round to range testing them though.

You probably want to do this to both XBees (at least I did). I personally had the baud rate at 57600 for legacy reasons, but it should work just as well at any other baud rate. Thanks to CheBuzz for this info, and for helping me work all this out at 11pm the night before EMAV09.

Documentation

Digi XBee Pro XSC 900MHz

Maxstream has recently announced a promising new line of modems combining the small size and low cost of their popular Xbee line with the long range and 2.4 GHz video compatibility of their high end 900 MHz models. Sounds like the perfect modem for anyone who can use 900 MHz. Give them a try and post your results here!

Maxstream XBee Pro XSC
  • Frequency Band 900 MHz
  • Output Power 100 mW (+20 dBm)
  • Sensitivity -100 dBm
  • Data Rate: 9600 bps
  • Range (typical, depends on antenna & environment) Up to 24km (15 miles) line-of-sight
  • Interface 20-pin mini connector (Xbee compatible pinout)
  • RPSMA, integrated whip antenna or U.FL antenna connector (3 versions)
  • price : ~75 USD

Documentation

Trials

Tested one today and it worked great. Going to try a multiUAV test with it soon --Danstah

MultiUAV tests concluded this is probably not the best module to use. Even though it says you can change the baudrate inside x-ctu that is not the case, it is fixed at 9600 bps. This is a great modem however for single UAV's and I do recommend. --Danstah

Why would the European (868 MHz) be good to 24kbps and this only to 9600? When I was altering my XBees (2.4Ghz Pro's) I had this problem altering baud rates until I read you have to send a "commit and reboot" type command after setting the baud rate. Could this be the case? --GR

Maxstream 9XTend

These larger units have been tested on the 900Mhz band, but are also available in 2.4Ghz. They are a bit on the heavy side, about 20 grams, but give good performance at range. They have adjustable power settings from 100mW to 1W. Testing has shown range up to 3.2km (2 miles) with 100mW.

9XTend USB Modem
  • Frequency Band 900Mhz and 2.4Ghz (2 versions)
  • Output Power 1mW to 1W software selectable
  • Sensitivity -110 dBm (@ 9600 bps)
  • RF Data Rate 9.6 or 115.2 Kbps
  • Interface data rate up to 230.4 Kbps
  • Power Draw (typical) 730 mA TX / 80 mA RX
  • Supply Voltage 2.8 to 5.5v
  • Range (typical, depends on antenna & environment) Up to 64km line-of-sight
  • Dimensions 36 x 60 x 5mm
  • Weight 18 grams
  • Interface 20-pin mini connector
  • RF connector RPSMA (Reverse-polarity SMA) or MMCX (2 versions)
  • price : ~179 USD
9XTend OEM Modem

Pinout

Maxstream 9XTend Pinout
9XTend 20-pin Header Name Tiny Serial-1 Header Notes
1 GND 1 (GND) Ground
2 VCC 2 (5V) 5V power (150mA - 730mA Supplied from servo bus or other 5V source)
5 RX 8 (TX) 3-5V TTL data input - connect to Tiny TX
6 TX 7 (RX) 5V TTL data output - connect to Tiny RX
7 Shutdown 2 This pin must be connected to the 5V bus for normal operation

Notes:

  • 9XTend can run on voltages as low as 2.8V but users are strongly advised against connecting any modem (especially high power models) to the sensitive 3.3V bus supplying the autopilot processor and sensors.


Documentation

Aerocomm

Aerocomm's API mode is already implemented but some system integration is required. Full API more with addressed packets works well and was tested with AC4790-1x1 5mW low power modules. Maximim range achieved with a whip quater-wave antenna was 1Km.

How to use this modem on ground station side? [1]

See folder paparazzi3 / trunk / sw / aerocomm. It has all the required files to use this modem on the airborne and ground station side. The link.ml file is a direct replacement of the "main" link.ml file of the ground sttaion and will be merged into it in the future.. or you can do it as well.


AC4868-250

  • Frequency Band 868MHz (For Europe). 868MHz is a limited band. Please read the 868MHz Issues
  • Output Power (w/ 2dBi antenna) 250 mW
  • Sensitivity (@ full RF data rate) -103 dB
  • RF Data Rate Up to 28.8 Kbps
  • INterface Data Rate Up to 57.6 Kbps
  • Power Draw (typical) 240 mA TX / 36 mA RX
  • Supply Voltage 3.3v & 5V or 3.3v only
  • Range (typical, depends on antenna & environment) Up to 15 kilometers line-of-sight
  • Dimensions 49 x 42 x 5mm
  • Weight < 21 grams
  • Interface 20-pin mini connector
  • Antenna MMCX jack Connector
  • price : ~80$
Aerocomm USB Stand-alone Modem

AC4790-200

  • Frequency 902-928MHz (North America, Australia, etc).
  • Output Power 5-200mW
  • Sensitivity (@ full RF data rate) -110dB
  • RF Data Rate up to 76.8 Kbps
  • INterface Data Rate Up to Up to 115.2 Kbps
  • Power Draw (typical) 68 mA
  • Supply Voltage 3.3v & 5.5V
  • Range (typical, depends on antenna & environment) Up to 6.4 kilometers line-of-sight
  • Dimensions 42 x 48 x 5mm
  • Weight < 20 grams
  • Interface 20-pin mini connector
  • Antenna MMCX jack Connector or internal
  • price : ~80$
AC4868 OEM Modem

AC4790-1000

  • Frequency 902-928MHz (North America, Australia, etc).
  • Output Power 5-1000mW
  • Sensitivity (@ full RF data rate) -99dB
  • RF Data Rate up to 76.8 Kbps
  • INterface Data Rate Up to Up to 115.2 Kbps
  • Power Draw (typical) 650 mA
  • Supply Voltage 3.3V only
  • Range (typical, depends on antenna & environment) Up to 32 kilometers with high-gain antenna
  • Dimensions 42 x 48 x 5mm
  • Weight < 20 grams
  • Interface 20-pin mini connector
  • Antenna MMCX jack Connector
  • price : ~80$

Pinout

Aerocomm AC4868 modem pinout
Aerocomm AC4490 wiring example


Wiring the Aerocomm AC4868 to the Tiny
AC4868 20-pin Header Name Color Tiny v1.1 Serial-1 Tiny v2.11 Serial Notes
2 Tx green 7 7 (Note 1)
3 Rx blue 8 8 (Note 1)
5 GND black 1 1 -
10+11 VCC red 2 3 +3.3v
17 C/D white 3 ? Low = Command High = Data

Note 1 : names are specified with respect to the AEROCOMM module

Documentation

Radiotronix

These Radiotronix modems are used in transparent mode. Use the WI232EUR Evaluation Software for configuring the modems for the set speed. Connect /CMD and CTS for programming. The DTS version for the US market might cause severe interference with GPS reception, it is not recommended. For a nice ground station modem just add a FTDI232 USB->serial cable, a 3.3V regulator with 100nF capacitors from supplies to ground, solder a SMA cable/connector and put it in a nice case. Make sure you only connect RTS to /CMD if you want to reprogram the modem with the Evaluation software (see the open jumper connection in the picture, green wire) and leave it floating otherwise as connected RTS/CTS sporadically leads to a reprogramming of the modem. The ANT-GXD105-FME/F from Roundsolutions was used as a ground station antenna at many competitions. Note that a 1/2 wave dipole antenna works best on-board as it doesn't require a ground-plane and has a reasonably omnidirectional radiation pattern.

WI232EUR

  • Frequency Band: 868 MHz (for Europe)
  • Output Power: 32 mW
  • RF Data Rate: Up to 76.8 kbps
  • Interface Data Rate: up to 115.2 kbps
  • Power Draw (typical): 65 mA TX / 20 mA RX
  • Supply Voltage: 3.3v
  • Range (typical, depends on antenna & environment): 500 meters line-of-sight
  • Dimensions: 24 x 21 x 4mm
  • Weight: ~2 grams
  • Interface: solder connector
  • Antenna: solder connector
  • Price: ~25$
WI232EUR Modem (picture shows connection to Tiny 1.1)

Pinout


Wiring the WI232EUR to the Tiny v1.1
WI232 pins Name Tiny Serial-1 Notes
6 TxD 7 (Note 1)
5 RxD 8 (Note 1)
15-18 GND 1 -
19 VCC 2 +3.3v
4 /CMD - (Note 2)
7 CTS - (Note 3)

Note 1 : names are specified with respect to the Radiotronix module

Note 2 : connect to RTS to program device with Evaluation software

Note 3 : connect to CTS to program device with Evaluation software

WI232EUR Modem in BOPLA case

Documentation

Bluetooth

These modems do not give you a great range but Bluetooth can be found in a lot of recent laptops built-in. Maybe not useful for fixed wing aircrafts it might be used for in-the-shop testing or quadcopters. Make sure you get a recent Class 1 EDR 2.0 stick if you buy one for your computer.

"Sparkfun" Roving Networks (WRL-08497)

  • Frequency Band 2.4GHz
  • Output Power 32 mW
  • RF Data Rate up to ~300 kbps in SPP
  • Interface Data Rate up to 921 kbps
  • Power Draw (typical) 50 mA TX / 40 mA RX
  • Supply Voltage 3.3v
  • Range (typical, depends on antenna & environment) 100 meters line-of-sight
  • Dimensions 26 x 13 x 2mm
  • Weight ~1.5 grams
  • Interface solder connector
  • price : ~45$
Roving Networks modem wiring

To connect to it, get the MAC address of the bluetooth modem

me@mybox:~$ hcitool scan
Scanning ...
       00:06:66:00:53:AD       FireFly-53AD

either make a virtual connection to a Bluetooth serial port each time you connect

sudo rfcomm bind 0 00:06:66:00:53:AD

or configure it once in /etc/bluetooth/rfcomm.conf

rfcomm0 {
  bind yes;
  device 00:06:66:00:53:AD;
}

now you can use Bluetooth as /dev/rfcomm0 with the Paparazzi 'link'. You might need to restart 'link' in case you get out of range and it disconnects (tbd). Set the Tiny serial speed to 115200 as the modules come preconfigured to that.

Coronis WaveCard

These relatively inexpensive and light modules implement a Coronis proprietary protocol. Low power consumption - high latency - I would not recommend these modules mostly because of the low quality of the distribution and support. The documentation is rather poor and not easily available.

Suport for these modems has been removed from the airborne code on Dec 10th, 2007.

  • Frequency Band 400MHz, 868Mhz and 915MHz (3 versions)
  • Output Power 25mW and 500mW (2 versions)
  • Sensitivity -110 dBm (@ 9600 bps)
  • Data Rate 100 Kbps
  • Power Draw (typical) 45mA (25mW), 450mA (500mW) TX / 15 mA RX
  • Supply Voltage ...
  • Range (typical, depends on antenna & environment) Up to 1km (25mW) , 5km (500mW) line-of-sight
  • Dimensions 30 x 28 x 7mm (25mW), 37 x 30 x 7mm (500mW)
  • 50 ohm RF port for antenna connection

Coronis Wavecard

Documentation

Telemetry via Video Transmitter

2.4GHz Video Transmitter

In order for the UAV to transmit video from an onboard camera, an analog video transmitter can be used. These vary in power, and thus range, and run normally on 2.4Ghz. Small UAVs can get about 600m of range from the 50mW version, and extended range can be achieved using units up to 1W. Weight for these units varies from a couple grams to about 30 for the 1W with shielding. Please check for your countries regulations on 2.4Ghz transmission, as each is different.

It is possible to use the audio channel to send simple telemetry data to the groundstation. Uploading telemetry not possible via analog audio transmitter only.

Antennas

Here are some examples of lightweight and efficient 868MHz antennas developped by the RF laboratory at ENAC.

868MHz copper foil antenna attached to the aircraft tail
868MHz copper foil antenna bottom view
868MHz ground antenna


This wiki page might give some ideas about antennas: http://en.wikipedia.org/wiki/Dipole_antenna