diff --git a/libraries/AP_HAL_ChibiOS/hwdef/SPRacingH7RF/README.md b/libraries/AP_HAL_ChibiOS/hwdef/SPRacingH7RF/README.md index f31370c7e9ce01..5f4e3800d215a3 100644 --- a/libraries/AP_HAL_ChibiOS/hwdef/SPRacingH7RF/README.md +++ b/libraries/AP_HAL_ChibiOS/hwdef/SPRacingH7RF/README.md @@ -1,23 +1,30 @@ # Serious Pro Racing H6 Extreme Flight Controller -The SPRacingH7 Extreme is a flight controller produced by [Seriously Pro Racing](http://www.seriouslypro.com/). +The SPRacingH7 RF Extreme is a flight controller produced by [Seriously Pro Racing](http://www.seriouslypro.com/). + +![SPRacingH7 RF Top](spracingh7rf.jpg "SPRacingH7-top") ## Features - - MCU - STM32H750 32-bit processor running at 400 MHz - - 16MByte Serial NOR flash via QuadSPI - - IMUs - 2x ICM20602 + - MCU - STM32H730 32-bit processor running at 520 MHz + - 2MByte Serial NOR flash via QuadSPI for firmware + - IMUs - ICM42688 - Barometer - BMP388 - - OSD - AT7456E + - OSD - Pixel, not supported currently by ArduPilot + - I2C port - Onboard Flash: 128Mbits - - 7x UARTs (1,2,3,4,5,6,8) - - 11x PWM Outputs (10 Motor Output, 1 LED) - - Battery input voltage: 2S-6S - - BEC 5V 1A + - Integrated ELRS receiver, not supported currently by ArduPilot + - microSD card socket + - 6x UARTs (1,2,3,4,5,6) + - 9x PWM Outputs (8 Motor Output, 1 LED) + - Battery input voltage: 2S-8S + - BEC 5V ?A ## Pinout -![SPRacingH7 Board](SPRacingH7_Board.JPG "SPRacingH7") +![SPRacingH7 RF Top](spracingh7rf_top.jpg "SPRacingH7-top") +![SPRacingH7 RF Bottom](spracingh7rf_bottom.jpg "SPRacingH7-bottom") +![SPRacingH7 RF onnectors](spracingh7rf_connectors.jpg "SPRacingH7-connectors") ## UART Mapping @@ -25,67 +32,61 @@ The UARTs are marked Rn and Tn in the above pinouts. The Rn pin is the receive pin for UARTn. The Tn pin is the transmit pin for UARTn. - SERIAL0 -> USB - - SERIAL1 -> UART1 (DMA-enabled) - SERIAL2 -> UART2 (RCIN one wire, DMA-enabled) - - SERIAL3 -> UART3 (DMA-enabled) - - SERIAL4 -> UART4 (DMA-enabled) - - SERIAL5 -> UART5 (DMA-enabled) - - SERIAL6 -> UART6 (On motor pads 7/8, with alt config 1, DMA-enabled) - - SERIAL8 -> UART8 (DMA-enabled) + - SERIAL3 -> UART3 (DJI) + - SERIAL4 -> UART4 (GPS) + - SERIAL5 -> UART5 (ESC Telemetry, RX only) + - SERIAL8 -> UART8 (USER) ## RC Input -RC input is configured on the T2 (UART2_TX) pin. It supports all serial RC -protocols. For protocols requiring half-duplex serial to transmit +RC input is configured on the R2 pin. It supports all serial RC +protocols. PPM is not supoorted. For protocols requiring half-duplex serial to transmit telemetry (such as FPort) you should setup SERIAL2 as an RC input serial port, -with half-duplex, pin-swap and inversion enabled. - -## FrSky Telemetry - -FrSky Telemetry is supported using the T2 pin (UART2 transmit). You need to set the following parameters to enable support for FrSky S.PORT +with half-duplex, pin-swap and inversion enabled. For duplex protocols, like CRSF/ELRS, T2 must also be connected to the receiver. - - SERIAL2_PROTOCOL 10 - - SERIAL2_OPTIONS 7 -## OSD Support +## Pixel OSD Support -The SPRacingH7 supports OSD using OSD_TYPE 1 (MAX7456 driver). +Ardupilot does not currently support in integrated OSD chip. UART3 is setup fir use with DisplayPort goggles with OSD. ## PWM Output -The SPRacingH7 supports up to 11 PWM outputs. The pads for motor output -M1 to M4 on the motor connectors and M5 to M8 on separate pads, plus -M11 for LED strip or another PWM output. M9 and M10 are only available on the stacking connector. +The SPRacingH7 RF supports up to 9 PWM outputs. PWM 1-8 support DShot and Bi-Directional DShot. The pads for motor output +M1 to M4 on ESC connector 1, and M5 to M8 on ESC connector 2, plus +M9 for LED strip or another PWM output. The PWM is in 5 groups: - PWM 1-4 in group1 - - PWM 5, 6 in group2 - - PWM 7, 8 in group3 - - PWM 9, 10 in group4 - - PWM 11 in group5 + - PWM 5-8 in group2 + - PWM 9 (LED) in group3 + 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. Channels 1-4 support bi-directional dshot. +to use DShot. ## Battery Monitoring -The board has a builting voltage and current sensor. The current -sensor can read up to 130 Amps. The voltage sensor can handle up to 6S +The board has a built-in voltage sesnor and current sensor input from the ESC connectors. The voltage sensor can handle up to 8S LiPo batteries. The correct battery setting parameters are: - BATT_MONITOR 4 - - BATT_VOLT_PIN 10 + - BATT_VOLT_PIN 13 - BATT_CURR_PIN 11 - - BATT_VOLT_MULT 11.1 - - BATT_AMP_PERVLT 59.5 + - BATT_VOLT_MULT 10.9 + - BATT_AMP_PERVLT 28.5 (will need adjustment for the current sensor range of the ESC) ## Compass -The SPRacingH7 does not have a builtin compass, but you can attach an external compass using I2C on the SDA and SCL pads. +The SPRacingH7 RF does not have a builtin compass, but you can attach an external compass using I2C on the SDA and SCL pads. + +## User Manual + +http://seriouslypro.com/files/SPRacingH7RF-Manual-latest.pdf ## Loading Firmware diff --git a/libraries/AP_HAL_ChibiOS/hwdef/SPRacingH7RF/SPRacingH7_Board.JPG b/libraries/AP_HAL_ChibiOS/hwdef/SPRacingH7RF/SPRacingH7_Board.JPG deleted file mode 100644 index bde98e1a7b5df9..00000000000000 Binary files a/libraries/AP_HAL_ChibiOS/hwdef/SPRacingH7RF/SPRacingH7_Board.JPG and /dev/null differ diff --git a/libraries/AP_HAL_ChibiOS/hwdef/SPRacingH7RF/defaults.parm b/libraries/AP_HAL_ChibiOS/hwdef/SPRacingH7RF/defaults.parm index 39cc0c6d2e3d9b..1515538fc9c221 100644 --- a/libraries/AP_HAL_ChibiOS/hwdef/SPRacingH7RF/defaults.parm +++ b/libraries/AP_HAL_ChibiOS/hwdef/SPRacingH7RF/defaults.parm @@ -5,6 +5,13 @@ NTF_LED_TYPES 257 # setup SERIAL2 for RCIN SERIAL2_BAUD 115 SERIAL2_OPTIONS 8 +SERIAL2_PROTOCOL 23 # pinswap UART5 for ESC telemetry SERIAL5_OPTIONS 8 +SERIAL5_PRTOCOL 16 + +# setup SERIAL3 for DJI +SERIAL3_PROTOCOL 42 +OSD_ENABLED 1 +OSD_TYPE 5 diff --git a/libraries/AP_HAL_ChibiOS/hwdef/SPRacingH7RF/spracingh7rf.jpg b/libraries/AP_HAL_ChibiOS/hwdef/SPRacingH7RF/spracingh7rf.jpg new file mode 100644 index 00000000000000..98a9611e1579d9 Binary files /dev/null and b/libraries/AP_HAL_ChibiOS/hwdef/SPRacingH7RF/spracingh7rf.jpg differ diff --git a/libraries/AP_HAL_ChibiOS/hwdef/SPRacingH7RF/spracingh7rf_bottom.jpg b/libraries/AP_HAL_ChibiOS/hwdef/SPRacingH7RF/spracingh7rf_bottom.jpg new file mode 100644 index 00000000000000..cd2bc9b772ac3c Binary files /dev/null and b/libraries/AP_HAL_ChibiOS/hwdef/SPRacingH7RF/spracingh7rf_bottom.jpg differ diff --git a/libraries/AP_HAL_ChibiOS/hwdef/SPRacingH7RF/spracingh7rf_connectors.jpg b/libraries/AP_HAL_ChibiOS/hwdef/SPRacingH7RF/spracingh7rf_connectors.jpg new file mode 100644 index 00000000000000..0338f16813e34e Binary files /dev/null and b/libraries/AP_HAL_ChibiOS/hwdef/SPRacingH7RF/spracingh7rf_connectors.jpg differ diff --git a/libraries/AP_HAL_ChibiOS/hwdef/SPRacingH7RF/spracingh7rf_top.jpg b/libraries/AP_HAL_ChibiOS/hwdef/SPRacingH7RF/spracingh7rf_top.jpg new file mode 100644 index 00000000000000..acc4c0f8599aa2 Binary files /dev/null and b/libraries/AP_HAL_ChibiOS/hwdef/SPRacingH7RF/spracingh7rf_top.jpg differ