mirror of
https://github.com/betaflight/betaflight.git
synced 2025-07-21 15:25:36 +03:00
Added PG config definitions 7
This commit is contained in:
parent
436b2896c5
commit
0f4a3028c5
6 changed files with 119 additions and 48 deletions
|
@ -47,7 +47,7 @@
|
||||||
#define PG_MOTOR_3D_CONFIG 26 // Cleanflight has motor3DConfig_t, betaflight has flight3DConfig_t with more parameters
|
#define PG_MOTOR_3D_CONFIG 26 // Cleanflight has motor3DConfig_t, betaflight has flight3DConfig_t with more parameters
|
||||||
#define PG_LED_STRIP_CONFIG 27 // structs OK
|
#define PG_LED_STRIP_CONFIG 27 // structs OK
|
||||||
#define PG_COLOR_CONFIG 28 // part of led strip, structs OK
|
#define PG_COLOR_CONFIG 28 // part of led strip, structs OK
|
||||||
#define PG_AIRPLANE_ALT_HOLD_CONFIG 29 // struct OK
|
#define PG_AIRPLANE_CONFIG 29 // struct OK
|
||||||
#define PG_GPS_CONFIG 30 // struct OK
|
#define PG_GPS_CONFIG 30 // struct OK
|
||||||
#define PG_TELEMETRY_CONFIG 31 // betaflight has more and different data in telemetryConfig_t
|
#define PG_TELEMETRY_CONFIG 31 // betaflight has more and different data in telemetryConfig_t
|
||||||
#define PG_FRSKY_TELEMETRY_CONFIG 32 // Cleanflight has split data out of PG_TELEMETRY_CONFIG
|
#define PG_FRSKY_TELEMETRY_CONFIG 32 // Cleanflight has split data out of PG_TELEMETRY_CONFIG
|
||||||
|
@ -84,9 +84,15 @@
|
||||||
#define PG_MODE_ACTIVATION_OPERATOR_CONFIG 500
|
#define PG_MODE_ACTIVATION_OPERATOR_CONFIG 500
|
||||||
#define PG_OSD_CONFIG 501
|
#define PG_OSD_CONFIG 501
|
||||||
#define PG_BEEPER_CONFIG 502
|
#define PG_BEEPER_CONFIG 502
|
||||||
#define PG_PID_CONFIG 503
|
#define PG_BEEPER_DEV_CONFIG 503
|
||||||
#define PG_STATUS_LED_CONFIG 504
|
#define PG_PID_CONFIG 504
|
||||||
#define PG_BETAFLIGHT_END 504
|
#define PG_STATUS_LED_CONFIG 505
|
||||||
|
#define PG_FLASH_CONFIG 506
|
||||||
|
#define PG_PPM_CONFIG 507
|
||||||
|
#define PG_PWM_CONFIG 508
|
||||||
|
#define PG_SERIAL_PIN_CONFIG 509
|
||||||
|
#define PG_ADC_CONFIG 510
|
||||||
|
#define PG_BETAFLIGHT_END 510
|
||||||
|
|
||||||
|
|
||||||
// OSD configuration (subject to change)
|
// OSD configuration (subject to change)
|
||||||
|
|
|
@ -94,6 +94,9 @@
|
||||||
|
|
||||||
#include "telemetry/telemetry.h"
|
#include "telemetry/telemetry.h"
|
||||||
|
|
||||||
|
master_t masterConfig; // master config struct with data independent from profiles
|
||||||
|
profile_t *currentProfile;
|
||||||
|
|
||||||
#ifndef DEFAULT_FEATURES
|
#ifndef DEFAULT_FEATURES
|
||||||
#define DEFAULT_FEATURES 0
|
#define DEFAULT_FEATURES 0
|
||||||
#endif
|
#endif
|
||||||
|
@ -122,10 +125,24 @@ PG_RESET_TEMPLATE(systemConfig_t, systemConfig,
|
||||||
|
|
||||||
PG_REGISTER(beeperConfig_t, beeperConfig, PG_BEEPER_CONFIG, 0);
|
PG_REGISTER(beeperConfig_t, beeperConfig, PG_BEEPER_CONFIG, 0);
|
||||||
|
|
||||||
|
PG_REGISTER_WITH_RESET_FN(adcConfig_t, adcConfig, PG_ADC_CONFIG, 0);
|
||||||
|
PG_REGISTER_WITH_RESET_FN(pwmConfig_t, pwmConfig, PG_PWM_CONFIG, 0);
|
||||||
|
PG_REGISTER_WITH_RESET_FN(ppmConfig_t, ppmConfig, PG_PPM_CONFIG, 0);
|
||||||
PG_REGISTER_WITH_RESET_FN(statusLedConfig_t, statusLedConfig, PG_STATUS_LED_CONFIG, 0);
|
PG_REGISTER_WITH_RESET_FN(statusLedConfig_t, statusLedConfig, PG_STATUS_LED_CONFIG, 0);
|
||||||
|
PG_REGISTER_WITH_RESET_FN(serialPinConfig_t, serialPinConfig, PG_SERIAL_PIN_CONFIG, 0);
|
||||||
|
|
||||||
master_t masterConfig; // master config struct with data independent from profiles
|
PG_REGISTER_WITH_RESET_TEMPLATE(flashConfig_t, flashConfig, PG_FLASH_CONFIG, 0);
|
||||||
profile_t *currentProfile;
|
#ifdef USE_FLASHFS
|
||||||
|
#ifdef M25P16_CS_PIN
|
||||||
|
#define FLASH_CONFIG_CSTAG IO_TAG(M25P16_CS_PIN)
|
||||||
|
#else
|
||||||
|
#define FLASH_CONFIG_CSTAG IO_TAG_NONE
|
||||||
|
#endif
|
||||||
|
|
||||||
|
PG_RESET_TEMPLATE(flashConfig_t, flashConfig,
|
||||||
|
.csTag = FLASH_CONFIG_CSTAG
|
||||||
|
);
|
||||||
|
#endif
|
||||||
|
|
||||||
#ifndef USE_PARAMETER_GROUPS
|
#ifndef USE_PARAMETER_GROUPS
|
||||||
static void resetAccelerometerTrims(flightDynamicsTrims_t *accelerometerTrims)
|
static void resetAccelerometerTrims(flightDynamicsTrims_t *accelerometerTrims)
|
||||||
|
@ -344,7 +361,11 @@ void resetsdcardConfig(sdcardConfig_t *sdcardConfig)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef USE_ADC
|
#ifdef USE_ADC
|
||||||
|
#ifdef USE_PARAMETER_GROUPS
|
||||||
|
void pgResetFn_adcConfig(adcConfig_t *adcConfig)
|
||||||
|
#else
|
||||||
void resetAdcConfig(adcConfig_t *adcConfig)
|
void resetAdcConfig(adcConfig_t *adcConfig)
|
||||||
|
#endif
|
||||||
{
|
{
|
||||||
#ifdef VBAT_ADC_PIN
|
#ifdef VBAT_ADC_PIN
|
||||||
adcConfig->vbat.enabled = true;
|
adcConfig->vbat.enabled = true;
|
||||||
|
@ -370,6 +391,7 @@ void resetAdcConfig(adcConfig_t *adcConfig)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
#ifndef USE_PARAMETER_GROUPS
|
||||||
#ifdef BEEPER
|
#ifdef BEEPER
|
||||||
void resetBeeperDevConfig(beeperDevConfig_t *beeperDevConfig)
|
void resetBeeperDevConfig(beeperDevConfig_t *beeperDevConfig)
|
||||||
{
|
{
|
||||||
|
@ -383,9 +405,14 @@ void resetBeeperDevConfig(beeperDevConfig_t *beeperDevConfig)
|
||||||
beeperDevConfig->ioTag = IO_TAG(BEEPER);
|
beeperDevConfig->ioTag = IO_TAG(BEEPER);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
#if defined(USE_PWM) || defined(USE_PPM)
|
#if defined(USE_PWM) || defined(USE_PPM)
|
||||||
|
#ifdef USE_PARAMETER_GROUPS
|
||||||
|
void pgResetFn_ppmConfig(ppmConfig_t *ppmConfig)
|
||||||
|
#else
|
||||||
void resetPpmConfig(ppmConfig_t *ppmConfig)
|
void resetPpmConfig(ppmConfig_t *ppmConfig)
|
||||||
|
#endif
|
||||||
{
|
{
|
||||||
#ifdef PPM_PIN
|
#ifdef PPM_PIN
|
||||||
ppmConfig->ioTag = IO_TAG(PPM_PIN);
|
ppmConfig->ioTag = IO_TAG(PPM_PIN);
|
||||||
|
@ -401,8 +428,13 @@ void resetPpmConfig(ppmConfig_t *ppmConfig)
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifdef USE_PARAMETER_GROUPS
|
||||||
|
void pgResetFn_pwmConfig(pwmConfig_t *pwmConfig)
|
||||||
|
#else
|
||||||
void resetPwmConfig(pwmConfig_t *pwmConfig)
|
void resetPwmConfig(pwmConfig_t *pwmConfig)
|
||||||
|
#endif
|
||||||
{
|
{
|
||||||
|
pwmConfig->inputFilteringMode = INPUT_FILTERING_DISABLED;
|
||||||
int inputIndex = 0;
|
int inputIndex = 0;
|
||||||
for (int i = 0; i < USABLE_TIMER_CHANNEL_COUNT && inputIndex < PWM_INPUT_PORT_COUNT; i++) {
|
for (int i = 0; i < USABLE_TIMER_CHANNEL_COUNT && inputIndex < PWM_INPUT_PORT_COUNT; i++) {
|
||||||
if (timerHardware[i].usageFlags & TIM_USE_PWM) {
|
if (timerHardware[i].usageFlags & TIM_USE_PWM) {
|
||||||
|
@ -559,73 +591,77 @@ void resetBatteryConfig(batteryConfig_t *batteryConfig)
|
||||||
# endif
|
# endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
void resetSerialPinConfig(serialPinConfig_t *pSerialPinConfig)
|
#ifdef USE_PARAMETER_GROUPS
|
||||||
|
void pgResetFn_serialPinConfig(serialPinConfig_t *serialPinConfig)
|
||||||
|
#else
|
||||||
|
void resetSerialPinConfig(serialPinConfig_t *serialPinConfig)
|
||||||
|
#endif
|
||||||
{
|
{
|
||||||
for (int port = 0 ; port < SERIAL_PORT_MAX_INDEX ; port++) {
|
for (int port = 0 ; port < SERIAL_PORT_MAX_INDEX ; port++) {
|
||||||
pSerialPinConfig->ioTagRx[port] = IO_TAG(NONE);
|
serialPinConfig->ioTagRx[port] = IO_TAG(NONE);
|
||||||
pSerialPinConfig->ioTagTx[port] = IO_TAG(NONE);
|
serialPinConfig->ioTagTx[port] = IO_TAG(NONE);
|
||||||
}
|
}
|
||||||
|
|
||||||
for (int index = 0 ; index < SERIAL_PORT_COUNT ; index++) {
|
for (int index = 0 ; index < SERIAL_PORT_COUNT ; index++) {
|
||||||
switch (serialPortIdentifiers[index]) {
|
switch (serialPortIdentifiers[index]) {
|
||||||
case SERIAL_PORT_USART1:
|
case SERIAL_PORT_USART1:
|
||||||
#ifdef USE_UART1
|
#ifdef USE_UART1
|
||||||
pSerialPinConfig->ioTagRx[SERIAL_PORT_IDENTIFIER_TO_RESOURCE_INDEX(SERIAL_PORT_USART1)] = IO_TAG(UART1_RX_PIN);
|
serialPinConfig->ioTagRx[SERIAL_PORT_IDENTIFIER_TO_RESOURCE_INDEX(SERIAL_PORT_USART1)] = IO_TAG(UART1_RX_PIN);
|
||||||
pSerialPinConfig->ioTagTx[SERIAL_PORT_IDENTIFIER_TO_RESOURCE_INDEX(SERIAL_PORT_USART1)] = IO_TAG(UART1_TX_PIN);
|
serialPinConfig->ioTagTx[SERIAL_PORT_IDENTIFIER_TO_RESOURCE_INDEX(SERIAL_PORT_USART1)] = IO_TAG(UART1_TX_PIN);
|
||||||
#endif
|
#endif
|
||||||
break;
|
break;
|
||||||
case SERIAL_PORT_USART2:
|
case SERIAL_PORT_USART2:
|
||||||
#ifdef USE_UART2
|
#ifdef USE_UART2
|
||||||
pSerialPinConfig->ioTagRx[SERIAL_PORT_IDENTIFIER_TO_RESOURCE_INDEX(SERIAL_PORT_USART2)] = IO_TAG(UART2_RX_PIN);
|
serialPinConfig->ioTagRx[SERIAL_PORT_IDENTIFIER_TO_RESOURCE_INDEX(SERIAL_PORT_USART2)] = IO_TAG(UART2_RX_PIN);
|
||||||
pSerialPinConfig->ioTagTx[SERIAL_PORT_IDENTIFIER_TO_RESOURCE_INDEX(SERIAL_PORT_USART2)] = IO_TAG(UART2_TX_PIN);
|
serialPinConfig->ioTagTx[SERIAL_PORT_IDENTIFIER_TO_RESOURCE_INDEX(SERIAL_PORT_USART2)] = IO_TAG(UART2_TX_PIN);
|
||||||
#endif
|
#endif
|
||||||
break;
|
break;
|
||||||
case SERIAL_PORT_USART3:
|
case SERIAL_PORT_USART3:
|
||||||
#ifdef USE_UART3
|
#ifdef USE_UART3
|
||||||
pSerialPinConfig->ioTagRx[SERIAL_PORT_IDENTIFIER_TO_RESOURCE_INDEX(SERIAL_PORT_USART3)] = IO_TAG(UART3_RX_PIN);
|
serialPinConfig->ioTagRx[SERIAL_PORT_IDENTIFIER_TO_RESOURCE_INDEX(SERIAL_PORT_USART3)] = IO_TAG(UART3_RX_PIN);
|
||||||
pSerialPinConfig->ioTagTx[SERIAL_PORT_IDENTIFIER_TO_RESOURCE_INDEX(SERIAL_PORT_USART3)] = IO_TAG(UART3_TX_PIN);
|
serialPinConfig->ioTagTx[SERIAL_PORT_IDENTIFIER_TO_RESOURCE_INDEX(SERIAL_PORT_USART3)] = IO_TAG(UART3_TX_PIN);
|
||||||
#endif
|
#endif
|
||||||
break;
|
break;
|
||||||
case SERIAL_PORT_USART4:
|
case SERIAL_PORT_USART4:
|
||||||
#ifdef USE_UART4
|
#ifdef USE_UART4
|
||||||
pSerialPinConfig->ioTagRx[SERIAL_PORT_IDENTIFIER_TO_RESOURCE_INDEX(SERIAL_PORT_USART4)] = IO_TAG(UART4_RX_PIN);
|
serialPinConfig->ioTagRx[SERIAL_PORT_IDENTIFIER_TO_RESOURCE_INDEX(SERIAL_PORT_USART4)] = IO_TAG(UART4_RX_PIN);
|
||||||
pSerialPinConfig->ioTagTx[SERIAL_PORT_IDENTIFIER_TO_RESOURCE_INDEX(SERIAL_PORT_USART4)] = IO_TAG(UART4_TX_PIN);
|
serialPinConfig->ioTagTx[SERIAL_PORT_IDENTIFIER_TO_RESOURCE_INDEX(SERIAL_PORT_USART4)] = IO_TAG(UART4_TX_PIN);
|
||||||
#endif
|
#endif
|
||||||
break;
|
break;
|
||||||
case SERIAL_PORT_USART5:
|
case SERIAL_PORT_USART5:
|
||||||
#ifdef USE_UART5
|
#ifdef USE_UART5
|
||||||
pSerialPinConfig->ioTagRx[SERIAL_PORT_IDENTIFIER_TO_RESOURCE_INDEX(SERIAL_PORT_USART5)] = IO_TAG(UART5_RX_PIN);
|
serialPinConfig->ioTagRx[SERIAL_PORT_IDENTIFIER_TO_RESOURCE_INDEX(SERIAL_PORT_USART5)] = IO_TAG(UART5_RX_PIN);
|
||||||
pSerialPinConfig->ioTagTx[SERIAL_PORT_IDENTIFIER_TO_RESOURCE_INDEX(SERIAL_PORT_USART5)] = IO_TAG(UART5_TX_PIN);
|
serialPinConfig->ioTagTx[SERIAL_PORT_IDENTIFIER_TO_RESOURCE_INDEX(SERIAL_PORT_USART5)] = IO_TAG(UART5_TX_PIN);
|
||||||
#endif
|
#endif
|
||||||
break;
|
break;
|
||||||
case SERIAL_PORT_USART6:
|
case SERIAL_PORT_USART6:
|
||||||
#ifdef USE_UART6
|
#ifdef USE_UART6
|
||||||
pSerialPinConfig->ioTagRx[SERIAL_PORT_IDENTIFIER_TO_RESOURCE_INDEX(SERIAL_PORT_USART6)] = IO_TAG(UART6_RX_PIN);
|
serialPinConfig->ioTagRx[SERIAL_PORT_IDENTIFIER_TO_RESOURCE_INDEX(SERIAL_PORT_USART6)] = IO_TAG(UART6_RX_PIN);
|
||||||
pSerialPinConfig->ioTagTx[SERIAL_PORT_IDENTIFIER_TO_RESOURCE_INDEX(SERIAL_PORT_USART6)] = IO_TAG(UART6_TX_PIN);
|
serialPinConfig->ioTagTx[SERIAL_PORT_IDENTIFIER_TO_RESOURCE_INDEX(SERIAL_PORT_USART6)] = IO_TAG(UART6_TX_PIN);
|
||||||
#endif
|
#endif
|
||||||
break;
|
break;
|
||||||
case SERIAL_PORT_USART7:
|
case SERIAL_PORT_USART7:
|
||||||
#ifdef USE_UART7
|
#ifdef USE_UART7
|
||||||
pSerialPinConfig->ioTagRx[SERIAL_PORT_IDENTIFIER_TO_RESOURCE_INDEX(SERIAL_PORT_USART7)] = IO_TAG(UART7_RX_PIN);
|
serialPinConfig->ioTagRx[SERIAL_PORT_IDENTIFIER_TO_RESOURCE_INDEX(SERIAL_PORT_USART7)] = IO_TAG(UART7_RX_PIN);
|
||||||
pSerialPinConfig->ioTagTx[SERIAL_PORT_IDENTIFIER_TO_RESOURCE_INDEX(SERIAL_PORT_USART7)] = IO_TAG(UART7_TX_PIN);
|
serialPinConfig->ioTagTx[SERIAL_PORT_IDENTIFIER_TO_RESOURCE_INDEX(SERIAL_PORT_USART7)] = IO_TAG(UART7_TX_PIN);
|
||||||
#endif
|
#endif
|
||||||
break;
|
break;
|
||||||
case SERIAL_PORT_USART8:
|
case SERIAL_PORT_USART8:
|
||||||
#ifdef USE_UART8
|
#ifdef USE_UART8
|
||||||
pSerialPinConfig->ioTagRx[SERIAL_PORT_IDENTIFIER_TO_RESOURCE_INDEX(SERIAL_PORT_USART8)] = IO_TAG(UART8_RX_PIN);
|
serialPinConfig->ioTagRx[SERIAL_PORT_IDENTIFIER_TO_RESOURCE_INDEX(SERIAL_PORT_USART8)] = IO_TAG(UART8_RX_PIN);
|
||||||
pSerialPinConfig->ioTagTx[SERIAL_PORT_IDENTIFIER_TO_RESOURCE_INDEX(SERIAL_PORT_USART8)] = IO_TAG(UART8_TX_PIN);
|
serialPinConfig->ioTagTx[SERIAL_PORT_IDENTIFIER_TO_RESOURCE_INDEX(SERIAL_PORT_USART8)] = IO_TAG(UART8_TX_PIN);
|
||||||
#endif
|
#endif
|
||||||
break;
|
break;
|
||||||
case SERIAL_PORT_SOFTSERIAL1:
|
case SERIAL_PORT_SOFTSERIAL1:
|
||||||
#ifdef USE_SOFTSERIAL1
|
#ifdef USE_SOFTSERIAL1
|
||||||
pSerialPinConfig->ioTagRx[SERIAL_PORT_IDENTIFIER_TO_RESOURCE_INDEX(SERIAL_PORT_SOFTSERIAL1)] = IO_TAG(SOFTSERIAL1_RX_PIN);
|
serialPinConfig->ioTagRx[SERIAL_PORT_IDENTIFIER_TO_RESOURCE_INDEX(SERIAL_PORT_SOFTSERIAL1)] = IO_TAG(SOFTSERIAL1_RX_PIN);
|
||||||
pSerialPinConfig->ioTagTx[SERIAL_PORT_IDENTIFIER_TO_RESOURCE_INDEX(SERIAL_PORT_SOFTSERIAL1)] = IO_TAG(SOFTSERIAL1_TX_PIN);
|
serialPinConfig->ioTagTx[SERIAL_PORT_IDENTIFIER_TO_RESOURCE_INDEX(SERIAL_PORT_SOFTSERIAL1)] = IO_TAG(SOFTSERIAL1_TX_PIN);
|
||||||
#endif
|
#endif
|
||||||
break;
|
break;
|
||||||
case SERIAL_PORT_SOFTSERIAL2:
|
case SERIAL_PORT_SOFTSERIAL2:
|
||||||
#ifdef USE_SOFTSERIAL2
|
#ifdef USE_SOFTSERIAL2
|
||||||
pSerialPinConfig->ioTagRx[SERIAL_PORT_IDENTIFIER_TO_RESOURCE_INDEX(SERIAL_PORT_SOFTSERIAL2)] = IO_TAG(SOFTSERIAL2_RX_PIN);
|
serialPinConfig->ioTagRx[SERIAL_PORT_IDENTIFIER_TO_RESOURCE_INDEX(SERIAL_PORT_SOFTSERIAL2)] = IO_TAG(SOFTSERIAL2_RX_PIN);
|
||||||
pSerialPinConfig->ioTagTx[SERIAL_PORT_IDENTIFIER_TO_RESOURCE_INDEX(SERIAL_PORT_SOFTSERIAL2)] = IO_TAG(SOFTSERIAL2_TX_PIN);
|
serialPinConfig->ioTagTx[SERIAL_PORT_IDENTIFIER_TO_RESOURCE_INDEX(SERIAL_PORT_SOFTSERIAL2)] = IO_TAG(SOFTSERIAL2_TX_PIN);
|
||||||
#endif
|
#endif
|
||||||
break;
|
break;
|
||||||
case SERIAL_PORT_USB_VCP:
|
case SERIAL_PORT_USB_VCP:
|
||||||
|
@ -737,6 +773,7 @@ void resetStatusLedConfig(statusLedConfig_t *statusLedConfig)
|
||||||
;
|
;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifndef USE_PARAMETER_GROUPS
|
||||||
#ifdef USE_FLASHFS
|
#ifdef USE_FLASHFS
|
||||||
void resetFlashConfig(flashConfig_t *flashConfig)
|
void resetFlashConfig(flashConfig_t *flashConfig)
|
||||||
{
|
{
|
||||||
|
@ -747,6 +784,7 @@ void resetFlashConfig(flashConfig_t *flashConfig)
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
uint8_t getCurrentProfileIndex(void)
|
uint8_t getCurrentProfileIndex(void)
|
||||||
{
|
{
|
||||||
|
@ -872,19 +910,21 @@ void createDefaultConfig(master_t *config)
|
||||||
|
|
||||||
#ifndef USE_PARAMETER_GROUPS
|
#ifndef USE_PARAMETER_GROUPS
|
||||||
resetBatteryConfig(&config->batteryConfig);
|
resetBatteryConfig(&config->batteryConfig);
|
||||||
#endif
|
|
||||||
|
|
||||||
#if defined(USE_PWM) || defined(USE_PPM)
|
#if defined(USE_PWM) || defined(USE_PPM)
|
||||||
resetPpmConfig(&config->ppmConfig);
|
resetPpmConfig(&config->ppmConfig);
|
||||||
resetPwmConfig(&config->pwmConfig);
|
resetPwmConfig(&config->pwmConfig);
|
||||||
#endif
|
#endif
|
||||||
|
#ifdef USE_PWM
|
||||||
|
config->pwmConfig.inputFilteringMode = INPUT_FILTERING_DISABLED;
|
||||||
|
#endif
|
||||||
|
|
||||||
#ifndef USE_PARAMETER_GROUPS
|
|
||||||
#ifdef TELEMETRY
|
#ifdef TELEMETRY
|
||||||
resetTelemetryConfig(&config->telemetryConfig);
|
resetTelemetryConfig(&config->telemetryConfig);
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifndef USE_PARAMETER_GROUPS
|
||||||
#ifdef USE_ADC
|
#ifdef USE_ADC
|
||||||
resetAdcConfig(&config->adcConfig);
|
resetAdcConfig(&config->adcConfig);
|
||||||
#endif
|
#endif
|
||||||
|
@ -892,6 +932,7 @@ void createDefaultConfig(master_t *config)
|
||||||
#ifdef BEEPER
|
#ifdef BEEPER
|
||||||
resetBeeperDevConfig(&config->beeperDevConfig);
|
resetBeeperDevConfig(&config->beeperDevConfig);
|
||||||
#endif
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
#ifdef SONAR
|
#ifdef SONAR
|
||||||
resetSonarConfig(&config->sonarConfig);
|
resetSonarConfig(&config->sonarConfig);
|
||||||
|
@ -938,20 +979,13 @@ void createDefaultConfig(master_t *config)
|
||||||
resetAllRxChannelRangeConfigurations(config->rxConfig.channelRanges);
|
resetAllRxChannelRangeConfigurations(config->rxConfig.channelRanges);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef USE_PWM
|
|
||||||
config->pwmConfig.inputFilteringMode = INPUT_FILTERING_DISABLED;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifndef USE_PARAMETER_GROUPS
|
#ifndef USE_PARAMETER_GROUPS
|
||||||
config->armingConfig.gyro_cal_on_first_arm = 0; // TODO - Cleanup retarded arm support
|
config->armingConfig.gyro_cal_on_first_arm = 0; // TODO - Cleanup retarded arm support
|
||||||
config->armingConfig.disarm_kill_switch = 1;
|
config->armingConfig.disarm_kill_switch = 1;
|
||||||
config->armingConfig.auto_disarm_delay = 5;
|
config->armingConfig.auto_disarm_delay = 5;
|
||||||
#endif
|
|
||||||
|
|
||||||
|
|
||||||
config->airplaneConfig.fixedwing_althold_dir = 1;
|
config->airplaneConfig.fixedwing_althold_dir = 1;
|
||||||
|
|
||||||
#ifndef USE_PARAMETER_GROUPS
|
|
||||||
// Motor/ESC/Servo
|
// Motor/ESC/Servo
|
||||||
resetMixerConfig(&config->mixerConfig);
|
resetMixerConfig(&config->mixerConfig);
|
||||||
resetMotorConfig(&config->motorConfig);
|
resetMotorConfig(&config->motorConfig);
|
||||||
|
@ -973,9 +1007,9 @@ void createDefaultConfig(master_t *config)
|
||||||
config->gpsConfig.autoBaud = GPS_AUTOBAUD_OFF;
|
config->gpsConfig.autoBaud = GPS_AUTOBAUD_OFF;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifndef USE_PARAMETER_GROUPS
|
||||||
resetSerialPinConfig(&config->serialPinConfig);
|
resetSerialPinConfig(&config->serialPinConfig);
|
||||||
|
|
||||||
#ifndef USE_PARAMETER_GROUPS
|
|
||||||
resetSerialConfig(&config->serialConfig);
|
resetSerialConfig(&config->serialConfig);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -1031,10 +1065,10 @@ void createDefaultConfig(master_t *config)
|
||||||
config->servoProfile.servoConf[i].angleAtMax = DEFAULT_SERVO_MAX_ANGLE;
|
config->servoProfile.servoConf[i].angleAtMax = DEFAULT_SERVO_MAX_ANGLE;
|
||||||
config->servoProfile.servoConf[i].forwardFromChannel = CHANNEL_FORWARDING_DISABLED;
|
config->servoProfile.servoConf[i].forwardFromChannel = CHANNEL_FORWARDING_DISABLED;
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
|
|
||||||
// gimbal
|
// gimbal
|
||||||
config->gimbalConfig.mode = GIMBAL_MODE_NORMAL;
|
config->gimbalConfig.mode = GIMBAL_MODE_NORMAL;
|
||||||
|
#endif
|
||||||
|
|
||||||
// Channel forwarding;
|
// Channel forwarding;
|
||||||
config->channelForwardingConfig.startChannel = AUX1;
|
config->channelForwardingConfig.startChannel = AUX1;
|
||||||
|
@ -1088,11 +1122,11 @@ void createDefaultConfig(master_t *config)
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifndef USE_PARAMETER_GROUPS
|
||||||
#ifdef USE_FLASHFS
|
#ifdef USE_FLASHFS
|
||||||
resetFlashConfig(&config->flashConfig);
|
resetFlashConfig(&config->flashConfig);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifndef USE_PARAMETER_GROUPS
|
|
||||||
resetStatusLedConfig(&config->statusLedConfig);
|
resetStatusLedConfig(&config->statusLedConfig);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
|
@ -44,6 +44,12 @@
|
||||||
#include "sensors/sonar.h"
|
#include "sensors/sonar.h"
|
||||||
|
|
||||||
|
|
||||||
|
PG_REGISTER_WITH_RESET_TEMPLATE(airplaneConfig_t, airplaneConfig, PG_AIRPLANE_CONFIG, 0);
|
||||||
|
|
||||||
|
PG_RESET_TEMPLATE(airplaneConfig_t, airplaneConfig,
|
||||||
|
.fixedwing_althold_dir = 1
|
||||||
|
);
|
||||||
|
|
||||||
int32_t setVelocity = 0;
|
int32_t setVelocity = 0;
|
||||||
uint8_t velocityControl = 0;
|
uint8_t velocityControl = 0;
|
||||||
int32_t errorVelocityI = 0;
|
int32_t errorVelocityI = 0;
|
||||||
|
|
|
@ -107,6 +107,8 @@ void pgResetFn_motorConfig(motorConfig_t *motorConfig)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
PG_REGISTER_ARRAY(motorMixer_t, MAX_SUPPORTED_MOTORS, customMotorMixer, PG_MOTOR_MIXER, 0);
|
||||||
|
|
||||||
#define EXTERNAL_DSHOT_CONVERSION_FACTOR 2
|
#define EXTERNAL_DSHOT_CONVERSION_FACTOR 2
|
||||||
// (minimum output value(1001) - (minimum input value(48) / conversion factor(2))
|
// (minimum output value(1001) - (minimum input value(48) / conversion factor(2))
|
||||||
#define EXTERNAL_DSHOT_CONVERSION_OFFSET 977
|
#define EXTERNAL_DSHOT_CONVERSION_OFFSET 977
|
||||||
|
|
|
@ -90,6 +90,9 @@ void pgResetFn_servoParams(servoParam_t *instance)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// no template required since default is zero
|
||||||
|
PG_REGISTER(gimbalConfig_t, gimbalConfig, PG_GIMBAL_CONFIG, 0);
|
||||||
|
|
||||||
static uint8_t servoRuleCount = 0;
|
static uint8_t servoRuleCount = 0;
|
||||||
static servoMixer_t currentServoMixer[MAX_SERVO_RULES];
|
static servoMixer_t currentServoMixer[MAX_SERVO_RULES];
|
||||||
int16_t servo[MAX_SUPPORTED_SERVOS];
|
int16_t servo[MAX_SUPPORTED_SERVOS];
|
||||||
|
|
|
@ -17,17 +17,22 @@
|
||||||
|
|
||||||
#include "stdbool.h"
|
#include "stdbool.h"
|
||||||
#include "stdint.h"
|
#include "stdint.h"
|
||||||
#include "stdlib.h"
|
|
||||||
|
|
||||||
#include <platform.h>
|
#include <platform.h>
|
||||||
|
|
||||||
#include "common/utils.h"
|
#include "common/utils.h"
|
||||||
|
|
||||||
|
#include "config/feature.h"
|
||||||
|
#include "config/parameter_group.h"
|
||||||
|
#include "config/parameter_group_ids.h"
|
||||||
|
|
||||||
#include "drivers/sound_beeper.h"
|
#include "drivers/sound_beeper.h"
|
||||||
#include "drivers/system.h"
|
#include "drivers/system.h"
|
||||||
#include "sensors/battery.h"
|
|
||||||
#include "sensors/sensors.h"
|
|
||||||
|
|
||||||
|
#include "fc/config.h"
|
||||||
|
#include "fc/runtime_config.h"
|
||||||
|
|
||||||
|
#include "io/beeper.h"
|
||||||
#include "io/statusindicator.h"
|
#include "io/statusindicator.h"
|
||||||
#include "io/vtx.h"
|
#include "io/vtx.h"
|
||||||
|
|
||||||
|
@ -35,12 +40,27 @@
|
||||||
#include "io/gps.h"
|
#include "io/gps.h"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#include "fc/config.h"
|
#include "sensors/battery.h"
|
||||||
#include "fc/runtime_config.h"
|
#include "sensors/sensors.h"
|
||||||
|
|
||||||
#include "config/feature.h"
|
|
||||||
|
|
||||||
#include "io/beeper.h"
|
PG_REGISTER_WITH_RESET_TEMPLATE(beeperDevConfig_t, beeperDevConfig, PG_BEEPER_DEV_CONFIG, 0);
|
||||||
|
|
||||||
|
#ifdef BEEPER_INVERTED
|
||||||
|
#define IS_OPEN_DRAIN false
|
||||||
|
#define IS_INVERTED true
|
||||||
|
#else
|
||||||
|
#define IS_OPEN_DRAIN true
|
||||||
|
#define IS_INVERTED false
|
||||||
|
#endif
|
||||||
|
#ifndef BEEPER
|
||||||
|
#define BEEPER NONE
|
||||||
|
#endif
|
||||||
|
PG_RESET_TEMPLATE(beeperDevConfig_t, beeperDevConfig,
|
||||||
|
.isOpenDrain = IS_OPEN_DRAIN,
|
||||||
|
.isInverted = IS_INVERTED,
|
||||||
|
.ioTag = IO_TAG(BEEPER)
|
||||||
|
);
|
||||||
|
|
||||||
#if FLASH_SIZE > 64
|
#if FLASH_SIZE > 64
|
||||||
#define BEEPER_NAMES
|
#define BEEPER_NAMES
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue