Browse Source

firmware updates

master
squeaky otter 2 months ago
parent
commit
1d256d62f1
Signed by: dashie GPG Key ID: C2D57B325840B755
  1. 8
      README.md
  2. 12
      firmware/dashie_keys/config.h
  3. 41
      firmware/dashie_keys/keymaps/default/keymap.c
  4. 28
      firmware/dashie_keys/rules.mk

8
README.md

@ -282,13 +282,13 @@ There a function key right under ctrl, bottom left of keyboard
I have a "save" icon on my left CTRL key, doing func+ctrl will trigger a CTRL+s
The keyboard can emulate a mouse movements and btns:
func+arrow keys, move mouse, func+home=left click, end = right one
The keyboard can emulate mouse movements and btns:
- func+arrow keys: move mouse
- func+home: left click
- func+end: right click
There is some multimedia keys too, check keyboard layout
There is a reset key on top-right of keyboard, can be used for programming
## Made With
* [KiCAD EDA](http://kicad-pcb.org/)

12
firmware/dashie_keys/config.h

@ -155,6 +155,18 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
// # define RGBLIGHT_EFFECT_BREATHE_MAX 255 // 0 to 255
#endif
#if UNICODE_OS == mac
#define UNICODE_SELECTED_MODES UC_MAC
#elif UNICODE_OS == lnx
#define UNICODE_SELECTED_MODES UC_LNX
#elif UNICODE_OS == win
#define UNICODE_SELECTED_MODES UC_WIN
#elif UNICODE_OS == winc
#define UNICODE_SELECTED_MODES UC_WINC
#else
#error Unsupported unicode OS
#endif
/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
#define DEBOUNCE 5

41
firmware/dashie_keys/keymaps/default/keymap.c

@ -47,26 +47,26 @@ enum layer_names { _BASE, _FN };
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Base */
[_BASE] = LAYOUT( /* Base */
KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_DEL, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_BSPC, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL,
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC,
KC_LSFT, KC_A, KC_S, KC_D, KC_F, KC_G, KC_ENTER, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_RSFT,
KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_BSLS,
KC_LCTL, KC_VOLU, KC_MUTE, KC_SPC, KC_HOME, KC_UP, KC_END, KC_PGUP,
MO(1), KC_VOLD, KC_LGUI, KC_LALT, KC_RALT, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN,
KC_MPRV, KC_MPLY, KC_MNXT, KC_PSCR, X(HAMMER_AND_SICKLE), X(PAWS), X(SNEK), KC_NO, RESET,
RGB_VAI, RGB_MODE_FORWARD, RGB_HUI, RGB_SAI, _______, _______
KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_DEL, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_BSPC, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL,
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC,
KC_LSFT, KC_A, KC_S, KC_D, KC_F, KC_G, KC_ENTER, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_RSFT,
KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_BSLS,
KC_LCTL, KC_VOLU, KC_MUTE, KC_SPC, KC_HOME, KC_UP, KC_END, KC_PGUP,
MO(1), KC_VOLD, KC_LGUI, KC_LALT, KC_RALT, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN,
KC_MPRV, KC_MPLY, KC_MNXT, KC_PSCR, X(HAMMER_AND_SICKLE), X(PAWS), X(SNEK), KC_NO, _______, /* top row */
RGB_VAI, RGB_MODE_FORWARD, RGB_HUI, RGB_SAI, _______, _______ /* menu keys */
),
[_FN] = LAYOUT( /* fn modifier */
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSLS, KC_PAST, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, KC_P7, KC_P8, KC_P9, KC_BSPC, _______,
_______, _______, _______, _______, _______, _______, _______, _______, KC_P4, KC_P5, KC_P6, KC_PMNS, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, KC_P1, KC_P2, KC_P3, KC_PPLS, _______,
_______, _______, _______, _______, _______, _______, _______, KC_P0, _______, KC_PDOT, KC_PENT,
C(KC_S), _______, _______, _______, KC_MS_BTN1, KC_MS_UP, KC_MS_BTN2, _______,
_______, _______, _______, _______, _______, KC_MS_LEFT, KC_MS_DOWN, KC_MS_RIGHT, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______,
RGB_TOG, RGB_MODE_SWIRL, _______, _______, _______, _______
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSLS, KC_PAST, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, KC_P7, KC_P8, KC_P9, KC_BSPC, _______,
_______, _______, _______, _______, _______, _______, _______, _______, KC_P4, KC_P5, KC_P6, KC_PMNS, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, KC_P1, KC_P2, KC_P3, KC_PPLS, _______,
_______, _______, _______, _______, _______, _______, _______, KC_P0, _______, KC_PDOT, KC_PENT,
C(KC_S), _______, _______, _______, KC_MS_BTN1, KC_MS_UP, KC_MS_BTN2, _______,
_______, _______, _______, _______, _______, KC_MS_LEFT, KC_MS_DOWN, KC_MS_RIGHT, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, /* top row */
RGB_TOG, RGB_MODE_SWIRL, _______, _______, _______, _______ /* menu keys */
)
};
// clang-format on
@ -82,7 +82,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_BSLS,
KC_LCTL, KC_VOLU, KC_MUTE, KC_SPC, KC_HOME, KC_UP, KC_END, KC_PGUP,
MO(1), KC_VOLD, KC_LGUI, KC_LALT, KC_RALT, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN,
KC_MPRV, KC_MPLY, KC_MNXT, KC_PSCR, X(HAMMER_AND_SICKLE), X(PAWS), X(SNEK), KC_NO, RESET ),
KC_MPRV, KC_MPLY, KC_MNXT, KC_PSCR, X(HAMMER_AND_SICKLE), X(PAWS), X(SNEK), KC_NO, _______ /* top row */
),
[_FN] = LAYOUT( /* fn modifier */
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSLS, KC_PAST, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, KC_P7, KC_P8, KC_P9, KC_BSPC, _______,
@ -91,7 +92,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
_______, _______, _______, _______, _______, _______, _______, KC_P0, _______, KC_PDOT, KC_PENT,
C(KC_S), _______, _______, _______, KC_MS_BTN1, KC_MS_UP, KC_MS_BTN2, _______,
_______, _______, _______, _______, _______, KC_MS_LEFT, KC_MS_DOWN, KC_MS_RIGHT, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______
_______, _______, _______, _______, _______, _______, _______, _______, _______ /* top row */
)
};
// clang-format on

