summaryrefslogtreecommitdiff
path: root/keyboards/planck/rev6
diff options
context:
space:
mode:
Diffstat (limited to 'keyboards/planck/rev6')
-rw-r--r--keyboards/planck/rev6/chconf.h4
-rw-r--r--keyboards/planck/rev6/config.h7
-rw-r--r--keyboards/planck/rev6/halconf.h2
-rw-r--r--keyboards/planck/rev6/matrix.c29
-rw-r--r--keyboards/planck/rev6/mcuconf.h2
-rw-r--r--keyboards/planck/rev6/rules.mk1
6 files changed, 9 insertions, 36 deletions
diff --git a/keyboards/planck/rev6/chconf.h b/keyboards/planck/rev6/chconf.h
index b52ca7d2c8..1d9f12ff1f 100644
--- a/keyboards/planck/rev6/chconf.h
+++ b/keyboards/planck/rev6/chconf.h
@@ -41,14 +41,14 @@
* @brief System time counter resolution.
* @note Allowed values are 16 or 32 bits.
*/
-#define CH_CFG_ST_RESOLUTION 16
+#define CH_CFG_ST_RESOLUTION 32
/**
* @brief System tick frequency.
* @details Frequency of the system timer that drives the system ticks. This
* setting also defines the system tick time unit.
*/
-#define CH_CFG_ST_FREQUENCY 10000
+#define CH_CFG_ST_FREQUENCY 100000
/**
* @brief Time delta constant for the tick-less mode.
diff --git a/keyboards/planck/rev6/config.h b/keyboards/planck/rev6/config.h
index 0e462180bd..c0fbb412ee 100644
--- a/keyboards/planck/rev6/config.h
+++ b/keyboards/planck/rev6/config.h
@@ -43,6 +43,10 @@
* #define UNUSED_PINS
*/
+#define NUMBER_OF_ENCODERS 1
+#define ENCODERS_PAD_A { B12 }
+#define ENCODERS_PAD_B { B13 }
+
#define MUSIC_MAP
#undef AUDIO_VOICES
#undef C6_AUDIO
@@ -50,9 +54,6 @@
/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
#define DEBOUNCE 6
-/* Prevent modifiers from being stuck on after layer changes. */
-#define PREVENT_STUCK_MODIFIERS
-
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
//#define LOCKING_SUPPORT_ENABLE
/* Locking resynchronize hack */
diff --git a/keyboards/planck/rev6/halconf.h b/keyboards/planck/rev6/halconf.h
index 5e5d70219e..8fe8e0c6f5 100644
--- a/keyboards/planck/rev6/halconf.h
+++ b/keyboards/planck/rev6/halconf.h
@@ -111,7 +111,7 @@
* @brief Enables the PWM subsystem.
*/
#if !defined(HAL_USE_PWM) || defined(__DOXYGEN__)
-#define HAL_USE_PWM TRUE
+#define HAL_USE_PWM FALSE
#endif
/**
diff --git a/keyboards/planck/rev6/matrix.c b/keyboards/planck/rev6/matrix.c
index e4ebe48acc..2df588cefc 100644
--- a/keyboards/planck/rev6/matrix.c
+++ b/keyboards/planck/rev6/matrix.c
@@ -21,10 +21,6 @@ static matrix_row_t matrix_debouncing[MATRIX_COLS];
static bool debouncing = false;
static uint16_t debouncing_time = 0;
-static uint8_t encoder_state = 0;
-static int8_t encoder_value = 0;
-static int8_t encoder_LUT[] = { 0, -1, 1, 0, 1, 0, 0, -1, -1, 0, 0, 1, 0, 1, -1, 0 };
-
static bool dip_switch[4] = {0, 0, 0, 0};
__attribute__ ((weak))
@@ -53,12 +49,6 @@ void matrix_init(void) {
palSetPadMode(GPIOA, 10, PAL_MODE_INPUT_PULLUP);
palSetPadMode(GPIOB, 9, PAL_MODE_INPUT_PULLUP);
- // encoder setup
- palSetPadMode(GPIOB, 12, PAL_MODE_INPUT_PULLUP);
- palSetPadMode(GPIOB, 13, PAL_MODE_INPUT_PULLUP);
-
- encoder_state = (palReadPad(GPIOB, 12) << 0) | (palReadPad(GPIOB, 13) << 1);
-
// actual matrix setup
palSetPadMode(GPIOB, 11, PAL_MODE_OUTPUT_PUSHPULL);
palSetPadMode(GPIOB, 10, PAL_MODE_OUTPUT_PUSHPULL);
@@ -87,15 +77,8 @@ void matrix_init(void) {
__attribute__ ((weak))
void dip_update(uint8_t index, bool active) { }
-__attribute__ ((weak))
-void encoder_update(bool clockwise) { }
-
bool last_dip_switch[4] = {0};
-#ifndef ENCODER_RESOLUTION
- #define ENCODER_RESOLUTION 4
-#endif
-
uint8_t matrix_scan(void) {
// dip switch
dip_switch[0] = !palReadPad(GPIOB, 14);
@@ -108,18 +91,6 @@ uint8_t matrix_scan(void) {
}
memcpy(last_dip_switch, dip_switch, sizeof(&dip_switch));
- // encoder on B12 and B13
- encoder_state <<= 2;
- encoder_state |= (palReadPad(GPIOB, 12) << 0) | (palReadPad(GPIOB, 13) << 1);
- encoder_value += encoder_LUT[encoder_state & 0xF];
- if (encoder_value >= ENCODER_RESOLUTION) {
- encoder_update(0);
- }
- if (encoder_value <= -ENCODER_RESOLUTION) { // direction is arbitrary here, but this clockwise
- encoder_update(1);
- }
- encoder_value %= ENCODER_RESOLUTION;
-
// actual matrix
for (int col = 0; col < MATRIX_COLS; col++) {
matrix_row_t data = 0;
diff --git a/keyboards/planck/rev6/mcuconf.h b/keyboards/planck/rev6/mcuconf.h
index 2d27bee4e6..7c3c6e570c 100644
--- a/keyboards/planck/rev6/mcuconf.h
+++ b/keyboards/planck/rev6/mcuconf.h
@@ -225,7 +225,7 @@
* ST driver system settings.
*/
#define STM32_ST_IRQ_PRIORITY 8
-#define STM32_ST_USE_TIMER 4
+#define STM32_ST_USE_TIMER 2
/*
* UART driver system settings.
diff --git a/keyboards/planck/rev6/rules.mk b/keyboards/planck/rev6/rules.mk
index 3603e287b3..dce683a7ff 100644
--- a/keyboards/planck/rev6/rules.mk
+++ b/keyboards/planck/rev6/rules.mk
@@ -54,3 +54,4 @@ CUSTOM_MATRIX = yes # Custom matrix file
AUDIO_ENABLE = yes
RGBLIGHT_ENABLE = no
# SERIAL_LINK_ENABLE = yes
+ENCODER_ENABLE = yes