Pawel Spychalski (DzikuVx)
3 years ago
42 changed files with 1161 additions and 158 deletions
-
24docs/Boards.md
-
13docs/ESC and servo outputs.md
-
4docs/Programming Framework.md
-
32docs/Settings.md
-
17docs/VTx.md
-
36docs/development/Development.md
-
6src/main/drivers/bus_spi.h
-
87src/main/drivers/bus_spi_hal_ll.c
-
2src/main/drivers/osd_symbols.h
-
2src/main/drivers/serial.h
-
9src/main/drivers/serial_softserial.c
-
6src/main/drivers/vtx_common.h
-
2src/main/fc/config.c
-
24src/main/fc/settings.yaml
-
10src/main/flight/mixer.c
-
16src/main/io/osd.c
-
1src/main/io/osd.h
-
47src/main/io/osd_hud.c
-
1src/main/io/vtx.c
-
1src/main/io/vtx.h
-
1src/main/io/vtx_control.c
-
1src/main/io/vtx_control.h
-
61src/main/io/vtx_string.c
-
7src/main/io/vtx_string.h
-
134src/main/io/vtx_tramp.c
-
19src/main/io/vtx_tramp.h
-
10src/main/navigation/navigation.c
-
1src/main/target/AOCODARCF7DUAL/CMakeLists.txt
-
50src/main/target/AOCODARCF7DUAL/target.c
-
182src/main/target/AOCODARCF7DUAL/target.h
-
1src/main/target/IFLIGHT_H743_AIO_V2/CMakeLists.txt
-
26src/main/target/IFLIGHT_H743_AIO_V2/config.c
-
38src/main/target/IFLIGHT_H743_AIO_V2/target.c
-
177src/main/target/IFLIGHT_H743_AIO_V2/target.h
-
1src/main/target/JHEH7AIO/CMakeLists.txt
-
26src/main/target/JHEH7AIO/config.c
-
38src/main/target/JHEH7AIO/target.c
-
175src/main/target/JHEH7AIO/target.h
-
10src/main/target/KAKUTEH7/target.c
-
8src/main/target/MAMBAF722_2022A/target.c
-
10src/main/target/MAMBAH743/target.c
-
3src/main/target/TMOTORF7V2/target.h
@ -0,0 +1,17 @@ |
|||
## VTx Setup |
|||
|
|||
### IRC Tramp |
|||
|
|||
#### Matek 1G3SE Setup |
|||
|
|||
To use the Matek 1G3SE with IRC Tramp. You will need to enter the CLI command `set vtx_frequency_group = FREQUENCYGROUP_1G3`. You must also make sure that the initial VTx settings in the configuration tab are in a valid range. They are: |
|||
- `vtx_band` 1 or 2 |
|||
- `vtx_channel` between 1 and 9 |
|||
|
|||
### Team BlackSheep SmartAudio |
|||
|
|||
If you have problems getting SmartAudio working. There are a couple of CLI parameters you can try changing to see if they help. |
|||
|
|||
There is a workaround for early AKK VTx modules. This is enabled by default. You could try disabling this setting [`vtx_smartaudio_early_akk_workaround`](https://github.com/iNavFlight/inav/blob/master/docs/Settings.md#vtx_smartaudio_early_akk_workaround) to OFF. |
|||
|
|||
If you are using softserial, you can try using the alternate method by setting [`vtx_smartaudio_alternate_softserial_method`](https://github.com/iNavFlight/inav/blob/master/docs/Settings.md#vtx_smartaudio_alternate_softserial_method) to OFF. |
@ -0,0 +1 @@ |
|||
target_stm32f722xe(AOCODARCF7DUAL) |
@ -0,0 +1,50 @@ |
|||
/* |
|||
* This file is part of INAV. |
|||
* |
|||
* INAV is free software: you can redistribute it and/or modify |
|||
* it under the terms of the GNU General Public License as published by |
|||
* the Free Software Foundation, either version 3 of the License, or |
|||
* (at your option) any later version. |
|||
* |
|||
* INAV is distributed in the hope that it will be useful, |
|||
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
* GNU General Public License for more details. |
|||
* |
|||
* You should have received a copy of the GNU General Public License |
|||
* along with INAV. If not, see <http://www.gnu.org/licenses/>. |
|||
*/ |
|||
|
|||
#include <stdint.h> |
|||
|
|||
#include "platform.h" |
|||
|
|||
#include "drivers/bus.h" |
|||
#include "drivers/io.h" |
|||
#include "drivers/pwm_mapping.h" |
|||
#include "drivers/timer.h" |
|||
#include "drivers/pinio.h" |
|||
#include "drivers/sensor.h" |
|||
|
|||
BUSDEV_REGISTER_SPI_TAG(busdev_mpu6000, DEVHW_MPU6000, MPU6000_SPI_BUS, MPU6000_CS_PIN, MPU6000_EXTI_PIN, 0, DEVFLAGS_NONE, IMU_MPU6000_ALIGN); |
|||
BUSDEV_REGISTER_SPI_TAG(busdev_mpu6500, DEVHW_MPU6500, MPU6000_SPI_BUS, MPU6500_CS_PIN, MPU6500_EXTI_PIN, 0, DEVFLAGS_NONE, IMU_MPU6500_ALIGN); |
|||
BUSDEV_REGISTER_SPI_TAG(busdev_bmi270, DEVHW_BMI270, BMI270_SPI_BUS, BMI270_CS_PIN, BMI270_EXTI_PIN, 1, DEVFLAGS_NONE, IMU_BMI270_ALIGN); |
|||
|
|||
|
|||
timerHardware_t timerHardware[] = { |
|||
DEF_TIM(TIM1, CH3, PA10, TIM_USE_PPM, 0, 0), //PPM |
|||
|
|||
DEF_TIM(TIM8, CH1, PC6, TIM_USE_MC_MOTOR | TIM_USE_FW_MOTOR, 0, 1), // S1 D(2, 2, 7) |
|||
DEF_TIM(TIM8, CH2, PC7, TIM_USE_MC_MOTOR | TIM_USE_FW_MOTOR, 0, 1), // S2 D(2, 3, 7) |
|||
DEF_TIM(TIM8, CH3, PC8, TIM_USE_MC_MOTOR | TIM_USE_FW_MOTOR, 0, 1), // S3 D(2, 4, 7) |
|||
DEF_TIM(TIM8, CH4, PC9, TIM_USE_MC_MOTOR | TIM_USE_FW_MOTOR, 0, 0), // S4 D(2, 7, 7) |
|||
|
|||
DEF_TIM(TIM3, CH3, PB0, TIM_USE_MC_MOTOR |TIM_USE_FW_SERVO, 0, 0), // S5 D(1, 7, 5) |
|||
DEF_TIM(TIM3, CH4, PB1, TIM_USE_MC_MOTOR |TIM_USE_FW_SERVO, 0, 0), // S6 D(1, 2, 5) |
|||
DEF_TIM(TIM4, CH1, PB6, TIM_USE_MC_MOTOR |TIM_USE_FW_SERVO, 0, 0), // S7 D(1, 0, 2) |
|||
DEF_TIM(TIM4, CH2, PB7, TIM_USE_MC_MOTOR |TIM_USE_FW_SERVO, 0, 0), // S8 D(1, 3, 2) |
|||
|
|||
DEF_TIM(TIM2, CH1, PA0, TIM_USE_LED, 0, 0), // LED_TRIP |
|||
}; |
|||
|
|||
const int timerHardwareCount = sizeof(timerHardware) / sizeof(timerHardware[0]); |
@ -0,0 +1,182 @@ |
|||
/* |
|||
* This file is part of INAV. |
|||
* |
|||
* INAV is free software: you can redistribute it and/or modify |
|||
* it under the terms of the GNU General Public License as published by |
|||
* the Free Software Foundation, either version 3 of the License, or |
|||
* (at your option) any later version. |
|||
* |
|||
* INAV is distributed in the hope that it will be useful, |
|||
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
* GNU General Public License for more details. |
|||
* |
|||
* You should have received a copy of the GNU General Public License |
|||
* along with INAV. If not, see <http://www.gnu.org/licenses/>. |
|||
*/ |
|||
|
|||
|
|||
#pragma once |
|||
|
|||
#define TARGET_BOARD_IDENTIFIER "AO7D" |
|||
#define USBD_PRODUCT_STRING "AocodaRCF7Dual" |
|||
|
|||
|
|||
#define LED0 PC14 //Blue |
|||
|
|||
#define BEEPER PC13 |
|||
#define BEEPER_INVERTED |
|||
|
|||
// *************** SPI1 Gyro & ACC ******************* |
|||
#define USE_SPI |
|||
#define USE_SPI_DEVICE_2 |
|||
#define SPI2_SCK_PIN PB13 |
|||
#define SPI2_MISO_PIN PB14 |
|||
#define SPI2_MOSI_PIN PB15 |
|||
|
|||
#define USE_EXTI |
|||
#define USE_DUAL_GYRO |
|||
#define USE_MPU_DATA_READY_SIGNAL |
|||
#define ENSURE_MPU_DATA_READY_IS_LOW |
|||
#define USE_TARGET_IMU_HARDWARE_DESCRIPTORS |
|||
|
|||
#define USE_IMU_MPU6000 |
|||
#define IMU_MPU6000_ALIGN CW270_DEG |
|||
#define MPU6000_CS_PIN PB12 |
|||
#define MPU6000_SPI_BUS BUS_SPI2 |
|||
#define MPU6000_EXTI_PIN PC4 |
|||
|
|||
#define USE_IMU_MPU6500 |
|||
#define IMU_MPU6500_ALIGN CW270_DEG |
|||
#define MPU6500_CS_PIN PB12 |
|||
#define MPU6500_SPI_BUS BUS_SPI2 |
|||
#define MPU6500_EXTI_PIN PC4 |
|||
|
|||
#define USE_IMU_BMI270 |
|||
#define IMU_BMI270_ALIGN CW180_DEG |
|||
#define BMI270_CS_PIN PA13 |
|||
#define BMI270_SPI_BUS BUS_SPI2 |
|||
#define BMI270_EXTI_PIN PA8 |
|||
|
|||
// *************** I2C /Baro/Mag ********************* |
|||
#define USE_I2C |
|||
#define USE_I2C_DEVICE_1 |
|||
#define I2C1_SCL PB8 |
|||
#define I2C1_SDA PB9 |
|||
|
|||
#define USE_BARO |
|||
#define BARO_I2C_BUS BUS_I2C1 |
|||
#define USE_BARO_BMP280 |
|||
#define USE_BARO_MS5611 |
|||
#define USE_BARO_MS5607 |
|||
#define USE_BARO_DPS310 |
|||
|
|||
#define USE_I2C_DEVICE_2 |
|||
#define I2C2_SCL PB10 |
|||
#define I2C2_SDA PB11 |
|||
|
|||
#define USE_MAG |
|||
#define MAG_I2C_BUS BUS_I2C2 |
|||
#define USE_MAG_AK8975 |
|||
#define USE_MAG_HMC5883 |
|||
#define USE_MAG_QMC5883 |
|||
#define USE_MAG_IST8310 |
|||
#define USE_MAG_IST8308 |
|||
#define USE_MAG_MAG3110 |
|||
#define USE_MAG_LIS3MDL |
|||
|
|||
#define TEMPERATURE_I2C_BUS BUS_I2C2 |
|||
|
|||
#define PITOT_I2C_BUS BUS_I2C2 |
|||
|
|||
#define USE_RANGEFINDER |
|||
#define RANGEFINDER_I2C_BUS BUS_I2C2 |
|||
|
|||
// *************** SPI2 OSD *********************** |
|||
#define USE_SPI_DEVICE_1 |
|||
#define SPI1_SCK_PIN PA5 |
|||
#define SPI1_MISO_PIN PA6 |
|||
#define SPI1_MOSI_PIN PA7 |
|||
|
|||
#define USE_OSD |
|||
#define USE_MAX7456 |
|||
#define MAX7456_SPI_BUS BUS_SPI1 |
|||
#define MAX7456_CS_PIN PA4 |
|||
|
|||
// *************** SPI3 FLASH BLACKBOX******************* |
|||
#define USE_SPI_DEVICE_3 |
|||
#define SPI3_SCK_PIN PB3 |
|||
#define SPI3_MISO_PIN PB4 |
|||
#define SPI3_MOSI_PIN PB5 |
|||
|
|||
|
|||
#define USE_FLASHFS |
|||
#define USE_FLASH_M25P16 |
|||
#define M25P16_SPI_BUS BUS_SPI3 |
|||
#define M25P16_CS_PIN PC0 |
|||
#define ENABLE_BLACKBOX_LOGGING_ON_SPIFLASH_BY_DEFAULT |
|||
|
|||
|
|||
// *************** UART ***************************** |
|||
#define USE_VCP |
|||
#define USB_DETECT_PIN PC15 |
|||
#define USE_USB_DETECT |
|||
|
|||
#define USE_UART1 |
|||
#define UART1_TX_PIN PA9 |
|||
#define UART1_RX_PIN PA10 |
|||
|
|||
#define USE_UART2 |
|||
#define UART2_TX_PIN PA2 |
|||
#define UART2_RX_PIN PA3 |
|||
|
|||
#define USE_UART3 |
|||
#define UART3_TX_PIN PC10 |
|||
#define UART3_RX_PIN PC11 |
|||
|
|||
#define USE_UART4 |
|||
#define UART4_TX_PIN NONE |
|||
#define UART4_RX_PIN PA1 |
|||
|
|||
#define USE_UART5 |
|||
#define UART5_TX_PIN PC12 |
|||
#define UART5_RX_PIN PD2 |
|||
|
|||
#define SERIAL_PORT_COUNT 6 |
|||
|
|||
#define DEFAULT_RX_TYPE RX_TYPE_SERIAL |
|||
#define SERIALRX_PROVIDER SERIALRX_SBUS |
|||
#define SERIALRX_UART SERIAL_PORT_USART1 |
|||
|
|||
// *************** ADC ***************************** |
|||
#define USE_ADC |
|||
#define ADC_INSTANCE ADC1 |
|||
#define ADC1_DMA_STREAM DMA2_Stream0 |
|||
|
|||
#define ADC_CHANNEL_1_PIN PC1 |
|||
#define ADC_CHANNEL_2_PIN PC2 |
|||
#define ADC_CHANNEL_3_PIN PC3 |
|||
|
|||
|
|||
#define VBAT_ADC_CHANNEL ADC_CHN_2 |
|||
#define CURRENT_METER_ADC_CHANNEL ADC_CHN_1 |
|||
#define RSSI_ADC_CHANNEL ADC_CHN_3 |
|||
|
|||
// *************** LEDSTRIP ************************ |
|||
#define USE_LED_STRIP |
|||
#define WS2811_PIN PA0 |
|||
|
|||
#define DEFAULT_FEATURES (FEATURE_OSD | FEATURE_TELEMETRY | FEATURE_CURRENT_METER | FEATURE_VBAT | FEATURE_TX_PROF_SEL | FEATURE_BLACKBOX) |
|||
#define CURRENT_METER_SCALE 650 |
|||
|
|||
#define USE_SERIAL_4WAY_BLHELI_INTERFACE |
|||
|
|||
#define TARGET_IO_PORTA 0xffff |
|||
#define TARGET_IO_PORTB 0xffff |
|||
#define TARGET_IO_PORTC 0xffff |
|||
#define TARGET_IO_PORTD 0xffff |
|||
|
|||
#define MAX_PWM_OUTPUT_PORTS 10 |
|||
#define USE_DSHOT |
|||
#define USE_SERIALSHOT |
|||
#define USE_ESC_SENSOR |
@ -0,0 +1 @@ |
|||
target_stm32h743xi(IFLIGHT_H743_AIO_V2 SKIP_RELEASES) |
@ -0,0 +1,26 @@ |
|||
/* |
|||
* This file is part of INAV. |
|||
* |
|||
* INAV is free software: you can redistribute it and/or modify |
|||
* it under the terms of the GNU General Public License as published by |
|||
* the Free Software Foundation, either version 3 of the License, or |
|||
* (at your option) any later version. |
|||
* |
|||
* INAV is distributed in the hope that it will be useful, |
|||
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
* GNU General Public License for more details. |
|||
* |
|||
* You should have received a copy of the GNU General Public License |
|||
* along with INAV. If not, see <http://www.gnu.org/licenses/>. |
|||
*/ |
|||
|
|||
#include <stdint.h> |
|||
#include "platform.h" |
|||
#include "fc/fc_msp_box.h" |
|||
#include "fc/config.h" |
|||
#include "io/piniobox.h" |
|||
|
|||
void targetConfiguration(void) |
|||
{ |
|||
} |
@ -0,0 +1,38 @@ |
|||
/* |
|||
* This file is part of INAV. |
|||
* |
|||
* INAV is free software: you can redistribute it and/or modify |
|||
* it under the terms of the GNU General Public License as published by |
|||
* the Free Software Foundation, either version 3 of the License, or |
|||
* (at your option) any later version. |
|||
* |
|||
* INAV is distributed in the hope that it will be useful, |
|||
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
* GNU General Public License for more details. |
|||
* |
|||
* You should have received a copy of the GNU General Public License |
|||
* along with INAV. If not, see <http://www.gnu.org/licenses/>. |
|||
*/ |
|||
|
|||
#include <stdint.h> |
|||
|
|||
#include "platform.h" |
|||
|
|||
#include "drivers/bus.h" |
|||
#include "drivers/io.h" |
|||
#include "drivers/pwm_mapping.h" |
|||
#include "drivers/timer.h" |
|||
#include "drivers/pinio.h" |
|||
#include "drivers/sensor.h" |
|||
|
|||
timerHardware_t timerHardware[] = { |
|||
DEF_TIM(TIM3, CH3, PB0, TIM_USE_MC_MOTOR | TIM_USE_FW_MOTOR, 0, 0), // M1 |
|||
DEF_TIM(TIM3, CH4, PB1, TIM_USE_MC_MOTOR | TIM_USE_FW_MOTOR, 0, 1), // M2 |
|||
DEF_TIM(TIM3, CH1, PB4, TIM_USE_MC_MOTOR | TIM_USE_FW_MOTOR, 0, 2), // M3 |
|||
DEF_TIM(TIM3, CH2, PB5, TIM_USE_MC_MOTOR | TIM_USE_FW_MOTOR, 0, 3), // M4 |
|||
|
|||
DEF_TIM( TIM1, CH1, PA8, TIM_USE_LED, 0, 4) // LED_2812 |
|||
}; |
|||
|
|||
const int timerHardwareCount = sizeof(timerHardware) / sizeof(timerHardware[0]); |
@ -0,0 +1,177 @@ |
|||
/* |
|||
* This file is part of INAV. |
|||
* |
|||
* INAV is free software: you can redistribute it and/or modify |
|||
* it under the terms of the GNU General Public License as published by |
|||
* the Free Software Foundation, either version 3 of the License, or |
|||
* (at your option) any later version. |
|||
* |
|||
* INAV is distributed in the hope that it will be useful, |
|||
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
* GNU General Public License for more details. |
|||
* |
|||
* You should have received a copy of the GNU General Public License |
|||
* along with INAV. If not, see <http://www.gnu.org/licenses/>. |
|||
*/ |
|||
|
|||
#pragma once |
|||
|
|||
#define USE_TARGET_CONFIG |
|||
|
|||
#define TARGET_BOARD_IDENTIFIER "IF7A" |
|||
#define USBD_PRODUCT_STRING "IFLIGHT_H743_AIO_V2" |
|||
|
|||
#define LED0 PC13 |
|||
|
|||
#define BEEPER_PIN PD2 |
|||
#define BEEPER_INVERTED |
|||
|
|||
// *************** SPI1 Gyro & ACC ******************* |
|||
|
|||
#define USE_SPI |
|||
#define USE_SPI_DEVICE_1 |
|||
#define SPI1_SCK_PIN PA5 |
|||
#define SPI1_MISO_PIN PA6 |
|||
#define SPI1_MOSI_PIN PA7 |
|||
#define SPI1_NSS_PIN PA4 |
|||
|
|||
#define USE_IMU_MPU6000 |
|||
#define IMU_MPU6000_ALIGN CW0_DEG |
|||
#define MPU6000_CS_PIN SPI1_NSS_PIN |
|||
#define MPU6000_SPI_BUS BUS_SPI1 |
|||
#define MPU6000_EXTI_PIN PD0 |
|||
|
|||
#define USE_EXTI |
|||
#define USE_MPU_DATA_READY_SIGNAL |
|||
#define ENSURE_MPU_DATA_READY_IS_LOW |
|||
|
|||
// *************** I2C1 Baro/Mag ********************* |
|||
#define USE_I2C |
|||
#define USE_I2C_DEVICE_1 |
|||
#define I2C1_SCL PB8 |
|||
#define I2C1_SDA PB9 |
|||
|
|||
//UUART3 |
|||
#define USE_I2C_DEVICE_2 |
|||
#define I2C2_SCL PB10 |
|||
#define I2C2_SDA PB11 |
|||
// |
|||
|
|||
#define USE_BARO |
|||
#define BARO_I2C_BUS BUS_I2C1 |
|||
#define USE_BARO_BMP280 |
|||
#define USE_BARO_MS5611 |
|||
#define USE_BARO_DPS310 |
|||
|
|||
#define USE_MAG |
|||
#define MAG_I2C_BUS BUS_I2C2 |
|||
#define USE_MAG_AK8975 |
|||
#define USE_MAG_HMC5883 |
|||
#define USE_MAG_QMC5883 |
|||
#define USE_MAG_IST8310 |
|||
#define USE_MAG_IST8308 |
|||
#define USE_MAG_MAG3110 |
|||
#define USE_MAG_LIS3MDL |
|||
|
|||
#define TEMPERATURE_I2C_BUS BUS_I2C2 |
|||
#define BNO055_I2C_BUS BUS_I2C2 |
|||
#define PITOT_I2C_BUS BUS_I2C2 |
|||
|
|||
#define USE_RANGEFINDER |
|||
#define RANGEFINDER_I2C_BUS BUS_I2C2 |
|||
|
|||
// *************** SPI2 *********************** |
|||
#define USE_SPI_DEVICE_2 |
|||
#define SPI2_SCK_PIN PB13 |
|||
#define SPI2_MISO_PIN PB14 |
|||
#define SPI2_MOSI_PIN PB15 |
|||
#define SPI2_NSS_PIN PB12 |
|||
|
|||
// *************** SPI3 BLACKBOX ******************* |
|||
#define USE_SPI_DEVICE_3 |
|||
#define SPI3_SCK_PIN PC10 |
|||
#define SPI3_MISO_PIN PC11 |
|||
#define SPI3_MOSI_PIN PC12 |
|||
#define SPI3_NSS_PIN PA15 |
|||
|
|||
#define USE_FLASHFS |
|||
#define USE_FLASH_M25P16 |
|||
#define M25P16_SPI_BUS BUS_SPI3 |
|||
#define M25P16_CS_PIN SPI3_NSS_PIN |
|||
#define ENABLE_BLACKBOX_LOGGING_ON_SPIFLASH_BY_DEFAULT |
|||
|
|||
// *************** SPI4 OSD ******************* |
|||
#define USE_SPI_DEVICE_4 |
|||
#define SPI4_SCK_PIN PE2 |
|||
#define SPI4_MISO_PIN PE5 |
|||
#define SPI4_MOSI_PIN PE6 |
|||
#define SPI4_NSS_PIN PE4 |
|||
|
|||
#define USE_MAX7456 |
|||
#define MAX7456_SPI_BUS BUS_SPI4 |
|||
#define MAX7456_CS_PIN SPI4_NSS_PIN |
|||
|
|||
// *************** UART ***************************** |
|||
#define USE_VCP |
|||
|
|||
#define USE_UART1 |
|||
#define UART1_RX_PIN PA10 |
|||
#define UART1_TX_PIN PA9 |
|||
|
|||
#define USE_UART2 |
|||
#define UART2_RX_PIN PA3 |
|||
#define UART2_TX_PIN PA2 |
|||
|
|||
#define USE_UART4 |
|||
#define UART4_RX_PIN PA1 |
|||
#define UART4_TX_PIN PA0 |
|||
|
|||
#define USE_UART6 |
|||
#define UART6_RX_PIN PC7 |
|||
#define UART6_TX_PIN PC6 |
|||
|
|||
#define USE_UART7 |
|||
#define UART7_RX_PIN PE7 |
|||
#define UART7_TX_PIN PE8 |
|||
|
|||
#define USE_UART8 |
|||
#define UART8_RX_PIN PE0 |
|||
#define UART8_TX_PIN PE1 |
|||
|
|||
#define SERIAL_PORT_COUNT 7 |
|||
|
|||
#define DEFAULT_RX_TYPE RX_TYPE_SERIAL |
|||
#define SERIALRX_PROVIDER SERIALRX_CRSF |
|||
#define SERIALRX_UART SERIAL_PORT_USART4 |
|||
|
|||
// *************** ADC ***************************** |
|||
#define USE_ADC |
|||
#define ADC_INSTANCE ADC3 |
|||
|
|||
#define ADC_CHANNEL_1_PIN PC3 |
|||
#define ADC_CHANNEL_2_PIN PC2 |
|||
#define ADC_CHANNEL_3_PIN PC5 |
|||
|
|||
#define VBAT_ADC_CHANNEL ADC_CHN_1 |
|||
#define CURRENT_METER_ADC_CHANNEL ADC_CHN_2 |
|||
#define RSSI_ADC_CHANNEL ADC_CHN_3 |
|||
|
|||
// *************** LEDSTRIP ************************ |
|||
#define USE_LED_STRIP |
|||
#define WS2811_PIN PA8 |
|||
|
|||
#define DEFAULT_FEATURES (FEATURE_OSD | FEATURE_TELEMETRY | FEATURE_CURRENT_METER | FEATURE_VBAT | FEATURE_TX_PROF_SEL | FEATURE_BLACKBOX) |
|||
#define CURRENT_METER_SCALE 100 |
|||
|
|||
#define USE_SERIAL_4WAY_BLHELI_INTERFACE |
|||
|
|||
#define TARGET_IO_PORTA 0xffff |
|||
#define TARGET_IO_PORTB 0xffff |
|||
#define TARGET_IO_PORTC 0xffff |
|||
#define TARGET_IO_PORTD 0xffff |
|||
#define TARGET_IO_PORTE 0xffff |
|||
|
|||
#define MAX_PWM_OUTPUT_PORTS 4 |
|||
#define USE_DSHOT |
|||
#define USE_ESC_SENSOR |
@ -0,0 +1 @@ |
|||
target_stm32h743xi(JHEH7AIO SKIP_RELEASES) |
@ -0,0 +1,26 @@ |
|||
/* |
|||
* This file is part of INAV. |
|||
* |
|||
* INAV is free software: you can redistribute it and/or modify |
|||
* it under the terms of the GNU General Public License as published by |
|||
* the Free Software Foundation, either version 3 of the License, or |
|||
* (at your option) any later version. |
|||
* |
|||
* INAV is distributed in the hope that it will be useful, |
|||
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
* GNU General Public License for more details. |
|||
* |
|||
* You should have received a copy of the GNU General Public License |
|||
* along with INAV. If not, see <http://www.gnu.org/licenses/>. |
|||
*/ |
|||
|
|||
#include <stdint.h> |
|||
#include "platform.h" |
|||
#include "fc/fc_msp_box.h" |
|||
#include "fc/config.h" |
|||
#include "io/piniobox.h" |
|||
|
|||
void targetConfiguration(void) |
|||
{ |
|||
} |
@ -0,0 +1,38 @@ |
|||
/* |
|||
* This file is part of INAV. |
|||
* |
|||
* INAV is free software: you can redistribute it and/or modify |
|||
* it under the terms of the GNU General Public License as published by |
|||
* the Free Software Foundation, either version 3 of the License, or |
|||
* (at your option) any later version. |
|||
* |
|||
* INAV is distributed in the hope that it will be useful, |
|||
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
* GNU General Public License for more details. |
|||
* |
|||
* You should have received a copy of the GNU General Public License |
|||
* along with INAV. If not, see <http://www.gnu.org/licenses/>. |
|||
*/ |
|||
|
|||
#include <stdint.h> |
|||
|
|||
#include "platform.h" |
|||
|
|||
#include "drivers/bus.h" |
|||
#include "drivers/io.h" |
|||
#include "drivers/pwm_mapping.h" |
|||
#include "drivers/timer.h" |
|||
#include "drivers/pinio.h" |
|||
#include "drivers/sensor.h" |
|||
|
|||
timerHardware_t timerHardware[] = { |
|||
DEF_TIM(TIM3, CH3, PB0, TIM_USE_MC_MOTOR | TIM_USE_FW_MOTOR, 0, 0), // M1 |
|||
DEF_TIM(TIM3, CH4, PB1, TIM_USE_MC_MOTOR | TIM_USE_FW_MOTOR, 0, 1), // M2 |
|||
DEF_TIM(TIM1, CH1, PE9, TIM_USE_MC_MOTOR | TIM_USE_FW_MOTOR, 0, 2), // M3 |
|||
DEF_TIM(TIM1, CH2, PE11, TIM_USE_MC_MOTOR | TIM_USE_FW_MOTOR, 0, 3), // M4 |
|||
|
|||
DEF_TIM( TIM4, CH1, PD12, TIM_USE_LED, 0, 4) // LED_2812 |
|||
}; |
|||
|
|||
const int timerHardwareCount = sizeof(timerHardware) / sizeof(timerHardware[0]); |
@ -0,0 +1,175 @@ |
|||
/* |
|||
* This file is part of INAV. |
|||
* |
|||
* INAV is free software: you can redistribute it and/or modify |
|||
* it under the terms of the GNU General Public License as published by |
|||
* the Free Software Foundation, either version 3 of the License, or |
|||
* (at your option) any later version. |
|||
* |
|||
* INAV is distributed in the hope that it will be useful, |
|||
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
* GNU General Public License for more details. |
|||
* |
|||
* You should have received a copy of the GNU General Public License |
|||
* along with INAV. If not, see <http://www.gnu.org/licenses/>. |
|||
*/ |
|||
|
|||
#pragma once |
|||
|
|||
#define USE_TARGET_CONFIG |
|||
|
|||
#define TARGET_BOARD_IDENTIFIER "JH7A" |
|||
#define USBD_PRODUCT_STRING "JHEH743AIO" |
|||
|
|||
#define LED0 PC13 |
|||
|
|||
#define BEEPER_PIN PD15 |
|||
#define BEEPER_INVERTED |
|||
|
|||
// *************** SPI1 Gyro & ACC ******************* |
|||
|
|||
#define USE_SPI |
|||
#define USE_SPI_DEVICE_1 |
|||
#define SPI1_SCK_PIN PA5 |
|||
#define SPI1_MISO_PIN PA6 |
|||
#define SPI1_MOSI_PIN PA7 |
|||
#define SPI1_NSS_PIN PA4 |
|||
|
|||
#define USE_IMU_MPU6000 |
|||
#define IMU_MPU6000_ALIGN CW0_DEG |
|||
#define MPU6000_CS_PIN SPI1_NSS_PIN |
|||
#define MPU6000_SPI_BUS BUS_SPI1 |
|||
#define MPU6000_EXTI_PIN PD0 |
|||
|
|||
#define USE_EXTI |
|||
#define USE_MPU_DATA_READY_SIGNAL |
|||
#define ENSURE_MPU_DATA_READY_IS_LOW |
|||
|
|||
// *************** I2C1 Baro/Mag ********************* |
|||
#define USE_I2C |
|||
#define USE_I2C_DEVICE_1 |
|||
#define I2C1_SCL PB8 |
|||
#define I2C1_SDA PB9 |
|||
|
|||
#define USE_BARO |
|||
#define BARO_I2C_BUS BUS_I2C1 |
|||
#define USE_BARO_BMP280 |
|||
#define USE_BARO_MS5611 |
|||
#define USE_BARO_DPS310 |
|||
|
|||
#define USE_MAG |
|||
#define MAG_I2C_BUS BUS_I2C1 |
|||
#define USE_MAG_AK8975 |
|||
#define USE_MAG_HMC5883 |
|||
#define USE_MAG_QMC5883 |
|||
#define USE_MAG_IST8310 |
|||
#define USE_MAG_IST8308 |
|||
#define USE_MAG_MAG3110 |
|||
#define USE_MAG_LIS3MDL |
|||
|
|||
#define TEMPERATURE_I2C_BUS BUS_I2C1 |
|||
#define BNO055_I2C_BUS BUS_I2C1 |
|||
#define PITOT_I2C_BUS BUS_I2C1 |
|||
|
|||
#define USE_RANGEFINDER |
|||
#define RANGEFINDER_I2C_BUS BUS_I2C1 |
|||
|
|||
// *************** SPI2 *********************** |
|||
#define USE_SPI_DEVICE_2 |
|||
#define SPI2_SCK_PIN PB13 |
|||
#define SPI2_MISO_PIN PB14 |
|||
#define SPI2_MOSI_PIN PB15 |
|||
#define SPI2_NSS_PIN PB12 |
|||
|
|||
// *************** SPI3 BLACKBOX ******************* |
|||
#define USE_SPI_DEVICE_3 |
|||
#define SPI3_SCK_PIN PC10 |
|||
#define SPI3_MISO_PIN PC11 |
|||
#define SPI3_MOSI_PIN PC12 |
|||
#define SPI3_NSS_PIN PA15 |
|||
|
|||
#define USE_FLASHFS |
|||
#define USE_FLASH_M25P16 |
|||
#define M25P16_SPI_BUS BUS_SPI3 |
|||
#define M25P16_CS_PIN SPI3_NSS_PIN |
|||
#define ENABLE_BLACKBOX_LOGGING_ON_SPIFLASH_BY_DEFAULT |
|||
|
|||
// *************** SPI4 OSD ******************* |
|||
#define USE_SPI_DEVICE_4 |
|||
#define SPI4_SCK_PIN PE2 |
|||
#define SPI4_MISO_PIN PE5 |
|||
#define SPI4_MOSI_PIN PE6 |
|||
#define SPI4_NSS_PIN PE4 |
|||
|
|||
#define USE_MAX7456 |
|||
#define MAX7456_SPI_BUS BUS_SPI4 |
|||
#define MAX7456_CS_PIN SPI4_NSS_PIN |
|||
|
|||
// *************** UART ***************************** |
|||
#define USE_VCP |
|||
|
|||
#define USE_UART1 |
|||
#define UART1_RX_PIN PA10 |
|||
#define UART1_TX_PIN PA9 |
|||
|
|||
#define USE_UART2 |
|||
#define UART2_RX_PIN PA3 |
|||
#define UART2_TX_PIN PA2 |
|||
|
|||
#define USE_UART3 |
|||
#define UART3_RX_PIN PB11 |
|||
#define UART3_TX_PIN PB10 |
|||
|
|||
#define USE_UART4 |
|||
#define UART4_RX_PIN PA1 |
|||
#define UART4_TX_PIN PA0 |
|||
|
|||
#define USE_UART6 |
|||
#define UART6_RX_PIN PC7 |
|||
#define UART6_TX_PIN PC6 |
|||
|
|||
#define USE_UART7 |
|||
#define UART7_RX_PIN PE7 |
|||
#define UART7_TX_PIN PE8 |
|||
|
|||
#define USE_UART8 |
|||
#define UART8_RX_PIN PE0 |
|||
#define UART8_TX_PIN PE1 |
|||
|
|||
#define SERIAL_PORT_COUNT 8 |
|||
|
|||
#define DEFAULT_RX_TYPE RX_TYPE_SERIAL |
|||
#define SERIALRX_PROVIDER SERIALRX_CRSF |
|||
#define SERIALRX_UART SERIAL_PORT_USART2 |
|||
|
|||
// *************** ADC ***************************** |
|||
#define USE_ADC |
|||
#define ADC_INSTANCE ADC3 |
|||
|
|||
#define ADC_CHANNEL_1_PIN PC3 |
|||
#define ADC_CHANNEL_2_PIN PC2 |
|||
#define ADC_CHANNEL_3_PIN PC5 |
|||
|
|||
#define VBAT_ADC_CHANNEL ADC_CHN_1 |
|||
#define CURRENT_METER_ADC_CHANNEL ADC_CHN_2 |
|||
#define RSSI_ADC_CHANNEL ADC_CHN_3 |
|||
|
|||
// *************** LEDSTRIP ************************ |
|||
#define USE_LED_STRIP |
|||
#define WS2811_PIN PD12 |
|||
|
|||
#define DEFAULT_FEATURES (FEATURE_OSD | FEATURE_TELEMETRY | FEATURE_CURRENT_METER | FEATURE_VBAT | FEATURE_TX_PROF_SEL | FEATURE_BLACKBOX) |
|||
#define CURRENT_METER_SCALE 100 |
|||
|
|||
#define USE_SERIAL_4WAY_BLHELI_INTERFACE |
|||
|
|||
#define TARGET_IO_PORTA 0xffff |
|||
#define TARGET_IO_PORTB 0xffff |
|||
#define TARGET_IO_PORTC 0xffff |
|||
#define TARGET_IO_PORTD 0xffff |
|||
#define TARGET_IO_PORTE 0xffff |
|||
|
|||
#define MAX_PWM_OUTPUT_PORTS 4 |
|||
#define USE_DSHOT |
|||
#define USE_ESC_SENSOR |
Write
Preview
Loading…
Cancel
Save
Reference in new issue