paparazzi-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Paparazzi-devel] Xbee 868 uplink


From: Christophe De Wagter
Subject: Re: [Paparazzi-devel] Xbee 868 uplink
Date: Thu, 21 May 2009 15:43:38 +0200


We have received our first set of 868 XBee modems a few weeks ago. Based on our previous developments with the aerocomm modems and the legal limit of 10% duty cylce for more than 5mW modems we made a sub-minimal datalink config file. It sends data 3 packets of 30 bytes per second. The attitude and position are sent 2 times per second for a 'smooth' GCS display and the 3rd packet-array each second are the rest of the status messages that are sent only every 4 seconds. The reason for GROUPING several messages into an array and sending only 3 groups of messages per second is that the modem is used in a more efficient way [certainly with aerocomm that sends everything in packets of about 30 bytes. If you send only 1 byte and wait X milliseconds the modem will transmit 30 bytes over the air]. Finally making sure the modem does not RETRY upon failure, (which obviously consumes bandwidth) the total is about 120 bytes every second, which below the 10% duty cycle (24kBITs -> 2.4kBPS * 10% = 240bytes/second. I think the baudrate settings has no influence, only the amount of bytes [checked it with aerocomm but not yet with xbee].

Now it keeps running for hours without reset, AND we use the 868 band in a legal way. Moreover it leaves enough "free space" for multi aircraft flights.

I'm just struggling a bit with the code. Most PPRZ messages are configured by the xml file but some are still hard-coded (CAM/GPS/NAVIGATION/SVINFO/...). It would be nice if all those can also be configured by the xml config. Ideally, for "packetting" besides a period, a phase would be useful. So far we have hard-coded the xbee868 solution into the code so I can not mess up the SVN with it. I included an equivalent xml config file but a little programming is required to make it do what it is supposed to do.

Surely 2Hz is only little data per second, but on the other hand the modem sends extremely far... that is part of the compromise. During tuning you can fly with the default.xml file for 6min in an hour (=10%).

Sincerely,

Christophe

<?xml version="1.0"?>
<!DOCTYPE telemetry SYSTEM "telemetry.dtd">
<telemetry>
  <process name="Ap">
    <mode name="default">
      <message name="ALIVE"          period="4." phase="0"/>
      <message name="ATTITUDE"       period="1"/>
      <message name="BAT"            period="4." phase="1"/>
      <message name="CALIBRATION"    period="4." phase="2"/>
      <message name="CIRCLE"         period="4." phase="0"/>
      <message name="DESIRED"        period="4." phase="1"/>
      <message name="DL_VALUE"       period="1."/>
      <message name="DOWNLINK"       period="4." phase="0"/>
      <message name="ESTIMATOR"      period="0.5"/>
      <message name="GPS"     period="4" phase="1"/>
      <message name="GPS_SOL"        period="4." phase="2"/>
      <message name="NAVIGATION"     period="0.5"/>
      <message name="NAVIGATION_REF" period="4." phase="0"/>
      <message name="PPRZ_MODE"      period="4." phase="1"/>
      <message name="SEGMENT"        period="4." phase="2"/>
      <message name="SURVEY"         period="4." phase="0"/>
      <message name="WP_MOVED"       period="1."/>
    </mode>
  </process>
  <process name="Fbw">
    <mode name="default">
      <message name="FBW_STATUS"     period="3" phase="2"/>
    </mode>
  </process>
</telemetry>




reply via email to

[Prev in Thread] Current Thread [Next in Thread]