28
firmware/dashie_keys/rules.mk

@ -47,11 +47,27 @@ F_USB = $(F_CPU)
# Build Options
# change yes to no to disable
#
BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration
# Choose the revision to build firmware for, v2 or v3
KEYBOARD_REV = v3
# v3 has led builtin, v2 only has a pin for the data line, no footprints
RGBLIGHT_ENABLE = yes
# v3 does uses the display, v2 has header but no use
OLED_DRIVER_ENABLE = yes
# By default in all revs, we have mouse emulation builtin
MOUSEKEY_ENABLE = yes # Mouse keys
EXTRAKEY_ENABLE = yes # Audio control and System control
# Unicode entries can only work on one keyboard type
UNICODE_OS = winc # choices: mac, lnx, win, winc
# winc is recommended over win, but you need https://github.com/samhocevar/wincompose
UNICODEMAP_ENABLE = yes # Unicode too
# Other default options to not touch
BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration
EXTRAKEY_ENABLE = yes # We need that for extra audio/volume/etc. keys
CONSOLE_ENABLE = yes # Console for debug
COMMAND_ENABLE = yes # Commands for debug and configuration
# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
@ -61,7 +77,3 @@ NKRO_ENABLE = no # USB Nkey Rollover
BLUETOOTH_ENABLE = no # Enable Bluetooth
AUDIO_ENABLE = no # Audio output
UNICODE_ENABLE = no # Unicode
UNICODEMAP_ENABLE = yes # Unicode too
OLED_DRIVER_ENABLE = yes # Do you use the OLED Display
RGBLIGHT_ENABLE = yes # Do you have leds builtin, rev2 has no leds but you can hard-wire some manually
KEYBOARD_REV = v3 # v2 or v3
Loading…
Cancel
Save