Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

update pvinis keymap #8746

Merged
merged 3 commits into from
Apr 13, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
411 changes: 211 additions & 200 deletions keyboards/ergodox_ez/keymaps/pvinis/keymap.c

Large diffs are not rendered by default.

36 changes: 24 additions & 12 deletions keyboards/keebio/iris/keymaps/pvinis/config.h
Original file line number Diff line number Diff line change
@@ -1,24 +1,36 @@
#pragma once


#ifdef PRODUCT
#undef PRODUCT
#define PRODUCT Iris Keyboard - pvinis
# undef PRODUCT
# define PRODUCT Iris Keyboard - pvinis
#endif


// Use I2C or Serial, not both
// Use I2C or Serial, not both.
#define USE_SERIAL
// #define USE_I2C


// Select hand configuration
#define MASTER_LEFT
// #define MASTER_RIGHT
// Select hand configuration.
// #define MASTER_LEFT
#define MASTER_RIGHT
// #define EE_HANDS


// choose pin to use for audio. c6 is the one iris uses.
// Choose pin to use for audio. C6 is the one iris uses.
#ifdef AUDIO_ENABLE
#define C6_AUDIO
# define C6_AUDIO
# define STARTUP_SONG SONG(NO_SOUND) // No startup song.
#endif

#ifdef RGBLIGHT_ENABLE
# undef RGBLED_NUM
# define RGBLED_NUM 16
#endif

#ifdef ENCODER_ENABLE
# define ENCODERS_PAD_A \
{ F5 } // I connected the encoder to F4 and F5.
# define ENCODERS_PAD_B \
{ F4 }
// #define ENCODERS_PAD_A_RIGHT { B5 }
// #define ENCODERS_PAD_B_RIGHT { C6 }
# define ENCODER_RESOLUTION 2
#endif
267 changes: 172 additions & 95 deletions keyboards/keebio/iris/keymaps/pvinis/keymap.c

Large diffs are not rendered by default.

11 changes: 9 additions & 2 deletions keyboards/keebio/iris/keymaps/pvinis/rules.mk
Original file line number Diff line number Diff line change
@@ -1,2 +1,9 @@
AUDIO_ENABLE = no # off for now
RGBLIGHT_ENABLE = no # off for now
TAP_DANCE_ENABLE = yes
AUDIO_ENABLE = no # piezo speaker sounds
RGBLIGHT_ENABLE = yes # rgb leds underlight
ENCODER_ENABLE = yes # rotary knob

# Some extra stuff to make firmware smaller.
LINK_TIME_OPTIMIZATION_ENABLE = yes
CONSOLE_ENABLE = no
COMMAND_ENABLE = no
9 changes: 4 additions & 5 deletions users/pvinis/config.h
Original file line number Diff line number Diff line change
@@ -1,10 +1,9 @@
#pragma once

#ifdef AUDIO_ENABLE
// #define STARTUP_SONG SONG(SONIC_RING)
// #define DAC_SAMPLE_MAX 65535U // maybe this works for volume?
#endif

// allow rolling when keys have hold functionality
#define IGNORE_MOD_TAP_INTERRUPT
// #define TAPPING_TERM 150

#if defined(MOUSE_KEYS)
# define MOUSEKEY_WHEEL_TIME_TO_MAX 1
#endif
127 changes: 68 additions & 59 deletions users/pvinis/pvinis.c
Original file line number Diff line number Diff line change
Expand Up @@ -2,88 +2,97 @@
#include "version.h"

#ifdef AUDIO_ENABLE
#include "audio.h"
#endif // AUDIO_ENABLE


#ifdef AUDIO_ENABLE
// float tone_katamari_rolling_star[][2] = SONG(KATAMARI_ROLLING_STAR);
#endif // AUDIO_ENABLE
# include "audio.h"

float song_sonic_ring[][2] = SONG(SONIC_RING);
float song_coin_sound[][2] = SONG(COIN_SOUND);
float song_test[][2] = SONG(QWERTY_SOUND);
#endif

