Explorer/RaspberryPi/Autopilot

From PaparazziUAV
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

The RaspberryPi Zero is connected to the Apogee autopilot board using an UART.
The bi-directional telemetry is send to the GCS using the wifi

  • On the RaspberryPi:
sudo apt-get install socat

update GCS_IP

export GCS_IP=192.168.1.234
socat -u udp-listen:4243,reuseaddr,fork /dev/ttyAMA0,raw,echo=0,b115200 &
socat -u /dev/ttyAMA0,raw,echo=0,b115200 udp-sendto:$GCS_IP:4242 &
  • On the GCS:

airframe file:

<module name="telemetry" type="transparent">
  <configure name="MODEM_PORT" value="UART1"/>
  <configure name="MODEM_BAUD" value="B115200"/>
</module>

telemetry file:

<?xml version="1.0"?>
<!DOCTYPE telemetry SYSTEM "../telemetry.dtd">
<telemetry>
 <process name="Main">

   <mode name="default" key_press="d">
     <message name="AUTOPILOT_VERSION"        period="11.1"/>
     <message name="DL_VALUE"                 period="1.1"/>
     <message name="ROTORCRAFT_STATUS"        period="1.2"/>
     <message name="ROTORCRAFT_FP"            period="0.25"/>
     <message name="ALIVE"                    period="2.1"/>
     <message name="INS_REF"                  period="5.1"/>
     <message name="ROTORCRAFT_NAV_STATUS"    period="1.6"/>
     <message name="WP_MOVED"                 period="1.3"/>
     <message name="GPS_INT"                  period=".25"/>
     <message name="INS"                      period=".25"/>
     <message name="ENERGY"                   period="2.5"/>
     <message name="DATALINK_REPORT"          period="5.1"/>
     <message name="STATE_FILTER_STATUS"      period="3.2"/>
     <message name="AIR_DATA"                 period="1.3"/>
   </mode>
 </process>

 <process name="FlightRecorder">
   <mode name="default">
     <message name="ATTITUDE"                 period="0.05"/>
     <message name="GPS"                      period="0.5"/>
     <message name="PPRZ_MODE"                period="0.1"/>
     <message name="DESIRED"                  period="0.1"/>
     <message name="COMMANDS"                 period="0.10"/>
     <message name="ACTUATORS"                period="0.10"/>
     <message name="IMU_GYRO"                 period="0.01"/>
     <message name="IMU_MAG"                  period="0.01"/>
     <message name="IMU_ACCEL"                period="0.01"/>
   </mode>
 </process>

 <process name="Extra">
   <mode name="default">
     <message name="AUTOPILOT_VERSION"        period="11.1"/>
     <message name="DL_VALUE"                 period="1.1"/>
     <message name="ROTORCRAFT_STATUS"        period="1.2"/>
     <message name="ROTORCRAFT_FP"            period="0.25"/>
     <message name="ALIVE"                    period="2.1"/>
     <message name="INS_REF"                  period="5.1"/>
     <message name="ROTORCRAFT_NAV_STATUS"    period="1.6"/>
     <message name="WP_MOVED"                 period="1.3"/>
     <message name="GPS_INT"                  period=".25"/>
     <message name="INS"                      period=".25"/>
     <message name="ENERGY"                   period="2.5"/>
     <message name="DATALINK_REPORT"          period="5.1"/>
     <message name="STATE_FILTER_STATUS"      period="3.2"/>
     <message name="AIR_DATA"                 period="1.3"/>
   </mode>

   <mode name="empty">
   </mode>

   <mode name="mcu">
     <message name="ATTITUDE"                 period="0.05"/>
     <message name="GPS"                      period="0.5"/>
     <message name="PPRZ_MODE"                period="0.1"/>
     <message name="DESIRED"                  period="0.1"/>
     <message name="COMMANDS"                 period="0.10"/>
     <message name="ACTUATORS"                period="0.10"/>
     <message name="IMU_GYRO"                 period="0.01"/>
     <message name="IMU_MAG"                  period="0.01"/>
     <message name="IMU_ACCEL"                period="0.01"/>
   </mode>

 </process>

</telemetry>


paparazzi/sw/ground_segment/tmtc/server 
paparazzi/sw/ground_segment/cockpit/gcs 
paparazzi/sw/ground_segment/tmtc/link  -udp

To confirm bidirectional connection, change a setting and check the updated value in the GCS

Explorer/RaspberryPi/Autopilot/Proxy