From fa487fe1bc22cfacc9ea062bd609093084460cae Mon Sep 17 00:00:00 2001 From: Andrew Tridgell Date: Sun, 18 Nov 2018 15:47:56 +1100 Subject: [PATCH] HAL_ChibiOS: added Pixhawk1 docs --- .../hwdef/Pixhawk1/PixhawkLabeled.jpg | Bin 0 -> 27900 bytes .../AP_HAL_ChibiOS/hwdef/Pixhawk1/README.md | 506 ++++++++++++++++++ 2 files changed, 506 insertions(+) create mode 100644 libraries/AP_HAL_ChibiOS/hwdef/Pixhawk1/PixhawkLabeled.jpg create mode 100644 libraries/AP_HAL_ChibiOS/hwdef/Pixhawk1/README.md diff --git a/libraries/AP_HAL_ChibiOS/hwdef/Pixhawk1/PixhawkLabeled.jpg b/libraries/AP_HAL_ChibiOS/hwdef/Pixhawk1/PixhawkLabeled.jpg new file mode 100644 index 0000000000000000000000000000000000000000..cff0c6069e15ded4a821d095d6a588f6340e9c32 GIT binary patch literal 27900 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 VNdLJc{eLXrKKEb$5#{gi{{wOmba?;( literal 0 HcmV?d00001 diff --git a/libraries/AP_HAL_ChibiOS/hwdef/Pixhawk1/README.md b/libraries/AP_HAL_ChibiOS/hwdef/Pixhawk1/README.md new file mode 100644 index 0000000000..1dde31ef2e --- /dev/null +++ b/libraries/AP_HAL_ChibiOS/hwdef/Pixhawk1/README.md @@ -0,0 +1,506 @@ +# Pixhawk1 Flight Controller + +The Pixhawk1 flight controller was originally produced by 3DR. A +number of vendors now sell boards with the same layout as the original +board. + +## Features + + - STM32F427 microcontroller + - MPU6000 and LSM303D/L3GD20 IMUs + - MS5611 SPI barometer + - builtin SPI LSM303D magnetometer + - microSD card slot + - 5 UARTs plus USB + - 14 PWM outputs + - I2C and CAN ports + - Spektrum satellite connector + - External Buzzer + - builtin RGB LED + - external safety Switch + - external SPI port + - voltage monitoring for servo rail and Vcc + - dedicated power input port for external power brick + - external USB connectors (micro USB and DF13) + +## Pinout + +![Pixhawk1 Board](PixhawkLabeled.jpg "Pixhawk1") + +## UART Mapping + + - SERIAL0 -> USB + - SERIAL1 -> UART2 (Telem1) + - SERIAL2 -> UART3 (Telem2) + - SERIAL3 -> UART4 (GPS) + - SERIAL4 -> UART8 (GPS2) + - SERIAL5 -> UART7 (spare) + +The Telem1 and Telem2 ports have RTS/CTS pins, the other UARTs do not +have RTS/CTS. + +The GPS2/spare port (labelled serial5) has two UARTs on one 6 pin +connector. The spare port was originally used as a debug console, but +debug is now on USB, so this port is free for any UART protocol. + +## Connectors + +The original Pixhawk1 uses DF13 connectors, and has 14 ports + +### TELEM1, TELEM2 ports + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Pin Signal Volt
1 (red)VCC+5V
2 (blk)TX (OUT)+3.3V
3 (blk)RX (IN)+3.3V
4 (blk)CTS+3.3V
5 (blk)RTS+3.3V
6 (blk)GNDGND
+ +### GPS port + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
PinSignalVolt
1 (red)VCC+5V
2 (blk)TX (OUT)+3.3V
3 (blk)RX (IN)+3.3V
4 (blk)CAN2 TX+3.3V
5 (blk)CAN2 RX+3.3V
6 (blk)GNDGND
+ + + +### SERIAL 4/5 port + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
PinSignalVolt
1 (red)VCC+5V
2 (blk)TX (#4)+3.3V
3 (blk)RX (#4)+3.3V
4 (blk)TX (#5)+3.3V
5 (blk)RX (#5)+3.3V
6 (blk)GNDGND
+ + +### ADC 6.6V + + + + + + + + + + + + + + + + + + + + + + + + +
PinSignalVolt
1 (red)VCC+5V
2 (blk)ADC INup to +6.6V
3 (blk)GNDGND
+ + + +### ADC 3.3V + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
PinSignalVolt
1 (red)VCC+5V
2 (blk)ADC INup to +3.3V
3 (blk)GNDGND
4 (blk)ADC INup to +3.3V
5 (blk)GNDGND
+ + + +### I2C + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
PinSignalVolt
1 (red)VCC+5V
2 (blk)SCL+3.3 (pullups)
3 (blk)SDA+3.3 (pullups)
4 (blk)GNDGND
+ + + +### CAN + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
PinSignalVolt
1 (red)VCC+5V
2 (blk)CAN_H+12V
3 (blk)CAN_L+12V
4 (blk)GNDGND
+ +### SPI + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
PinSignalVolt
1 (red)VCC+5V
2 (blk)SPI_SCK3.3V
3 (blk)SPI_MISO+3.3V
4 (blk)SPI_MOSI+3.3V
5 (blk)!SPI_NSS+3.3V
6 (blk)!GPIO+3.3V
7 (blk)GNDGND
+ +### POWER + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
PinSignalVolt
1 (red)VCC+5V
2 (blk)VCC+5V
3 (blk)CURRENTup to +3.3V
4 (blk)VOLTAGEup to +3.3V
5 (blk)GNDGND
6 (blk)GNDGND
+ +### SWITCH + + + + + + + + + + + + + + + + + + + + + + + + +
PinSignalVolt
1 (red)VCC+3.3V
2 (blk)!IO_LED_SAFETYGND
3 (blk)SAFETYGND
+ +## RC Input + +RC input is configured on the RCIN pin, at one end of the servo rail, +marked PPM in the above diagram. This pin supports all RC +protocols. In addition there is a dedicated Spektrum satellite port +which supports software power control, allowing for binding of +Spektrum satellite receivers. + +## PWM Output + +The Pixhawk1 supports up to 14 PWM outputs. First first 8 outputs (labelled +"MAIN") are controlled by a dedicated STM32F100 IO controller. These 8 +outputs support all PWM output formats, but not DShot. + +The remaining 6 outputs (labelled AUX1 to AUX6) are the "auxillary" +outputs. These are directly attached to the STM32F427 and support all +PWM protocols as well as DShot. + +The 8 main PWM outputs are in 3 groups: + + - PWM 1 and 2 in group1 + - PWM 3 and 4 in group2 + - PWM 5, 6, 7 and 8 in group3 + +The 6 auxillary PWM outputs are in 2 groups: + + - PWM 1, 2, 3 and 4 in group1 + - PWM 5 and 6 in group2 + +Channels within the same group need to use the same output rate. If +any channel in a group uses DShot then all channels in the group need +to use DShot. + +## Battery Monitoring + +The board has a dedicatd power monitor port on a 6 pin DF13 +connector. The correct battery setting parameters are dependent on the +type of power brick which is connected. + +## Compass + +The Pixhawk1 has a LSM303D builtin SPI compass, but due to +interference the board is usually used with an external I2C compass as +part of a GPS/Compass combination. + +## GPIOs + +The 6 auxillary PWM ports can be used as GPIOs (relays, buttons, RPM +etc). To use them you need to limit the number of these pins that is +used for PWM by setting the BRD_PWM_COUNT to a number less than 6. For +example if you set BRD_PWM_COUNT to 4 then AUX5 and AUX6 will be +available for use as GPIOs. + +The numbering of the GPIOs for PIN variables in ArduPilot is: + + - AUX1 50 + - AUX2 51 + - AUX3 52 + - AUX4 53 + - AUX5 54 + - AUX6 55 + +## Analog inputs + +The Pixhawk1 has 6 analog inputs on the FMU, plus servo rail voltage +and RSSI monitoring on the IO controller. + + - ADC Pin2 -> Battery Voltage + - ADC Pin3 -> Battery Current Sensor + - ADC Pin4 -> Vdd 5V supply sense + - ADC Pin13 -> ADC 3.3V Port pin1 + - ADC Pin14 -> ADC 3.3V Port pin2 + - ADC Pin15 -> ADC 6.6V port + - ADC Pin103 -> RSSI voltage monitoring + +## Loading Firmware + +The board comes pre-installed with an ArduPilot compatible bootloader, +allowing the loading of *.apj firmware files with any ArduPilot +compatible ground station.