diff --git a/keyboards/fingerpunch/ffkb/byomcu/v2/config.h b/keyboards/fingerpunch/ffkb/byomcu/v2/config.h index 46572b14a1..75cca5eaf0 100644 --- a/keyboards/fingerpunch/ffkb/byomcu/v2/config.h +++ b/keyboards/fingerpunch/ffkb/byomcu/v2/config.h @@ -67,9 +67,14 @@ along with this program. If not, see . #ifdef AUDIO_ENABLE #define AUDIO_VOICES #define AUDIO_PIN F0 + #if defined(CONVERT_TO_ELITE_PI) || defined(CONVERT_TO_RP2040_CE) || defined(CONVERT_TO_HELIOS) || defined(CONVERT_TO_LIATRIS) || defined(CONVERT_TO_KB2040) || defined(CONVERT_TO_PROMICRO_RP2040) + #define AUDIO_PWM_DRIVER PWMD0 + #define AUDIO_PWM_CHANNEL RP2040_PWM_CHANNEL_A + #else #define AUDIO_PWM_DRIVER PWMD2 #define AUDIO_PWM_CHANNEL 1 #define AUDIO_STATE_TIMER GPTD4 + #endif #define AUDIO_VOICES // #define AUDIO_PWM_PAL_MODE 42 // only if using AUDIO_DRIVER = pwm_hardware // #define NO_MUSIC_MODE diff --git a/keyboards/fingerpunch/ffkb/byomcu/v2/halconf.h b/keyboards/fingerpunch/ffkb/byomcu/v2/halconf.h index bf5381da6a..b33e997b3c 100644 --- a/keyboards/fingerpunch/ffkb/byomcu/v2/halconf.h +++ b/keyboards/fingerpunch/ffkb/byomcu/v2/halconf.h @@ -21,10 +21,18 @@ #pragma once +#if defined(CONVERT_TO_ELITE_PI) || defined(CONVERT_TO_RP2040_CE) || defined(CONVERT_TO_HELIOS) || defined(CONVERT_TO_LIATRIS) || defined(CONVERT_TO_KB2040) || defined(CONVERT_TO_PROMICRO_RP2040) +#define HAL_USE_PWM TRUE +#define HAL_USE_I2C TRUE +#define HAL_USE_PAL TRUE +#endif // CONVERT_TO_(any_rp2040) + +#ifdef CONVERT_TO_STEMCELL #define HAL_USE_PWM TRUE #define HAL_USE_GPT TRUE #define HAL_USE_SERIAL TRUE #define SPI_USE_WAIT TRUE #define SPI_SELECT_MODE SPI_SELECT_MODE_PAD +#endif #include_next diff --git a/keyboards/fingerpunch/ffkb/byomcu/v2/mcuconf.h b/keyboards/fingerpunch/ffkb/byomcu/v2/mcuconf.h index 78184918e4..d56d8f86c9 100644 --- a/keyboards/fingerpunch/ffkb/byomcu/v2/mcuconf.h +++ b/keyboards/fingerpunch/ffkb/byomcu/v2/mcuconf.h @@ -2,6 +2,18 @@ #include_next "mcuconf.h" +#if defined(CONVERT_TO_ELITE_PI) || defined(CONVERT_TO_RP2040_CE) || defined(CONVERT_TO_HELIOS) || defined(CONVERT_TO_LIATRIS) || defined(CONVERT_TO_PROMICRO_RP2040) +#undef RP_I2C_USE_I2C1 +#define RP_I2C_USE_I2C1 TRUE + +#undef RP_PWM_USE_PWM0 +#define RP_PWM_USE_PWM0 TRUE + +#undef RP_PWM_USE_TIM1 +#define RP_PWM_USE_TIM1 TRUE +#endif // CONVERT_TO_(any_rp2040) + +#ifdef CONVERT_TO_STEMCELL #undef STM32_ST_USE_TIMER #define STM32_ST_USE_TIMER 5 @@ -10,3 +22,4 @@ #undef STM32_PWM_USE_TIM2 #define STM32_PWM_USE_TIM2 TRUE +#endif // CONVERT_TO_STEMCELL diff --git a/keyboards/fingerpunch/ffkb/byomcu/v2/rules.mk b/keyboards/fingerpunch/ffkb/byomcu/v2/rules.mk index 32e1dd7565..9b232edf2c 100644 --- a/keyboards/fingerpunch/ffkb/byomcu/v2/rules.mk +++ b/keyboards/fingerpunch/ffkb/byomcu/v2/rules.mk @@ -40,7 +40,21 @@ EXTRAFLAGS += -flto # macros disabled, as a lot of barobord features req MOUSEKEY_ENABLE = no AUDIO_ENABLE ?= no +ifeq ($(strip $(CONVERT_TO)), stemcell) AUDIO_DRIVER = pwm_software +endif +ifeq ($(strip $(CONVERT_TO)), elite_pi) +AUDIO_DRIVER = pwm_hardware +endif +ifeq ($(strip $(CONVERT_TO)), rp2040_ce) +AUDIO_DRIVER = pwm_hardware +endif +ifeq ($(strip $(CONVERT_TO)), helios) +AUDIO_DRIVER = pwm_hardware +endif +ifeq ($(strip $(CONVERT_TO)), liatris) +AUDIO_DRIVER = pwm_hardware +endif HAPTIC_ENABLE ?= no HAPTIC_DRIVER = drv2605l