Updated layout

This commit is contained in:
Christoffer Martinsson 2023-01-03 14:33:12 +01:00
parent 7b5d613b8f
commit 2f6d562716
8 changed files with 51 additions and 23 deletions

View File

@ -45,10 +45,10 @@
* ------------------- -------------------
* Layer 2 (Fn1 + Fn1)
* --------------------------------------- ---------------------------------------
* | F11 | F12 | F13 | F14 | F15 | F16 | | § | MWD | MWU | | | CapLk |
* | LCtrl | Play| Next| F17 | F18 | F19 | | Left| Down| Up |Right| Del | |
* | F11 | F12 | F13 | F14 | F15 | F16 | | § | | | | CpLk| BSpc |
* | LCtrl | Play| Next| F17 | F18 | F19 | | Left| Down| Up |Right| Del | Enter |
* | Shift | F20 | F21 | F22 | F23 | F24 | | Home| PgD | PgU | End | Ins | Shift |
* --------------------| Alt | Fn1 | Win | | | Fn1 | Win |--------------------
* --------------------| Alt | Fn1 | Win | | BSpc| Fn1 | Win |--------------------
* ------------------- -------------------
* Features:
*
@ -73,6 +73,7 @@
#define KEY_FN1 10 + KEY_OFFSET // Function layer 1 button
#define KEY_FN2 11 + KEY_OFFSET // Function layer 2 button
#define KEY_WIN_LATCH 12 + KEY_OFFSET // Function layer 2 button
#define TAP_TIMEOUT 150 // Key tap timeout (ms)
#define NBR_OF_BUTTONS 42 // Number of buttons used (42 in this case)
@ -129,11 +130,11 @@ Button buttons[NBR_OF_BUTTONS] =
{5, KEY_R, KEY_F4, KEY_F15, IDLE, NO_KEY, false},
{6, KEY_T, KEY_F5, KEY_F16, IDLE, NO_KEY, false},
{7, KEY_Y, KEY_F6, '§', IDLE, NO_KEY, false},
{8, KEY_U, KEY_F7, NO_KEY, IDLE, NO_KEY, false},
{9, KEY_I, KEY_F8, NO_KEY, IDLE, NO_KEY, false},
{8, KEY_U, KEY_F7, KEY_WIN_LATCH, IDLE, NO_KEY, false},
{9, KEY_I, KEY_F8, KEY_LEFT_GUI, IDLE, NO_KEY, false},
{10, KEY_O, KEY_F9, NO_KEY, IDLE, NO_KEY, false},
{11, KEY_P, KEY_F10, NO_KEY, IDLE, NO_KEY, false},
{12, 'å', KEY_BACKSPACE, KEY_CAPS_LOCK, IDLE, NO_KEY, false},
{11, KEY_P, KEY_F10, KEY_CAPS_LOCK, IDLE, NO_KEY, false},
{12, 'å', KEY_BACKSPACE, KEY_BACKSPACE, IDLE, NO_KEY, false},
{13, KEY_LEFT_CTRL, KEY_LEFT_CTRL, KEY_LEFT_CTRL, IDLE, NO_KEY, false},
{14, KEY_A, KEY_1, KEY_MEDIA_PLAY_PAUSE, IDLE, NO_KEY, false},
{15, KEY_S, KEY_2, KEY_MEDIA_NEXT_TRACK, IDLE, NO_KEY, false},
@ -145,7 +146,7 @@ Button buttons[NBR_OF_BUTTONS] =
{21, KEY_K, KEY_8, KEY_UP_ARROW, IDLE, NO_KEY, false},
{22, KEY_L, KEY_9, KEY_RIGHT_ARROW, IDLE, NO_KEY, false},
{23, 'ö', KEY_0, KEY_DELETE, IDLE, NO_KEY, false},
{24, 'ä', KEY_ENTER, NO_KEY, IDLE, NO_KEY, false},
{24, 'ä', KEY_ENTER, KEY_ENTER, IDLE, NO_KEY, false},
{25, KEY_LEFT_SHIFT, KEY_LEFT_SHIFT, KEY_LEFT_SHIFT, IDLE, NO_KEY, false},
{26, KEY_Z, KEY_6, KEY_F20, IDLE, NO_KEY, false},
{27, KEY_X, KEY_7, KEY_F21, IDLE, NO_KEY, false},
@ -161,9 +162,9 @@ Button buttons[NBR_OF_BUTTONS] =
{37, KEY_LEFT_ALT, KEY_LEFT_ALT, KEY_LEFT_ALT, IDLE, NO_KEY, false},
{38, KEY_FN1, KEY_FN1, KEY_FN1, IDLE, NO_KEY, false},
{39, KEY_SPACE, KEY_SPACE, KEY_LEFT_GUI, IDLE, NO_KEY, false},
{40, KEY_SPACE, KEY_BACKSPACE, NO_KEY, IDLE, NO_KEY, false},
{40, KEY_SPACE, KEY_BACKSPACE, KEY_BACKSPACE, IDLE, NO_KEY, false},
{41, KEY_FN1, KEY_FN1, KEY_FN1, IDLE, NO_KEY, false},
{42, KEY_LEFT_GUI, KEY_RIGHT_ALT, KEY_LEFT_GUI, IDLE, NO_KEY, false}};
{42, KEY_FN1, KEY_RIGHT_ALT, KEY_RIGHT_ALT, IDLE, NO_KEY, false}};
// clang-format on
/* End of keymap config ----------------------------------------------------------------------------------------------------------------------------- */
@ -177,6 +178,7 @@ unsigned long button_timestamp = 0;
unsigned long indicator_timestamp = 0;
bool key_pressed = false;
bool win_latched = false;
/**
Perform key action.
@ -193,16 +195,38 @@ bool set_key(uint16_t keycode, uint8_t kstate)
return false;
}
else if (keycode == KEY_WIN_LATCH)
{
win_latched = true;
}
/* Normal keyboard keys (HID keyboard) */
else
{
if (kstate == RELEASED)
{
Keyboard.release(keycode);
if (win_latched == true)
{
Keyboard.release(keycode);
Keyboard.release(KEY_LEFT_GUI);
win_latched = false;
}
else
{
Keyboard.release(keycode);
}
}
else if (kstate == PRESSED)
{
Keyboard.press(keycode);
if (win_latched == true)
{
Keyboard.press(KEY_LEFT_GUI);
Keyboard.press(keycode);
}
else
{
Keyboard.press(keycode);
}
}
}
@ -338,6 +362,10 @@ void scan_buttons()
/* 2 = blinking (CapsLock) */
status_led_mode = 2;
}
else if (win_latched)
{
status_led_mode = 1;
}
else
{
/* 0 = off (normal) */

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:57090989789a367f06352bca4264064db0fe48665ff3388f90a2bc3e7f7a0b90
size 785582

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:194c5f10f1d79972590cccf2d6443ca1d3ec68c6f83f2b0af23200b783fcd4b8
size 1247338

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:3130b72513d2c843b8de480d87db5b1dd324ff38748b5f191e3d0d357b88b675
size 1248636

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:dbd09a94e4a4f25286d8e342d0a7b0b656e5b3b7f41b8f979bd582804405de87
size 528498

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:dbd09a94e4a4f25286d8e342d0a7b0b656e5b3b7f41b8f979bd582804405de87
size 528498

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:dbd09a94e4a4f25286d8e342d0a7b0b656e5b3b7f41b8f979bd582804405de87
size 528498

View File

@ -1,6 +1,6 @@
{
"board": {
"active_layer": 0,
"active_layer": 31,
"active_layer_preset": "",
"auto_track_width": true,
"hidden_nets": [],
@ -64,7 +64,7 @@
35,
36
],
"visible_layers": "fffffff_fffffffe",
"visible_layers": "fffffff_ffffffff",
"zone_display_mode": 0
},
"meta": {