Difference between revisions of "Modules list"

From PaparazziUAV
Jump to navigation Jump to search
m (link to Sensors/AMSYS)
(27 intermediate revisions by 5 users not shown)
Line 1: Line 1:
<categorytree style="float:right; clear:right; margin-left:1ex; border: 1px solid gray; padding: 0.7ex;" mode=pages>Modules</categorytree>
<categorytree style="float:right; clear:right; margin-left:1ex; border: 1px solid gray; padding: 0.7ex;" mode=pages>Modules</categorytree>
Some part of the code is already available as [[Modules|modules]]. Some other parts could be easily adapted. A module may have several configuration files for the most common uses. The code of the modules is placed in sw/modules/<directory name>.
Some part of the code is already available as [[Modules|modules]]. Some other parts could be easily adapted. A module may have several configuration files for the most common uses. The code of the modules is placed in sw/airborne/modules/<directory name>.


=== Available modules ===
'''The auto-generated list and short doc for all modules in the master branch can be found at the [http://docs.paparazziuav.org/latest/onboard_modules.html onboard modules page of the doxygen docs].'''


{| class="wikitable" style="text-align:center" border="1"
== Available modules ==
 
{| class="wikitable sortable" style="text-align:center" border="1"
! Name !! directory !! configuration files !! airframe(s) !! description
! Name !! directory !! configuration files !! airframe(s) !! description
|-
|-
|Demo || demo_module || demo_module.xml || FW || basic example with blinking leds
|Demo || demo_module || demo_module.xml || FW || basic example with blinking leds
|-
|-
|max11040 || adcs || max11040.xml || FW || 24 bit 16 channel AD converter
|Booz cam<br>([[Module/Rotorcraft_cam|Rotorcraft cam]]) || cam_control || booz_cam.xml<br>(rotorcraft_cam.xml) || Rotor || pointing of a simple camera on booz (servo for tilt, heading for pan
|-
|[[Module/ADC_generic|ADC generic]] || adcs || adc_generic.xml || FW || autopilot internal 10 bit AD converter
|-
|Enose || enose || enose.xml || FW || chemical sensor
|-
|Booz cam || cam_control || booz_cam.xml || Booz || pointing of a simple camera on booz (servo for tilt, heading for pan
|-
|-
|Cam point || cam_control || cam_point.xml || FW || pointing of a camera
|[[Pan_Tilt_Camera|Cam point]] || cam_control || cam_point.xml || FW || pointing of a camera
|-
|-
|Cam roll || cam_control || cam_roll.xml || FW || roll camera
|Cam roll || cam_control || cam_roll.xml || FW || roll camera
Line 53: Line 49:
|Sonar || sonar || sonar_maxbotix_booz.xml || Booz || driver for a Maxbotix ultrasonic sensor
|Sonar || sonar || sonar_maxbotix_booz.xml || Booz || driver for a Maxbotix ultrasonic sensor
|-
|-
|dust_gp2y || meteo || dust_gp2y.xml || FW || driver for Sharp GP2Y1010AU0F dust sensor
|[[Module/infrared|infrared_adc]] || sensors || [http://docs.paparazziuav.org/latest/module__infrared_adc.html infrared_adc.xml] || FW || driver for infrared sensors based on analog voltage
|-
|[[Module/infrared|infrared_i2c]] || sensors || [http://docs.paparazziuav.org/latest/module__infrared_i2c.html infrared_i2c.xml] || FW || driver for infrared sensors with i2c connection
|-
|alt_srf08 || sensors || alt_srf08.xml || FW || driver for Devantech Ultrasonic Range Finder SRF08
|-
|mag_micromag_fw || sensors || mag_micromag_fw.xml || FW || driver for PNI Micromag magnetic sensor
|-
|trigger_ext || sensors || trigger_ext.xml || FW || driver to measure external events/durations
|-
|-
|humid_dpicco || meteo || humid_dpicco.xml || FW || driver for IST DigiPicco humidity sensor
|[[Module/Xtend_rssi|xtend_rssi]] || datalink || xtend_rssi.xml || FW || driver to measure and report rssi from Digi 9Xtend radio with pwm input, currently only LPC21xx arch
|-
|-
|humid_hih || meteo || humid_hih.xml || FW || driver for Honeywell HIH-4030 humidity sensor
|[[Module/Pwm_meas|pwm_meas]] || core || pwm_meas.xml || FW || driver wrapper to measure duty and period of pwm input, currently only LPC21xx arch
|-
|-
|humid_htm_b71 || meteo || humid_htm_b71.xml || FW || driver for TronSens HTM-B71 humidity sensor
|[[Module/System_monitor|sys mon]] || core || [http://docs.paparazziuav.org/latest/module__sys_mon.html sys_mon.xml] || FW & Booz || measures CPU load & activity
|-
|-
|humid_sht || meteo || humid_sht.xml || FW || driver for Sensirion SHT75 humidity sensor
|DC  || digital_cam || [http://docs.paparazziuav.org/latest/module__digital_cam.html digital_cam.xml]<br>digital_cam_i2c.xml || FW & RW || Controls Digital Camera Functions (buttons) like shoot/zoom/onoff/take pictures at regular intervals
|-
|-
|humid_sht_i2c || meteo || humid_sht_i2c.xml || FW || driver for Sensirion SHT25 humidity sensor (I2C)
|[[Module/AOA_adc|AOA adc]] || sensors || [http://docs.paparazziuav.org/latest/module__aoa_adc.html AOA_adc.xml] || FW || Reads the value of an US DIGITAL MA3-A10-236-N AoA Sensor and controls the elevator with its value
|-
|-
|ir_mlx || meteo || ir_mlx.xml || FW || driver for Melexis 90614 IR sensor
|[[Module/FlightBenchmark|flight_benchmark]] || benchmark || [http://docs.paparazziuav.org/latest/module__flight_benchmark.html flight_benchmark.xml] || FW || quantitative assessments of flights
|-
|-
|light_temt || meteo || light_temt.xml || FW || driver for Vishay TEMT6000 ambient light sensor
|[[Openlog|openlog]] || openlog || [http://docs.paparazziuav.org/latest/module__openlog.html openlog.xml] || FW & RW || Module for logging with a [http://www.sparkfun.com/products/9530 Sparkfun OpenLog]
|-
|-
|temp_lm75 || meteo || temp_lm75.xml || FW || driver for National LM75 temperature sensor
|geo_mag || geo_mag || [http://docs.paparazziuav.org/latest/module__geo_mag.html geo_mag.xml] || FW & RW || Calculation of the normalized geomagnetic field vector (saved to ahrs_impl.mag_h) at startup using GPS fix.
|}
 
 
=== Analog-digital converters ===
 
{| class="wikitable sortable" style="text-align:center" border="1"
! Name !! directory !! configuration files !! airframe(s) !! description
|-
|-
|temp_temod || meteo || temp_temod.xml || FW || Hygrosens TEMOD-I2C-Rx temperature sensor for PT1000
|[[Module/ADC_generic|ADC generic]] || adcs || adc_generic.xml || FW || autopilot internal 10 bit AD converter
|-
|-
|temp_tmp102 || meteo || temp_tmp102.xml || FW || driver for TI TMP102 temperature sensor
|max11040 || adcs || max11040.xml || FW || 24 bit 16 channel AD converter
|-
|-
|[[Module/infrared|infrared_adc]] || sensors || [https://github.com/paparazzi/paparazzi/blob/master/conf/modules/infrared_adc.xml infrared_adc.xml] || FW || driver for infrared sensors based on analog voltage
|mcp355x || adcs || mcp355x.xml || FW || 22 bit 1 channel AD converter
|-
|-
|[[Module/infrared|infrared_i2c]] || sensors || [https://github.com/paparazzi/paparazzi/blob/master/conf/modules/infrared_i2c.xml infrared_i2c.xml] || FW || driver for infrared sensors with i2c connection
|}
 
 
=== Temperature sensors ===
 
{| class="wikitable sortable" style="text-align:center" border="1"
! Name !! directory !! configuration files !! airframe(s) !! description
|-
|-
|airspeed_adc || sensors || airspeed_adc.xml || FW || driver for airspeed sensor based on analog voltage
|[[Module/LM75‎|temp_lm75]] || meteo || temp_lm75.xml || FW || driver for National LM75 temperature sensor
|-
|-
|[[Airspeed_sensor#Connecting_an_EagleTree_Airspeed_Sensor|airspeed_ets]] || sensors || airspeed_ets.xml || FW || Eagle Tree Systems airspeed sensor
|[[Module/Hygrosens TEMOD-I2C-R1‎|temp_temod]] || meteo || temp_temod.xml || FW || Hygrosens TEMOD-I2C-Rx temperature sensor for PT1000
|-
|-
|alt_srf08 || sensors || alt_srf08.xml || FW || driver for Devantech Ultrasonic Range Finder SRF08
|[[Module/TI_TMP102|temp_tmp102]] || meteo || temp_tmp102.xml || FW || driver for TI TMP102 temperature sensor
|-
|[[Module/Melexis MLX90614‎|ir_mlx]] || meteo || ir_mlx.xml || FW || driver for Melexis 90614 infrared radiation sensor
|}
 
 
=== Barometric pressure/altitude sensors ===
 
Simple static [[Baro_comparsion|comparsion]] of recent digital barometric sensors.
 
{| class="wikitable sortable" style="text-align:center" border="1"
! Name !! directory !! configuration files !! airframe(s) !! description
|-
|-
|baro_bmp || sensors || baro_bmp.xml || FW || driver for Bosch BMP085 pressure sensor
|[[Module/Bosch BMP085‎|baro_bmp]] || sensors || baro_bmp.xml || FW || driver for Bosch BMP085 pressure sensor
|-
|-
|baro_ets || sensors || baro_ets.xml || FW || Eagle Tree Systems pressure sensor
|baro_ets || sensors || baro_ets.xml || FW || Eagle Tree Systems pressure sensor
Line 91: Line 119:
|baro_MS5534A || sensors || baro_MS5334A.xml || FW || driver for Intersema MS5534A pressure sensor
|baro_MS5534A || sensors || baro_MS5334A.xml || FW || driver for Intersema MS5534A pressure sensor
|-
|-
|baro_ms5611_i2c || sensors || baro_ms5611_i2c.xml || FW || driver for Measurement Specialties MS5611-01BA pressure sensor
|[[Module/Meas Spec MS5611 I2C‎|baro_ms5611_i2c]] || sensors || baro_ms5611_i2c.xml || FW || driver for Measurement Specialties MS5611-01BA pressure sensor
|-
|[[Module/VTI SCP1000 SPI|baro_scp]] || sensors || baro_scp.xml || FW || driver for VTI SCP1000 (SPI) pressure sensor
|-
|[[Module/VTI SCP1000 I2C‎|baro_scp_i2c]] || sensors || baro_scp_i2c.xml || FW || driver for VTI SCP1000 (I2C) pressure sensor
|-
|[[Sensors/AMSYS|baro_amsys]] || sensors || [http://docs.paparazziuav.org/latest/module__baro_amsys.html baro_amsys.xml] || FW || driver for AMS 5812-0150-A (Baro) pressure sensors
|-
|}
 
 
=== Airspeed sensors ===
 
{| class="wikitable sortable" style="text-align:center" border="1"
! Name !! directory !! configuration files !! airframe(s) !! description
|-
|airspeed_adc || sensors || [http://docs.paparazziuav.org/latest/module__airspeed_adc.html airspeed_adc.xml] || FW || driver for airspeed sensor based on analog voltage
|-
|[[Module/Airspeed_ETS|airspeed_ets]] || sensors || [http://docs.paparazziuav.org/latest/module__airspeed_ets.html airspeed_ets.xml] || FW || Eagle Tree Systems airspeed sensor
|-
|[[Sensors/AMSYS|airspeed_amsys]] || sensors || [http://docs.paparazziuav.org/latest/module__airspeed_amsys.html airspeed_amsys.xml] || FW || driver for AMS 5812-0003-D (Airspeed) pressure sensors
|-
|[[Module/Aeroprobe_OTF|airspeed_otf]] || sensors || [http://docs.paparazziuav.org/latest/module__airspeed_otf.html airspeed_otf.xml] || FW || Aeroprobe On-The-Fly! air data computer
|-
|-
|baro_scp || sensors || baro_scp.xml || FW || driver for VTI SCP1000 (SPI) pressure sensor
|[[Sensors/Airspeed#MS45xx|airspeed_ms45xx_i2c]] || sensors || [http://docs.paparazziuav.org/latest/module__airspeed_ms45xx_i2c.html airspeed_ms45xx_i2c.xml] || FW || MS45xx differential pressure sensor (airspeed)
|-
|-
|baro_scp_i2c || sensors || baro_scp_i2c.xml || FW || driver for VTI SCP1000 (I2C) pressure sensor
|}
 
=== Humidity sensors ===
 
{| class="wikitable sortable" style="text-align:center" border="1"
! Name !! directory !! configuration files !! airframe(s) !! description
|-
|-
|mag_micromag_fw || sensors || mag_micromag_fw.xml || FW || driver for PNI Micromag magnetic sensor
|[[Module/IST DigiPicco‎|humid_dpicco]] || meteo || humid_dpicco.xml || FW || driver for IST DigiPicco humidity sensor
|-
|-
|trigger_ext || sensors || trigger_ext.xml || FW || driver to measure external events/durations
|[[Module/Honeywell_HIH-4030|humid_hih]] || meteo || humid_hih.xml || FW || driver for Honeywell HIH-4030 humidity sensor
|-
|-
|[[Module/Xtend_rssi|xtend_rssi]] || datalink || xtend_rssi.xml || FW || driver to measure and report rssi from Digi 9Xtend radio with pwm input, currently only LPC21xx arch
|[[ Module/TronSens HTM B71|humid_htm_b71]] || meteo || humid_htm_b71.xml || FW || driver for TronSens HTM-B71 humidity sensor
|-
|-
|[[Module/Pwm_meas|pwm_meas]] || core || pwm_meas.xml || FW || driver wrapper to measure duty and period of pwm input, currently only LPC21xx arch
|[[Module/Sensirion SHT75‎|humid_sht]] || meteo || humid_sht.xml || FW || driver for Sensirion SHT75 humidity sensor
|-
|-
|Sys mon || core || sys_mon.xml || FW & Booz || measures CPU load & activity
|[[Module/Sensirion SHT25‎|humid_sht_i2c]] || meteo || humid_sht_i2c.xml || FW || driver for Sensirion SHT25 humidity sensor (I2C)
|}
 
 
=== Other environment sensors ===
 
{| class="wikitable sortable" style="text-align:center" border="1"
! Name !! directory !! configuration files !! airframe(s) !! description
|-
|-
|DC  || digital_cam || digital_cam.xml<br>digital_cam_i2c.xml || FW & RW || Controls Digital Camera Functions (buttons) like shoot/zoom/onoff/take pictures at regular intervals
|enose || enose || enose.xml || FW || chemical gas sensor
|-
|-
|[[Module/AOA_adc|AOA adc]] || sensors || [https://github.com/paparazzi/paparazzi/blob/master/conf/modules/AOA_adc.xml AOA_adc.xml] || FW || Reads the value of an US DIGITAL MA3-A10-236-N AoA Sensor and controls the elevator with its value
|dust_gp2y || meteo || dust_gp2y.xml || FW || driver for Sharp GP2Y1010AU0F dust sensor
|-
|-
|[[Module/FlightBenchmark|flight_benchmark]] || benchmark || [https://github.com/paparazzi/paparazzi/blob/master/conf/modules/flight_benchmark.xml flight_benchmark.xml] || FW || quantitative assessments of flights
|light_temt || meteo || light_temt.xml || FW || driver for Vishay TEMT6000 ambient light sensor
|-
|-
|[[Sensors/AMSYS|airspeed_amsys]] || sensors || [https://github.com/paparazzi/paparazzi/blob/master/conf/modules/airspeed_amsys.xml airspeed_amsys.xml] || FW || driver for AMS 5812-0003-D (Airspeed) pressure sensors
|}
 
=== Radio modules ===
{| class="wikitable sortable" style="text-align:center" border="1"
! Name !! directory !! configuration files !! airframe(s) !! description
|-
|-
|[[Sensors/AMSYS|baro_amsys]] || sensors || [https://github.com/paparazzi/paparazzi/blob/master/conf/modules/baro_amsys.xml baro_amsys.xml] || FW || driver for AMS 5812-0150-A (Baro) pressure sensors
|pineapple || pineapple || pineapple.xml || FW || [http://hakshop.com/wifipineapple WiFi pen-test tool]
|-
|-
|[[Openlog|openlog]] || openlog || [https://github.com/paparazzi/paparazzi/blob/master/conf/modules/openlog.xml openlog.xml] || FW & RW || Module for logging with a [http://www.sparkfun.com/products/9530 Sparkfun OpenLog]
|}
|}



Revision as of 15:32, 29 June 2015

Some part of the code is already available as modules. Some other parts could be easily adapted. A module may have several configuration files for the most common uses. The code of the modules is placed in sw/airborne/modules/<directory name>.

The auto-generated list and short doc for all modules in the master branch can be found at the onboard modules page of the doxygen docs.

Available modules

Name directory configuration files airframe(s) description
Demo demo_module demo_module.xml FW basic example with blinking leds
Booz cam
(Rotorcraft cam)
cam_control booz_cam.xml
(rotorcraft_cam.xml)
Rotor pointing of a simple camera on booz (servo for tilt, heading for pan
Cam point cam_control cam_point.xml FW pointing of a camera
Cam roll cam_control cam_roll.xml FW roll camera
Booz drop drop booz_drop.xml Booz drop mechanism on booz
light light light.xml FW control blinking speed of the LEDs for night flights
servo switch servo_switch servo_switch.xml FW simply switch a servo to "on" or "off" position, e.g. trigger camera or open hatch
Formation flight multi formation_flight.xml FW formation flight control for fixed-wing aircraft
Gps i2c gps_i2c gps_i2c.xml FW i2c driver for Ubx GPS modules
GPS UBX µcenter gps gps_ubx_ucenter.xml FW/Rotor Module to initialise µ-blox GPS at every power on
Xsens ins ins_xsens.xml
ins_xsens_MTi_Uart0.xml
ins_xsens_MTiG_Uart0.xml
driver for the Xsens AHRS/INS (for fixedwing it provides a full navigation solution, for rotorcraft it is a bit slow)
ins_ArduIMU ins ins_arduimu.xml FW ArduIMU V2+ (Flat) INS (should probably be renamed to AHRS and adhere to the ahrs interface)
imu_ppzauv sensors imu_ppzuav.xml FW/rotor module to read the PPZIMU
imu_aspirin_i2c sensors imu_aspirin_i2c.xml FW/rotor module to read the aspirin IMU via I2C
VN-100 ins ins_vn100.xml FW RW? VectorNav VN-100 AHRS (should probably be renamed to AHRS and adhere to the ahrs interface)
Max 3100 max3100 max3100.xml FW max3100 driver (spi<->uart converter)
MPPT MPPT MPPT.xml FW maximum power point tracker (control board for solar cells, i2C interface)
Poles poles poles.xml FW special navigation functions to fly around poles and counting loops
Potential multi potential.xml FW use potential fields for collision avoidance
Sonar sonar sonar_maxbotix_booz.xml Booz driver for a Maxbotix ultrasonic sensor
infrared_adc sensors infrared_adc.xml FW driver for infrared sensors based on analog voltage
infrared_i2c sensors infrared_i2c.xml FW driver for infrared sensors with i2c connection
alt_srf08 sensors alt_srf08.xml FW driver for Devantech Ultrasonic Range Finder SRF08
mag_micromag_fw sensors mag_micromag_fw.xml FW driver for PNI Micromag magnetic sensor
trigger_ext sensors trigger_ext.xml FW driver to measure external events/durations
xtend_rssi datalink xtend_rssi.xml FW driver to measure and report rssi from Digi 9Xtend radio with pwm input, currently only LPC21xx arch
pwm_meas core pwm_meas.xml FW driver wrapper to measure duty and period of pwm input, currently only LPC21xx arch
sys mon core sys_mon.xml FW & Booz measures CPU load & activity
DC digital_cam digital_cam.xml
digital_cam_i2c.xml
FW & RW Controls Digital Camera Functions (buttons) like shoot/zoom/onoff/take pictures at regular intervals
AOA adc sensors AOA_adc.xml FW Reads the value of an US DIGITAL MA3-A10-236-N AoA Sensor and controls the elevator with its value
flight_benchmark benchmark flight_benchmark.xml FW quantitative assessments of flights
openlog openlog openlog.xml FW & RW Module for logging with a Sparkfun OpenLog
geo_mag geo_mag geo_mag.xml FW & RW Calculation of the normalized geomagnetic field vector (saved to ahrs_impl.mag_h) at startup using GPS fix.


Analog-digital converters

Name directory configuration files airframe(s) description
ADC generic adcs adc_generic.xml FW autopilot internal 10 bit AD converter
max11040 adcs max11040.xml FW 24 bit 16 channel AD converter
mcp355x adcs mcp355x.xml FW 22 bit 1 channel AD converter


Temperature sensors

Name directory configuration files airframe(s) description
temp_lm75 meteo temp_lm75.xml FW driver for National LM75 temperature sensor
temp_temod meteo temp_temod.xml FW Hygrosens TEMOD-I2C-Rx temperature sensor for PT1000
temp_tmp102 meteo temp_tmp102.xml FW driver for TI TMP102 temperature sensor
ir_mlx meteo ir_mlx.xml FW driver for Melexis 90614 infrared radiation sensor


Barometric pressure/altitude sensors

Simple static comparsion of recent digital barometric sensors.

Name directory configuration files airframe(s) description
baro_bmp sensors baro_bmp.xml FW driver for Bosch BMP085 pressure sensor
baro_ets sensors baro_ets.xml FW Eagle Tree Systems pressure sensor
baro_MS5534A sensors baro_MS5334A.xml FW driver for Intersema MS5534A pressure sensor
baro_ms5611_i2c sensors baro_ms5611_i2c.xml FW driver for Measurement Specialties MS5611-01BA pressure sensor
baro_scp sensors baro_scp.xml FW driver for VTI SCP1000 (SPI) pressure sensor
baro_scp_i2c sensors baro_scp_i2c.xml FW driver for VTI SCP1000 (I2C) pressure sensor
baro_amsys sensors baro_amsys.xml FW driver for AMS 5812-0150-A (Baro) pressure sensors


Airspeed sensors

Name directory configuration files airframe(s) description
airspeed_adc sensors airspeed_adc.xml FW driver for airspeed sensor based on analog voltage
airspeed_ets sensors airspeed_ets.xml FW Eagle Tree Systems airspeed sensor
airspeed_amsys sensors airspeed_amsys.xml FW driver for AMS 5812-0003-D (Airspeed) pressure sensors
airspeed_otf sensors airspeed_otf.xml FW Aeroprobe On-The-Fly! air data computer
airspeed_ms45xx_i2c sensors airspeed_ms45xx_i2c.xml FW MS45xx differential pressure sensor (airspeed)

Humidity sensors

Name directory configuration files airframe(s) description
humid_dpicco meteo humid_dpicco.xml FW driver for IST DigiPicco humidity sensor
humid_hih meteo humid_hih.xml FW driver for Honeywell HIH-4030 humidity sensor
humid_htm_b71 meteo humid_htm_b71.xml FW driver for TronSens HTM-B71 humidity sensor
humid_sht meteo humid_sht.xml FW driver for Sensirion SHT75 humidity sensor
humid_sht_i2c meteo humid_sht_i2c.xml FW driver for Sensirion SHT25 humidity sensor (I2C)


Other environment sensors

Name directory configuration files airframe(s) description
enose enose enose.xml FW chemical gas sensor
dust_gp2y meteo dust_gp2y.xml FW driver for Sharp GP2Y1010AU0F dust sensor
light_temt meteo light_temt.xml FW driver for Vishay TEMT6000 ambient light sensor

Radio modules

Name directory configuration files airframe(s) description
pineapple pineapple pineapple.xml FW WiFi pen-test tool

Possible modules

A list of the parts of the FW airborne code that could be changed to modules.

Name header init periodic event datalink description
Led X X control leds and GPIO
I2C X X
SPI X X
Traffic X X update traffic information from datalink
TCAS X X 1Hz - 4Hz ? vertical collision avoidance
GPS X X X
Joystick X X X X control a plane from telemetry