Skip to content

Commit

Permalink
add RP2040 byomcu support for ffkb v2
Browse files Browse the repository at this point in the history
  • Loading branch information
sadekbaroudi committed Jun 26, 2024
1 parent a329d8c commit 48b67e9
Show file tree
Hide file tree
Showing 4 changed files with 40 additions and 0 deletions.
5 changes: 5 additions & 0 deletions keyboards/fingerpunch/ffkb/byomcu/v2/config.h
Original file line number Diff line number Diff line change
Expand Up @@ -67,9 +67,14 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#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
Expand Down
8 changes: 8 additions & 0 deletions keyboards/fingerpunch/ffkb/byomcu/v2/halconf.h
Original file line number Diff line number Diff line change
Expand Up @@ -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 <halconf.h>
13 changes: 13 additions & 0 deletions keyboards/fingerpunch/ffkb/byomcu/v2/mcuconf.h
Original file line number Diff line number Diff line change
Expand Up @@ -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

Expand All @@ -10,3 +22,4 @@

#undef STM32_PWM_USE_TIM2
#define STM32_PWM_USE_TIM2 TRUE
#endif // CONVERT_TO_STEMCELL
14 changes: 14 additions & 0 deletions keyboards/fingerpunch/ffkb/byomcu/v2/rules.mk
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down

0 comments on commit 48b67e9

Please sign in to comment.