Modems
The Paparazzi autopilots generally feature a 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 through 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 and XBee Configuration pages.
General comparison
This is ONLY a comparison between modules on this page
All modules listed here work without issue and are generally available.
Feature | XBee Series 1 | XBee Pro Series 1 | XBee Series 2 | XBee Pro Series 2 | XBee 868LP | XBee Pro 900HP | XBee Pro XSC 900 | Digi 9XTend | SiLabs Si1000 | Aerocom AC4790-200 | Aerocom AC4790-1000 | Laird RM024 50mW | Laird RM024 125mW | RN-41 Bluetooth |
frequency | 2,4GHz | 2,4GHz | 2,4GHz | 2,4GHz | 868MHz | 900MHz | 900MHz | 900MHz, 2.4GHz | 240-960MHz | 900MHz | 900MHz | 2,4GHz | 2,4GHz | 2,4GHz |
output power | 1mW | 63mW (US) 10 mW (Int'l) | 2mW | 63mW | 5mW | 250mW | 250mW | 1mW-1W | max 100mW | 5-200mW | 5-1000mW | 2,5-50mW | 2,5-125mW | 32mW |
RF speed | 250kbps | 250kbps | 250kbps | 250kbps | 10kbps, 80kbps | 10 or 200kbps | 10, 20kbps | 9.6, 115.2kbps | 76.8kbps | 76.8kbps | 280, 500kbps | 280, 500kbps | 300kbps | |
antenna | chip, wire, rpsma, u.fl | chip, wire, rpsma, u.fl | chip, wire, rpsma, u.fl | chip, wire, rpsma, u.fl | external required | wire, rpsma, u.fl | wire, rpsma, u.fl | rpsma, MMCX | external required | MMCX, internal Antenna | MMCX | u.fl, chip, both | u.fl, chip, both | pcb trace |
pinout | XBee | XBee | XBee | XBee | SMD | XBee | XBee | 20 pin 2,54mm/USB | SMD (42 pin LGA) | 20 pin mini connector | 20 pin mini connector | XBee/SMD | XBee/SMD | SMD |
price | 16€ | 26€ | 14€ | 28€ | 18€ | 32€ | 32€ | 150€ | 4€ | 52€ | 64€ | 30€ | 30€ | 20€ |
for Country | Worldwide | Worldwide | Worldwide | Worldwide | Europe | North America, Australia | North America, Australia | Worldwide | Worldwide | North America, Australia | North America, Australia | Europe | North America | Worldwide |
Frequencies
Analog and digital signals (video and data/modem) can not be transmitted over the same frequency band since the analog signal will "block" the digital one. (Attention ! the common 2.4 or 5.8GHz frequencies have multiple channels, if the analog and digital transmitter/receiver modules are set up to different channels/frequencies, they should work (even on 2.4GHz)).
You may want to inform yourself about your countries laws ! Different countries allow different frequencies at different power.
Sending on a wrong frequency or with too much power may end in a serious lawsuit !
Digi: Government Agency Certifications
HAM / CEPT Licence
If possible, consider making a HAM radio (amateur radio) licence. (e.g. CEPT, depends on your locality)
You will learn about the radio technology, operational technology and legislation.
With a HAM radio licence, you can also use other frequencies or transmit on a higher power. (e.g. In some countries, the 5.8GHz video transmission is for non licenced people restricted to 10mW!)
Licence Pros
- You will be informed well about the (local and international) legislations.
- You can transmit on a higher power (depends on frequency).
- You will learn a lot about the techniques and be more than a standard "consumer" of radio electronic products.
- It will be easier to find faults in your radio systems.
- You can build (if you want) high gain/focused antennas which can give you a better signal, wider range and won't disturb anyone else.
- Well educated people respecting the legislation just looks much better in looks to UAV's :)
Licence Cons
- You will need to learn for the test (can be compared with a diverce licence).
- The certificate and books will cost about 70€ (total, can vary !).
- Maybe some costs (per year) for your call sign.
CEPT Licence in Austria
A short description about getting the CEPT 1 (not the CEPT Novice !) licence in Austria.
You will need the appropriate books which cost 50€ (70€ if you want them with the ask catalog and answers which can be helpful) and rough 18€ for the exam and certificate. The ÖVSV offers also some courses, but you can also learn everything with the books.
The are (regularly?) HAM licence courses at the https://metalab.at/ in Vienna.
To be continued...
Links
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.
Four antenna options are offered: RP-SMA, U-FL, wire antenna, chip antenna
- 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: Modules based on Freescale chipset (formerly Series 1) are not compatible with Ember chipset based modules (Series 2).
If only point to point or point to multipoint communication is required 802.15.4 will do the job. These are designed for high data rates and low latency.
Modules with Zigbee firmware are needed for mesh functionality(communication between the UAV's)
See the XBee Configuration page. This tutorial is also good to configure and get started with XBee Pro.
Module Comparison
Module | Point-to-Multipoint | ZigBee/Mesh | Chipset | 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 | Freescale | 2.4 GHz | all nodes equal (no special coordinators/routers/end-devices) | |||
XBee 802.15.4 | yes | Freescale | 2.4 GHz | ||||
XBee-PRO 868 | yes | ? | 868 MHz | 500mW | Only High Power Frequency allowed in the UK. 2.4GHz limited to 10mW |
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
There are several vendors of hardware to connect the ground XBee radio modem to the GCS computer.
More information about general USB-Serial adapters can be found on the Serial_Adapter page.
Adafruit
Adafruit 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.
Droids
Simple breakout board with voltage regulator.
Adapter with FTDI chip for direct USB connection.
PPZUAV
ppzuav.com product link
More information at the Serial_Adapter#FTDI_utility_Board page.
FTDI Utility Board 1.0 with FTDI232RL
On board XBEE connector and Molex Picoblade connectors.
Sparkfun
XBee Explorer USB with FTDI232RL
Digi XBee Pro DigiMesh / 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 DigiMesh / 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.
|
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
- product page
- datasheet
- user manual
- To program your Xbee you need X-CTU you can download it here. (only windows)
- explanation on X-CTU here.
- Drivers for XB24 and XBP24 modules
Digi XBee Pro ZB / ZNet 2.5 ("Series 2")
The low-power XBee ZB and extended-range XBee-PRO ZB use the ZigBee PRO Feature Set for advanced mesh networking.
|
These are available from Mouser:
888-XBP24-Z7WIT-004 XBee-PRO ZB with whip antenna
888-XBP24-Z7SIT-004 XBee-PRO ZB with RPSMA
See XBee Configuration for setup.
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.
|
See XBee Configuration for setup.
Documentation
Digi XBee 868LP
XBee 868LP modules are a low-power 868 MHz RF module for use in Europe. The range is shorter than it's brother the XBee PRO-868, but it can use the 868 G4 band with hopping which does not have restrictions on it's duty cycle. This is a big advantage if one want to have a good stream of telemetry data
|
Documentation
Trial
With a quickly crafted and not optimal positioned antenna on the airframe we managed to get the advertised 4000 meter range. Data throughput was not high and the Iridium Telemetry XML configuration document was therefore used. All in all, cheap, easy to setup, pin compatible with regular modules and quite a range and usable in Europe without hassle.
Digi XBee Pro 900HP
- Frequency band 900Mhz
- RF rate 10 or 200 kbps
- up to 250mW output power
- 5 to 8 grams
- price: 32€
Documentation
http://ftp1.digi.com/support/documentation/90002173_H.pdf
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!
|
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
Digi 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 transmit power settings from 100mW to 1W. Testing has shown range up to 5.6km (3.5 Miles) with XTend set to 100mW with small 3.1dB dipole antenna.
|
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
Configuration
These modems need to be carefully configured based on your usage scenario to obtain the best possible range and link quality. In addition, it is always good to make sure the firmware is up to date.
Some typical configurations that may work well, but can still depend your particular situation, are given below. For further details, be sure to consult the XTend users manual. Your application may need a different or modified configuration. The radiomodems do not need identical settings and can in fact be optimized with different settings. A good example is delays and retries: if each radio has the same number of retries and no delay, when a collision occurs each will continuously try to re-transmit, locking up the transmission for some time with no resolution or successful packet delivery. Instead, it is best to set the module whose data should have a lower latency to have no delay and a lower number of retries, while the other module has a delay set (RN > 0) and a greater number of retries. See acknowledged mode example below.
- Acknowledged Polling Mode (Recommended):
- This causes one radio to be the base and the other(s) to be the remote(s). It eliminates collisions because remotes do not send data unless requested by the base. It can work in acknowledged mode (RR>0), basic reliable mode (MT>0) or in basic mode (no acknowledgement or multiple packets). It is recommended that the lower latency and/or higher data rate side be configured as the base (i.e. if you are sending lots of telemetry then the air module configured as the base is probably a good idea, but if you are using datalink joystick control, the ground side might be better as the base. It may require some experimentation).
- Acknowledged Point-to-(Multi)Point Mode:
- Each radio sends a packet and requests and acknowledgement that the packet was sent from the receiving side. The retries and delays must be set appropriately to ensure packet collisions are dealt with appropriately. It can also work without acknowledgements in basic reliable mode (MT>0) without any acknowledgements (RR=0, MT=0). Some experimentation may be required.
Setting Name | Acknowledged Mode | Polling Mode (Acknowledged) | Notes | ||
Airside Module | Groundside Module | Base Module | Remote Module | ||
BD | 6 | 6 | 6 | 6 | Adjust to match your configured autopilot and ground station baud rates (default for these is 57600bps) |
DT | default | default | 0x02 | 0x01 | Can be adjusted if consistency maintained across addressing functionalities (see manual) |
MD | default | default | 3 (0x03) | 4 (0x04) | |
MT | 0 | 0 | 0 | 0 | Use this to enable Basic Reliable transmission, link bandwidth requirement increases (see manual) |
MY | default | default | 0x01 | 0x02 | Can be adjusted if consistency maintained across addressing functionalities (see manual) |
PB | default | default | 0x02 | default | Can be adjusted if consistency maintained across addressing functionalities (see manual) |
PD | default | default | default | default | Can be adjusted to increase polling request rate and DI buffer flush timeout (see manual) |
PE | default | default | 0x02 | default | Can be adjusted if consistency maintained across addressing functionalities (see manual) |
PL | default | default | default | default | Transmit power level should be reduced for lab testing!! |
RN | 0 (0x00) | 8 (0x08) | default | default | |
RR | 6 (0x06) | 12 (0x0C) | 6 (0x06) | 12 (0x0C) |
Note: All settings are assumed to be default except those listed. Those listed are in decimal unless hex 0x prefix included. Depending on your firmware version, slight modifications may be necessary.
Here is some additional information and alternative instructions to configure the polling mode from the Digi site: Polling Mode for the 9XTend Radio Modem
SiLabs Si1000 SoC based modems
The Si1000 - Si102x/3x radio System on Chip (SOC) produced by SiLabs is found in a number of radio modules, for example the cheap and widely used HopeRf module. There is paparazzi fork of open source firmware for these radios which makes them suitable for use in MAVs. Online documentation for the Sik firmware shows how to configure it for various jurisdictions. The firmware supports 433 MHz, 470 MHz, 868 MHz and 900 MHz radios. The new RFD868 also works in the European spectrum licenses (868 MHz). The latest SiK firmware supports also mesh topologies.
Sik firmware can be used for example for:
- powerful RFD 900+ modem. RFD 900+ is well proven and supports antenna diversity. A combination of 6dbi Yagi plus a dipole on the ground station, with a pair of orthogonality oriented dioples in the airframe, has been extensively tested and proven reliable at >8km range (theoretical range of > ~40km).
- cheap and ubiquitous 3DR radios
- for shorter range a pair of HopeRF-based modems such as the R0 sub GHz telemetry radio modem. It was developed by 1BitSquared specifically for the use with the Paparazzi UAV framework and is part of the Elle avionics system
The RFD900 can be paired with the R0 radio that has only a single front-end. You can for example, use a small short range airframe with a ground station that is also used for long range operations.
Paparazzi SiK Firmware & RSSI
Paparazzi has a modified fork of Sik firmware: https://github.com/paparazzi/SiK This firmware add options to add RSSI info to your messages. Also aditionally to fully encrypt your connection
When using a SiK firmware radio with Paparazzi, you should set MavLink packing off (set MAVLINK=0 here)and configure Paparazzi for transparent serial mode. You can also turn on an optional RSSI_COMBINED message that shows local and remote RSSI. To do that (and make Sik radio aware of Pprzlink packets) follow the instructions here.
Make sure you to add the following line to your for your airframe chosen telemetry file: (conf/telemetry/ etc etc)
<process name="Ap">
<mode name="default">
...
<message name="RSSI_COMBINED" period="0.3"/>
...
Laird (ex Aerocom)
Lairds'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.
AC4790-200
|
||
AC4790-1000
|
Pinout
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 (Note 2) |
17 | C/D | white | 3 | ? | Low = Command High = Data |
Note 1 : names are specified with respect to the AEROCOMM module
Note 2 : AC4790-1000 needs pins 10 and 11 jumped to work properly
Laird RM024
The RM024 replaces the discontinued LT2510 (they are backwards compatible).
General features:
- Frequency Band 2.4GHz
- Output Power 2,5mW - 125mW
- Sensitivity -98dbm @ 280kbps/-94 dBm @ 500kbps
- RF Data Rate 280/500 kbps
- UART up to 460800 baud
- Power Draw 90mA - 180mA TX / 10mA RX
- Supply Voltage 3.3v
- Range up to 4000m
- Dimensions 26 x 33 x 4mm
- Weight 4 grams
- Interface 20-pin mini connector (smd solder pad or XBee compatible pin header)
- Chip antenna, U.FL antenna connector or both
- Price: 29-31€ @ mouser (SMD / XBEE header)
Two different mounting/pinuts are available:
- smd version: can be soldered on a pcb
- pin header: standard XBEE pinout (this is the SMD version mounted on a seperate pcb with male pin headers)
Available in two different output power versions:
value | 50mW version | 125mW version |
output power | 2,5 mW - 50 mW | 2,5 mW - 125 mW |
output power dbm | 4 dbm - 17 dbm | 4 dbm - 21 dbm |
TX drain | 90mA | <180mA |
max range (280kbps with 2 dbi antenna) | 2400m | 4000m |
approval | CE for EU, FCC/IC for USA,
Canada PRM122/123 also for Japan |
FCC/IC for USA, Canada |
The RM024 uses frequency hopping (FHSS) which needs a client/server model. That means that one modem (most appropriately the ground station modem) needs to be set to server mode. It will transmit a beacon message and have all client modems synchronize to that in a time and frequency hopping scheme manner. For that all modems need to have the same channel (in fact the hopping scheme) and system-id. Clients can be set to auto-channel and auto-system-id to follow any/the first visible server.
Documentation
RM024 User Manual
LT2510 User Manual
Windows configuration tool
Setup
Look at the Laird_RM024_setup page
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.
RN-41 Bluetooth module(Sparkfun's WRL-08497)
|
|
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. |
WiFi
ESP8266 Chip Module
ESP as client
The WiFi chip tries to connect to a hotspot or router. The GCS is connected to the same network. No additional tools are required on the GCS computer. See https://github.com/paparazzi/esp8266_udp_firmware for installation and usage instructions
ESP as host
Change the config of the software to use Host and set the preferred SSID and if wanted the PW and reflash the module
Telemetry via 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.
This wiki page might give some ideas about antennas: http://en.wikipedia.org/wiki/Dipole_antenna