Difference between revisions of "User:Scdwyer"

From PaparazziUAV
Jump to navigation Jump to search
m (skeleton for vibration writeup)
(got rid of overview scratch work)
 
(12 intermediate revisions by 2 users not shown)
Line 3: Line 3:
* Location: Edmonton, Alberta, Canada
* Location: Edmonton, Alberta, Canada
* Masters student in Mechanical Engineering at University of Alberta
* Masters student in Mechanical Engineering at University of Alberta
* Member of the [http://paparazzi.enac.fr/wiki/UAlberta_UASGroup University of Alberta UAS Group]
* Contact: scdwyerATualbertaDOTca
* Contact: scdwyerATualbertaDOTca


Line 10: Line 11:


== Current Work ==
== Current Work ==
I am working with two other students as part of a larger University of Alberta Unmanned Aircraft Systems Group to prepare a small demonstration platform. This UAV platform will be the beginning of an attempt to foster UAS research at our university, and provide an initial starting point for researchers from a variety of disciplines and departments to begin research on unmanned aircraft systems directly, or, more likely, investigate payloads and applications.
I am working with two other students as part of a larger [http://paparazzi.enac.fr/wiki/UAlberta_UASGroup University of Alberta UAS Group] to prepare a small demonstration platform. This UAV platform will be the beginning of an attempt to foster UAS research at our university, and provide an initial starting point for researchers from a variety of disciplines and departments to begin research on unmanned aircraft systems directly, or, more likely, investigate payloads and applications.


The first platform is Unmanned Aircraft Platform 1, or UAP1.
This unfortunately is taking most of my time (among other things like being a TA) and limits my personal system development. I am however looking forward to getting my Quadshot Expresso in the coming months!


=== UAP1 ===
----
''Airframe:''
= Scratch Area =
----
= Autopilot Feature Comparison Matrix =


* Type of aircraft: Hobby Lobby Senior Telemaster almost-ready-to-fly model aircraft
** Modified for bolt-on wing and tail-mounted servos
* Type of engine: 2-stroke 26cc Evolution 26GX with electronic ignition (2S 2500mAh Lipo)
* Dimensions: wing span 2.4 m (94 inches); fuselage 1.6m (64 inches)
* Actuators: Hitec programmable digital servos used throughout


''Autopilot Systems:''
A basic feature comparison table is presented to help in the autopilot hardware selection process. Stable well tested and used LPC or more cutting edge STM32 that requires some debugging.


* Spektrum DX8 system with AR8000 receiver and TM1000 telemetry module for safety pilot situational awareness
For information regarding architecture and firmware compatibility of various subsystems and modules, please see the appropriate [[Subsystems]] overview and [[Modules_list|Modules List]] pages.
* 2S 4000mAh Lipo for servos and autopilot system
* Paparazzi autopilot
** TWOG v1.0
** Ublox LEA5H and Sarantel helical antenna
** Aspirin IMU via I2C
** Eagle Tree airspeed sensor
** ATMega168 based PPM encoder
** SmartFly optical ignition cut-off
* Digi XTend 900MHz radio modems
* Ground Segment:
** Macbook Pro with OS X 10.6


''Payload Systems:''
NOTE: The accuracy of this table '''may not be 100% correct''', the best resource is always hardware and software source files and individual autopilot pages.


*Currently not determined, though initially a GoPro will be mounted onboard




== Vibration ==
{| border="1" cellspacing="0" style="text-align:center" cellpadding="2%" width="100%"
|+'''Autopilot<sup>1</sup> Feature Matrix'''
| align="center" width="15%" style="background:#f0f0f0;"|'''Feature'''
| align="center" width="14%" style="background:#f0f0f0;"|'''[[Lisa/L|Lisa/L v1.1]]'''
| align="center" width="14%" style="background:#f0f0f0;"|'''[[Lisa/M_v20|Lisa/M v2.0]]'''
| align="center" width="14%" style="background:#f0f0f0;"|'''[[Umarim_v10|Umarim v1.0]]'''
| align="center" width="14%" style="background:#f0f0f0;"|'''[[Tiny/v2.11|Tiny v2.11]]'''
| align="center" width="14%" style="background:#f0f0f0;"|'''[[TWOG/v1.0|TWOG v1.0]]'''
| align="center" style="background:#f0f0f0;"|'''[[YAPA/v2.0|YAPA v2.0]]'''
|-
|style="background:#f0f0f0;"| || align="center" colspan="6"|'''MCU'''
|-
| style="background:#f0f0f0;"|'''Part'''||STM32F103RE||STM32F105RCT6||LPC2148||LPC2148||LPC2148||LPC2148
|-
| style="background:#f0f0f0;"|'''Clock'''||72MHz||72MHz||60MHz||60MHz||60MHz||60MHz
|-
| style="background:#f0f0f0;"|'''Flash'''||512kB||256kB||512kB||512kB||512kB||512kB
|-
| style="background:#f0f0f0;"|'''RAM<sup>2</sup>'''||64kB||64kB||32kB & 8kB||32kB & 8kB||32kB & 8kB||32kB & 8kB
|-
|style="background:#f0f0f0;"| || align="center" colspan="6"|'''Onboard Sensors<sup>3</sup>'''
|-
| style="background:#f0f0f0;"|'''MEMS IMU'''||no||aspirin||yes||no||no||no
|-
| style="background:#f0f0f0;"|'''Baro'''||yes||yes||yes||no||no||no
|-
| style="background:#f0f0f0;"|'''Diff Pressure'''||yes||no||no||no||no||no
|-
| style="background:#f0f0f0;"|'''GPS'''||no||no||no||yes||no||no
|-
|style="background:#f0f0f0;"| || align="center" colspan="6"|'''Input/Output<sup>4</sup>'''
|-
| style="background:#f0f0f0;"|'''UART'''||3 & 1RX||2 & 2RX||2||1||2||2
|-
| style="background:#f0f0f0;"|'''I2C'''||2||1 + 1<sup>5</sup>||2||1||1||1
|-
| style="background:#f0f0f0;"|'''SPI'''||2||1||1||1||1||1
|-
| style="background:#f0f0f0;"|'''ADC'''||3 (12bit)||3 + 2 (12bit)<sup>5</sup>||0 + 4 (10bit)<sup>6</sup>||8 (10bit)||8 (10bit)||6 (10bit)
|-
| style="background:#f0f0f0;"|'''PWM'''||6||6 + 2<sup>5</sup>||6||8||8||10
|-
| style="background:#f0f0f0;"|'''PPM Output'''||no||no||1||1||1||no
|-
| style="background:#f0f0f0;"|'''PPM Capture'''||1||0 + 1<sup>5</sup>||1||1||1||1
|-
| style="background:#f0f0f0;"|'''GPIO<sup>7</sup>'''||?||1||0 + 4<sup>6</sup>||2||2||1
|-
| style="background:#f0f0f0;"|'''Onboard LEDs'''||8||5||2||3||3||3
|-
| style="background:#f0f0f0;"|'''USB Peripheral'''||Onboard USB JTAG + UART||bootloader||bootloader||bootloader||bootloader||bootloader
|-
| style="background:#f0f0f0;"|'''CAN'''||1||1||no||no||no||no
|-
| style="background:#f0f0f0;"|'''Other'''||Overo w/ I/O incl. USB Host||Aspirin footprint, JTAG header||||||||XBee connector, RS232 options
|-
|style="background:#f0f0f0;"| || align="center" colspan="6"|'''Power Management'''
|-
| style="background:#f0f0f0;"|'''Supply Input'''||6.1V - 18V||5V - 16V||5.5V - 17V||6.1V - 18V||6.1V - 18V||6.1V - 18V
|-
| style="background:#f0f0f0;"|'''Supply Output'''||2.25@5V, 2.25A@3.3V, Other||500mA@3.3V, 250mA@5V||1A@3.3V, 1.5A@5V||1A@3.3V, 2.25A@5V||1A@3.3V, 2.25A@5V||2x 1A@3.3V, 2.25A@5V
|-
| style="background:#f0f0f0;"|'''Software Switch'''||2||no||no||1||1||1
|-
|style="background:#f0f0f0;"| || align="center" colspan="6"|'''Mechanical'''
|-
| style="background:#f0f0f0;"|'''Size'''||~100mm x ~50mm||34mm x 60mm x 10mm||56mm x 25mm||70.8mm x 40mm||40.2mm x 30.5mm||80.0mm x 40.0mm?
|-
| style="background:#f0f0f0;"|'''Weight'''||?||9.9g - 10.8g||9g||24g||8g||23g w/ XBee?
|-
| style="background:#f0f0f0;"|'''Connector Style'''||Picoblade||Picoblade & 0.1" Servo||Picoblade||Picoblade||Picoblade||0.1" Headers
|-
| style="background:#f0f0f0;"|'''PCB Style'''||4-layer||4-layer||4-layer||2-layer||2-layer||2-layer
|-
| style="background:#f0f0f0;"|'''Mounting Holes'''||4x ?mm||4x 2mm||4x 2mm||no||no||4x M3
|-
|style="background:#f0f0f0;"| || align="center" colspan="6"|'''Comments'''
|-
| style="background:#f0f0f0;"| ||IMU and Overo Mount Location, Many Features||||||||||Onboard XBee connector allows clean and easy radio modem integration
|}


Vibration can be a major problem in small UAVs. Vibration can come from a variety of sources, but in UAVs the most significant source is rotating machinery, i.e. the primary powerplants in the airframe.
'''Notes:'''


''Major Sources of Vibration:''
'''1.''' Only the newest revisions of the more commonly used autopilots are listed
* Main electric motors
* Internal combustion engines
* Unbalanced propellers
''Minor Sources of Vibration:''
* Flutter or resonance in flight surfaces and airframe
* Actuators or servos for flight or payload control
In general, the main source of thrust will be the primary source of vibration.


* link to vibration background, how to calculate natural frequencies etc, perhaps some modeling discussion
'''2.''' The extra 8kB of RAM on the LPC2148 shared with the USB DMA


=== Impacts of Vibration ===
'''3.''' The onboard sensors are almost always supplemented with external sensors. For example, TWOG can use an external IMU or IR sensors, and also needs an external GPS.
* airframe fatigue
* wiring connection fatigue (including RF connections)
* lower efficiency
* increased sensor noise, bias (gyros, accelerometers, magnetometers, pressure transducers, etc)
* potential for sensor saturation (gyros, accelerometers in IMU)
* degradation of payload sensor data quality (especially imagery with CMOS sensors, increase in rolling shutter effects, motion blur, shaky video)
* discussion on how to identify vibration problems
* discussion of sensor noise effects, namely on DCM algorithm, give examples with aspirin IMU, add screenshots of logs


=== Mitigating Effects of Vibration ===
'''4.''' Input/Outputs listed are generally those easily accessible on regular autopilot connectors, customization/hacks can modify available I/O, for example free an extra I2C on Tiny and TWOG
* mechanical methods, best, helps all parts of airframe
 
* calculating and testing
'''5., 6.''' Some features use shared resources - denoted by X + Y where Y is shared - and cannot be used simultaneously
* recommended methods and materials
 
* things to keep an eye out for (resonance on parts)
'''5.''' Lisa/M v2.0 shared resources include: one I2C is shared with 2 PWM outputs, two ADCs are shared with LEDs, one RX only UART is shared with the PPM capture
* software filtering for IMU and other sensors, advantages and disadvantages, explain addition to fw aspirin i2c driver, video shake reduction
 
* show some samples from vibration testing
'''6.''' Umarim v1.0 shared resources include: 4 ADCs are shared with 4 GPIOs
* pictures/sketches of mounting methods
 
'''7.''' Usually other unused pins can be used for additional GPIO with some code modifications
 
----
 
{| border="1" cellspacing="0" style="text-align:center" cellpadding="2%" width="2000"
|+'''Autopilot<sup>1</sup> Feature Matrix'''
| align="center" style="background:#f0f0f0;"|'''Autopilot Board'''
| align="center" style="background:#f0f0f0;"|'''MCU'''
| align="center" style="background:#f0f0f0;"|'''Onboard Sensors'''
| align="center" style="background:#f0f0f0;"|''''''
| align="center" style="background:#f0f0f0;"|''''''
| align="center" style="background:#f0f0f0;"|''''''
| align="center" style="background:#f0f0f0;"|'''Input/Output'''
| align="center" style="background:#f0f0f0;"|''''''
| align="center" style="background:#f0f0f0;"|''''''
| align="center" style="background:#f0f0f0;"|''''''
| align="center" style="background:#f0f0f0;"|''''''
| align="center" style="background:#f0f0f0;"|''''''
| align="center" style="background:#f0f0f0;"|''''''
| align="center" style="background:#f0f0f0;"|''''''
| align="center" style="background:#f0f0f0;"|''''''
| align="center" style="background:#f0f0f0;"|''''''
| align="center" style="background:#f0f0f0;"|''''''
| align="center" style="background:#f0f0f0;"|''''''
| align="center" style="background:#f0f0f0;"|'''Power Management'''
| align="center" style="background:#f0f0f0;"|''''''
| align="center" style="background:#f0f0f0;"|''''''
| align="center" style="background:#f0f0f0;"|'''Mechanical'''
| align="center" style="background:#f0f0f0;"|''''''
| align="center" style="background:#f0f0f0;"|''''''
| align="center" style="background:#f0f0f0;"|''''''
| align="center" style="background:#f0f0f0;"|''''''
| align="center" width="10%" style="background:#f0f0f0;"|'''Comments'''
|- align="center" style="background:#f0f0f0;"
| ''''''||'''Part'''||'''MEMS IMU'''||'''Baro'''||'''Diff Pressure'''||'''GPS'''||'''UART'''||'''I2C'''||'''SPI'''||'''ADC'''||'''PWM'''||'''PPM Output'''||'''PPM Capture'''||'''GPIO'''||'''Onboard LEDs'''||'''USB Peripheral'''||'''CAN'''||'''Other'''||'''Supply Input'''||'''Supply Output'''||'''Software Switch'''||'''Size'''||'''Weight'''||'''Connector Style'''||'''PCB Style'''||'''Mounting Holes'''||
|-
| Lisa/L v1.0||STM32F1||no||yes||yes||no||3 & 1RX||2||2||3 (12bit)||6||no||1||?||8||Onboard USB JTAG + UART||1||Overo w/ I/O incl. USB Host||6.1V - 18V||2.25@5V, 2.25A@3.3V, Other||2||~100mm x ~50mm||?||Picoblade||4-layer||4x M3||IMU and Overo Mount Location, Many Features
|-
| Lisa/L v1.1||STM32F1||no||yes||yes||no||3 & 1RX||2||2||3 (12bit)||6||no||1||?||8||Onboard USB JTAG + UART||1||Overo w/ I/O incl. USB Host||6.1V - 18V||2.25@5V, 2.25A@3.3V, Other||2||~100mm x ~50mm||?||Picoblade||4-layer||4x M3||IMU and Overo Mount Location, Many Features
|-
| Lisa/M v1.0||STM32F1||Aspirin||yes||no||no||2 & 2RX||1 + 1||1||3 + 2 (12bit)||7||no||0 + 1||2||3||needs mod||1||Aspirin footprint, JTAG header||5V - 16V||500mA@3.3V, 250mA@5V||no||33mm x 56mm x 10mm||9.9g - 10.8g||Picoblade + 0.1\" Servo||4-layer||4x 2mm||USB needs hardware mod to work
|-
| Lisa/M v2.0||STM32F1||Aspirin||yes||no||no||2 & 2RX||1 + 1||1||3 + 2 (12bit)||6 + 2||no||0 + 1||1||5||bootloader||1||Aspirin footprint, JTAG header||5V - 16V||500mA@3.3V, 250mA@5V||no||34mm x 60mm x 10mm||9.9g - 10.8g||Picoblade + 0.1\" Servo||4-layer||4x 2mm||
|-
| Booz||LPC2148||Booz||yes||no||Booz||2?||?||?||?||?||?||?||?||?||bootloader||no||?||?||?||?||?||?||Picoblade||?||?||Multi-board design
|-
| Umarim v1.0||LPC2148||yes||yes||no||no||2||2||1||0 + 4 (10bit)||6||1||1||0 + 4||2||bootloader||no||||5.5V - 17V||1A@3.3V, 1.5A@5V||no||56mm x 25mm||9g||Picoblade||4-layer||4x 2mm||
|-
| Tiny v0.99||LPC2148||no||no||no||yes||1||1||1||8 (10bit)||6||no||1||no||2||bootloader||no||Button, audio downlink||?||?||1?||?||?||Picoblade||?||no||Onboard GPS for cleaner integration
|-
| Tiny v1.1||LPC2148||no||no||no||yes||1||1||1||8 (10bit)||7||no||1||no||?||bootloader||no||Button||?V - 20V||?A@3.3V, 2A@5V||1?||63mm x 35mm||25g||Picoblade||4-layer||no||Onboard GPS for cleaner integration
|-
| Tiny v2.11||LPC2148||no||no||no||yes||1||1||1||8 (10bit)||8||1||1||2||3||bootloader||no||||6.1V - 18V||1A@3.3V, 2.25A@5V||1||70.8mm x 40mm||24g||Picoblade||2-layer||no||Onboard GPS for cleaner integration
|-
| TWOG v1.0||LPC2148||no||no||no||no||2||1||1||8 (10bit)||8||1||1||2||3||bootloader||no||||6.1V - 18V||1A@3.3V, 2.25A@5V||1||40.2mm x 30.5mm||8g||Picoblade||2-layer||no||Offboard GPS to address interference or special installation
|-
| YAPA v1.0||LPC2148||no||no||no||no||2||1||1||5 (10bit)||8||no||1||no||1||bootloader||no||XBee connector, RS232 options||6.1V - 18V||2x 1A@3.3V, 2.25A@5V||1||80.0mm x 40.0mm||23g w/ XBee||0.1\" Headers||2-layer||4x M3||Onboard XBee connector allows clean and easy radio modem integration
|-
| YAPA v2.0||LPC2148||no||no||no||no||2||1||1||6 (10bit)||10||no||1||1||3||bootloader||no||XBee connector, RS232 options||6.1V - 18V||2x 1A@3.3V, 2.25A@5V||1||80.0mm x 40.0mm?||23g w/ XBee?||0.1\" Headers||2-layer||4x M3||Onboard XBee connector allows clean and easy radio modem integration
|-
| Classix||LPC2148 x2||no||no||no||no||2||2||2||14 (10bit)||6||?||2||?||2||bootloader||no||Gumstix connector, audio downlink||5V||3.3V, 3.7V for Gumstix||no||89mm x 30mm||12g||Picoblade||?||4x ?mm||Dual MCU development board design
|-
| HB v1.0||LPC2148||yes||yes||yes||no||2||2||2||?||?||?||1||?||?||bootloader||no||||?||?||?||?||?||Picoblade||?||?||Multi-board design
|}
 
'''Notes:'''
 
'''1.''' Only the newest revisions of the more commonly used autopilots are listed
 
'''2.''' The extra 8kB of RAM on the LPC2148 shared with the USB DMA
 
'''3.''' The onboard sensors are almost always supplemented with external sensors. For example, TWOG can use an external IMU or IR sensors, and also needs an external GPS.
 
'''4.''' Input/Outputs listed are generally those easily accessible on regular autopilot connectors, customization/hacks can modify available I/O, for example free an extra I2C on Tiny and TWOG
 
'''5., 6.''' Some features use shared resources - denoted by X + Y where Y is shared - and cannot be used simultaneously
 
'''5.''' Lisa/M v2.0 shared resources include: one I2C is shared with 2 PWM outputs, two ADCs are shared with LEDs, one RX only UART is shared with the PPM capture
 
'''6.''' Umarim v1.0 shared resources include: 4 ADCs are shared with 4 GPIOs
 
'''7.''' Usually other unused pins can be used for additional GPIO with some code modifications
 
----
 
{| border="1" cellspacing="0" style="text-align:center" cellpadding="2%" width="30%"
|+'''MCU Comparison'''
| align="center" style="background:#f0f0f0;"|'''MCU'''
| align="center" style="background:#f0f0f0;"|'''Clock'''
| align="center" style="background:#f0f0f0;"|'''RAM'''
| align="center" style="background:#f0f0f0;"|'''Flash'''
| align="center" style="background:#f0f0f0;"|'''Used In'''
|-
| LPC2148<sup>1</sup>||60MHz||32kB + 8kB||512kB||All Others
|-
| STM32F103RE||72MHz||64kB||512kB||Lisa/L Series
|-
| STM32F105RCT6||72MHz||64kB||256kB||Lisa/M Series
|}
 
'''Notes:'''
 
'''1.''' The extra 8kB of RAM on the LPC2148 shared with the USB DMA

Latest revision as of 14:56, 17 May 2012

About Me

  • Name: Stephen Dwyer
  • Location: Edmonton, Alberta, Canada
  • Masters student in Mechanical Engineering at University of Alberta
  • Member of the University of Alberta UAS Group
  • Contact: scdwyerATualbertaDOTca

I have very little experience with Paparazzi thus far. I hope to remedy this in the near future, both for fun and (hopefully) as part of my Masters research. I have been following the wiki and mailing list for quite some time though.

I began working with small unmanned aircraft systems with the U of A Aerial Robotics Group, where I was team lead for 2 years, co-team lead for 1 year, and attended 3 AUVSI Student UAS competitions. We used the Micropilot MP2128g in our systems, and I gained valuable experience understanding the difficulty of autonomous system integration.

Current Work

I am working with two other students as part of a larger University of Alberta UAS Group to prepare a small demonstration platform. This UAV platform will be the beginning of an attempt to foster UAS research at our university, and provide an initial starting point for researchers from a variety of disciplines and departments to begin research on unmanned aircraft systems directly, or, more likely, investigate payloads and applications.

This unfortunately is taking most of my time (among other things like being a TA) and limits my personal system development. I am however looking forward to getting my Quadshot Expresso in the coming months!


Scratch Area


Autopilot Feature Comparison Matrix

A basic feature comparison table is presented to help in the autopilot hardware selection process. Stable well tested and used LPC or more cutting edge STM32 that requires some debugging.

For information regarding architecture and firmware compatibility of various subsystems and modules, please see the appropriate Subsystems overview and Modules List pages.

NOTE: The accuracy of this table may not be 100% correct, the best resource is always hardware and software source files and individual autopilot pages.


Autopilot1 Feature Matrix
Feature Lisa/L v1.1 Lisa/M v2.0 Umarim v1.0 Tiny v2.11 TWOG v1.0 YAPA v2.0
MCU
Part STM32F103RE STM32F105RCT6 LPC2148 LPC2148 LPC2148 LPC2148
Clock 72MHz 72MHz 60MHz 60MHz 60MHz 60MHz
Flash 512kB 256kB 512kB 512kB 512kB 512kB
RAM2 64kB 64kB 32kB & 8kB 32kB & 8kB 32kB & 8kB 32kB & 8kB
Onboard Sensors3
MEMS IMU no aspirin yes no no no
Baro yes yes yes no no no
Diff Pressure yes no no no no no
GPS no no no yes no no
Input/Output4
UART 3 & 1RX 2 & 2RX 2 1 2 2
I2C 2 1 + 15 2 1 1 1
SPI 2 1 1 1 1 1
ADC 3 (12bit) 3 + 2 (12bit)5 0 + 4 (10bit)6 8 (10bit) 8 (10bit) 6 (10bit)
PWM 6 6 + 25 6 8 8 10
PPM Output no no 1 1 1 no
PPM Capture 1 0 + 15 1 1 1 1
GPIO7 ? 1 0 + 46 2 2 1
Onboard LEDs 8 5 2 3 3 3
USB Peripheral Onboard USB JTAG + UART bootloader bootloader bootloader bootloader bootloader
CAN 1 1 no no no no
Other Overo w/ I/O incl. USB Host Aspirin footprint, JTAG header XBee connector, RS232 options
Power Management
Supply Input 6.1V - 18V 5V - 16V 5.5V - 17V 6.1V - 18V 6.1V - 18V 6.1V - 18V
Supply Output 2.25@5V, 2.25A@3.3V, Other 500mA@3.3V, 250mA@5V 1A@3.3V, 1.5A@5V 1A@3.3V, 2.25A@5V 1A@3.3V, 2.25A@5V 2x 1A@3.3V, 2.25A@5V
Software Switch 2 no no 1 1 1
Mechanical
Size ~100mm x ~50mm 34mm x 60mm x 10mm 56mm x 25mm 70.8mm x 40mm 40.2mm x 30.5mm 80.0mm x 40.0mm?
Weight ? 9.9g - 10.8g 9g 24g 8g 23g w/ XBee?
Connector Style Picoblade Picoblade & 0.1" Servo Picoblade Picoblade Picoblade 0.1" Headers
PCB Style 4-layer 4-layer 4-layer 2-layer 2-layer 2-layer
Mounting Holes 4x ?mm 4x 2mm 4x 2mm no no 4x M3
Comments
IMU and Overo Mount Location, Many Features Onboard XBee connector allows clean and easy radio modem integration

Notes:

1. Only the newest revisions of the more commonly used autopilots are listed

2. The extra 8kB of RAM on the LPC2148 shared with the USB DMA

3. The onboard sensors are almost always supplemented with external sensors. For example, TWOG can use an external IMU or IR sensors, and also needs an external GPS.

4. Input/Outputs listed are generally those easily accessible on regular autopilot connectors, customization/hacks can modify available I/O, for example free an extra I2C on Tiny and TWOG

5., 6. Some features use shared resources - denoted by X + Y where Y is shared - and cannot be used simultaneously

5. Lisa/M v2.0 shared resources include: one I2C is shared with 2 PWM outputs, two ADCs are shared with LEDs, one RX only UART is shared with the PPM capture

6. Umarim v1.0 shared resources include: 4 ADCs are shared with 4 GPIOs

7. Usually other unused pins can be used for additional GPIO with some code modifications


Autopilot1 Feature Matrix
Autopilot Board MCU Onboard Sensors ' ' ' Input/Output ' ' ' ' ' ' ' ' ' ' ' Power Management ' ' Mechanical ' ' ' ' Comments
' Part MEMS IMU Baro Diff Pressure GPS UART I2C SPI ADC PWM PPM Output PPM Capture GPIO Onboard LEDs USB Peripheral CAN Other Supply Input Supply Output Software Switch Size Weight Connector Style PCB Style Mounting Holes
Lisa/L v1.0 STM32F1 no yes yes no 3 & 1RX 2 2 3 (12bit) 6 no 1 ? 8 Onboard USB JTAG + UART 1 Overo w/ I/O incl. USB Host 6.1V - 18V 2.25@5V, 2.25A@3.3V, Other 2 ~100mm x ~50mm ? Picoblade 4-layer 4x M3 IMU and Overo Mount Location, Many Features
Lisa/L v1.1 STM32F1 no yes yes no 3 & 1RX 2 2 3 (12bit) 6 no 1 ? 8 Onboard USB JTAG + UART 1 Overo w/ I/O incl. USB Host 6.1V - 18V 2.25@5V, 2.25A@3.3V, Other 2 ~100mm x ~50mm ? Picoblade 4-layer 4x M3 IMU and Overo Mount Location, Many Features
Lisa/M v1.0 STM32F1 Aspirin yes no no 2 & 2RX 1 + 1 1 3 + 2 (12bit) 7 no 0 + 1 2 3 needs mod 1 Aspirin footprint, JTAG header 5V - 16V 500mA@3.3V, 250mA@5V no 33mm x 56mm x 10mm 9.9g - 10.8g Picoblade + 0.1\" Servo 4-layer 4x 2mm USB needs hardware mod to work
Lisa/M v2.0 STM32F1 Aspirin yes no no 2 & 2RX 1 + 1 1 3 + 2 (12bit) 6 + 2 no 0 + 1 1 5 bootloader 1 Aspirin footprint, JTAG header 5V - 16V 500mA@3.3V, 250mA@5V no 34mm x 60mm x 10mm 9.9g - 10.8g Picoblade + 0.1\" Servo 4-layer 4x 2mm
Booz LPC2148 Booz yes no Booz 2? ? ? ? ? ? ? ? ? bootloader no ? ? ? ? ? ? Picoblade ? ? Multi-board design
Umarim v1.0 LPC2148 yes yes no no 2 2 1 0 + 4 (10bit) 6 1 1 0 + 4 2 bootloader no 5.5V - 17V 1A@3.3V, 1.5A@5V no 56mm x 25mm 9g Picoblade 4-layer 4x 2mm
Tiny v0.99 LPC2148 no no no yes 1 1 1 8 (10bit) 6 no 1 no 2 bootloader no Button, audio downlink ? ? 1? ? ? Picoblade ? no Onboard GPS for cleaner integration
Tiny v1.1 LPC2148 no no no yes 1 1 1 8 (10bit) 7 no 1 no ? bootloader no Button ?V - 20V ?A@3.3V, 2A@5V 1? 63mm x 35mm 25g Picoblade 4-layer no Onboard GPS for cleaner integration
Tiny v2.11 LPC2148 no no no yes 1 1 1 8 (10bit) 8 1 1 2 3 bootloader no 6.1V - 18V 1A@3.3V, 2.25A@5V 1 70.8mm x 40mm 24g Picoblade 2-layer no Onboard GPS for cleaner integration
TWOG v1.0 LPC2148 no no no no 2 1 1 8 (10bit) 8 1 1 2 3 bootloader no 6.1V - 18V 1A@3.3V, 2.25A@5V 1 40.2mm x 30.5mm 8g Picoblade 2-layer no Offboard GPS to address interference or special installation
YAPA v1.0 LPC2148 no no no no 2 1 1 5 (10bit) 8 no 1 no 1 bootloader no XBee connector, RS232 options 6.1V - 18V 2x 1A@3.3V, 2.25A@5V 1 80.0mm x 40.0mm 23g w/ XBee 0.1\" Headers 2-layer 4x M3 Onboard XBee connector allows clean and easy radio modem integration
YAPA v2.0 LPC2148 no no no no 2 1 1 6 (10bit) 10 no 1 1 3 bootloader no XBee connector, RS232 options 6.1V - 18V 2x 1A@3.3V, 2.25A@5V 1 80.0mm x 40.0mm? 23g w/ XBee? 0.1\" Headers 2-layer 4x M3 Onboard XBee connector allows clean and easy radio modem integration
Classix LPC2148 x2 no no no no 2 2 2 14 (10bit) 6 ? 2 ? 2 bootloader no Gumstix connector, audio downlink 5V 3.3V, 3.7V for Gumstix no 89mm x 30mm 12g Picoblade ? 4x ?mm Dual MCU development board design
HB v1.0 LPC2148 yes yes yes no 2 2 2 ? ? ? 1 ? ? bootloader no ? ? ? ? ? Picoblade ? ? Multi-board design

Notes:

1. Only the newest revisions of the more commonly used autopilots are listed

2. The extra 8kB of RAM on the LPC2148 shared with the USB DMA

3. The onboard sensors are almost always supplemented with external sensors. For example, TWOG can use an external IMU or IR sensors, and also needs an external GPS.

4. Input/Outputs listed are generally those easily accessible on regular autopilot connectors, customization/hacks can modify available I/O, for example free an extra I2C on Tiny and TWOG

5., 6. Some features use shared resources - denoted by X + Y where Y is shared - and cannot be used simultaneously

5. Lisa/M v2.0 shared resources include: one I2C is shared with 2 PWM outputs, two ADCs are shared with LEDs, one RX only UART is shared with the PPM capture

6. Umarim v1.0 shared resources include: 4 ADCs are shared with 4 GPIOs

7. Usually other unused pins can be used for additional GPIO with some code modifications


MCU Comparison
MCU Clock RAM Flash Used In
LPC21481 60MHz 32kB + 8kB 512kB All Others
STM32F103RE 72MHz 64kB 512kB Lisa/L Series
STM32F105RCT6 72MHz 64kB 256kB Lisa/M Series

Notes:

1. The extra 8kB of RAM on the LPC2148 shared with the USB DMA