diff --git a/keyboards/fingerpunch/vulpes_minora/xivik/config.h b/keyboards/fingerpunch/vulpes_minora/xivik/config.h index c00c3bf1db5f..1132ffc43a27 100644 --- a/keyboards/fingerpunch/vulpes_minora/xivik/config.h +++ b/keyboards/fingerpunch/vulpes_minora/xivik/config.h @@ -26,9 +26,12 @@ along with this program. If not, see . #ifdef FP_XIVIK_V01 #define MATRIX_ROW_PINS { GP1, GP24, GP9, GP8 } #define MATRIX_COL_PINS { GP2, GP3, GP4, GP5, GP6 } -#else +#elif defined(FP_XIVIK_V02) #define MATRIX_ROW_PINS { GP1, GP23, GP20, GP22 } #define MATRIX_COL_PINS { GP2, GP3, GP5, GP6, GP4 } +#else // If we're here, it's v03 + #define MATRIX_ROW_PINS { GP1, GP23, GP20, GP22 } + #define MATRIX_COL_PINS { GP2, GP3, GP6, GP7, GP4 } #endif // VIK pin config @@ -41,12 +44,17 @@ along with this program. If not, see . #ifdef FP_XIVIK_V01 #define VIK_I2C_SDA_PIN GP22 #define VIK_I2C_SCL_PIN GP23 -#else +#else // v0.2 or v0.3 #define VIK_I2C_SDA_PIN GP8 #define VIK_I2C_SCL_PIN GP9 #endif +#if defined(FP_XIVIK_V01) || defined(FP_XIVIK_V02) #define VIK_GPIO_1 GP18 #define VIK_GPIO_2 GP10 +#else // If we're here, it's v03 +#define VIK_GPIO_1 GP26 +#define VIK_GPIO_2 GP27 +#endif #define VIK_WS2812_DI_PIN GP16 // Used only if you have a weact st7735 display, set to unused pin @@ -56,17 +64,22 @@ along with this program. If not, see . #define SERIAL_PIO_USE_PIO1 #ifdef FP_XIVIK_V01 #define SERIAL_USART_TX_PIN GP7 -#else +#else // v0.2 or v0.3 // USART TX pin #define SERIAL_USART_TX_PIN GP21 #endif #define WS2812_DI_PIN GP0 +// For VIK modules with encoders #ifdef ENCODER_ENABLE - // In case there is a VIK module that has an encode - #define ENCODERS_PAD_A { GP18 } - #define ENCODERS_PAD_B { GP10 } +#if defined(FP_XIVIK_V01) || defined(FP_XIVIK_V02) +#define ENCODERS_PAD_A { GP18 } +#define ENCODERS_PAD_B { GP10 } +#else // If we're here, it's v03 +#define ENCODERS_PAD_A { GP26 } +#define ENCODERS_PAD_B { GP27 } +#endif #endif #ifdef CIRQUE_ENABLE diff --git a/keyboards/fingerpunch/vulpes_minora/xivik/fp_build.json b/keyboards/fingerpunch/vulpes_minora/xivik/fp_build.json index 5172abdf5cbc..f430dc4a713d 100644 --- a/keyboards/fingerpunch/vulpes_minora/xivik/fp_build.json +++ b/keyboards/fingerpunch/vulpes_minora/xivik/fp_build.json @@ -1,4 +1,12 @@ [ + { + "type" : "one-of", + "names" : [ + "FP_XIVIK_V01", + "FP_XIVIK_V02" + ], + "user_input": "Which version of xivik are you running? Latest v0.3 (0), v0.1 (1), or v0.2 (2)" + }, { "type" : "one-of", "names" : [ diff --git a/keyboards/fingerpunch/vulpes_minora/xivik/rules.mk b/keyboards/fingerpunch/vulpes_minora/xivik/rules.mk index 1496ea5c066a..268e9f731500 100644 --- a/keyboards/fingerpunch/vulpes_minora/xivik/rules.mk +++ b/keyboards/fingerpunch/vulpes_minora/xivik/rules.mk @@ -34,4 +34,8 @@ SERIAL_DRIVER = vendor ifeq ($(strip $(FP_XIVIK_V01)), yes) OPT_DEFS += -DFP_XIVIK_V01 +endif + +ifeq ($(strip $(FP_XIVIK_V02)), yes) + OPT_DEFS += -DFP_XIVIK_V02 endif \ No newline at end of file diff --git a/keyboards/fingerpunch/xivik/config.h b/keyboards/fingerpunch/xivik/config.h index 31ea8cbcb424..92f8d7c8e4f9 100644 --- a/keyboards/fingerpunch/xivik/config.h +++ b/keyboards/fingerpunch/xivik/config.h @@ -48,12 +48,17 @@ along with this program. If not, see . #ifdef FP_XIVIK_V01 #define VIK_I2C_SDA_PIN GP22 #define VIK_I2C_SCL_PIN GP23 -#else +#else // v0.2 or v0.3 #define VIK_I2C_SDA_PIN GP8 #define VIK_I2C_SCL_PIN GP9 #endif +#if defined(FP_XIVIK_V01) || defined(FP_XIVIK_V02) #define VIK_GPIO_1 GP18 #define VIK_GPIO_2 GP10 +#else // If we're here, it's v03 +#define VIK_GPIO_1 GP26 +#define VIK_GPIO_2 GP27 +#endif #define VIK_WS2812_DI_PIN GP16 // Used only if you have a weact st7735 display, set to unused pin @@ -63,9 +68,12 @@ along with this program. If not, see . #ifdef FP_XIVIK_V01 #define MATRIX_ROW_PINS { GP24, GP9, GP8, GP7 } #define MATRIX_COL_PINS { GP0, GP1, GP2, GP3, GP4, GP5, GP6 } -#else +#elif defined(FP_XIVIK_V02) #define MATRIX_ROW_PINS { GP23, GP20, GP22, GP21 } #define MATRIX_COL_PINS { GP0, GP1, GP2, GP3, GP5, GP6, GP4 } +#else // If we're here, it's v03 +#define MATRIX_ROW_PINS { GP23, GP20, GP22, GP21 } +#define MATRIX_COL_PINS { GP0, GP1, GP2, GP3, GP6, GP7, GP4 } #endif /* COL2ROW or ROW2COL */ @@ -73,8 +81,13 @@ along with this program. If not, see . // For VIK modules with encoders #ifdef ENCODER_ENABLE +#if defined(FP_XIVIK_V01) || defined(FP_XIVIK_V02) #define ENCODERS_PAD_A { GP18 } #define ENCODERS_PAD_B { GP10 } +#else // If we're here, it's v03 +#define ENCODERS_PAD_A { GP26 } +#define ENCODERS_PAD_B { GP27 } +#endif #endif #ifdef CIRQUE_ENABLE diff --git a/keyboards/fingerpunch/xivik/fp_build.json b/keyboards/fingerpunch/xivik/fp_build.json index 2ea695e311c3..4cacc7f243b4 100644 --- a/keyboards/fingerpunch/xivik/fp_build.json +++ b/keyboards/fingerpunch/xivik/fp_build.json @@ -1,4 +1,12 @@ [ + { + "type" : "one-of", + "names" : [ + "FP_XIVIK_V01", + "FP_XIVIK_V02" + ], + "user_input": "Which version of xivik are you running? Latest v0.3 (0), v0.1 (1), or v0.2 (2)" + }, { "type" : "one-of", "names" : [ diff --git a/keyboards/fingerpunch/xivik/rules.mk b/keyboards/fingerpunch/xivik/rules.mk index ef89ad39fffc..fccd1c09132d 100644 --- a/keyboards/fingerpunch/xivik/rules.mk +++ b/keyboards/fingerpunch/xivik/rules.mk @@ -64,4 +64,8 @@ ifeq ($(strip $(FP_XIVIK_V01)), yes) OPT_DEFS += -DFP_XIVIK_V01 endif +ifeq ($(strip $(FP_XIVIK_V02)), yes) + OPT_DEFS += -DFP_XIVIK_V02 +endif + include keyboards/fingerpunch/src/rules.mk