summaryrefslogtreecommitdiff
path: root/keyboards/dumbpad
diff options
context:
space:
mode:
Diffstat (limited to 'keyboards/dumbpad')
-rw-r--r--keyboards/dumbpad/v1x_oled/v1x_oled.c32
-rw-r--r--keyboards/dumbpad/v3x/config.h42
-rw-r--r--keyboards/dumbpad/v3x/info.json32
3 files changed, 50 insertions, 56 deletions
diff --git a/keyboards/dumbpad/v1x_oled/v1x_oled.c b/keyboards/dumbpad/v1x_oled/v1x_oled.c
index ef91d4d416..2abf45b184 100644
--- a/keyboards/dumbpad/v1x_oled/v1x_oled.c
+++ b/keyboards/dumbpad/v1x_oled/v1x_oled.c
@@ -19,7 +19,10 @@
char wpm_str[10];
#ifdef ENCODER_ENABLE
-bool encoder_update_user(uint8_t index, bool clockwise) {
+bool encoder_update_kb(uint8_t index, bool clockwise) {
+ if (!encoder_update_user(index, clockwise)) {
+ return false;
+ }
// Right encoder
if (index == 0) {
if (clockwise) {
@@ -42,16 +45,16 @@ bool encoder_update_user(uint8_t index, bool clockwise) {
#ifdef OLED_ENABLE
// WPM-responsive animation stuff here
# define IDLE_FRAMES 5
-# define IDLE_SPEED 20 // below this wpm value your animation will idle
+# define IDLE_SPEED 20 // below this wpm value your animation will idle
// #define PREP_FRAMES 1 // uncomment if >1
# define TAP_FRAMES 2
-# define TAP_SPEED 40 // above this wpm value typing animation to trigger
+# define TAP_SPEED 40 // above this wpm value typing animation to trigger
-# define ANIM_FRAME_DURATION 200 // how long each frame lasts in ms
+# define ANIM_FRAME_DURATION 200 // how long each frame lasts in ms
// #define SLEEP_TIMER 60000 // should sleep after this period of 0 wpm, needs fixing
-# define ANIM_SIZE 636 // number of bytes in array, minimize for adequate firmware size, max is 1024
+# define ANIM_SIZE 636 // number of bytes in array, minimize for adequate firmware size, max is 1024
uint32_t anim_timer = 0;
uint32_t anim_sleep = 0;
@@ -111,7 +114,7 @@ static void render_anim(void) {
}
if (get_current_wpm() > IDLE_SPEED && get_current_wpm() < TAP_SPEED) {
// oled_write_raw_P(prep[abs((PREP_FRAMES-1)-current_prep_frame)], ANIM_SIZE); // uncomment if IDLE_FRAMES >1
- oled_write_raw_P(prep[0], ANIM_SIZE); // remove if IDLE_FRAMES >1
+ oled_write_raw_P(prep[0], ANIM_SIZE); // remove if IDLE_FRAMES >1
}
if (get_current_wpm() >= TAP_SPEED) {
current_tap_frame = (current_tap_frame + 1) % TAP_FRAMES;
@@ -119,7 +122,7 @@ static void render_anim(void) {
}
}
if (get_current_wpm() != 000) {
- oled_on(); // not essential but turns on animation OLED with any alpha keypress
+ oled_on(); // not essential but turns on animation OLED with any alpha keypress
if (timer_elapsed32(anim_timer) > ANIM_FRAME_DURATION) {
anim_timer = timer_read32();
animation_phase();
@@ -138,18 +141,21 @@ static void render_anim(void) {
}
// Used to draw on to the oled screen
-bool oled_task_user(void) {
- render_anim(); // renders pixelart
+bool oled_task_kb(void) {
+ if (!oled_task_user()) {
+ return false;
+ }
+ render_anim(); // renders pixelart
- oled_set_cursor(0, 0); // sets cursor to (row, column) using charactar spacing (5 rows on 128x32 screen, anything more will overflow back to the top)
+ oled_set_cursor(0, 0); // sets cursor to (row, column) using charactar spacing (5 rows on 128x32 screen, anything more will overflow back to the top)
oled_write_P(PSTR("WPM: "), false);
oled_write(get_u8_str(get_current_wpm(), '0'), false);
- oled_write(wpm_str, false); // writes wpm on top left corner of string
+ oled_write(wpm_str, false); // writes wpm on top left corner of string
- led_t led_state = host_keyboard_led_state(); // caps lock stuff, prints CAPS on new line if caps led is on
+ led_t led_state = host_keyboard_led_state(); // caps lock stuff, prints CAPS on new line if caps led is on
oled_set_cursor(0, 1);
oled_write_P(led_state.caps_lock ? PSTR("CAPS") : PSTR(" "), false);
- return false;
+ return true;
}
#endif
diff --git a/keyboards/dumbpad/v3x/config.h b/keyboards/dumbpad/v3x/config.h
index 7667bb39d0..21776afe96 100644
--- a/keyboards/dumbpad/v3x/config.h
+++ b/keyboards/dumbpad/v3x/config.h
@@ -20,45 +20,3 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define LED_00 B1
#define LED_01 B3
#define LED_02 B6
-
-#define RGB_MATRIX_LED_COUNT 16
-
-// Cleanup RGB
-#ifdef RGB_MATRIX_ENABLE
-
-#define RGB_DISABLE_WHEN_USB_SUSPENDED
-
-#define RGB_MATRIX_FRAMEBUFFER_EFFECTS // Heatmap, Rain
-#define RGB_MATRIX_KEYPRESSES
-
-#define ENABLE_RGB_MATRIX_ALPHAS_MODS
-#define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN
-#define ENABLE_RGB_MATRIX_BREATHING
-#define ENABLE_RGB_MATRIX_BAND_SAT
-#define ENABLE_RGB_MATRIX_BAND_VAL
-#define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL
-#define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT
-#define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL
-#define ENABLE_RGB_MATRIX_RAINDROPS
-#define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS
-#define ENABLE_RGB_MATRIX_PIXEL_RAIN
-#define ENABLE_RGB_MATRIX_PIXEL_FLOW
-#define ENABLE_RGB_MATRIX_PIXEL_FRACTAL
-// enabled only if RGB_MATRIX_FRAMEBUFFER_EFFECTS is defined
-#define ENABLE_RGB_MATRIX_TYPING_HEATMAP
-#define ENABLE_RGB_MATRIX_DIGITAL_RAIN
-// enabled only of RGB_MATRIX_KEYPRESSES or RGB_MATRIX_KEYRELEASES is defined
-#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE
-#define ENABLE_RGB_MATRIX_SOLID_REACTIVE
-#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE
-#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE
-#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS
-#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS
-#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS
-#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS
-#define ENABLE_RGB_MATRIX_SPLASH
-#define ENABLE_RGB_MATRIX_MULTISPLASH
-#define ENABLE_RGB_MATRIX_SOLID_SPLASH
-#define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
-
-#endif
diff --git a/keyboards/dumbpad/v3x/info.json b/keyboards/dumbpad/v3x/info.json
index 24c16ac0af..4dc17272a9 100644
--- a/keyboards/dumbpad/v3x/info.json
+++ b/keyboards/dumbpad/v3x/info.json
@@ -6,8 +6,38 @@
"device_version": "0.1.0"
},
"rgb_matrix": {
+ "animations": {
+ "alphas_mods": true,
+ "gradient_up_down": true,
+ "breathing": true,
+ "band_sat": true,
+ "band_val": true,
+ "band_spiral_val": true,
+ "cycle_left_right": true,
+ "cycle_pinwheel": true,
+ "raindrops": true,
+ "jellybean_raindrops": true,
+ "pixel_rain": true,
+ "pixel_flow": true,
+ "pixel_fractal": true,
+ "typing_heatmap": true,
+ "digital_rain": true,
+ "solid_reactive_simple": true,
+ "solid_reactive": true,
+ "solid_reactive_wide": true,
+ "solid_reactive_multiwide": true,
+ "solid_reactive_cross": true,
+ "solid_reactive_multicross": true,
+ "solid_reactive_nexus": true,
+ "solid_reactive_multinexus": true,
+ "splash": true,
+ "multisplash": true,
+ "solid_splash": true,
+ "solid_multisplash": true
+ },
"driver": "ws2812",
- "timeout": 300000
+ "timeout": 300000,
+ "sleep": true
},
"matrix_pins": {
"cols": ["C6", "D7", "E6", "B4", "B5"],