// SYMBOL + SYSCTL = KBCTL
uint32_t layer_state_set_user(uint32_t state) {
uint32_t intermediate_state = update_tri_layer_state(state, LR_SYMBOL, LR_SYSCTL, LR_KBCTL);
intermediate_state = layer_state_set_user_local(intermediate_state);
return intermediate_state;
uint32_t intermediate_state = update_tri_layer_state(state, LR_SYMBOL, LR_SYSCTL, LR_KBCTL);
intermediate_state = layer_state_set_user_keymap(intermediate_state);
return intermediate_state;
}


// functions for the individual keymaps to implement if they need something extra
__attribute__ ((weak))
bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
return true;
}
__attribute__((weak)) bool process_record_keymap(uint16_t keycode, keyrecord_t *record) { return true; }


// handle my own keycodes
// Handle my own keycodes.
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {

case PV_VRSN:
if (record->event.pressed) {
SEND_STRING(QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION);
}
return false;

case PV_MAKE:
if (!record->event.pressed) {
SEND_STRING("make " QMK_KEYBOARD ":" QMK_KEYMAP
switch (keycode) {
case PV_VRSN:
if (record->event.pressed) {
SEND_STRING(QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION);
}
return false;

case PV_MAKE:
// make ergodox_ez:pvinis:teensy
if (!record->event.pressed) {
SEND_STRING("make " QMK_KEYBOARD ":" QMK_KEYMAP
#if (defined(BOOTLOADER_DFU) || defined(BOOTLOADER_LUFA_DFU) || defined(BOOTLOADER_QMK_DFU))
":dfu"
":dfu"
#elif defined(BOOTLOADER_HALFKAY)
":teensy"
":teensy"
#elif defined(BOOTLOADER_CATERINA)
":avrdude"
":avrdude"
#endif
SS_TAP(X_ENTER)
);
}
return false;
SS_TAP(X_ENTER));
}
return false;

case PV_FLSH:
reset_keyboard();
return false;
case PV_FLSH:
reset_keyboard();
return false;

case PV_KTMR:
if (record->event.pressed) {
case PV_SSNC:
if (record->event.pressed) {
#ifdef AUDIO_ENABLE
// PLAY_SONG(tone_katamari_rolling_star);
PLAY_SONG(song_sonic_ring);
#endif
}
return false;
}
return process_record_keymap(keycode, record);
}
}
return false;

case PV_SCIN:
if (record->event.pressed) {
#ifdef AUDIO_ENABLE
PLAY_SONG(song_coin_sound);
#endif
}
return false;

case PV_TEST:
if (record->event.pressed) {
#ifdef AUDIO_ENABLE
PLAY_SONG(song_test);
#endif
}
return false;
}
return process_record_keymap(keycode, record);
}

#ifdef TAP_DANCE_ENABLE
qk_tap_dance_action_t tap_dance_actions[] = {
};
#endif // TAP_DANCE_ENABLE
qk_tap_dance_action_t tap_dance_actions[] = {};
#endif

void keyboard_post_init_rgb_light(void) {
rgblight_sethsv(HSV_GOLD);
rgblight_mode(RGBLIGHT_MODE_BREATHING);
// rgblight_mode(RGBLIGHT_MODE_KNIGHT+1);
}

// init stuff
// Init stuff.
void keyboard_post_init_user(void) {
keyboard_post_init_user_local();
#if defined(RGBLIGHT_ENABLE)
keyboard_post_init_rgb_light();
#endif
keyboard_post_init_user_keymap();
}

// Default functions.
__attribute__((weak)) void keyboard_post_init_user_keymap(void) {}

// default functions
__attribute__ ((weak))
void keyboard_post_init_user_local(void) {}

__attribute__ ((weak))
uint32_t layer_state_set_user_local(uint32_t state) {
return state;
}
__attribute__((weak)) uint32_t layer_state_set_user_keymap(uint32_t state) { return state; }
Loading