-
Notifications
You must be signed in to change notification settings - Fork 2.6k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Port vial to Idobao ID75 ortholinear keyboard (#792)
* Port VIAL to Idobao ID75 v1 (undreglow only model) * Update readme.md Added details about v2 board and keymap picture. * Update readme.md Switched to a better picture of the keymap. --------- Co-authored-by: manu <manu@major-tom>
- Loading branch information
Showing
5 changed files
with
245 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,35 @@ | ||
#pragma once | ||
|
||
#define VIAL_KEYBOARD_UID {0xDC, 0x0B, 0x71, 0xF9, 0x24, 0xBD, 0x07, 0xB4} | ||
#define VIAL_UNLOCK_COMBO_ROWS {0, 1} | ||
#define VIAL_UNLOCK_COMBO_COLS {0, 1} | ||
|
||
//#define DYNAMIC_KEYMAP_LAYER_COUNT 4 | ||
//#define DYNAMIC_KEYMAP_MACRO_COUNT 8 | ||
//#define VIAL_COMBO_ENTRIES 8 // number of combos used, each entry take 10 byte in EEPROM | ||
//#define VIAL_TAP_DANCE_ENTRIES 8 // number of tap dances used, each entry take 10 byte in EEPROM | ||
//#define VIAL_KEY_OVERRIDE_ENTRIES 8 // number of key override used, each entry take 10 byte in EEPROM | ||
//#define RGB_MATRIX_FRAMEBUFFER_EFFECTS | ||
//#define RGB_MATRIX_KEYPRESSES | ||
|
||
#undef LOCKING_SUPPORT_ENABLE | ||
#undef LOCKING_RESYNC_ENABLE | ||
|
||
#define NO_ACTION_ONESHOT | ||
#define NO_ACTION_TAPPING | ||
|
||
#define NO_MUSIC_MODE | ||
|
||
#define LAYER_STATE_8BIT | ||
|
||
#undef RGBLIGHT_EFFECT_BREATHING | ||
#undef RGBLIGHT_EFFECT_SNAKE | ||
#undef RGBLIGHT_EFFECT_KNIGHT | ||
#undef RGBLIGHT_EFFECT_CHRISTMAS | ||
#undef RGBLIGHT_EFFECT_STATIC_GRADIENT | ||
#undef RGBLIGHT_EFFECT_RGB_TEST | ||
#undef RGBLIGHT_EFFECT_ALTERNATING | ||
#undef RGBLIGHT_EFFECT_TWINKLE | ||
|
||
//#define RGB_MATRIX_LED_COUNT 16 | ||
//#define DRIVER_LED_TOTAL 48 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,52 @@ | ||
/* Copyright 2020 IFo Hancroft | ||
* | ||
* This program is free software: you can redistribute it and/or modify | ||
* it under the terms of the GNU General Public License as published by | ||
* the Free Software Foundation, either version 2 of the License, or | ||
* (at your option) any later version. | ||
* | ||
* This program is distributed in the hope that it will be useful, | ||
* but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
* GNU General Public License for more details. | ||
* | ||
* You should have received a copy of the GNU General Public License | ||
* along with this program. If not, see <http://www.gnu.org/licenses/>. | ||
*/ | ||
#include QMK_KEYBOARD_H | ||
|
||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | ||
|
||
[0] = LAYOUT_ortho_5x15( | ||
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_DEL, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_PSCR, | ||
KC_GRV, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_BSPC, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_CAPS, | ||
KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_ENT, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_BSLS, KC_PGUP, | ||
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_ENT, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_PGDN, | ||
KC_LCTL, LCA(KC_A), KC_LGUI, KC_LALT, MO(1), KC_SPC, KC_SPC, KC_SPC, TG(1), KC_RALT, KC_RCTL, LGUI(KC_L), KC_LEFT, KC_DOWN, KC_RGHT | ||
), | ||
|
||
[1] = LAYOUT_ortho_5x15( | ||
QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_NO, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PWR, | ||
EE_CLR, KC_BRIU, RGB_SAI, RGB_VAI, RGB_HUI, RGB_SPI, RGB_MOD, KC_WH_U, KC_BTN1, KC_MS_U, KC_BTN2, KC_WH_U, KC_NO, KC_SLEP, KC_WAKE, | ||
DB_TOGG, KC_BRID, RGB_SAD, RGB_VAD, RGB_HUD, RGB_SPD, RGB_RMOD, KC_WH_D, KC_MS_L, KC_MS_D, KC_MS_R, KC_WH_D, KC_NO, KC_NO, KC_HOME, | ||
KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, RGB_TOG, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_MUTE, KC_VOLU, KC_END, | ||
KC_TRNS, KC_NO, KC_TRNS, KC_TRNS, KC_TRNS, KC_NO, KC_NO, KC_NO, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MPRV, KC_VOLD, KC_MNXT | ||
), | ||
|
||
[2] = LAYOUT_ortho_5x15( | ||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, | ||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, | ||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, | ||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, | ||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS | ||
), | ||
|
||
[3] = LAYOUT_ortho_5x15( | ||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, | ||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, | ||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, | ||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, | ||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS | ||
), | ||
|
||
}; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,43 @@ | ||
# Typematrix-like keymap with VIAL support for Idobao/ID75 v1 5x15 ortholinear keyboard | ||
|
||
I use it with bépo configured system. | ||
Compatible with VIA and VIAL. Underglow available. | ||
|
||
![image](https://github.com/user-attachments/assets/11690e69-5a90-4032-96fa-311df556acb2) | ||
|
||
Due to limitations of atmega32u4 chip, some features where disabled to get enougth space to enable VIAL based on this documentation: https://docs.qmk.fm/#/squeezing_avr. It maybe possible to reenable some of them depending on what you may need. | ||
|
||
``` | ||
* The firmware size is fine - 26640/28672 (92%, 2032 bytes free) | ||
``` | ||
## Compatibility | ||
|
||
This keymap should work with both v1 and v2 boards as they feature the same chip (Atmega32u4) but v2's RGB matrix is not enabled. | ||
I only have a v1 board and can't test anything regarding v2. | ||
|
||
## List of disabled features | ||
|
||
RGB matrix is not disabled explicitly. | ||
|
||
In rules.mk | ||
- SPACE_CADET_ENABLE = no | ||
- GRAVE_ESC_ENABLE = no | ||
- MAGIC_ENABLE = no | ||
- MUSIC_ENABLE = no | ||
|
||
In config.h | ||
- #undef LOCKING_SUPPORT_ENABLE #Disables Cherry MX lock switch | ||
- #undef LOCKING_RESYNC_ENABLE #Disables Cherry MX lock switch | ||
- #define NO_ACTION_ONESHOT #Disables oneshots | ||
- #define NO_ACTION_TAPPING #Disables tapping keys | ||
- #define NO_MUSIC_MODE #Disables RGB matrix feature, you won't miss as RGB matrix is disabled too (v1 of the keeb has no RGB matrix anyway) | ||
- #define LAYER_STATE_8BIT #Limits number of layers to 8, you may try up to 16 layers with `LAYER_STATE_16BIT` | ||
The following ones disable some underglow effects, this is a good way to limit firmware size, choose the ones you like (I kept `RGBLIGHT_EFFECT_RAINBOW_MOOD` and `RGBLIGHT_EFFECT_RAINBOW_SWIRL`) | ||
- #undef RGBLIGHT_EFFECT_BREATHING | ||
- #undef RGBLIGHT_EFFECT_SNAKE | ||
- #undef RGBLIGHT_EFFECT_KNIGHT | ||
- #undef RGBLIGHT_EFFECT_CHRISTMAS | ||
- #undef RGBLIGHT_EFFECT_STATIC_GRADIENT | ||
- #undef RGBLIGHT_EFFECT_RGB_TEST | ||
- #undef RGBLIGHT_EFFECT_ALTERNATING | ||
- #undef RGBLIGHT_EFFECT_TWINKLE |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
VIA_ENABLE = yes | ||
|
||
VIAL_ENABLE = yes | ||
LTO_ENABLE = yes # reduce firmware size | ||
#VIALRGB_ENABLE = yes | ||
#RGB_MATRIX_ENABLE= yes | ||
|
||
#RGB_MATRIX_DRIVER = is31fl3746a | ||
|
||
COMBO_ENABLE = no | ||
|
||
SPACE_CADET_ENABLE = no | ||
GRAVE_ESC_ENABLE = no | ||
MAGIC_ENABLE = no | ||
|
||
AVR_USE_MINIMAL_PRINTF = yes | ||
|
||
MUSIC_ENABLE = no | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,96 @@ | ||
{ | ||
"name": "Idobao ID75 V1", | ||
"vendorId": "0x6964", | ||
"productId": "0x0075", | ||
"lighting": "qmk_rgblight", | ||
"matrix": { "rows": 5, "cols": 15 }, | ||
"layouts": { | ||
"keymap": [ | ||
[ | ||
"0,0", | ||
"0,1", | ||
"0,2", | ||
"0,3", | ||
"0,4", | ||
"0,5", | ||
"0,6", | ||
"0,7", | ||
"0,8", | ||
"0,9", | ||
"0,10", | ||
"0,11", | ||
"0,12", | ||
"0,13", | ||
"0,14" | ||
], | ||
[ | ||
"1,0", | ||
"1,1", | ||
"1,2", | ||
"1,3", | ||
"1,4", | ||
"1,5", | ||
"1,6", | ||
"1,7", | ||
"1,8", | ||
"1,9", | ||
"1,10", | ||
"1,11", | ||
"1,12", | ||
"1,13", | ||
"1,14" | ||
], | ||
[ | ||
"2,0", | ||
"2,1", | ||
"2,2", | ||
"2,3", | ||
"2,4", | ||
"2,5", | ||
"2,6", | ||
"2,7", | ||
"2,8", | ||
"2,9", | ||
"2,10", | ||
"2,11", | ||
"2,12", | ||
"2,13", | ||
"2,14" | ||
], | ||
[ | ||
"3,0", | ||
"3,1", | ||
"3,2", | ||
"3,3", | ||
"3,4", | ||
"3,5", | ||
"3,6", | ||
"3,7", | ||
"3,8", | ||
"3,9", | ||
"3,10", | ||
"3,11", | ||
"3,12", | ||
"3,13", | ||
"3,14" | ||
], | ||
[ | ||
"4,0", | ||
"4,1", | ||
"4,2", | ||
"4,3", | ||
"4,4", | ||
"4,5", | ||
"4,6", | ||
"4,7", | ||
"4,8", | ||
"4,9", | ||
"4,10", | ||
"4,11", | ||
"4,12", | ||
"4,13", | ||
"4,14" | ||
] | ||
] | ||
} | ||
} |