Make FS hall sticks EXT3 EXT4 optional

As this breaks Companion model editing for now (see issue #758).
This commit is contained in:
Raphael Coeffic
2021-09-19 13:49:47 +02:00
committed by Risto
parent 4546f885ec
commit 68d9162cb4
7 changed files with 29 additions and 24 deletions
+1 -1
View File
@@ -604,7 +604,7 @@ enum MixSources {
#if defined(PCBX10)
MIXSRC_EXT1, LUA_EXPORT("ext1", "Ext 1")
MIXSRC_EXT2, LUA_EXPORT("ext2", "Ext 2")
#if defined(RADIO_TX16S) && defined(FLYSKY_HALL_STICKS)
#if defined(FLYSKY_HALL_STICKS) && defined(FLYSKY_HALL_STICKS_EXT3_EXT4)
MIXSRC_EXT3, LUA_EXPORT("ext3", "Ext 3")
MIXSRC_EXT4, LUA_EXPORT("ext4", "Ext 4")
#endif
+15 -15
View File
@@ -1067,23 +1067,23 @@ void getADC()
uint16_t v;
#if defined(FLYSKY_HALL_STICKS)
if (x < 4)
if (x < 4) {
v = get_flysky_hall_adc_value(x) >> (1 - ANALOG_SCALE);
else
#if defined(RADIO_TX16S)
switch (x)
{
case EXT3:
case EXT4:
v = getAnalogValue(x-7) >> (1 - ANALOG_SCALE);
break;
default:
v = getAnalogValue(x) >> (1 - ANALOG_SCALE);
break;
}
#else
} else {
#if defined(FLYSKY_HALL_STICKS_EXT3_EXT4)
switch (x) {
case EXT3:
case EXT4:
v = getAnalogValue(x - 7) >> (1 - ANALOG_SCALE);
break;
default:
v = getAnalogValue(x) >> (1 - ANALOG_SCALE);
#endif
break;
}
#else
v = getAnalogValue(x) >> (1 - ANALOG_SCALE);
#endif
}
#else
v = getAnalogValue(x) >> (1 - ANALOG_SCALE);
#endif
@@ -85,7 +85,7 @@ stm32_hal_adc_channel ADC_MAIN_channels[] = {
{ ADC_CHANNEL_POT3, ADC_SAMPTIME },
{ ADC_CHANNEL_EXT1, ADC_SAMPTIME },
{ ADC_CHANNEL_EXT2, ADC_SAMPTIME },
#if (defined(RADIO_TX16S) && defined(FLYSKY_HALL_STICKS))
#if defined(FLYSKY_HALL_STICKS_EXT3_EXT4)
{ ADC_CHANNEL_EXT3, ADC_SAMPTIME },
{ ADC_CHANNEL_EXT4, ADC_SAMPTIME },
#endif
+5
View File
@@ -192,6 +192,11 @@ if(FLYSKY_HALL_STICKS)
add_definitions(-DFLYSKY_HALL_STICKS)
add_definitions(-DFLYSKY_HALL_STICKS_REVERSE)
set(FLYSKY_HALL_STICKS_DRIVER flyskyHallStick_driver.cpp)
option(FLYSKY_HALL_STICKS_EXT3_EXT4 "Additional EXT3 & EXT4 inputs for FlySky Hall Sticks" OFF)
if(FLYSKY_HALL_STICKS_EXT3_EXT4)
add_definitions(-DFLYSKY_HALL_STICKS_EXT3_EXT4)
endif()
endif()
if(IMU_LSM6DS33)
+4 -4
View File
@@ -335,7 +335,7 @@ void watchdogInit(unsigned int duration);
// ADC driver
#if defined(PCBX10)
#if defined(RADIO_TX16S) && defined(FLYSKY_HALL_STICKS)
#if defined(FLYSKY_HALL_STICKS_EXT3_EXT4)
#define NUM_POTS 7
#else
#define NUM_POTS 5
@@ -374,7 +374,7 @@ enum Analogs {
EXT1,
EXT2,
#endif
#if defined(RADIO_TX16S) && defined(FLYSKY_HALL_STICKS)
#if defined(FLYSKY_HALL_STICKS_EXT3_EXT4)
EXT3,
EXT4,
#endif
@@ -420,7 +420,7 @@ enum Analogs {
#if !defined(PCBX12S) // ext are used by mouse on X12S
#define HARDWARE_EXT1
#define HARDWARE_EXT2
#if (defined(RADIO_TX16S) && defined(FLYSKY_HALL_STICKS))
#if defined(FLYSKY_HALL_STICKS_EXT3_EXT4)
#define HARDWARE_EXT3
#define HARDWARE_EXT4
#endif
@@ -444,7 +444,7 @@ enum CalibratedAnalogs {
#else
CALIBRATED_POT_EXT1,
CALIBRATED_POT_EXT2,
#if (defined(RADIO_TX16S) && defined(FLYSKY_HALL_STICKS))
#if defined(FLYSKY_HALL_STICKS_EXT3_EXT4)
CALIBRATED_POT_EXT3,
CALIBRATED_POT_EXT4,
#endif
+2 -2
View File
@@ -282,12 +282,12 @@
#define ADC_RCC_AHB1Periph (RCC_AHB1Periph_GPIOA | RCC_AHB1Periph_GPIOC | RCC_AHB1Periph_GPIOF | RCC_AHB1Periph_DMA2)
#define ADC_RCC_APB1Periph (RCC_APB1Periph_TIM5)
#define ADC_RCC_APB2Periph (RCC_APB2Periph_ADC1 | RCC_APB2Periph_ADC3)
#if !(defined(RADIO_TX16S) && defined(FLYSKY_HALL_STICKS))
#if !defined(FLYSKY_HALL_STICKS)
#define ADC_GPIO_PIN_STICK_LH GPIO_Pin_0 // PA.00
#define ADC_GPIO_PIN_STICK_LV GPIO_Pin_1 // PA.01
#define ADC_GPIO_PIN_STICK_RH GPIO_Pin_2 // PA.02
#define ADC_GPIO_PIN_STICK_RV GPIO_Pin_3 // PA.03
#else
#elif defined(FLYSKY_HALL_STICKS_EXT3_EXT4)
#define ADC_GPIO_PIN_EXT3 GPIO_Pin_2 // PA.02
#define ADC_GPIO_PIN_EXT4 GPIO_Pin_3 // PA.03
#endif
+1 -1
View File
@@ -33,7 +33,7 @@
#define TR_POTS_VSRCRAW STR_CHAR_POT"S1\0" STR_CHAR_POT"6P\0" STR_CHAR_POT"S2\0" STR_CHAR_TRIM "L1\0" STR_CHAR_TRIM "L2\0" STR_CHAR_SLIDER"LS\0" STR_CHAR_SLIDER"RS\0" STR_CHAR_POT"JSx" STR_CHAR_POT"JSy"
#define TR_SW_VSRCRAW STR_CHAR_SWITCH"SA\0" STR_CHAR_SWITCH"SB\0" STR_CHAR_SWITCH"SC\0" STR_CHAR_SWITCH"SD\0" STR_CHAR_SWITCH"SE\0" STR_CHAR_SWITCH"SF\0" STR_CHAR_SWITCH"SG\0" STR_CHAR_SWITCH"SH\0" STR_CHAR_SWITCH"SI\0" STR_CHAR_SWITCH"SJ\0"
#elif defined(PCBX10)
#if defined (RADIO_TX16S) && defined(FLYSKY_HALL_STICKS)
#if defined (FLYSKY_HALL_STICKS_EXT3_EXT4)
#define TR_POTS_VSRCRAW STR_CHAR_POT"S1\0" STR_CHAR_POT"6P\0" STR_CHAR_POT"S2\0" STR_CHAR_POT"EX1" STR_CHAR_POT"EX2" STR_CHAR_POT"EX3" STR_CHAR_POT"EX4" STR_CHAR_SLIDER"LS\0" STR_CHAR_SLIDER"RS\0" STR_CHAR_POT"JSx" STR_CHAR_POT"JSy"
#else
#define TR_POTS_VSRCRAW STR_CHAR_POT"S1\0" STR_CHAR_POT"6P\0" STR_CHAR_POT"S2\0" STR_CHAR_POT"EX1" STR_CHAR_POT"EX2" STR_CHAR_SLIDER"LS\0" STR_CHAR_SLIDER"RS\0" STR_CHAR_POT"JSx" STR_CHAR_POT"JSy"