mirror of
https://github.com/qmk/qmk_firmware.git
synced 2025-09-10 17:15:43 +00:00
Compare commits
11 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e040028f1b | ||
|
|
d417b0cc7d | ||
|
|
b12b26946d | ||
|
|
918fb7f8da | ||
|
|
455f15528c | ||
|
|
00c6892b3f | ||
|
|
171f7c561b | ||
|
|
5b4187ad1b | ||
|
|
d5b01bd34b | ||
|
|
1650ba00f1 | ||
|
|
f9d47ebe2f |
@@ -73,8 +73,10 @@ To change the behaviour of the backlighting, `#define` these in your `config.h`:
|
||||
|
||||
## Backlight On State
|
||||
|
||||
Most backlight circuits are driven by an N-channel MOSFET or NPN transistor. This means that to turn the transistor *on* and light the LEDs, you must drive the backlight pin, connected to the gate or base, *low*.
|
||||
Sometimes, however, a P-channel MOSFET, or a PNP transistor is used. In this case you must `#define BACKLIGHT_ON_STATE 1`, so that when the transistor is on, the pin is driven *high* instead.
|
||||
Most backlight circuits are driven by an N-channel MOSFET or NPN transistor. This means that to turn the transistor *on* and light the LEDs, you must drive the backlight pin, connected to the gate or base, *high*.
|
||||
Sometimes, however, a P-channel MOSFET, or a PNP transistor is used. In this case, when the transistor is on, the pin is driven *low* instead.
|
||||
|
||||
This functionality is configured at the keyboard level with the `BACKLIGHT_ON_STATE` define.
|
||||
|
||||
## Multiple backlight pins
|
||||
|
||||
|
||||
@@ -1,103 +1,112 @@
|
||||
{
|
||||
"keyboard_name": "QMK80",
|
||||
"url": "",
|
||||
"maintainer": "qmk",
|
||||
"width": 18.25,
|
||||
"height": 6.5,
|
||||
"layouts": {
|
||||
"LAYOUT": {
|
||||
"key_count": 88,
|
||||
"layout": [
|
||||
{"label":"K00", "x":0, "y":0},
|
||||
{"label":"K01", "x":2, "y":0},
|
||||
{"label":"K02", "x":3, "y":0},
|
||||
{"label":"K03", "x":4, "y":0},
|
||||
{"label":"K04", "x":5, "y":0},
|
||||
{"label":"K05", "x":6.5, "y":0},
|
||||
{"label":"K06", "x":7.5, "y":0},
|
||||
{"label":"K07", "x":8.5, "y":0},
|
||||
{"label":"K08", "x":9.5, "y":0},
|
||||
{"label":"K09", "x":11, "y":0},
|
||||
{"label":"K0A", "x":12, "y":0},
|
||||
{"label":"K0B", "x":13, "y":0},
|
||||
{"label":"K0C", "x":14, "y":0},
|
||||
{"label":"K60", "x":15.25, "y":0},
|
||||
{"label":"K61", "x":16.25, "y":0},
|
||||
{"label":"K62", "x":17.25, "y":0},
|
||||
{"label":"K10", "x":0, "y":1.5},
|
||||
{"label":"K11", "x":1, "y":1.5},
|
||||
{"label":"K12", "x":2, "y":1.5},
|
||||
{"label":"K13", "x":3, "y":1.5},
|
||||
{"label":"K14", "x":4, "y":1.5},
|
||||
{"label":"K15", "x":5, "y":1.5},
|
||||
{"label":"K16", "x":6, "y":1.5},
|
||||
{"label":"K17", "x":7, "y":1.5},
|
||||
{"label":"K18", "x":8, "y":1.5},
|
||||
{"label":"K19", "x":9, "y":1.5},
|
||||
{"label":"K1A", "x":10, "y":1.5},
|
||||
{"label":"K1B", "x":11, "y":1.5},
|
||||
{"label":"K1C", "x":12, "y":1.5},
|
||||
{"label":"K5A", "x":13, "y":1.5, "w":2},
|
||||
{"label":"K63", "x":15.25, "y":1.5},
|
||||
{"label":"K65", "x":16.25, "y":1.5},
|
||||
{"label":"K67", "x":17.25, "y":1.5},
|
||||
{"label":"K20", "x":0, "y":2.5, "w":1.5},
|
||||
{"label":"K21", "x":1.5, "y":2.5},
|
||||
{"label":"K22", "x":2.5, "y":2.5},
|
||||
{"label":"K23", "x":3.5, "y":2.5},
|
||||
{"label":"K24", "x":4.5, "y":2.5},
|
||||
{"label":"K25", "x":5.5, "y":2.5},
|
||||
{"label":"K26", "x":6.5, "y":2.5},
|
||||
{"label":"K27", "x":7.5, "y":2.5},
|
||||
{"label":"K28", "x":8.5, "y":2.5},
|
||||
{"label":"K29", "x":9.5, "y":2.5},
|
||||
{"label":"K2A", "x":10.5, "y":2.5},
|
||||
{"label":"K2B", "x":11.5, "y":2.5},
|
||||
{"label":"K2C", "x":12.5, "y":2.5},
|
||||
{"label":"K4C", "x":13.5, "y":2.5, "w":1.5},
|
||||
{"label":"K64", "x":15.25, "y":2.5},
|
||||
{"label":"K66", "x":16.25, "y":2.5},
|
||||
{"label":"K68", "x":17.25, "y":2.5},
|
||||
{"label":"K30", "x":0, "y":3.5, "w":1.75},
|
||||
{"label":"K31", "x":1.75, "y":3.5},
|
||||
{"label":"K32", "x":2.75, "y":3.5},
|
||||
{"label":"K33", "x":3.75, "y":3.5},
|
||||
{"label":"K34", "x":4.75, "y":3.5},
|
||||
{"label":"K35", "x":5.75, "y":3.5},
|
||||
{"label":"K36", "x":6.75, "y":3.5},
|
||||
{"label":"K37", "x":7.75, "y":3.5},
|
||||
{"label":"K38", "x":8.75, "y":3.5},
|
||||
{"label":"K39", "x":9.75, "y":3.5},
|
||||
{"label":"K3A", "x":10.75, "y":3.5},
|
||||
{"label":"K3B", "x":11.75, "y":3.5},
|
||||
{"label":"K3C", "x":12.75, "y":3.5, "w":2.25},
|
||||
{"label":"K40", "x":0, "y":4.5, "w":2.25},
|
||||
{"label":"K41", "x":2.25, "y":4.5},
|
||||
{"label":"K42", "x":3.25, "y":4.5},
|
||||
{"label":"K43", "x":4.25, "y":4.5},
|
||||
{"label":"K44", "x":5.25, "y":4.5},
|
||||
{"label":"K45", "x":6.25, "y":4.5},
|
||||
{"label":"K46", "x":7.25, "y":4.5},
|
||||
{"label":"K47", "x":8.25, "y":4.5},
|
||||
{"label":"K48", "x":9.25, "y":4.5},
|
||||
{"label":"K49", "x":10.25, "y":4.5},
|
||||
{"label":"K4A", "x":11.25, "y":4.5},
|
||||
{"label":"K4B", "x":12.25, "y":4.5, "w":1.75},
|
||||
{"label":"K69", "x":14, "y":4.5},
|
||||
{"label":"K58", "x":16.25, "y":4.5},
|
||||
{"label":"K50", "x":0, "y":5.5, "w":1.25},
|
||||
{"label":"K51", "x":1.25, "y":5.5, "w":1.25},
|
||||
{"label":"K52", "x":2.5, "y":5.5, "w":1.25},
|
||||
{"label":"K53", "x":3.75, "y":5.5, "w":6.25},
|
||||
{"label":"K54", "x":10, "y":5.5, "w":1.25},
|
||||
{"label":"K55", "x":11.25, "y":5.5, "w":1.25},
|
||||
{"label":"K56", "x":12.5, "y":5.5, "w":1.25},
|
||||
{"label":"K57", "x":13.75, "y":5.5, "w":1.25},
|
||||
{"label":"K6A", "x":15.25, "y":5.5},
|
||||
{"label":"K59", "x":16.25, "y":5.5},
|
||||
{"label":"K6B", "x":17.25, "y":5.5}
|
||||
]
|
||||
}
|
||||
"keyboard_name": "x11",
|
||||
"url": "",
|
||||
"maintainer": "qmk",
|
||||
"width": 18.25,
|
||||
"height": 6.5,
|
||||
"layouts": {
|
||||
"LAYOUT": {
|
||||
"key_count": 88,
|
||||
"layout": [
|
||||
{"label":"K00", "x":0, "y":0},
|
||||
{"label":"K01", "x":2, "y":0},
|
||||
{"label":"K02", "x":3, "y":0},
|
||||
{"label":"K03", "x":4, "y":0},
|
||||
{"label":"K04", "x":5, "y":0},
|
||||
{"label":"K05", "x":6.5, "y":0},
|
||||
{"label":"K06", "x":7.5, "y":0},
|
||||
{"label":"K07", "x":8.5, "y":0},
|
||||
{"label":"K08", "x":9.5, "y":0},
|
||||
{"label":"K09", "x":11, "y":0},
|
||||
{"label":"K0A", "x":12, "y":0},
|
||||
{"label":"K0B", "x":13, "y":0},
|
||||
{"label":"K0C", "x":14, "y":0},
|
||||
|
||||
{"label":"K62", "x":15.25, "y":0},
|
||||
{"label":"K61", "x":16.25, "y":0},
|
||||
{"label":"K60", "x":17.25, "y":0},
|
||||
|
||||
{"label":"K10", "x":0, "y":1.5},
|
||||
{"label":"K11", "x":1, "y":1.5},
|
||||
{"label":"K12", "x":2, "y":1.5},
|
||||
{"label":"K13", "x":3, "y":1.5},
|
||||
{"label":"K14", "x":4, "y":1.5},
|
||||
{"label":"K15", "x":5, "y":1.5},
|
||||
{"label":"K16", "x":6, "y":1.5},
|
||||
{"label":"K17", "x":7, "y":1.5},
|
||||
{"label":"K18", "x":8, "y":1.5},
|
||||
{"label":"K19", "x":9, "y":1.5},
|
||||
{"label":"K1A", "x":10, "y":1.5},
|
||||
{"label":"K1B", "x":11, "y":1.5},
|
||||
{"label":"K1C", "x":12, "y":1.5},
|
||||
{"label":"K5A", "x":13, "y":1.5, "w":2},
|
||||
|
||||
{"label":"K63", "x":15.25, "y":1.5},
|
||||
{"label":"K65", "x":16.25, "y":1.5},
|
||||
{"label":"K67", "x":17.25, "y":1.5},
|
||||
|
||||
{"label":"K20", "x":0, "y":2.5, "w":1.5},
|
||||
{"label":"K21", "x":1.5, "y":2.5},
|
||||
{"label":"K22", "x":2.5, "y":2.5},
|
||||
{"label":"K23", "x":3.5, "y":2.5},
|
||||
{"label":"K24", "x":4.5, "y":2.5},
|
||||
{"label":"K25", "x":5.5, "y":2.5},
|
||||
{"label":"K26", "x":6.5, "y":2.5},
|
||||
{"label":"K27", "x":7.5, "y":2.5},
|
||||
{"label":"K28", "x":8.5, "y":2.5},
|
||||
{"label":"K29", "x":9.5, "y":2.5},
|
||||
{"label":"K2A", "x":10.5, "y":2.5},
|
||||
{"label":"K2B", "x":11.5, "y":2.5},
|
||||
{"label":"K2C", "x":12.5, "y":2.5},
|
||||
{"label":"K4C", "x":13.5, "y":2.5, "w":1.5},
|
||||
|
||||
{"label":"K64", "x":15.25, "y":2.5},
|
||||
{"label":"K66", "x":16.25, "y":2.5},
|
||||
{"label":"K68", "x":17.25, "y":2.5},
|
||||
|
||||
{"label":"K30", "x":0, "y":3.5, "w":1.75},
|
||||
{"label":"K31", "x":1.75, "y":3.5},
|
||||
{"label":"K32", "x":2.75, "y":3.5},
|
||||
{"label":"K33", "x":3.75, "y":3.5},
|
||||
{"label":"K34", "x":4.75, "y":3.5},
|
||||
{"label":"K35", "x":5.75, "y":3.5},
|
||||
{"label":"K36", "x":6.75, "y":3.5},
|
||||
{"label":"K37", "x":7.75, "y":3.5},
|
||||
{"label":"K38", "x":8.75, "y":3.5},
|
||||
{"label":"K39", "x":9.75, "y":3.5},
|
||||
{"label":"K3A", "x":10.75, "y":3.5},
|
||||
{"label":"K3B", "x":11.75, "y":3.5},
|
||||
{"label":"K3C", "x":12.75, "y":3.5, "w":2.25},
|
||||
|
||||
{"label":"K40", "x":0, "y":4.5, "w":2.25},
|
||||
{"label":"K41", "x":2.25, "y":4.5},
|
||||
{"label":"K42", "x":3.25, "y":4.5},
|
||||
{"label":"K43", "x":4.25, "y":4.5},
|
||||
{"label":"K44", "x":5.25, "y":4.5},
|
||||
{"label":"K45", "x":6.25, "y":4.5},
|
||||
{"label":"K46", "x":7.25, "y":4.5},
|
||||
{"label":"K47", "x":8.25, "y":4.5},
|
||||
{"label":"K48", "x":9.25, "y":4.5},
|
||||
{"label":"K49", "x":10.25, "y":4.5},
|
||||
{"label":"K4A", "x":11.25, "y":4.5},
|
||||
{"label":"K4B", "x":12.25, "y":4.5, "w":1.75},
|
||||
{"label":"K69", "x":14, "y":4.5},
|
||||
|
||||
{"label":"K58", "x":16.25, "y":4.5},
|
||||
|
||||
{"label":"K50", "x":0, "y":5.5, "w":1.25},
|
||||
{"label":"K51", "x":1.25, "y":5.5, "w":1.25},
|
||||
{"label":"K52", "x":2.5, "y":5.5, "w":1.25},
|
||||
{"label":"K53", "x":3.75, "y":5.5, "w":6.25},
|
||||
{"label":"K54", "x":10, "y":5.5, "w":1.25},
|
||||
{"label":"K55", "x":11.25, "y":5.5, "w":1.25},
|
||||
{"label":"K56", "x":12.5, "y":5.5, "w":1.25},
|
||||
{"label":"K57", "x":13.75, "y":5.5, "w":1.25},
|
||||
|
||||
{"label":"K6A", "x":15.25, "y":5.5},
|
||||
{"label":"K59", "x":16.25, "y":5.5},
|
||||
{"label":"K6B", "x":17.25, "y":5.5}
|
||||
]
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -15,64 +15,23 @@
|
||||
*/
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
// Defines the keycodes used by our macros in process_record_user
|
||||
enum custom_keycodes {
|
||||
QMKBEST = SAFE_RANGE,
|
||||
QMKURL
|
||||
};
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
[0] = LAYOUT( \
|
||||
KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, \
|
||||
KC_PSCR, KC_SLCK, KC_PAUS, KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, \
|
||||
KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, 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_BSLS, KC_DEL, KC_END, KC_PGDN, KC_CAPS, KC_A, \
|
||||
KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_LSFT, KC_Z, \
|
||||
KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(1), KC_UP, KC_LCTL, \
|
||||
KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT \
|
||||
),
|
||||
[1] = LAYOUT( \
|
||||
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, RESET, 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, BL_TOGG, BL_DEC, BL_INC, BL_STEP, KC_TRNS, KC_TRNS, \
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MUTE, KC_MPLY, KC_MSTP, RGB_TOG, RGB_MOD, \
|
||||
RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, 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, RGB_VAI, KC_TRNS, \
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_MOD, RGB_VAD, RGB_SAD \
|
||||
),
|
||||
[0] = LAYOUT(
|
||||
KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_SLCK, KC_PAUS,
|
||||
|
||||
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_INS, KC_HOME, KC_PGUP,
|
||||
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_BSLS, KC_DEL, KC_END, KC_PGDN,
|
||||
KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
|
||||
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(1), KC_UP,
|
||||
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
|
||||
),
|
||||
[1] = LAYOUT(
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET,
|
||||
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
BL_TOGG, BL_DEC, BL_INC, BL_STEP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_MPLY, KC_MSTP,
|
||||
RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
|
||||
)
|
||||
};
|
||||
|
||||
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
||||
switch (keycode) {
|
||||
case QMKBEST:
|
||||
if (record->event.pressed) {
|
||||
// when keycode QMKBEST is pressed
|
||||
SEND_STRING("QMK is the best thing ever!");
|
||||
} else {
|
||||
// when keycode QMKBEST is released
|
||||
}
|
||||
break;
|
||||
case QMKURL:
|
||||
if (record->event.pressed) {
|
||||
// when keycode QMKURL is pressed
|
||||
SEND_STRING("https://qmk.fm/" SS_TAP(X_ENTER));
|
||||
} else {
|
||||
// when keycode QMKURL is released
|
||||
}
|
||||
break;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
void matrix_init_user(void) {
|
||||
|
||||
}
|
||||
|
||||
void matrix_scan_user(void) {
|
||||
|
||||
}
|
||||
|
||||
void led_set_user(uint8_t usb_led) {
|
||||
|
||||
}
|
||||
|
||||
@@ -16,48 +16,49 @@
|
||||
#include "x11.h"
|
||||
|
||||
void matrix_init_kb(void) {
|
||||
// put your keyboard start-up code here
|
||||
// runs once when the firmware starts up
|
||||
setPinOutput(C6);
|
||||
setPinOutput(E6);
|
||||
setPinOutput(C7);
|
||||
matrix_init_user();
|
||||
// put your keyboard start-up code here
|
||||
// runs once when the firmware starts up
|
||||
|
||||
setPinOutput(C6);
|
||||
setPinOutput(E6);
|
||||
setPinOutput(C7);
|
||||
matrix_init_user();
|
||||
}
|
||||
|
||||
void matrix_scan_kb(void) {
|
||||
// put your looping keyboard code here
|
||||
// runs every cycle (a lot)
|
||||
// put your looping keyboard code here
|
||||
// runs every cycle (a lot)
|
||||
|
||||
matrix_scan_user();
|
||||
matrix_scan_user();
|
||||
}
|
||||
|
||||
bool process_record_kb(uint16_t keycode, keyrecord_t *record) {
|
||||
// put your per-action keyboard code here
|
||||
// runs for every action, just before processing by the firmware
|
||||
// put your per-action keyboard code here
|
||||
// runs for every action, just before processing by the firmware
|
||||
|
||||
return process_record_user(keycode, record);
|
||||
return process_record_user(keycode, record);
|
||||
}
|
||||
|
||||
void led_set_kb(uint8_t usb_led) {
|
||||
// put your keyboard LED indicator (ex: Caps Lock LED) toggling code here
|
||||
// put your keyboard LED indicator (ex: Caps Lock LED) toggling code here
|
||||
|
||||
if (IS_LED_ON(usb_led, USB_LED_CAPS_LOCK)) {
|
||||
writePinLow(C6);
|
||||
} else {
|
||||
writePinHigh(C6);
|
||||
}
|
||||
if (IS_LED_ON(usb_led, USB_LED_CAPS_LOCK)) {
|
||||
writePinLow(C6);
|
||||
} else {
|
||||
writePinHigh(C6);
|
||||
}
|
||||
|
||||
if (IS_LED_ON(usb_led, USB_LED_NUM_LOCK)) {
|
||||
writePinLow(E6);
|
||||
} else {
|
||||
writePinHigh(E6);
|
||||
}
|
||||
if (IS_LED_ON(usb_led, USB_LED_NUM_LOCK)) {
|
||||
writePinLow(E6);
|
||||
} else {
|
||||
writePinHigh(E6);
|
||||
}
|
||||
|
||||
if (IS_LED_ON(usb_led, USB_LED_SCROLL_LOCK)) {
|
||||
writePinLow(C7);
|
||||
} else {
|
||||
writePinHigh(C7);
|
||||
}
|
||||
if (IS_LED_ON(usb_led, USB_LED_SCROLL_LOCK)) {
|
||||
writePinLow(C7);
|
||||
} else {
|
||||
writePinHigh(C7);
|
||||
}
|
||||
|
||||
led_set_user(usb_led);
|
||||
led_set_user(usb_led);
|
||||
}
|
||||
|
||||
@@ -26,18 +26,18 @@
|
||||
* represents the switch matrix.
|
||||
*/
|
||||
#define LAYOUT( \
|
||||
K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K60, K61, K62, \
|
||||
K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K5A, K63, K65, K67, \
|
||||
K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K4C, K64, K66, K68, \
|
||||
K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, \
|
||||
K40, K41, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, K69, K58, \
|
||||
K50, K51, K52, K53, K54, K55, K56, K57, K6A, K59, K6B \
|
||||
K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K62, K61, K60, \
|
||||
K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K5A, K63, K65, K67, \
|
||||
K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K4C, K64, K66, K68, \
|
||||
K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, \
|
||||
K40, K41, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, K69, K58, \
|
||||
K50, K51, K52, K53, K54, K55, K56, K57, K6A, K59, K6B \
|
||||
) { \
|
||||
{ K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C }, \
|
||||
{ K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C }, \
|
||||
{ K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C }, \
|
||||
{ K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C }, \
|
||||
{ K40, K41, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, K4C }, \
|
||||
{ K50, K51, K52, K53, K54, K55, K56, K57, K58, K59, K5A, KC_NO, KC_NO }, \
|
||||
{ K60, K61, K62, K63, K64, K65, K66, K67, K68, K69, K6A, K6B, KC_NO }, \
|
||||
{ K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C }, \
|
||||
{ K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C }, \
|
||||
{ K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C }, \
|
||||
{ K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C }, \
|
||||
{ K40, K41, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, K4C }, \
|
||||
{ K50, K51, K52, K53, K54, K55, K56, K57, K58, K59, K5A, KC_NO, KC_NO }, \
|
||||
{ K60, K61, K62, K63, K64, K65, K66, K67, K68, K69, K6A, K6B, KC_NO }, \
|
||||
}
|
||||
|
||||
@@ -162,7 +162,7 @@ bool process_record_kb(uint16_t keycode, keyrecord_t *record) {
|
||||
}
|
||||
#endif //DYNAMIC_KEYMAP_ENABLE
|
||||
|
||||
return true;
|
||||
return process_record_user(keycode, record);;
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -1,13 +1,366 @@
|
||||
{
|
||||
"keyboard_name": "ErgoDash rev2",
|
||||
"url": "",
|
||||
"maintainer": "qmk",
|
||||
"width": 18,
|
||||
"height": 6.25,
|
||||
"layouts": {
|
||||
"LAYOUT": {
|
||||
"key_count": 70,
|
||||
"layout": [{"label":"L00", "x":0, "y":0.375}, {"label":"L01", "x":1, "y":0.375}, {"label":"L02", "x":2, "y":0.125}, {"label":"L03", "x":3, "y":0}, {"label":"L04", "x":4, "y":0.125}, {"label":"L05", "x":5, "y":0.25}, {"label":"L06", "x":6, "y":0.75}, {"label":"R00", "x":11, "y":0.75}, {"label":"R01", "x":12, "y":0.25}, {"label":"R02", "x":13, "y":0.125}, {"label":"R03", "x":14, "y":0}, {"label":"R04", "x":15, "y":0.125}, {"label":"R05", "x":16, "y":0.375}, {"label":"R06", "x":17, "y":0.375}, {"label":"L10", "x":0, "y":1.375}, {"label":"L11", "x":1, "y":1.375}, {"label":"L12", "x":2, "y":1.125}, {"label":"L13", "x":3, "y":1}, {"label":"L14", "x":4, "y":1.125}, {"label":"L15", "x":5, "y":1.25}, {"label":"L16", "x":6, "y":1.75}, {"label":"R10", "x":11, "y":1.75}, {"label":"R11", "x":12, "y":1.25}, {"label":"R12", "x":13, "y":1.125}, {"label":"R13", "x":14, "y":1}, {"label":"R14", "x":15, "y":1.125}, {"label":"R15", "x":16, "y":1.375}, {"label":"R16", "x":17, "y":1.375}, {"label":"L20", "x":0, "y":2.375}, {"label":"L21", "x":1, "y":2.375}, {"label":"L22", "x":2, "y":2.125}, {"label":"L23", "x":3, "y":2}, {"label":"L24", "x":4, "y":2.125}, {"label":"L25", "x":5, "y":2.25}, {"label":"L26", "x":6, "y":2.75}, {"label":"R20", "x":11, "y":2.75}, {"label":"R21", "x":12, "y":2.25}, {"label":"R22", "x":13, "y":2.125}, {"label":"R23", "x":14, "y":2}, {"label":"R24", "x":15, "y":2.125}, {"label":"R25", "x":16, "y":2.375}, {"label":"R26", "x":17, "y":2.375}, {"label":"L30", "x":0, "y":3.375}, {"label":"L31", "x":1, "y":3.375}, {"label":"L32", "x":2, "y":3.125}, {"label":"L33", "x":3, "y":3}, {"label":"L34", "x":4, "y":3.125}, {"label":"L35", "x":5, "y":3.25}, {"label":"L36", "x":6.5, "y":4.25}, {"label":"R30", "x":10.5, "y":4.25}, {"label":"R31", "x":12, "y":3.25}, {"label":"R32", "x":13, "y":3.125}, {"label":"R33", "x":14, "y":3}, {"label":"R34", "x":15, "y":3.125}, {"label":"R35", "x":16, "y":3.375}, {"label":"R36", "x":17, "y":3.375}, {"label":"L40", "x":0, "y":4.375}, {"label":"L41", "x":1, "y":4.375}, {"label":"L42", "x":2, "y":4.125}, {"label":"L43", "x":3, "y":4}, {"label":"L44", "x":5.5, "y":5.25}, {"label":"L45", "x":6.5, "y":5.25}, {"label":"L46", "x":7.5, "y":4.25, "h":2}, {"label":"R40", "x":9.5, "y":4.25, "h":2}, {"label":"R41", "x":10.5, "y":5.25}, {"label":"R42", "x":11.5, "y":5.25}, {"label":"R43", "x":14, "y":4}, {"label":"R44", "x":15, "y":4.125}, {"label":"R45", "x":16, "y":4.375}, {"label":"R46", "x":17, "y":4.375}]
|
||||
"keyboard_name": "ErgoDash rev1.2",
|
||||
"url": "",
|
||||
"maintainer": "qmk",
|
||||
"width": 19,
|
||||
"height": 8.375,
|
||||
"layouts": {
|
||||
"LAYOUT_4key": {
|
||||
"layout": [
|
||||
{"y": 0.375, "x": 0.5, "label": "L00"},
|
||||
{"y": 0.375, "x": 1.5, "label": "L01"},
|
||||
{"y": 0.125, "x": 2.5, "label": "L02"},
|
||||
{"y": 0, "x": 3.5, "label": "L03"},
|
||||
{"y": 0.125, "x": 4.5, "label": "L04"},
|
||||
{"y": 0.25, "x": 5.5, "label": "L05"},
|
||||
{"y": 0.75, "x": 6.5, "label": "L06"},
|
||||
{"y": 0.75, "x": 12, "label": "R00"},
|
||||
{"y": 0.25, "x": 13, "label": "R01"},
|
||||
{"y": 0.125, "x": 14, "label": "R02"},
|
||||
{"y": 0, "x": 15, "label": "R03"},
|
||||
{"y": 0.125, "x": 16, "label": "R04"},
|
||||
{"y": 0.375, "x": 17, "label": "R05"},
|
||||
{"y": 0.375, "x": 18, "label": "R06"},
|
||||
{"y": 1.375, "x": 0.5, "label": "L10"},
|
||||
{"y": 1.375, "x": 1.5, "label": "L11"},
|
||||
{"y": 1.125, "x": 2.5, "label": "L12"},
|
||||
{"y": 1, "x": 3.5, "label": "L13"},
|
||||
{"y": 1.125, "x": 4.5, "label": "L14"},
|
||||
{"y": 1.25, "x": 5.5, "label": "L15"},
|
||||
{"y": 1.75, "x": 6.5, "label": "L16"},
|
||||
{"y": 1.75, "x": 12, "label": "R10"},
|
||||
{"y": 1.25, "x": 13, "label": "R11"},
|
||||
{"y": 1.125, "x": 14, "label": "R12"},
|
||||
{"y": 1, "x": 15, "label": "R13"},
|
||||
{"y": 1.125, "x": 16, "label": "R14"},
|
||||
{"y": 1.375, "x": 17, "label": "R15"},
|
||||
{"y": 1.375, "x": 18, "label": "R16"},
|
||||
{"y": 2.375, "x": 0.5, "label": "L20"},
|
||||
{"y": 2.375, "x": 1.5, "label": "L21"},
|
||||
{"y": 2.125, "x": 2.5, "label": "L22"},
|
||||
{"y": 2, "x": 3.5, "label": "L23"},
|
||||
{"y": 2.125, "x": 4.5, "label": "L24"},
|
||||
{"y": 2.25, "x": 5.5, "label": "L25"},
|
||||
{"y": 2.75, "x": 6.5, "label": "L26"},
|
||||
{"y": 2.75, "x": 12, "label": "R20"},
|
||||
{"y": 2.25, "x": 13, "label": "R21"},
|
||||
{"y": 2.125, "x": 14, "label": "R22"},
|
||||
{"y": 2, "x": 15, "label": "R23"},
|
||||
{"y": 2.125, "x": 16, "label": "R24"},
|
||||
{"y": 2.375, "x": 17, "label": "R25"},
|
||||
{"y": 2.375, "x": 18, "label": "R26"},
|
||||
{"y": 3.375, "x": 0.5, "label": "L30"},
|
||||
{"y": 3.375, "x": 1.5, "label": "L31"},
|
||||
{"y": 3.125, "x": 2.5, "label": "L32"},
|
||||
{"y": 3, "x": 3.5, "label": "L33"},
|
||||
{"y": 3.125, "x": 4.5, "label": "L34"},
|
||||
{"y": 3.25, "x": 5.5, "label": "L35"},
|
||||
{"y": 4, "x": 6.5, "label": "L36"},
|
||||
{"y": 4, "x": 12, "label": "R30"},
|
||||
{"y": 3.25, "x": 13, "label": "R31"},
|
||||
{"y": 3.125, "x": 14, "label": "R32"},
|
||||
{"y": 3, "x": 15, "label": "R33"},
|
||||
{"y": 3.125, "x": 16, "label": "R34"},
|
||||
{"y": 3.375, "x": 17, "label": "R35"},
|
||||
{"y": 3.375, "x": 18, "label": "R36"},
|
||||
{"y": 4.375, "x": 0.5, "label": "L40"},
|
||||
{"y": 4.375, "x": 1.5, "label": "L41"},
|
||||
{"y": 4.125, "x": 2.5, "label": "L42"},
|
||||
{"y": 4, "x": 3.5, "label": "L43"},
|
||||
{"y": 5, "x": 5.5, "label": "L44"},
|
||||
{"y": 5, "x": 6.5, "label": "L45"},
|
||||
{"h": 2, "y": 4, "x": 7.5, "label": "L46"},
|
||||
{"h": 2, "y": 4, "x": 11, "label": "R40"},
|
||||
{"y": 5, "x": 12, "label": "R41"},
|
||||
{"y": 5, "x": 13, "label": "R42"},
|
||||
{"y": 4, "x": 15, "label": "R43"},
|
||||
{"y": 4.125, "x": 16, "label": "R44"},
|
||||
{"y": 4.375, "x": 17, "label": "R45"},
|
||||
{"y": 4.375, "x": 18, "label": "R46"}]
|
||||
},
|
||||
"LAYOUT_4key_2u_inner": {
|
||||
"layout": [
|
||||
{"y": 0.375, "x": 0.5, "label": "L00"},
|
||||
{"y": 0.375, "x": 1.5, "label": "L01"},
|
||||
{"y": 0.125, "x": 2.5, "label": "L02"},
|
||||
{"y": 0, "x": 3.5, "label": "L03"},
|
||||
{"y": 0.125, "x": 4.5, "label": "L04"},
|
||||
{"y": 0.25, "x": 5.5, "label": "L05"},
|
||||
{"y": 0.75, "x": 6.5, "label": "L06"},
|
||||
{"y": 0.75, "x": 12, "label": "R00"},
|
||||
{"y": 0.25, "x": 13, "label": "R01"},
|
||||
{"y": 0.125, "x": 14, "label": "R02"},
|
||||
{"y": 0, "x": 15, "label": "R03"},
|
||||
{"y": 0.125, "x": 16, "label": "R04"},
|
||||
{"y": 0.375, "x": 17, "label": "R05"},
|
||||
{"y": 0.375, "x": 18, "label": "R06"},
|
||||
{"y": 1.375, "x": 0.5, "label": "L10"},
|
||||
{"y": 1.375, "x": 1.5, "label": "L11"},
|
||||
{"y": 1.125, "x": 2.5, "label": "L12"},
|
||||
{"y": 1, "x": 3.5, "label": "L13"},
|
||||
{"y": 1.125, "x": 4.5, "label": "L14"},
|
||||
{"y": 1.25, "x": 5.5, "label": "L15"},
|
||||
{"y": 1.75, "x": 6.5, "label": "L16"},
|
||||
{"y": 1.75, "x": 12, "label": "R10"},
|
||||
{"y": 1.25, "x": 13, "label": "R11"},
|
||||
{"y": 1.125, "x": 14, "label": "R12"},
|
||||
{"y": 1, "x": 15, "label": "R13"},
|
||||
{"y": 1.125, "x": 16, "label": "R14"},
|
||||
{"y": 1.375, "x": 17, "label": "R15"},
|
||||
{"y": 1.375, "x": 18, "label": "R16"},
|
||||
{"y": 2.375, "x": 0.5, "label": "L20"},
|
||||
{"y": 2.375, "x": 1.5, "label": "L21"},
|
||||
{"y": 2.125, "x": 2.5, "label": "L22"},
|
||||
{"y": 2, "x": 3.5, "label": "L23"},
|
||||
{"y": 2.125, "x": 4.5, "label": "L24"},
|
||||
{"y": 2.25, "x": 5.5, "label": "L25"},
|
||||
{"y": 2.75, "x": 6.5, "label": "L26"},
|
||||
{"y": 2.75, "x": 12, "label": "R20"},
|
||||
{"y": 2.25, "x": 13, "label": "R21"},
|
||||
{"y": 2.125, "x": 14, "label": "R22"},
|
||||
{"y": 2, "x": 15, "label": "R23"},
|
||||
{"y": 2.125, "x": 16, "label": "R24"},
|
||||
{"y": 2.375, "x": 17, "label": "R25"},
|
||||
{"y": 2.375, "x": 18, "label": "R26"},
|
||||
{"y": 3.375, "x": 0.5, "label": "L30"},
|
||||
{"y": 3.375, "x": 1.5, "label": "L31"},
|
||||
{"y": 3.125, "x": 2.5, "label": "L32"},
|
||||
{"y": 3, "x": 3.5, "label": "L33"},
|
||||
{"y": 3.125, "x": 4.5, "label": "L34"},
|
||||
{"y": 3.25, "x": 5.5, "label": "L35"},
|
||||
{"y": 4, "x": 7.5, "label": "L36"},
|
||||
{"y": 4, "x": 11, "label": "R30"},
|
||||
{"y": 3.25, "x": 13, "label": "R31"},
|
||||
{"y": 3.125, "x": 14, "label": "R32"},
|
||||
{"y": 3, "x": 15, "label": "R33"},
|
||||
{"y": 3.125, "x": 16, "label": "R34"},
|
||||
{"y": 3.375, "x": 17, "label": "R35"},
|
||||
{"y": 3.375, "x": 18, "label": "R36"},
|
||||
{"y": 4.375, "x": 0.5, "label": "L40"},
|
||||
{"y": 4.375, "x": 1.5, "label": "L41"},
|
||||
{"y": 4.125, "x": 2.5, "label": "L42"},
|
||||
{"y": 4, "x": 3.5, "label": "L43"},
|
||||
{"y": 5, "x": 5.5, "label": "L44"},
|
||||
{"h": 2, "y": 4, "x": 6.5, "label": "L45"},
|
||||
{"y": 5, "x": 7.5, "label": "L46"},
|
||||
{"y": 5, "x": 11, "label": "R40"},
|
||||
{"h": 2, "y": 4, "x": 12, "label": "R41"},
|
||||
{"y": 5, "x": 13, "label": "R42"},
|
||||
{"y": 4, "x": 15, "label": "R43"},
|
||||
{"y": 4.125, "x": 16, "label": "R44"},
|
||||
{"y": 4.375, "x": 17, "label": "R45"},
|
||||
{"y": 4.375, "x": 18, "label": "R46"}]
|
||||
},
|
||||
"LAYOUT_3key_2us": {
|
||||
"layout": [
|
||||
{"y": 0.375, "x": 0.5, "label": "L00"},
|
||||
{"y": 0.375, "x": 1.5, "label": "L01"},
|
||||
{"y": 0.125, "x": 2.5, "label": "L02"},
|
||||
{"y": 0, "x": 3.5, "label": "L03"},
|
||||
{"y": 0.125, "x": 4.5, "label": "L04"},
|
||||
{"y": 0.25, "x": 5.5, "label": "L05"},
|
||||
{"y": 0.75, "x": 6.5, "label": "L06"},
|
||||
{"y": 0.75, "x": 12, "label": "R00"},
|
||||
{"y": 0.25, "x": 13, "label": "R01"},
|
||||
{"y": 0.125, "x": 14, "label": "R02"},
|
||||
{"y": 0, "x": 15, "label": "R03"},
|
||||
{"y": 0.125, "x": 16, "label": "R04"},
|
||||
{"y": 0.375, "x": 17, "label": "R05"},
|
||||
{"y": 0.375, "x": 18, "label": "R06"},
|
||||
{"y": 1.375, "x": 0.5, "label": "L10"},
|
||||
{"y": 1.375, "x": 1.5, "label": "L11"},
|
||||
{"y": 1.125, "x": 2.5, "label": "L12"},
|
||||
{"y": 1, "x": 3.5, "label": "L13"},
|
||||
{"y": 1.125, "x": 4.5, "label": "L14"},
|
||||
{"y": 1.25, "x": 5.5, "label": "L15"},
|
||||
{"y": 1.75, "x": 6.5, "label": "L16"},
|
||||
{"y": 1.75, "x": 12, "label": "R10"},
|
||||
{"y": 1.25, "x": 13, "label": "R11"},
|
||||
{"y": 1.125, "x": 14, "label": "R12"},
|
||||
{"y": 1, "x": 15, "label": "R13"},
|
||||
{"y": 1.125, "x": 16, "label": "R14"},
|
||||
{"y": 1.375, "x": 17, "label": "R15"},
|
||||
{"y": 1.375, "x": 18, "label": "R16"},
|
||||
{"y": 2.375, "x": 0.5, "label": "L20"},
|
||||
{"y": 2.375, "x": 1.5, "label": "L21"},
|
||||
{"y": 2.125, "x": 2.5, "label": "L22"},
|
||||
{"y": 2, "x": 3.5, "label": "L23"},
|
||||
{"y": 2.125, "x": 4.5, "label": "L24"},
|
||||
{"y": 2.25, "x": 5.5, "label": "L25"},
|
||||
{"y": 2.75, "x": 6.5, "label": "L26"},
|
||||
{"y": 2.75, "x": 12, "label": "R20"},
|
||||
{"y": 2.25, "x": 13, "label": "R21"},
|
||||
{"y": 2.125, "x": 14, "label": "R22"},
|
||||
{"y": 2, "x": 15, "label": "R23"},
|
||||
{"y": 2.125, "x": 16, "label": "R24"},
|
||||
{"y": 2.375, "x": 17, "label": "R25"},
|
||||
{"y": 2.375, "x": 18, "label": "R26"},
|
||||
{"y": 3.375, "x": 0.5, "label": "L30"},
|
||||
{"y": 3.375, "x": 1.5, "label": "L31"},
|
||||
{"y": 3.125, "x": 2.5, "label": "L32"},
|
||||
{"y": 3, "x": 3.5, "label": "L33"},
|
||||
{"y": 3.125, "x": 4.5, "label": "L34"},
|
||||
{"y": 3.25, "x": 5.5, "label": "L35"},
|
||||
{"y": 3.25, "x": 13, "label": "R31"},
|
||||
{"y": 3.125, "x": 14, "label": "R32"},
|
||||
{"y": 3, "x": 15, "label": "R33"},
|
||||
{"y": 3.125, "x": 16, "label": "R34"},
|
||||
{"y": 3.375, "x": 17, "label": "R35"},
|
||||
{"y": 3.375, "x": 18, "label": "R36"},
|
||||
{"y": 4.375, "x": 0.5, "label": "L40"},
|
||||
{"y": 4.375, "x": 1.5, "label": "L41"},
|
||||
{"y": 4.125, "x": 2.5, "label": "L42"},
|
||||
{"y": 4, "x": 3.5, "label": "L43"},
|
||||
{"y": 5, "x": 5.5, "label": "L44"},
|
||||
{"h": 2, "y": 4, "x": 6.5, "label": "L45"},
|
||||
{"h": 2, "y": 4, "x": 7.5, "label": "L46"},
|
||||
{"h": 2, "y": 4, "x": 11, "label": "R40"},
|
||||
{"h": 2, "y": 4, "x": 12, "label": "R41"},
|
||||
{"y": 5, "x": 13, "label": "R42"},
|
||||
{"y": 4, "x": 15, "label": "R43"},
|
||||
{"y": 4.125, "x": 16, "label": "R44"},
|
||||
{"y": 4.375, "x": 17, "label": "R45"},
|
||||
{"y": 4.375, "x": 18, "label": "R46"}]
|
||||
},
|
||||
"LAYOUT_3key_1us": {
|
||||
"layout": [
|
||||
{"y": 0.375, "x": 0.5, "label": "L00"},
|
||||
{"y": 0.375, "x": 1.5, "label": "L01"},
|
||||
{"y": 0.125, "x": 2.5, "label": "L02"},
|
||||
{"y": 0, "x": 3.5, "label": "L03"},
|
||||
{"y": 0.125, "x": 4.5, "label": "L04"},
|
||||
{"y": 0.25, "x": 5.5, "label": "L05"},
|
||||
{"y": 0.75, "x": 6.5, "label": "L06"},
|
||||
{"y": 0.75, "x": 12, "label": "R00"},
|
||||
{"y": 0.25, "x": 13, "label": "R01"},
|
||||
{"y": 0.125, "x": 14, "label": "R02"},
|
||||
{"y": 0, "x": 15, "label": "R03"},
|
||||
{"y": 0.125, "x": 16, "label": "R04"},
|
||||
{"y": 0.375, "x": 17, "label": "R05"},
|
||||
{"y": 0.375, "x": 18, "label": "R06"},
|
||||
{"y": 1.375, "x": 0.5, "label": "L10"},
|
||||
{"y": 1.375, "x": 1.5, "label": "L11"},
|
||||
{"y": 1.125, "x": 2.5, "label": "L12"},
|
||||
{"y": 1, "x": 3.5, "label": "L13"},
|
||||
{"y": 1.125, "x": 4.5, "label": "L14"},
|
||||
{"y": 1.25, "x": 5.5, "label": "L15"},
|
||||
{"y": 1.75, "x": 6.5, "label": "L16"},
|
||||
{"y": 1.75, "x": 12, "label": "R10"},
|
||||
{"y": 1.25, "x": 13, "label": "R11"},
|
||||
{"y": 1.125, "x": 14, "label": "R12"},
|
||||
{"y": 1, "x": 15, "label": "R13"},
|
||||
{"y": 1.125, "x": 16, "label": "R14"},
|
||||
{"y": 1.375, "x": 17, "label": "R15"},
|
||||
{"y": 1.375, "x": 18, "label": "R16"},
|
||||
{"y": 2.375, "x": 0.5, "label": "L20"},
|
||||
{"y": 2.375, "x": 1.5, "label": "L21"},
|
||||
{"y": 2.125, "x": 2.5, "label": "L22"},
|
||||
{"y": 2, "x": 3.5, "label": "L23"},
|
||||
{"y": 2.125, "x": 4.5, "label": "L24"},
|
||||
{"y": 2.25, "x": 5.5, "label": "L25"},
|
||||
{"y": 2.75, "x": 6.5, "label": "L26"},
|
||||
{"y": 2.75, "x": 12, "label": "R20"},
|
||||
{"y": 2.25, "x": 13, "label": "R21"},
|
||||
{"y": 2.125, "x": 14, "label": "R22"},
|
||||
{"y": 2, "x": 15, "label": "R23"},
|
||||
{"y": 2.125, "x": 16, "label": "R24"},
|
||||
{"y": 2.375, "x": 17, "label": "R25"},
|
||||
{"y": 2.375, "x": 18, "label": "R26"},
|
||||
{"y": 3.375, "x": 0.5, "label": "L30"},
|
||||
{"y": 3.375, "x": 1.5, "label": "L31"},
|
||||
{"y": 3.125, "x": 2.5, "label": "L32"},
|
||||
{"y": 3, "x": 3.5, "label": "L33"},
|
||||
{"y": 3.125, "x": 4.5, "label": "L34"},
|
||||
{"y": 3.25, "x": 5.5, "label": "L35"},
|
||||
{"y": 4, "x": 6.5, "label": "L36"},
|
||||
{"y": 4, "x": 12, "label": "R30"},
|
||||
{"y": 3.25, "x": 13, "label": "R31"},
|
||||
{"y": 3.125, "x": 14, "label": "R32"},
|
||||
{"y": 3, "x": 15, "label": "R33"},
|
||||
{"y": 3.125, "x": 16, "label": "R34"},
|
||||
{"y": 3.375, "x": 17, "label": "R35"},
|
||||
{"y": 3.375, "x": 18, "label": "R36"},
|
||||
{"y": 4.375, "x": 0.5, "label": "L40"},
|
||||
{"y": 4.375, "x": 1.5, "label": "L41"},
|
||||
{"y": 4.125, "x": 2.5, "label": "L42"},
|
||||
{"y": 4, "x": 3.5, "label": "L43"},
|
||||
{"y": 5, "x": 5.5, "label": "L44"},
|
||||
{"y": 5, "x": 6.5, "label": "L45"},
|
||||
{"y": 5, "x": 12, "label": "R41"},
|
||||
{"y": 5, "x": 13, "label": "R42"},
|
||||
{"y": 4, "x": 15, "label": "R43"},
|
||||
{"y": 4.125, "x": 16, "label": "R44"},
|
||||
{"y": 4.375, "x": 17, "label": "R45"},
|
||||
{"y": 4.375, "x": 18, "label": "R46"}]
|
||||
},
|
||||
"LAYOUT_2key": {
|
||||
"layout": [
|
||||
{"y": 0.375, "x": 0.5, "label": "L00"},
|
||||
{"y": 0.375, "x": 1.5, "label": "L01"},
|
||||
{"y": 0.125, "x": 2.5, "label": "L02"},
|
||||
{"y": 0, "x": 3.5, "label": "L03"},
|
||||
{"y": 0.125, "x": 4.5, "label": "L04"},
|
||||
{"y": 0.25, "x": 5.5, "label": "L05"},
|
||||
{"y": 0.75, "x": 6.5, "label": "L06"},
|
||||
{"y": 0.75, "x": 12, "label": "R00"},
|
||||
{"y": 0.25, "x": 13, "label": "R01"},
|
||||
{"y": 0.125, "x": 14, "label": "R02"},
|
||||
{"y": 0, "x": 15, "label": "R03"},
|
||||
{"y": 0.125, "x": 16, "label": "R04"},
|
||||
{"y": 0.375, "x": 17, "label": "R05"},
|
||||
{"y": 0.375, "x": 18, "label": "R06"},
|
||||
{"y": 1.375, "x": 0.5, "label": "L10"},
|
||||
{"y": 1.375, "x": 1.5, "label": "L11"},
|
||||
{"y": 1.125, "x": 2.5, "label": "L12"},
|
||||
{"y": 1, "x": 3.5, "label": "L13"},
|
||||
{"y": 1.125, "x": 4.5, "label": "L14"},
|
||||
{"y": 1.25, "x": 5.5, "label": "L15"},
|
||||
{"y": 1.75, "x": 6.5, "label": "L16"},
|
||||
{"y": 1.75, "x": 12, "label": "R10"},
|
||||
{"y": 1.25, "x": 13, "label": "R11"},
|
||||
{"y": 1.125, "x": 14, "label": "R12"},
|
||||
{"y": 1, "x": 15, "label": "R13"},
|
||||
{"y": 1.125, "x": 16, "label": "R14"},
|
||||
{"y": 1.375, "x": 17, "label": "R15"},
|
||||
{"y": 1.375, "x": 18, "label": "R16"},
|
||||
{"y": 2.375, "x": 0.5, "label": "L20"},
|
||||
{"y": 2.375, "x": 1.5, "label": "L21"},
|
||||
{"y": 2.125, "x": 2.5, "label": "L22"},
|
||||
{"y": 2, "x": 3.5, "label": "L23"},
|
||||
{"y": 2.125, "x": 4.5, "label": "L24"},
|
||||
{"y": 2.25, "x": 5.5, "label": "L25"},
|
||||
{"y": 2.75, "x": 6.5, "label": "L26"},
|
||||
{"y": 2.75, "x": 12, "label": "R20"},
|
||||
{"y": 2.25, "x": 13, "label": "R21"},
|
||||
{"y": 2.125, "x": 14, "label": "R22"},
|
||||
{"y": 2, "x": 15, "label": "R23"},
|
||||
{"y": 2.125, "x": 16, "label": "R24"},
|
||||
{"y": 2.375, "x": 17, "label": "R25"},
|
||||
{"y": 2.375, "x": 18, "label": "R26"},
|
||||
{"y": 3.375, "x": 0.5, "label": "L30"},
|
||||
{"y": 3.375, "x": 1.5, "label": "L31"},
|
||||
{"y": 3.125, "x": 2.5, "label": "L32"},
|
||||
{"y": 3, "x": 3.5, "label": "L33"},
|
||||
{"y": 3.125, "x": 4.5, "label": "L34"},
|
||||
{"y": 3.25, "x": 5.5, "label": "L35"},
|
||||
{"y": 3.25, "x": 13, "label": "R31"},
|
||||
{"y": 3.125, "x": 14, "label": "R32"},
|
||||
{"y": 3, "x": 15, "label": "R33"},
|
||||
{"y": 3.125, "x": 16, "label": "R34"},
|
||||
{"y": 3.375, "x": 17, "label": "R35"},
|
||||
{"y": 3.375, "x": 18, "label": "R36"},
|
||||
{"y": 4.375, "x": 0.5, "label": "L40"},
|
||||
{"y": 4.375, "x": 1.5, "label": "L41"},
|
||||
{"y": 4.125, "x": 2.5, "label": "L42"},
|
||||
{"y": 4, "x": 3.5, "label": "L43"},
|
||||
{"y": 5, "x": 5.5, "label": "L44"},
|
||||
{"h": 2, "y": 4, "x": 6.5, "label": "L45"},
|
||||
{"h": 2, "y": 4, "x": 12, "label": "R41"},
|
||||
{"y": 5, "x": 13, "label": "R42"},
|
||||
{"y": 4, "x": 15, "label": "R43"},
|
||||
{"y": 4.125, "x": 16, "label": "R44"},
|
||||
{"y": 4.375, "x": 17, "label": "R45"},
|
||||
{"y": 4.375, "x": 18, "label": "R46"}]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -10,8 +10,8 @@
|
||||
#ifdef USE_I2C
|
||||
#include <stddef.h>
|
||||
#ifdef __AVR__
|
||||
#include <avr/io.h>
|
||||
#include <avr/interrupt.h>
|
||||
#include <avr/io.h>
|
||||
#include <avr/interrupt.h>
|
||||
#endif
|
||||
#endif
|
||||
|
||||
@@ -20,47 +20,132 @@
|
||||
#ifndef FLIP_HALF
|
||||
// Standard Keymap
|
||||
// (TRRS jack on the left half is to the right, TRRS jack on the right half is to the left)
|
||||
#define LAYOUT( \
|
||||
L00, L01, L02, L03, L04, L05, L06, R00, R01, R02, R03, R04, R05, R06, \
|
||||
L10, L11, L12, L13, L14, L15, L16, R10, R11, R12, R13, R14, R15, R16, \
|
||||
L20, L21, L22, L23, L24, L25, L26, R20, R21, R22, R23, R24, R25, R26, \
|
||||
L30, L31, L32, L33, L34, L35, L36, R30, R31, R32, R33, R34, R35, R36, \
|
||||
L40, L41, L42, L43, L44, L45, L46, R40, R41, R42, R43, R44, R45, R46 \
|
||||
) \
|
||||
{ \
|
||||
{ L00, L01, L02, L03, L04, L05, L06 }, \
|
||||
{ L10, L11, L12, L13, L14, L15, L16 }, \
|
||||
{ L20, L21, L22, L23, L24, L25, L26 }, \
|
||||
{ L30, L31, L32, L33, L34, L35, L36 }, \
|
||||
{ L40, L41, L42, L43, L44, L45, L46 }, \
|
||||
{ R06, R05, R04, R03, R02, R01, R00 }, \
|
||||
{ R16, R15, R14, R13, R12, R11, R10 }, \
|
||||
{ R26, R25, R24, R23, R22, R21, R20 }, \
|
||||
{ R36, R35, R34, R33, R32, R31, R30 }, \
|
||||
{ R46, R45, R44, R43, R42, R41, R40 } \
|
||||
}
|
||||
#define LAYOUT_4key( \
|
||||
L00, L01, L02, L03, L04, L05, L06, R00, R01, R02, R03, R04, R05, R06, \
|
||||
L10, L11, L12, L13, L14, L15, L16, R10, R11, R12, R13, R14, R15, R16, \
|
||||
L20, L21, L22, L23, L24, L25, L26, R20, R21, R22, R23, R24, R25, R26, \
|
||||
L30, L31, L32, L33, L34, L35, L36, R30, R31, R32, R33, R34, R35, R36, \
|
||||
L40, L41, L42, L43, L44, L45, L46, R40, R41, R42, R43, R44, R45, R46 \
|
||||
) \
|
||||
{ \
|
||||
{ L00, L01, L02, L03, L04, L05, L06 }, \
|
||||
{ L10, L11, L12, L13, L14, L15, L16 }, \
|
||||
{ L20, L21, L22, L23, L24, L25, L26 }, \
|
||||
{ L30, L31, L32, L33, L34, L35, L36 }, \
|
||||
{ L40, L41, L42, L43, L44, L45, L46 }, \
|
||||
{ R06, R05, R04, R03, R02, R01, R00 }, \
|
||||
{ R16, R15, R14, R13, R12, R11, R10 }, \
|
||||
{ R26, R25, R24, R23, R22, R21, R20 }, \
|
||||
{ R36, R35, R34, R33, R32, R31, R30 }, \
|
||||
{ R46, R45, R44, R43, R42, R41, R40 } \
|
||||
}
|
||||
|
||||
// Just defined for configurator support, the matrix is identical to LAYOUT_4key
|
||||
#define LAYOUT_4key_2u_inner( \
|
||||
L00, L01, L02, L03, L04, L05, L06, R00, R01, R02, R03, R04, R05, R06, \
|
||||
L10, L11, L12, L13, L14, L15, L16, R10, R11, R12, R13, R14, R15, R16, \
|
||||
L20, L21, L22, L23, L24, L25, L26, R20, R21, R22, R23, R24, R25, R26, \
|
||||
L30, L31, L32, L33, L34, L35, L36, R30, R31, R32, R33, R34, R35, R36, \
|
||||
L40, L41, L42, L43, L44, L45, L46, R40, R41, R42, R43, R44, R45, R46 \
|
||||
) \
|
||||
{ \
|
||||
{ L00, L01, L02, L03, L04, L05, L06 }, \
|
||||
{ L10, L11, L12, L13, L14, L15, L16 }, \
|
||||
{ L20, L21, L22, L23, L24, L25, L26 }, \
|
||||
{ L30, L31, L32, L33, L34, L35, L36 }, \
|
||||
{ L40, L41, L42, L43, L44, L45, L46 }, \
|
||||
{ R06, R05, R04, R03, R02, R01, R00 }, \
|
||||
{ R16, R15, R14, R13, R12, R11, R10 }, \
|
||||
{ R26, R25, R24, R23, R22, R21, R20 }, \
|
||||
{ R36, R35, R34, R33, R32, R31, R30 }, \
|
||||
{ R46, R45, R44, R43, R42, R41, R40 } \
|
||||
}
|
||||
|
||||
#define LAYOUT_3key_2us( \
|
||||
L00, L01, L02, L03, L04, L05, L06, R00, R01, R02, R03, R04, R05, R06, \
|
||||
L10, L11, L12, L13, L14, L15, L16, R10, R11, R12, R13, R14, R15, R16, \
|
||||
L20, L21, L22, L23, L24, L25, L26, R20, R21, R22, R23, R24, R25, R26, \
|
||||
L30, L31, L32, L33, L34, L35, R31, R32, R33, R34, R35, R36, \
|
||||
L40, L41, L42, L43, L44, L45, L46, R40, R41, R42, R43, R44, R45, R46 \
|
||||
) \
|
||||
{ \
|
||||
{ L00, L01, L02, L03, L04, L05, L06 }, \
|
||||
{ L10, L11, L12, L13, L14, L15, L16 }, \
|
||||
{ L20, L21, L22, L23, L24, L25, L26 }, \
|
||||
{ L30, L31, L32, L33, L34, L35, KC_NO }, \
|
||||
{ L40, L41, L42, L43, L44, L45, L46 }, \
|
||||
{ R06, R05, R04, R03, R02, R01, R00 }, \
|
||||
{ R16, R15, R14, R13, R12, R11, R10 }, \
|
||||
{ R26, R25, R24, R23, R22, R21, R20 }, \
|
||||
{ R36, R35, R34, R33, R32, R31, KC_NO }, \
|
||||
{ R46, R45, R44, R43, R42, R41, R40 } \
|
||||
}
|
||||
|
||||
|
||||
#define LAYOUT_3key_1us( \
|
||||
L00, L01, L02, L03, L04, L05, L06, R00, R01, R02, R03, R04, R05, R06, \
|
||||
L10, L11, L12, L13, L14, L15, L16, R10, R11, R12, R13, R14, R15, R16, \
|
||||
L20, L21, L22, L23, L24, L25, L26, R20, R21, R22, R23, R24, R25, R26, \
|
||||
L30, L31, L32, L33, L34, L35, L36, R30, R31, R32, R33, R34, R35, R36, \
|
||||
L40, L41, L42, L43, L44, L45, R41, R42, R43, R44, R45, R46 \
|
||||
) \
|
||||
{ \
|
||||
{ L00, L01, L02, L03, L04, L05, L06 }, \
|
||||
{ L10, L11, L12, L13, L14, L15, L16 }, \
|
||||
{ L20, L21, L22, L23, L24, L25, L26 }, \
|
||||
{ L30, L31, L32, L33, L34, L35, L36 }, \
|
||||
{ L40, L41, L42, L43, L44, L45, KC_NO }, \
|
||||
{ R06, R05, R04, R03, R02, R01, R00 }, \
|
||||
{ R16, R15, R14, R13, R12, R11, R10 }, \
|
||||
{ R26, R25, R24, R23, R22, R21, R20 }, \
|
||||
{ R36, R35, R34, R33, R32, R31, R30 }, \
|
||||
{ R46, R45, R44, R43, R42, R41, KC_NO } \
|
||||
}
|
||||
|
||||
#define LAYOUT_2key( \
|
||||
L00, L01, L02, L03, L04, L05, L06, R00, R01, R02, R03, R04, R05, R06, \
|
||||
L10, L11, L12, L13, L14, L15, L16, R10, R11, R12, R13, R14, R15, R16, \
|
||||
L20, L21, L22, L23, L24, L25, L26, R20, R21, R22, R23, R24, R25, R26, \
|
||||
L30, L31, L32, L33, L34, L35, R31, R32, R33, R34, R35, R36, \
|
||||
L40, L41, L42, L43, L44, L45, R41, R42, R43, R44, R45, R46 \
|
||||
) \
|
||||
{ \
|
||||
{ L00, L01, L02, L03, L04, L05, L06 }, \
|
||||
{ L10, L11, L12, L13, L14, L15, L16 }, \
|
||||
{ L20, L21, L22, L23, L24, L25, L26 }, \
|
||||
{ L30, L31, L32, L33, L34, L35, KC_NO }, \
|
||||
{ L40, L41, L42, L43, L44, L45, KC_NO }, \
|
||||
{ R06, R05, R04, R03, R02, R01, R00 }, \
|
||||
{ R16, R15, R14, R13, R12, R11, R10 }, \
|
||||
{ R26, R25, R24, R23, R22, R21, R20 }, \
|
||||
{ R36, R35, R34, R33, R32, R31, KC_NO }, \
|
||||
{ R46, R45, R44, R43, R42, R41, KC_NO } \
|
||||
}
|
||||
|
||||
#define LAYOUT LAYOUT_4key
|
||||
|
||||
#else
|
||||
// Keymap with right side flipped
|
||||
// (TRRS jack on both halves are to the right)
|
||||
#define LAYOUT( \
|
||||
L00, L01, L02, L03, L04, L05, L06, R00, R01, R02, R03, R04, R05, R06, \
|
||||
L10, L11, L12, L13, L14, L15, L16, R10, R11, R12, R13, R14, R15, R16, \
|
||||
L20, L21, L22, L23, L24, L25, L26, R20, R21, R22, R23, R24, R25, R26, \
|
||||
L30, L31, L32, L33, L34, L35, L36, R30, R31, R32, R33, R34, R35, R36, \
|
||||
L40, L41, L42, L43, L44, L45, L46, R40, R41, R42, R43, R44, R45, R46 \
|
||||
) \
|
||||
{ \
|
||||
{ L00, L01, L02, L03, L04, L05, L06 }, \
|
||||
{ L10, L11, L12, L13, L14, L15, L16 }, \
|
||||
{ L20, L21, L22, L23, L24, L25, L26 }, \
|
||||
{ L30, L31, L32, L33, L34, L35, L36 }, \
|
||||
{ L40, L41, L42, L43, L44, L45, L46 }, \
|
||||
{ R00, R01, R02, R03, R04, R05, R06 }, \
|
||||
{ R10, R11, R12, R13, R14, R15, R16 }, \
|
||||
{ R20, R21, R22, R23, R24, R25, R26 }, \
|
||||
{ R30, R31, R32, R33, R34, R35, R36 }, \
|
||||
{ R40, R41, R42, R43, R44, R45, R46 } \
|
||||
}
|
||||
L00, L01, L02, L03, L04, L05, L06, R00, R01, R02, R03, R04, R05, R06, \
|
||||
L10, L11, L12, L13, L14, L15, L16, R10, R11, R12, R13, R14, R15, R16, \
|
||||
L20, L21, L22, L23, L24, L25, L26, R20, R21, R22, R23, R24, R25, R26, \
|
||||
L30, L31, L32, L33, L34, L35, L36, R30, R31, R32, R33, R34, R35, R36, \
|
||||
L40, L41, L42, L43, L44, L45, L46, R40, R41, R42, R43, R44, R45, R46 \
|
||||
) \
|
||||
{ \
|
||||
{ L00, L01, L02, L03, L04, L05, L06 }, \
|
||||
{ L10, L11, L12, L13, L14, L15, L16 }, \
|
||||
{ L20, L21, L22, L23, L24, L25, L26 }, \
|
||||
{ L30, L31, L32, L33, L34, L35, L36 }, \
|
||||
{ L40, L41, L42, L43, L44, L45, L46 }, \
|
||||
{ R00, R01, R02, R03, R04, R05, R06 }, \
|
||||
{ R10, R11, R12, R13, R14, R15, R16 }, \
|
||||
{ R20, R21, R22, R23, R24, R25, R26 }, \
|
||||
{ R30, R31, R32, R33, R34, R35, R36 }, \
|
||||
{ R40, R41, R42, R43, R44, R45, R46 } \
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
||||
16
keyboards/handwired/6macro/6macro.c
Normal file
16
keyboards/handwired/6macro/6macro.c
Normal file
@@ -0,0 +1,16 @@
|
||||
/* Copyright 2019 joaofbmaia
|
||||
*
|
||||
* 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 "6macro.h"
|
||||
35
keyboards/handwired/6macro/6macro.h
Normal file
35
keyboards/handwired/6macro/6macro.h
Normal file
@@ -0,0 +1,35 @@
|
||||
/* Copyright 2019 joaofbmaia
|
||||
*
|
||||
* 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/>.
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
#include "quantum.h"
|
||||
|
||||
/* This a shortcut to help you visually see your layout.
|
||||
*
|
||||
* The first section contains all of the arguments representing the physical
|
||||
* layout of the board and position of the keys.
|
||||
*
|
||||
* The second converts the arguments into a two-dimensional array which
|
||||
* represents the switch matrix.
|
||||
*/
|
||||
#define LAYOUT( \
|
||||
k00, k01, k02, \
|
||||
k10, k11, k12 \
|
||||
) \
|
||||
{ \
|
||||
{ k00, k01, k02 }, \
|
||||
{ k10, k11, k12 }, \
|
||||
}
|
||||
70
keyboards/handwired/6macro/config.h
Normal file
70
keyboards/handwired/6macro/config.h
Normal file
@@ -0,0 +1,70 @@
|
||||
/*
|
||||
Copyright 2019 joaofbmaia
|
||||
|
||||
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/>.
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "config_common.h"
|
||||
|
||||
/* USB Device descriptor parameter */
|
||||
#define VENDOR_ID 0xFEED
|
||||
#define PRODUCT_ID 0x0037
|
||||
#define DEVICE_VER 0x0001
|
||||
#define MANUFACTURER joaofbmaia
|
||||
#define PRODUCT 6macro
|
||||
#define DESCRIPTION 6macro
|
||||
|
||||
/* key matrix size */
|
||||
#define MATRIX_ROWS 2
|
||||
#define MATRIX_COLS 3
|
||||
|
||||
/* pinout - DON'T CHANGE */
|
||||
#define MATRIX_ROW_PINS { B3, B4 }
|
||||
#define MATRIX_COL_PINS { B0, B1, B2 }
|
||||
#define UNUSED_PINS
|
||||
|
||||
/* COL2ROW, ROW2COL*/
|
||||
#define DIODE_DIRECTION COL2ROW
|
||||
|
||||
#define RGB_DI_PIN D2
|
||||
#define RGBLED_NUM 10
|
||||
#define RGBLIGHT_HUE_STEP 10
|
||||
#define RGBLIGHT_SAT_STEP 17
|
||||
#define RGBLIGHT_VAL_STEP 17
|
||||
#define RGBLIGHT_LIMIT_VAL 255 /* The maximum brightness level */
|
||||
// #define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */
|
||||
// /*== all animations enable ==*/
|
||||
// #define RGBLIGHT_ANIMATIONS
|
||||
// /*== or choose animations ==*/
|
||||
#define RGBLIGHT_EFFECT_BREATHING
|
||||
#define RGBLIGHT_EFFECT_RAINBOW_MOOD
|
||||
#define RGBLIGHT_EFFECT_RAINBOW_SWIRL
|
||||
#define RGBLIGHT_EFFECT_SNAKE
|
||||
#define RGBLIGHT_EFFECT_KNIGHT
|
||||
// #define RGBLIGHT_EFFECT_CHRISTMAS
|
||||
#define RGBLIGHT_EFFECT_STATIC_GRADIENT
|
||||
// #define RGBLIGHT_EFFECT_RGB_TEST
|
||||
// #define RGBLIGHT_EFFECT_ALTERNATING
|
||||
// /*== customize breathing effect ==*/
|
||||
// /*==== (DEFAULT) use fixed table instead of exp() and sin() ====*/
|
||||
// #define RGBLIGHT_BREATHE_TABLE_SIZE 256 // 256(default) or 128 or 64
|
||||
// /*==== use exp() and sin() ====*/
|
||||
// #define RGBLIGHT_EFFECT_BREATHE_CENTER 1.85 // 1 to 2.7
|
||||
// #define RGBLIGHT_EFFECT_BREATHE_MAX 255 // 0 to 255
|
||||
|
||||
|
||||
/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
|
||||
#define DEBOUNCE 5
|
||||
13
keyboards/handwired/6macro/info.json
Normal file
13
keyboards/handwired/6macro/info.json
Normal file
@@ -0,0 +1,13 @@
|
||||
{
|
||||
"keyboard_name": "6macro",
|
||||
"url": "",
|
||||
"maintainer": "joaofbmaia",
|
||||
"width": 3,
|
||||
"height": 2,
|
||||
"layouts": {
|
||||
"LAYOUT": {
|
||||
"layout": [{"label":"k00", "x":0, "y":0}, {"label":"k01", "x":1, "y":0}, {"label":"k02", "x":2, "y":0}, {"label":"k10", "x":0, "y":1}, {"label":"k11", "x":1, "y":1}, {"label":"k12", "x":2, "y":1}]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
18
keyboards/handwired/6macro/keymaps/default/config.h
Normal file
18
keyboards/handwired/6macro/keymaps/default/config.h
Normal file
@@ -0,0 +1,18 @@
|
||||
/* Copyright 2019 joaofbmaia
|
||||
*
|
||||
* 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/>.
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
56
keyboards/handwired/6macro/keymaps/default/keymap.c
Normal file
56
keyboards/handwired/6macro/keymaps/default/keymap.c
Normal file
@@ -0,0 +1,56 @@
|
||||
/* Copyright 2019 joaofbmaia
|
||||
*
|
||||
* 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] = {
|
||||
|
||||
/* LAYER 0
|
||||
* ,-----------------------.
|
||||
* | F13 | F14 | F15/FN| Hold for FN
|
||||
* |-------+-------+-------|
|
||||
* | F16 | F17 | F18 |
|
||||
* `-------+-------+-------'
|
||||
*/
|
||||
[0] = LAYOUT(
|
||||
KC_F13, KC_F14, LT(1, KC_F15), \
|
||||
KC_F16, KC_F17, KC_F18 \
|
||||
),
|
||||
|
||||
/* LAYER 1
|
||||
* ,-----------------------.
|
||||
* |RGB_TOG|RGBMOD+| |
|
||||
* |-------+-------+-------|
|
||||
* |RGBHUE+|RGBBRI+|Spec FN| Hold along with previous to access special funtions (RESET)
|
||||
* `-------+-------+-------'
|
||||
*/
|
||||
[1] = LAYOUT(
|
||||
RGB_TOG, RGB_MOD, KC_TRNS, \
|
||||
RGB_HUI, RGB_VAI, MO(2) \
|
||||
),
|
||||
|
||||
/* LAYER 2
|
||||
* ,-----------------------.
|
||||
* | RESET |RGBMOD-| |
|
||||
* |-------+-------+-------|
|
||||
* |RGBHUE-|RGBBRI-| |
|
||||
* `-------+-------+-------'
|
||||
*/
|
||||
[2] = LAYOUT(
|
||||
RESET, RGB_RMOD, KC_NO, \
|
||||
RGB_HUD, RGB_VAD, KC_TRNS \
|
||||
)
|
||||
|
||||
};
|
||||
15
keyboards/handwired/6macro/keymaps/default/readme.md
Normal file
15
keyboards/handwired/6macro/keymaps/default/readme.md
Normal file
@@ -0,0 +1,15 @@
|
||||
Layer 0:
|
||||
|
||||

|
||||
|
||||
Layer 1:
|
||||
|
||||

|
||||
|
||||
Layer 2:
|
||||
|
||||

|
||||
|
||||
# Default 6macro Layout
|
||||
|
||||
This is the default layout. Layer 0 is mappped to function keys 13-18. Top right key switches to layer above when held. Upper layers are for RGB control.
|
||||
18
keyboards/handwired/6macro/keymaps/osu/config.h
Normal file
18
keyboards/handwired/6macro/keymaps/osu/config.h
Normal file
@@ -0,0 +1,18 @@
|
||||
/* Copyright 2019 joaofbmaia
|
||||
*
|
||||
* 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/>.
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
56
keyboards/handwired/6macro/keymaps/osu/keymap.c
Normal file
56
keyboards/handwired/6macro/keymaps/osu/keymap.c
Normal file
@@ -0,0 +1,56 @@
|
||||
/* Copyright 2019 joaofbmaia
|
||||
*
|
||||
* 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] = {
|
||||
|
||||
/* LAYER 0
|
||||
* ,-----------------------.
|
||||
* | ESC | ~ | SPC/FN| Hold for FN
|
||||
* |-------+-------+-------|
|
||||
* | C | Z | X |
|
||||
* `-------+-------+-------'
|
||||
*/
|
||||
[0] = LAYOUT(
|
||||
KC_ESC, KC_GRAVE, LT(1, KC_SPC), \
|
||||
KC_C, KC_Z, KC_X \
|
||||
),
|
||||
|
||||
/* LAYER 1
|
||||
* ,-----------------------.
|
||||
* |RGB_TOG|RGBMOD+| |
|
||||
* |-------+-------+-------|
|
||||
* |RGBHUE+|RGBBRI+|Spec FN| Hold along with previous to access special funtions (RESET)
|
||||
* `-------+-------+-------'
|
||||
*/
|
||||
[1] = LAYOUT(
|
||||
RGB_TOG, RGB_MOD, KC_TRNS, \
|
||||
RGB_HUI, RGB_VAI, MO(2) \
|
||||
),
|
||||
|
||||
/* LAYER 2
|
||||
* ,-----------------------.
|
||||
* | RESET |RGBMOD-| |
|
||||
* |-------+-------+-------|
|
||||
* |RGBHUE-|RGBBRI-| |
|
||||
* `-------+-------+-------'
|
||||
*/
|
||||
[2] = LAYOUT(
|
||||
RESET, RGB_RMOD, KC_NO, \
|
||||
RGB_HUD, RGB_VAD, KC_TRNS \
|
||||
)
|
||||
|
||||
};
|
||||
15
keyboards/handwired/6macro/keymaps/osu/readme.md
Normal file
15
keyboards/handwired/6macro/keymaps/osu/readme.md
Normal file
@@ -0,0 +1,15 @@
|
||||
Layer 0:
|
||||
|
||||

|
||||
|
||||
Layer 1:
|
||||
|
||||

|
||||
|
||||
Layer 2:
|
||||
|
||||

|
||||
|
||||
# OSU 6macro Layout
|
||||
|
||||
This layout is for the game OSU. Layer 0 is mappped as shown above. Top right key switches to layer above when held. Upper layers are for RGB control.
|
||||
15
keyboards/handwired/6macro/readme.md
Normal file
15
keyboards/handwired/6macro/readme.md
Normal file
@@ -0,0 +1,15 @@
|
||||
# 6macro
|
||||
|
||||

|
||||

|
||||
|
||||
This is a 6-key keyboard intended for macros or as a dedicated controller for games with few bindings.
|
||||
|
||||
Keyboard Maintainer: [joaofbmaia](https://github.com/joaofbmaia)
|
||||
Hardware: https://github.com/joaofbmaia/6macro
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make handwired/6macro:default
|
||||
|
||||
See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
|
||||
81
keyboards/handwired/6macro/rules.mk
Normal file
81
keyboards/handwired/6macro/rules.mk
Normal file
@@ -0,0 +1,81 @@
|
||||
# MCU name
|
||||
MCU = atmega32u2
|
||||
|
||||
# Processor frequency.
|
||||
# This will define a symbol, F_CPU, in all source code files equal to the
|
||||
# processor frequency in Hz. You can then use this symbol in your source code to
|
||||
# calculate timings. Do NOT tack on a 'UL' at the end, this will be done
|
||||
# automatically to create a 32-bit value in your source code.
|
||||
#
|
||||
# This will be an integer division of F_USB below, as it is sourced by
|
||||
# F_USB after it has run through any CPU prescalers. Note that this value
|
||||
# does not *change* the processor frequency - it should merely be updated to
|
||||
# reflect the processor speed set externally so that the code can use accurate
|
||||
# software delays.
|
||||
F_CPU = 16000000
|
||||
|
||||
|
||||
#
|
||||
# LUFA specific
|
||||
#
|
||||
# Target architecture (see library "Board Types" documentation).
|
||||
ARCH = AVR8
|
||||
|
||||
# Input clock frequency.
|
||||
# This will define a symbol, F_USB, in all source code files equal to the
|
||||
# input clock frequency (before any prescaling is performed) in Hz. This value may
|
||||
# differ from F_CPU if prescaling is used on the latter, and is required as the
|
||||
# raw input clock is fed directly to the PLL sections of the AVR for high speed
|
||||
# clock generation for the USB and other AVR subsections. Do NOT tack on a 'UL'
|
||||
# at the end, this will be done automatically to create a 32-bit value in your
|
||||
# source code.
|
||||
#
|
||||
# If no clock division is performed on the input clock inside the AVR (via the
|
||||
# CPU clock adjust registers or the clock division fuses), this will be equal to F_CPU.
|
||||
F_USB = $(F_CPU)
|
||||
|
||||
# Interrupt driven control endpoint task(+60)
|
||||
OPT_DEFS += -DINTERRUPT_CONTROL_ENDPOINT
|
||||
|
||||
|
||||
# Bootloader selection
|
||||
# Teensy halfkay
|
||||
# Pro Micro caterina
|
||||
# Atmel DFU atmel-dfu
|
||||
# LUFA DFU lufa-dfu
|
||||
# QMK DFU qmk-dfu
|
||||
# atmega32a bootloadHID
|
||||
BOOTLOADER = atmel-dfu
|
||||
|
||||
|
||||
# If you don't know the bootloader type, then you can specify the
|
||||
# Boot Section Size in *bytes* by uncommenting out the OPT_DEFS line
|
||||
# Teensy halfKay 512
|
||||
# Teensy++ halfKay 1024
|
||||
# Atmel DFU loader 4096
|
||||
# LUFA bootloader 4096
|
||||
# USBaspLoader 2048
|
||||
# OPT_DEFS += -DBOOTLOADER_SIZE=4096
|
||||
|
||||
|
||||
# Build Options
|
||||
# change yes to no to disable
|
||||
#
|
||||
BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000)
|
||||
MOUSEKEY_ENABLE = yes # Mouse keys(+4700)
|
||||
EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
|
||||
CONSOLE_ENABLE = no # Console for debug(+400)
|
||||
COMMAND_ENABLE = no # Commands for debug and configuration
|
||||
# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
|
||||
SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
|
||||
# if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
|
||||
NKRO_ENABLE = yes # USB Nkey Rollover
|
||||
#RGB_MATRIX_ENABLE = WS2812 # Enable per-key coordinate based RGB effects. Do not enable with RGBlight (+8500)
|
||||
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality on B7 by default
|
||||
RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
|
||||
MIDI_ENABLE = no # MIDI support (+2400 to 4200, depending on config)
|
||||
UNICODE_ENABLE = yes # Unicode
|
||||
BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
|
||||
AUDIO_ENABLE = no # Audio output on port C6
|
||||
FAUXCLICKY_ENABLE = no # Use buzzer to emulate clicky switches
|
||||
HD44780_ENABLE = no # Enable support for HD44780 based LCDs (+400)
|
||||
@@ -1,39 +1,5 @@
|
||||
#pragma once
|
||||
|
||||
#ifdef AUDIO_ENABLE
|
||||
#define STARTUP_SONG SONG(PLANCK_SOUND)
|
||||
// #define STARTUP_SONG SONG(NO_SOUND)
|
||||
|
||||
#define DEFAULT_LAYER_SONGS { SONG(QWERTY_SOUND), \
|
||||
SONG(COLEMAK_SOUND), \
|
||||
SONG(DVORAK_SOUND) \
|
||||
}
|
||||
#define STARTUP_SONG SONG(DVORAK_SOUND)
|
||||
#endif
|
||||
|
||||
/*
|
||||
* MIDI options
|
||||
*/
|
||||
|
||||
/* Prevent use of disabled MIDI features in the keymap */
|
||||
//#define MIDI_ENABLE_STRICT 1
|
||||
|
||||
/* enable basic MIDI features:
|
||||
- MIDI notes can be sent when in Music mode is on
|
||||
*/
|
||||
|
||||
#define MIDI_BASIC
|
||||
|
||||
/* enable advanced MIDI features:
|
||||
- MIDI notes can be added to the keymap
|
||||
- Octave shift and transpose
|
||||
- Virtual sustain, portamento, and modulation wheel
|
||||
- etc.
|
||||
*/
|
||||
//#define MIDI_ADVANCED
|
||||
|
||||
/* override number of MIDI tone keycodes (each octave adds 12 keycodes and allocates 12 bytes) */
|
||||
//#define MIDI_TONE_KEYCODE_OCTAVES 2
|
||||
|
||||
// Most tactile encoders have detents every 4 stages
|
||||
#define ENCODER_RESOLUTION 4
|
||||
|
||||
|
||||
@@ -1,19 +1,3 @@
|
||||
/* Copyright 2015-2017 Jack Humbert
|
||||
*
|
||||
* 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
|
||||
#include "muse.h"
|
||||
|
||||
|
||||
79
keyboards/primekb/prime_e/keymaps/jetpacktuxedo/keymap.c
Normal file
79
keyboards/primekb/prime_e/keymaps/jetpacktuxedo/keymap.c
Normal file
@@ -0,0 +1,79 @@
|
||||
/* Copyright 2018 Holten Campbell
|
||||
*
|
||||
* 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(
|
||||
KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, KC_DEL,
|
||||
LT(2, KC_TAB), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, LT(2, KC_ENT),
|
||||
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, LT(3, KC_B), KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
|
||||
KC_LCTL, KC_LGUI, KC_LALT, LT(1, KC_SPC), LT(1, KC_SPC), KC_RALT, KC_RGUI, KC_RCTL
|
||||
),
|
||||
|
||||
[1] = LAYOUT(
|
||||
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL, KC_TRNS,
|
||||
KC_TRNS, KC_MINS, KC_EQL, KC_SCLN, KC_QUOT, KC_TRNS, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_QUOT, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LBRC, KC_RBRC, KC_BSLS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
|
||||
),
|
||||
|
||||
[2] = LAYOUT(
|
||||
KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL, KC_TRNS,
|
||||
KC_TRNS, KC_UNDS, KC_PLUS, KC_COLN, KC_DQUO, KC_TRNS, KC_HOME, KC_PGDN, KC_PGUP, KC_END, KC_DQUO, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LCBR, KC_RCBR, KC_PIPE, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
|
||||
),
|
||||
|
||||
[3] = LAYOUT(
|
||||
KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,
|
||||
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
|
||||
)
|
||||
};
|
||||
|
||||
void matrix_init_user(void) {
|
||||
// set CapsLock LED to output and low
|
||||
setPinOutput(B1);
|
||||
writePinLow(B1);
|
||||
// set NumLock LED to output and low
|
||||
setPinOutput(B2);
|
||||
writePinLow(B2);
|
||||
// set ScrollLock LED to output and low
|
||||
setPinOutput(B3);
|
||||
writePinLow(B3);
|
||||
}
|
||||
|
||||
//function for layer indicator LED
|
||||
uint32_t layer_state_set_user(uint32_t state)
|
||||
{
|
||||
if (state & (1<<1)) {
|
||||
writePinHigh(B1);
|
||||
} else {
|
||||
writePinLow(B1);
|
||||
}
|
||||
if (state & (1<<2)) {
|
||||
writePinHigh(B2);
|
||||
} else {
|
||||
writePinLow(B2);
|
||||
}
|
||||
if (state & (1<<3)) {
|
||||
writePinHigh(B3);
|
||||
} else {
|
||||
writePinLow(B3);
|
||||
}
|
||||
return state;
|
||||
}
|
||||
@@ -20,6 +20,8 @@ Flashing
|
||||
|
||||
ps2avr(GB) boards use an atmega32a microcontroller and a different bootloader. It is not flashable using the regular QMK methods.
|
||||
|
||||
**Reset Key:** Hold down the key located at `K00`, commonly programmed as `Esc` while plugging in the keyboard.
|
||||
|
||||
Windows:
|
||||
1. Download [HIDBootFlash](http://vusb.wikidot.com/project:hidbootflash).
|
||||
2. Place your keyboard into reset.
|
||||
@@ -41,9 +43,10 @@ macOS:
|
||||
brew install python3
|
||||
pip3 install pyusb
|
||||
brew install --HEAD https://raw.githubusercontent.com/robertgzr/homebrew-tap/master/bootloadhid.rb
|
||||
```
|
||||
|
||||
4. Place your keyboard into reset.
|
||||
5. Flash the board by typing `bootloadHID -r` followed by the path to your `.hex` file.
|
||||
|
||||
|
||||
See [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) then the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information.
|
||||
See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
|
||||
|
||||
@@ -1,14 +1,19 @@
|
||||
#include QMK_KEYBOARD_H
|
||||
#include "unicode.c"
|
||||
|
||||
enum layers {
|
||||
_QWERTY,
|
||||
_LOWER,
|
||||
_RAISE,
|
||||
_UNI_LCK
|
||||
};
|
||||
|
||||
#define LOWER MO(_LOWER)
|
||||
#define RAISE MO(_RAISE)
|
||||
#define UNI_LCK MO(_UNI_LCK)
|
||||
#define TGLOWER TG(_LOWER)
|
||||
#define TGRAISE TG(_RAISE)
|
||||
#define SHRAISE LM(_RAISE, MOD_LSFT)
|
||||
|
||||
static bool is_ctl_pressed;
|
||||
static bool is_esc_pressed;
|
||||
@@ -22,33 +27,45 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
// ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤
|
||||
KC_TAB, KC_A , KC_S , KC_D , KC_F , KC_G , KC_H , KC_J , KC_K , KC_L ,KC_SCLN, KC_ENT,
|
||||
// ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤
|
||||
KC_LSFT, KC_Z , KC_X , KC_C , KC_V , KC_B , KC_N , KC_M ,KC_COMM, KC_DOT, KC_UP, KC_SLSH,
|
||||
KC_LSFT, KC_Z , KC_X , KC_C , KC_V , KC_B , KC_N , KC_M ,KC_COMM, KC_DOT, KC_UP ,KC_SLSH,
|
||||
// ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤
|
||||
KC_LCTL,KC_LGUI,KC_LALT,TGLOWER, LOWER , KC_SPC, KC_SPC, RAISE ,KC_RALT,KC_LEFT,KC_DOWN,KC_RGHT
|
||||
KC_LCTL,KC_LGUI,KC_LALT,UNI_LCK, LOWER , KC_SPC, KC_SPC, RAISE ,SHRAISE,KC_LEFT,KC_DOWN,KC_RGHT
|
||||
// └───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┘
|
||||
),
|
||||
|
||||
[_LOWER] = LAYOUT_ortho_4x12 (
|
||||
// ┌───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┐
|
||||
KC_GRV, KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 ,_______,
|
||||
_______, KC_F1 , KC_F2 , KC_F3 , KC_F4 ,_______, KC_INS, KC_P7 , KC_P8 , KC_P9 ,KC_PMNS,_______,
|
||||
// ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤
|
||||
_______, KC_F1 , KC_F2 , KC_F3, KC_F4 ,_______,KC_LBRC,KC_RBRC,KC_BSLS,KC_QUOT,_______,_______,
|
||||
_______, KC_F5 , KC_F6 , KC_F7 , KC_F8 ,KC_HOME,KC_PGUP, KC_P4 , KC_P5 , KC_P6 ,KC_PPLS,KC_PENT,
|
||||
// ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤
|
||||
_______, KC_F5 , KC_F6 , KC_F7 , KC_F8 ,_______,KC_MINS, KC_EQL,_______,_______,_______,_______,
|
||||
_______, KC_F9 , KC_F10, KC_F11, KC_F12, KC_END,KC_PGDN, KC_P1 , KC_P2 , KC_P3 ,KC_PAST,KC_PSLS,
|
||||
// ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤
|
||||
_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______
|
||||
_______,_______,_______,_______,_______,_______,_______,_______, KC_P0 ,KC_PDOT,KC_LPRN,KC_RPRN
|
||||
// └───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┘
|
||||
),
|
||||
|
||||
[_RAISE] = LAYOUT_ortho_4x12 (
|
||||
// ┌───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┐
|
||||
KC_TILD,KC_EXLM, KC_AT ,KC_HASH, KC_DLR,KC_PERC,KC_CIRC,KC_AMPR,KC_ASTR,KC_LPRN,KC_RPRN, KC_DEL,
|
||||
KC_GRV, KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_DEL,
|
||||
// ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤
|
||||
KC_CAPS, KC_F9 , KC_F10, KC_F11, KC_F12,_______,KC_LCBR,KC_RCBR,KC_PIPE,KC_DQUO,_______,_______,
|
||||
KC_CAPS,_______,_______,_______,_______,_______,KC_LBRC,KC_RBRC,KC_BSLS,KC_QUOT,_______,_______,
|
||||
// ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤
|
||||
_______,_______,_______,_______,_______,_______,KC_UNDS,KC_PLUS,KC_HOME,KC_PGUP,KC_VOLU,_______,
|
||||
_______,_______,_______,_______,_______,_______,KC_MINS, KC_EQL,_______,_______,KC_VOLU,_______,
|
||||
// ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤
|
||||
_______,_______,_______,_______,_______,_______,_______,_______, KC_END,KC_PGDN,KC_VOLD,KC_MUTE
|
||||
_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,KC_VOLD,KC_MUTE
|
||||
// └───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┘
|
||||
),
|
||||
|
||||
[_UNI_LCK] = LAYOUT_ortho_4x12 (
|
||||
// ┌───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┐
|
||||
UN_ESC, UN_Q , UN_W , UN_E , UN_R , UN_T , UN_Y , UN_U , UN_I , UN_O , UN_P ,_______,
|
||||
// ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤
|
||||
_______, UN_A , UN_S , UN_D , UN_F , UN_G , UN_H , UN_J , UN_K , UN_L ,UN_SCLN,_______,
|
||||
// ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤
|
||||
_______, UN_Z , UN_X , UN_C , UN_V , UN_B , UN_N , UN_M ,UN_COMM, UN_DOT, UN_UP ,UN_SLSH,
|
||||
// ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤
|
||||
UC_M_LN,UC_M_WI,UC_M_OS,_______,TGLOWER,_______,_______,TGRAISE,_______,UN_LEFT,UN_DOWN,UN_RGHT
|
||||
// └───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┘
|
||||
),
|
||||
|
||||
@@ -65,6 +82,10 @@ uint32_t layer_state_set_user(uint32_t state) {
|
||||
writePinLow(JOTANCK_LED1);
|
||||
writePinHigh(JOTANCK_LED2);
|
||||
break;
|
||||
case _UNI_LCK:
|
||||
writePinHigh(JOTANCK_LED1);
|
||||
writePinHigh(JOTANCK_LED2);
|
||||
break;
|
||||
default:
|
||||
writePinLow(JOTANCK_LED1);
|
||||
writePinLow(JOTANCK_LED2);
|
||||
@@ -74,6 +95,16 @@ uint32_t layer_state_set_user(uint32_t state) {
|
||||
return state;
|
||||
}
|
||||
|
||||
void led_set_user(uint8_t usb_led) {
|
||||
if (!(IS_LED_ON(usb_led, USB_LED_NUM_LOCK))) {
|
||||
tap_code(KC_NUMLOCK);
|
||||
}
|
||||
}
|
||||
|
||||
void keyboard_post_init_user(void) {
|
||||
set_unicode_input_mode(UC_LNX);
|
||||
}
|
||||
|
||||
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
||||
switch (keycode) {
|
||||
case KC_LCTL:
|
||||
@@ -88,7 +119,6 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
||||
};
|
||||
return true;
|
||||
}
|
||||
|
||||
void matrix_scan_user(void) {
|
||||
if (is_ctl_pressed && is_esc_pressed && is_bspc_pressed) {
|
||||
reset_keyboard();
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# Jotix ortho 4x12 keymap
|
||||
|
||||

|
||||

|
||||
|
||||
Tested on:
|
||||
|
||||
|
||||
1
layouts/community/ortho_4x12/jotix/rules.mk
Normal file
1
layouts/community/ortho_4x12/jotix/rules.mk
Normal file
@@ -0,0 +1 @@
|
||||
UNICODEMAP_ENABLE = yes
|
||||
185
layouts/community/ortho_4x12/jotix/unicode.c
Normal file
185
layouts/community/ortho_4x12/jotix/unicode.c
Normal file
@@ -0,0 +1,185 @@
|
||||
enum unicode_names {
|
||||
A_ACUTE,
|
||||
A_ACUTEC,
|
||||
E_ACUTE,
|
||||
E_ACUTEC,
|
||||
I_ACUTE,
|
||||
I_ACUTEC,
|
||||
O_ACUTE,
|
||||
O_ACUTEC,
|
||||
U_ACUTE,
|
||||
U_ACUTEC,
|
||||
U_DIERESIS,
|
||||
U_DIERESISC,
|
||||
N_TILDE,
|
||||
N_TILDEC,
|
||||
OPEN_EXCML,
|
||||
OPEN_QUEST,
|
||||
EURO,
|
||||
POUND,
|
||||
LEFT_ARROW,
|
||||
DOWN_ARROW,
|
||||
UP_ARROW,
|
||||
RIGHT_ARROW,
|
||||
LEFT_DARROW,
|
||||
DOWN_DARROW,
|
||||
UP_DARROW,
|
||||
RIGHT_DAROW,
|
||||
LEFT_DQUOT,
|
||||
RGHT_DQUOT,
|
||||
DEGREE,
|
||||
DEGREE_CELCIUS,
|
||||
SUPER_1,
|
||||
SUPER_2,
|
||||
SUPER_3,
|
||||
ONE_HALF,
|
||||
PER_MILLE,
|
||||
PER_THOUS,
|
||||
PILCROW,
|
||||
COPYRIGHT,
|
||||
REGISTERED,
|
||||
MICRO,
|
||||
MIDDLE_DOT,
|
||||
BOX_CORNER_1,
|
||||
BOX_CORNER_2,
|
||||
BOX_CORNER_3,
|
||||
BOX_CORNER_4,
|
||||
BOX_HORIZONTAL,
|
||||
BOX_VERTICAL,
|
||||
BOX_CROSS,
|
||||
BOX_UNION_1,
|
||||
BOX_UNION_2,
|
||||
BOX_UNION_3,
|
||||
BOX_UNION_4,
|
||||
DBOX_CORNER_1,
|
||||
DBOX_CORNER_2,
|
||||
DBOX_CORNER_3,
|
||||
DBOX_CORNER_4,
|
||||
DBOX_HORIZONT,
|
||||
DBOX_VERTICAL,
|
||||
DBOX_CROSS,
|
||||
DBOX_UNION_1,
|
||||
DBOX_UNION_2,
|
||||
DBOX_UNION_3,
|
||||
DBOX_UNION_4,
|
||||
LESS_EQUAL,
|
||||
MORE_EQUAL,
|
||||
DIVISION,
|
||||
SQUARE_ROOT,
|
||||
CUBE_ROOT,
|
||||
SPADE_SUIT,
|
||||
TREBOL_SUIT,
|
||||
HEART_SUIT,
|
||||
DIAMOND_SUIT,
|
||||
};
|
||||
|
||||
const uint32_t PROGMEM unicode_map[] = {
|
||||
[A_ACUTE] = 0x00E1,
|
||||
[A_ACUTEC] = 0x00C1,
|
||||
[E_ACUTE] = 0x00E9,
|
||||
[E_ACUTEC] = 0x00C9,
|
||||
[I_ACUTE] = 0x00ED,
|
||||
[I_ACUTEC] = 0x00CD,
|
||||
[O_ACUTE] = 0x00F3,
|
||||
[O_ACUTEC] = 0x00D3,
|
||||
[U_ACUTE] = 0x00FA,
|
||||
[U_ACUTEC] = 0x00DA,
|
||||
[U_DIERESIS] = 0x00FC,
|
||||
[U_DIERESISC] = 0x00DC,
|
||||
[N_TILDE] = 0x00F1,
|
||||
[N_TILDEC] = 0x00D1,
|
||||
[OPEN_EXCML] = 0x00A1,
|
||||
[OPEN_QUEST] = 0x00BF,
|
||||
[EURO] = 0x20AC,
|
||||
[POUND] = 0x00A3,
|
||||
[LEFT_ARROW] = 0x2190,
|
||||
[DOWN_ARROW] = 0x2193,
|
||||
[UP_ARROW] = 0x2191,
|
||||
[RIGHT_ARROW] = 0x2192,
|
||||
[LEFT_DARROW] = 0x21E6,
|
||||
[DOWN_DARROW] = 0x21D3,
|
||||
[UP_DARROW] = 0x21D1,
|
||||
[RIGHT_DAROW] = 0x21D2,
|
||||
[LEFT_DQUOT] = 0x00AB,
|
||||
[RGHT_DQUOT] = 0x00BB,
|
||||
[DEGREE] = 0x00B0,
|
||||
[DEGREE_CELCIUS]= 0x2103,
|
||||
[SUPER_1] = 0x00B9,
|
||||
[SUPER_2] = 0x00B2,
|
||||
[SUPER_3] = 0x00B3,
|
||||
[ONE_HALF] = 0x00BD,
|
||||
[PER_MILLE] = 0x0609,
|
||||
[PER_THOUS] = 0x060A,
|
||||
[PILCROW] = 0x00B6,
|
||||
[COPYRIGHT] = 0x00A9,
|
||||
[REGISTERED] = 0x00AE,
|
||||
[MICRO] = 0x00B5,
|
||||
[MIDDLE_DOT] = 0x00B7,
|
||||
[BOX_CORNER_1] = 0x250C,
|
||||
[BOX_CORNER_2] = 0x2510,
|
||||
[BOX_CORNER_3] = 0x2514,
|
||||
[BOX_CORNER_4] = 0x2518,
|
||||
[BOX_HORIZONTAL]= 0x2500,
|
||||
[BOX_VERTICAL] = 0x2502,
|
||||
[BOX_CROSS] = 0x253C,
|
||||
[BOX_UNION_1] = 0x2524,
|
||||
[BOX_UNION_2] = 0x252C,
|
||||
[BOX_UNION_3] = 0x2534,
|
||||
[BOX_UNION_4] = 0x251C,
|
||||
[DBOX_CORNER_1] = 0x2554,
|
||||
[DBOX_CORNER_2] = 0x2557,
|
||||
[DBOX_CORNER_3] = 0x255A,
|
||||
[DBOX_CORNER_4] = 0x255D,
|
||||
[DBOX_HORIZONT] = 0x2550,
|
||||
[DBOX_VERTICAL] = 0x2551,
|
||||
[DBOX_CROSS] = 0x256C,
|
||||
[DBOX_UNION_1] = 0x2563,
|
||||
[DBOX_UNION_2] = 0x2566,
|
||||
[DBOX_UNION_3] = 0x2569,
|
||||
[DBOX_UNION_4] = 0x2560,
|
||||
[LESS_EQUAL] = 0x2264,
|
||||
[MORE_EQUAL] = 0x2265,
|
||||
[DIVISION] = 0x00F7,
|
||||
[SQUARE_ROOT] = 0x221A,
|
||||
[CUBE_ROOT] = 0x221B,
|
||||
[SPADE_SUIT] = 0x2660,
|
||||
[TREBOL_SUIT] = 0x2663,
|
||||
[HEART_SUIT] = 0x2664,
|
||||
[DIAMOND_SUIT] = 0x2665
|
||||
};
|
||||
|
||||
#define UN_ESC XP(DEGREE, DEGREE_CELCIUS)
|
||||
#define UN_Q XP(OPEN_EXCML, SUPER_1)
|
||||
#define UN_W XP(SUPER_2, SUPER_3)
|
||||
#define UN_E XP(E_ACUTE, E_ACUTEC)
|
||||
#define UN_R XP(EURO, ONE_HALF)
|
||||
#define UN_T XP(PER_MILLE, PER_THOUS)
|
||||
#define UN_Y XP(U_DIERESIS, U_DIERESISC)
|
||||
#define UN_U XP(U_ACUTE, U_ACUTEC)
|
||||
#define UN_I XP(I_ACUTE, I_ACUTEC)
|
||||
#define UN_O XP(O_ACUTE, O_ACUTEC)
|
||||
#define UN_P XP(POUND, PILCROW)
|
||||
#define UN_A XP(A_ACUTE, A_ACUTEC)
|
||||
#define UN_S XP(BOX_CORNER_1, DBOX_CORNER_1)
|
||||
#define UN_D XP(BOX_CORNER_2, DBOX_CORNER_2)
|
||||
#define UN_F XP(BOX_CORNER_3, DBOX_CORNER_3)
|
||||
#define UN_G XP(BOX_CORNER_4, DBOX_CORNER_4)
|
||||
#define UN_H XP(BOX_UNION_1, DBOX_UNION_1)
|
||||
#define UN_J XP(BOX_UNION_2, DBOX_UNION_2)
|
||||
#define UN_K XP(BOX_UNION_3, DBOX_UNION_3)
|
||||
#define UN_L XP(BOX_UNION_4, DBOX_UNION_4)
|
||||
#define UN_SCLN XP(BOX_HORIZONTAL, DBOX_HORIZONT)
|
||||
#define UN_Z XP(BOX_VERTICAL, DBOX_VERTICAL)
|
||||
#define UN_X XP(BOX_CROSS, DBOX_CROSS)
|
||||
#define UN_C XP(COPYRIGHT, REGISTERED)
|
||||
#define UN_V XP(SPADE_SUIT, TREBOL_SUIT)
|
||||
#define UN_B XP(HEART_SUIT, DIAMOND_SUIT)
|
||||
#define UN_N XP(N_TILDE, N_TILDEC)
|
||||
#define UN_M XP(MICRO, MIDDLE_DOT)
|
||||
#define UN_COMM XP(LESS_EQUAL, LEFT_DQUOT)
|
||||
#define UN_DOT XP(MORE_EQUAL, RGHT_DQUOT)
|
||||
#define UN_SLSH XP(OPEN_QUEST, DIVISION)
|
||||
#define UN_LEFT XP(LEFT_ARROW, LEFT_DARROW)
|
||||
#define UN_DOWN XP(DOWN_ARROW, DOWN_DARROW)
|
||||
#define UN_UP XP(UP_ARROW, UP_DARROW)
|
||||
#define UN_RGHT XP(RIGHT_ARROW, RIGHT_DAROW)
|
||||
@@ -167,7 +167,6 @@ void eeconfig_update_rgblight(uint32_t val) {
|
||||
}
|
||||
|
||||
void eeconfig_update_rgblight_default(void) {
|
||||
//dprintf("eeconfig_update_rgblight_default\n");
|
||||
rgblight_config.enable = 1;
|
||||
rgblight_config.mode = RGBLIGHT_MODE_STATIC_LIGHT;
|
||||
rgblight_config.hue = 0;
|
||||
@@ -179,7 +178,7 @@ void eeconfig_update_rgblight_default(void) {
|
||||
}
|
||||
|
||||
void eeconfig_debug_rgblight(void) {
|
||||
dprintf("rgblight_config eprom\n");
|
||||
dprintf("rgblight_config EEPROM:\n");
|
||||
dprintf("rgblight_config.enable = %d\n", rgblight_config.enable);
|
||||
dprintf("rghlight_config.mode = %d\n", rgblight_config.mode);
|
||||
dprintf("rgblight_config.hue = %d\n", rgblight_config.hue);
|
||||
@@ -308,9 +307,9 @@ void rgblight_mode_eeprom_helper(uint8_t mode, bool write_to_eeprom) {
|
||||
RGBLIGHT_SPLIT_SET_CHANGE_MODE;
|
||||
if (write_to_eeprom) {
|
||||
eeconfig_update_rgblight(rgblight_config.raw);
|
||||
xprintf("rgblight mode [EEPROM]: %u\n", rgblight_config.mode);
|
||||
dprintf("rgblight mode [EEPROM]: %u\n", rgblight_config.mode);
|
||||
} else {
|
||||
xprintf("rgblight mode [NOEEPROM]: %u\n", rgblight_config.mode);
|
||||
dprintf("rgblight mode [NOEEPROM]: %u\n", rgblight_config.mode);
|
||||
}
|
||||
if( is_static_effect(rgblight_config.mode) ) {
|
||||
#ifdef RGBLIGHT_USE_TIMER
|
||||
@@ -337,7 +336,7 @@ void rgblight_mode_noeeprom(uint8_t mode) {
|
||||
|
||||
|
||||
void rgblight_toggle(void) {
|
||||
xprintf("rgblight toggle [EEPROM]: rgblight_config.enable = %u\n", !rgblight_config.enable);
|
||||
dprintf("rgblight toggle [EEPROM]: rgblight_config.enable = %u\n", !rgblight_config.enable);
|
||||
if (rgblight_config.enable) {
|
||||
rgblight_disable();
|
||||
}
|
||||
@@ -347,7 +346,7 @@ void rgblight_toggle(void) {
|
||||
}
|
||||
|
||||
void rgblight_toggle_noeeprom(void) {
|
||||
xprintf("rgblight toggle [NOEEPROM]: rgblight_config.enable = %u\n", !rgblight_config.enable);
|
||||
dprintf("rgblight toggle [NOEEPROM]: rgblight_config.enable = %u\n", !rgblight_config.enable);
|
||||
if (rgblight_config.enable) {
|
||||
rgblight_disable_noeeprom();
|
||||
}
|
||||
@@ -360,20 +359,20 @@ void rgblight_enable(void) {
|
||||
rgblight_config.enable = 1;
|
||||
// No need to update EEPROM here. rgblight_mode() will do that, actually
|
||||
//eeconfig_update_rgblight(rgblight_config.raw);
|
||||
xprintf("rgblight enable [EEPROM]: rgblight_config.enable = %u\n", rgblight_config.enable);
|
||||
dprintf("rgblight enable [EEPROM]: rgblight_config.enable = %u\n", rgblight_config.enable);
|
||||
rgblight_mode(rgblight_config.mode);
|
||||
}
|
||||
|
||||
void rgblight_enable_noeeprom(void) {
|
||||
rgblight_config.enable = 1;
|
||||
xprintf("rgblight enable [NOEEPROM]: rgblight_config.enable = %u\n", rgblight_config.enable);
|
||||
dprintf("rgblight enable [NOEEPROM]: rgblight_config.enable = %u\n", rgblight_config.enable);
|
||||
rgblight_mode_noeeprom(rgblight_config.mode);
|
||||
}
|
||||
|
||||
void rgblight_disable(void) {
|
||||
rgblight_config.enable = 0;
|
||||
eeconfig_update_rgblight(rgblight_config.raw);
|
||||
xprintf("rgblight disable [EEPROM]: rgblight_config.enable = %u\n", rgblight_config.enable);
|
||||
dprintf("rgblight disable [EEPROM]: rgblight_config.enable = %u\n", rgblight_config.enable);
|
||||
#ifdef RGBLIGHT_USE_TIMER
|
||||
rgblight_timer_disable();
|
||||
#endif
|
||||
@@ -384,7 +383,7 @@ void rgblight_disable(void) {
|
||||
|
||||
void rgblight_disable_noeeprom(void) {
|
||||
rgblight_config.enable = 0;
|
||||
xprintf("rgblight disable [noEEPROM]: rgblight_config.enable = %u\n", rgblight_config.enable);
|
||||
dprintf("rgblight disable [NOEEPROM]: rgblight_config.enable = %u\n", rgblight_config.enable);
|
||||
#ifdef RGBLIGHT_USE_TIMER
|
||||
rgblight_timer_disable();
|
||||
#endif
|
||||
@@ -471,7 +470,6 @@ void rgblight_sethsv_noeeprom_old(uint8_t hue, uint8_t sat, uint8_t val) {
|
||||
if (rgblight_config.enable) {
|
||||
LED_TYPE tmp_led;
|
||||
sethsv(hue, sat, val, &tmp_led);
|
||||
// dprintf("rgblight set hue [MEMORY]: %u,%u,%u\n", inmem_config.hue, inmem_config.sat, inmem_config.val);
|
||||
rgblight_setrgb(tmp_led.r, tmp_led.g, tmp_led.b);
|
||||
}
|
||||
}
|
||||
@@ -543,9 +541,9 @@ void rgblight_sethsv_eeprom_helper(uint8_t hue, uint8_t sat, uint8_t val, bool w
|
||||
rgblight_config.val = val;
|
||||
if (write_to_eeprom) {
|
||||
eeconfig_update_rgblight(rgblight_config.raw);
|
||||
xprintf("rgblight set hsv [EEPROM]: %u,%u,%u\n", rgblight_config.hue, rgblight_config.sat, rgblight_config.val);
|
||||
dprintf("rgblight set hsv [EEPROM]: %u,%u,%u\n", rgblight_config.hue, rgblight_config.sat, rgblight_config.val);
|
||||
} else {
|
||||
xprintf("rgblight set hsv [NOEEPROM]: %u,%u,%u\n", rgblight_config.hue, rgblight_config.sat, rgblight_config.val);
|
||||
dprintf("rgblight set hsv [NOEEPROM]: %u,%u,%u\n", rgblight_config.hue, rgblight_config.sat, rgblight_config.val);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -866,7 +864,6 @@ void rgblight_task(void) {
|
||||
uint16_t oldpos16;
|
||||
if (tick_flag) {
|
||||
tick_flag = false;
|
||||
//dprintf("rgblight animation tick\n");
|
||||
if (timer_elapsed(report_last_timer) >= 30000) {
|
||||
report_last_timer = timer_read();
|
||||
dprintf("rgblight animation tick report to slave\n");
|
||||
@@ -874,15 +871,11 @@ void rgblight_task(void) {
|
||||
}
|
||||
}
|
||||
oldpos16 = animation_status.pos16;
|
||||
//dprintf("call effect function\n");
|
||||
#endif
|
||||
animation_status.last_timer += interval_time;
|
||||
effect_func(&animation_status);
|
||||
#if defined(RGBLIGHT_SPLIT) && !defined(RGBLIGHT_SPLIT_NO_ANIMATION_SYNC)
|
||||
//dprintf("pos16, oldpos16 = %d %d\n",
|
||||
// animation_status.pos16,oldpos16);
|
||||
if (animation_status.pos16 == 0 && oldpos16 != 0) {
|
||||
//dprintf("flag on\n");
|
||||
tick_flag = true;
|
||||
}
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user