parent
7e983796e1
commit
0dafd83f72
@ -1,69 +0,0 @@
|
|||||||
/*
|
|
||||||
Copyright 2021 Leon Anavi <leon@anavi.org>
|
|
||||||
|
|
||||||
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 0xCEEB
|
|
||||||
#define PRODUCT_ID 0x0002
|
|
||||||
#define DEVICE_VER 0x0001
|
|
||||||
#define MANUFACTURER ANAVI
|
|
||||||
#define PRODUCT Macro Pad 2
|
|
||||||
|
|
||||||
/* matrix size */
|
|
||||||
#define MATRIX_ROWS 1
|
|
||||||
#define MATRIX_COLS 2
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Keyboard Matrix Assignments
|
|
||||||
*
|
|
||||||
* On this board we have direct connection: no diodes.
|
|
||||||
*/
|
|
||||||
#define DIRECT_PINS {{ B2, B0 }}
|
|
||||||
|
|
||||||
/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
|
|
||||||
#define DEBOUNCE 5
|
|
||||||
|
|
||||||
#define BACKLIGHT_PIN B1
|
|
||||||
#define BACKLIGHT_LEVELS 2
|
|
||||||
#define RGBLIGHT_SLEEP
|
|
||||||
|
|
||||||
//#define RGBLED_NUM 2
|
|
||||||
//#define RGB_DI_PIN B2
|
|
||||||
|
|
||||||
// Save as much space as we can...
|
|
||||||
#define LAYER_STATE_8BIT
|
|
||||||
#define NO_ACTION_LAYER
|
|
||||||
#define NO_ACTION_TAPPING
|
|
||||||
#define NO_ACTION_ONESHOT
|
|
||||||
#define NO_RESET
|
|
||||||
|
|
||||||
// usbconfig.h overrides
|
|
||||||
#define USB_CFG_IOPORTNAME B
|
|
||||||
#define USB_CFG_DMINUS_BIT 3
|
|
||||||
#define USB_CFG_DPLUS_BIT 4
|
|
||||||
#define USB_COUNT_SOF 0
|
|
||||||
#define USB_INTR_CFG PCMSK
|
|
||||||
#define USB_INTR_CFG_SET (1<<USB_CFG_DPLUS_BIT)
|
|
||||||
#define USB_INTR_ENABLE_BIT PCIE
|
|
||||||
#define USB_INTR_PENDING_BIT PCIF
|
|
||||||
#define USB_INTR_VECTOR SIG_PIN_CHANGE
|
|
||||||
|
|
||||||
#define COMBO_COUNT 1
|
|
||||||
#define COMBO_TERM 500
|
|
@ -1,16 +0,0 @@
|
|||||||
{
|
|
||||||
"keyboard_name": "ANAVI Macro Pad 2",
|
|
||||||
"url": "https://anavi.technology/",
|
|
||||||
"maintainer": "leon-anavi",
|
|
||||||
"width": 2,
|
|
||||||
"height": 1,
|
|
||||||
"layouts": {
|
|
||||||
"LAYOUT": {
|
|
||||||
"key_count": 2,
|
|
||||||
"layout": [
|
|
||||||
{"x":0, "y":0},
|
|
||||||
{"x":1, "y":0}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,30 +0,0 @@
|
|||||||
/* Copyright 2021 Leon Anavi <leon@anavi.org>
|
|
||||||
*
|
|
||||||
* 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_0, KC_1
|
|
||||||
)
|
|
||||||
};
|
|
||||||
|
|
||||||
const uint16_t PROGMEM test_combo[] = {KC_0, KC_1, COMBO_END};
|
|
||||||
combo_t key_combos[COMBO_COUNT] = {COMBO_ACTION(test_combo)};
|
|
||||||
|
|
||||||
void process_combo_event(uint16_t combo_index, bool pressed) {
|
|
||||||
backlight_step();
|
|
||||||
}
|
|
@ -1 +0,0 @@
|
|||||||
COMBO_ENABLE = yes
|
|
@ -1,30 +0,0 @@
|
|||||||
/* Copyright 2021 Leon Anavi <leon@anavi.org>
|
|
||||||
*
|
|
||||||
* 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(
|
|
||||||
C(KC_C), C(KC_V)
|
|
||||||
)
|
|
||||||
};
|
|
||||||
|
|
||||||
const uint16_t PROGMEM test_combo[] = {C(KC_C), C(KC_V), COMBO_END};
|
|
||||||
combo_t key_combos[COMBO_COUNT] = {COMBO_ACTION(test_combo)};
|
|
||||||
|
|
||||||
void process_combo_event(uint16_t combo_index, bool pressed) {
|
|
||||||
backlight_step();
|
|
||||||
}
|
|
@ -1 +0,0 @@
|
|||||||
COMBO_ENABLE = yes
|
|
@ -1,30 +0,0 @@
|
|||||||
/* Copyright 2021 Leon Anavi <leon@anavi.org>
|
|
||||||
*
|
|
||||||
* 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_A, KC_B
|
|
||||||
)
|
|
||||||
};
|
|
||||||
|
|
||||||
const uint16_t PROGMEM test_combo[] = {KC_A, KC_B, COMBO_END};
|
|
||||||
combo_t key_combos[COMBO_COUNT] = {COMBO_ACTION(test_combo)};
|
|
||||||
|
|
||||||
void process_combo_event(uint16_t combo_index, bool pressed) {
|
|
||||||
backlight_step();
|
|
||||||
}
|
|
@ -1 +0,0 @@
|
|||||||
COMBO_ENABLE = yes
|
|
@ -1,48 +0,0 @@
|
|||||||
/* Copyright 2021 Leon Anavi <leon@anavi.org>
|
|
||||||
*
|
|
||||||
* 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
|
|
||||||
|
|
||||||
enum custom_keycodes {
|
|
||||||
GITCOMMIT = SAFE_RANGE,
|
|
||||||
GITPUSH
|
|
||||||
};
|
|
||||||
|
|
||||||
void keyboard_post_init_user(void) {
|
|
||||||
// Set backlight to the maximum brightness
|
|
||||||
backlight_level(2);
|
|
||||||
}
|
|
||||||
|
|
||||||
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
|
||||||
switch (keycode) {
|
|
||||||
case GITCOMMIT:
|
|
||||||
if (record->event.pressed) {
|
|
||||||
SEND_STRING("git commit -s\n");
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case GITPUSH:
|
|
||||||
if (record->event.pressed) {
|
|
||||||
SEND_STRING("git push\n");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return true;
|
|
||||||
};
|
|
||||||
|
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|
||||||
[0] = LAYOUT(
|
|
||||||
GITCOMMIT, GITPUSH
|
|
||||||
)
|
|
||||||
};
|
|
@ -1,37 +0,0 @@
|
|||||||
/* Copyright 2021 Leon Anavi <leon@anavi.org>
|
|
||||||
*
|
|
||||||
* 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
|
|
||||||
|
|
||||||
/*
|
|
||||||
* The keymap contains the following shortcuts for Google Meet:
|
|
||||||
*
|
|
||||||
* Ctrl+D: Mute/unmute my audio
|
|
||||||
* Ctrl+E: Start/stop video
|
|
||||||
*/
|
|
||||||
|
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|
||||||
[0] = LAYOUT(
|
|
||||||
LCTL(KC_D), LCTL(KC_E)
|
|
||||||
)
|
|
||||||
};
|
|
||||||
|
|
||||||
const uint16_t PROGMEM test_combo[] = {LCTL(KC_D), LCTL(KC_E), COMBO_END};
|
|
||||||
combo_t key_combos[COMBO_COUNT] = {COMBO_ACTION(test_combo)};
|
|
||||||
|
|
||||||
void process_combo_event(uint16_t combo_index, bool pressed) {
|
|
||||||
backlight_step();
|
|
||||||
}
|
|
@ -1 +0,0 @@
|
|||||||
COMBO_ENABLE = yes
|
|
@ -1,36 +0,0 @@
|
|||||||
/* Copyright 2021 Leon Anavi <leon@anavi.org>
|
|
||||||
*
|
|
||||||
* 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
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Jitsi Meet keyboard shortcuts:
|
|
||||||
* V - Start or stop your camera
|
|
||||||
* M - Mute or unmute your microphone
|
|
||||||
*/
|
|
||||||
|
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|
||||||
[0] = LAYOUT(
|
|
||||||
KC_M, KC_V
|
|
||||||
)
|
|
||||||
};
|
|
||||||
|
|
||||||
const uint16_t PROGMEM test_combo[] = {KC_M, KC_V, COMBO_END};
|
|
||||||
combo_t key_combos[COMBO_COUNT] = {COMBO_ACTION(test_combo)};
|
|
||||||
|
|
||||||
void process_combo_event(uint16_t combo_index, bool pressed) {
|
|
||||||
backlight_step();
|
|
||||||
}
|
|
@ -1 +0,0 @@
|
|||||||
COMBO_ENABLE = yes
|
|
@ -1,41 +0,0 @@
|
|||||||
/* Copyright 2021 Leon Anavi <leon@anavi.org>
|
|
||||||
*
|
|
||||||
* 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
|
|
||||||
|
|
||||||
/*
|
|
||||||
* This keymap contains the following shortcuts for Microsoft Teams
|
|
||||||
* on MS Windows and GNU/Linux distributions:
|
|
||||||
*
|
|
||||||
* Ctrl+Shift+M: Toggle mute
|
|
||||||
* Ctrl+Shift+O: Toggle video (doesn't work in a web browser)
|
|
||||||
*
|
|
||||||
* NOTE: Mac users should replace Ctrl with Command in all
|
|
||||||
* shortcuts
|
|
||||||
*/
|
|
||||||
|
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|
||||||
[0] = LAYOUT(
|
|
||||||
LCTL(LSFT(KC_M)), LCTL(LSFT(KC_O))
|
|
||||||
)
|
|
||||||
};
|
|
||||||
|
|
||||||
const uint16_t PROGMEM test_combo[] = {LCTL(LSFT(KC_M)), LCTL(LSFT(KC_O)), COMBO_END};
|
|
||||||
combo_t key_combos[COMBO_COUNT] = {COMBO_ACTION(test_combo)};
|
|
||||||
|
|
||||||
void process_combo_event(uint16_t combo_index, bool pressed) {
|
|
||||||
backlight_step();
|
|
||||||
}
|
|
@ -1 +0,0 @@
|
|||||||
COMBO_ENABLE = yes
|
|
@ -1,23 +0,0 @@
|
|||||||
/* Copyright 2021 Leon Anavi <leon@anavi.org>
|
|
||||||
*
|
|
||||||
* 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_AUDIO_MUTE, BL_TOGG
|
|
||||||
)
|
|
||||||
};
|
|
@ -1,2 +0,0 @@
|
|||||||
EXTRAKEY_ENABLE = yes
|
|
||||||
BACKLIGHT_ENABLE = no
|
|
@ -1,41 +0,0 @@
|
|||||||
/* Copyright 2021 Leon Anavi <leon@anavi.org>
|
|
||||||
*
|
|
||||||
* 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
|
|
||||||
|
|
||||||
/*
|
|
||||||
* The keymap contains the following shortcuts for Skype on
|
|
||||||
* MS Windows and GNU/Linux distributions:
|
|
||||||
*
|
|
||||||
* Ctrl+M: Mute/unmute microphone
|
|
||||||
* Ctrl+Shift+K: Start/stop camera
|
|
||||||
*
|
|
||||||
* NOTE: Mac users should change the shortcut to toggle the mic
|
|
||||||
* to Command+Shift+M, for example KC_LGUI(LSFT(KC_M))
|
|
||||||
*/
|
|
||||||
|
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|
||||||
[0] = LAYOUT(
|
|
||||||
LCTL(KC_M), LCTL(LSFT(KC_K))
|
|
||||||
)
|
|
||||||
};
|
|
||||||
|
|
||||||
const uint16_t PROGMEM test_combo[] = {LCTL(KC_M), LCTL(LSFT(KC_K)), COMBO_END};
|
|
||||||
combo_t key_combos[COMBO_COUNT] = {COMBO_ACTION(test_combo)};
|
|
||||||
|
|
||||||
void process_combo_event(uint16_t combo_index, bool pressed) {
|
|
||||||
backlight_step();
|
|
||||||
}
|
|
@ -1 +0,0 @@
|
|||||||
COMBO_ENABLE = yes
|
|
@ -1,3 +0,0 @@
|
|||||||
#pragma once
|
|
||||||
|
|
||||||
#define TAPPING_TERM 500
|
|
@ -1,35 +0,0 @@
|
|||||||
/* Copyright 2021 Leon Anavi <leon@anavi.org>
|
|
||||||
*
|
|
||||||
* 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
|
|
||||||
|
|
||||||
enum layers {
|
|
||||||
_BASE = 0,
|
|
||||||
};
|
|
||||||
|
|
||||||
enum {
|
|
||||||
TD_BC = 0
|
|
||||||
};
|
|
||||||
|
|
||||||
qk_tap_dance_action_t tap_dance_actions[] = {
|
|
||||||
[TD_BC] = ACTION_TAP_DANCE_DOUBLE(KC_B, KC_C)
|
|
||||||
};
|
|
||||||
|
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|
||||||
[_BASE] = LAYOUT(
|
|
||||||
KC_A, TD(TD_BC)
|
|
||||||
)
|
|
||||||
};
|
|
@ -1 +0,0 @@
|
|||||||
TAP_DANCE_ENABLE = yes
|
|
@ -1,23 +0,0 @@
|
|||||||
/* Copyright 2021 Leon Anavi <leon@anavi.org>
|
|
||||||
*
|
|
||||||
* 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_VOLU, KC_VOLD
|
|
||||||
)
|
|
||||||
};
|
|
@ -1,2 +0,0 @@
|
|||||||
EXTRAKEY_ENABLE = yes
|
|
||||||
BACKLIGHT_ENABLE = no
|
|
@ -1,37 +0,0 @@
|
|||||||
/* Copyright 2021 Leon Anavi <leon@anavi.org>
|
|
||||||
*
|
|
||||||
* 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
|
|
||||||
|
|
||||||
/*
|
|
||||||
* The keymap contains the following shortcuts for Zoom meeting:
|
|
||||||
*
|
|
||||||
* Alt+A: Mute/unmute my audio
|
|
||||||
* Alt+V: Start/stop video
|
|
||||||
*/
|
|
||||||
|
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|
||||||
[0] = LAYOUT(
|
|
||||||
LALT(KC_A), LALT(KC_V)
|
|
||||||
)
|
|
||||||
};
|
|
||||||
|
|
||||||
const uint16_t PROGMEM test_combo[] = {LALT(KC_A), LALT(KC_V), COMBO_END};
|
|
||||||
combo_t key_combos[COMBO_COUNT] = {COMBO_ACTION(test_combo)};
|
|
||||||
|
|
||||||
void process_combo_event(uint16_t combo_index, bool pressed) {
|
|
||||||
backlight_step();
|
|
||||||
}
|
|
@ -1 +0,0 @@
|
|||||||
COMBO_ENABLE = yes
|
|
@ -1,18 +0,0 @@
|
|||||||
/*
|
|
||||||
Copyright 2021 Leon Anavi <leon@anavi.org>
|
|
||||||
|
|
||||||
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 "macropad2.h"
|
|
@ -1,35 +0,0 @@
|
|||||||
/*
|
|
||||||
Copyright 2021 Leon Anavi <leon@anavi.org>
|
|
||||||
|
|
||||||
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( \
|
|
||||||
K01, K02 \
|
|
||||||
) \
|
|
||||||
{ \
|
|
||||||
{ K01, K02 }, \
|
|
||||||
}
|
|
@ -1,55 +0,0 @@
|
|||||||
# ANAVI Macro Pad 2
|
|
||||||
|
|
||||||
|
|
||||||
ANAVI Macro Pad 2 is an open source, custom programmable, tiny 2% mechanical keyboard/keypad with backlit. Each of the two keys allows you to reprogram and use it as macro keypad or even dedicated shortcut keys.
|
|
||||||
|
|
||||||
ANAVI Macro Pad 2 can be customized for multiple use cases across various industries. It is the perfect fit for copy and paste as well as video conferencing applications. You can easily turn the camera or microphone on or off. Various keymaps are available, including for Zoom, Jitsi, Skype, Microsoft Teams, Google Meet, and Git.
|
|
||||||
|
|
||||||
Powered by Microchip ATtiny 85 microcontroller and with microUSB connector. Only free and open source software tools like KiCad, OpenSCAD, and Inkscape were used to design ANAVI Macro Pad 2. ANAVI Macro Pad 2 relies on QMK firmware, Micronucleus and V-USB.
|
|
||||||
|
|
||||||
* Keyboard Maintainer: [Leon Anavi](https://github.com/leon-anavi)
|
|
||||||
* Hardware Supported: ANAVI Macro Pad 2
|
|
||||||
* Hardware Availability: [PCB Files](https://github.com/AnaviTechnology/anavi-macro-pad-2)
|
|
||||||
* [User's Manual](https://github.com/AnaviTechnology/anavi-docs/blob/master/anavi-macro-pad-2/anavi-macro-pad-2.md)
|
|
||||||
|
|
||||||
**Note**: Due to limited firmware space, a _**lot**_ of features have to be disabled to get a functioning QMK based keyboard.
|
|
||||||
|
|
||||||
Make example for this keyboard (after setting up your build environment):
|
|
||||||
|
|
||||||
make anavi/macropad2: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).
|
|
||||||
|
|
||||||
## Flashing
|
|
||||||
### Prerequisites
|
|
||||||
|
|
||||||
```bash
|
|
||||||
git clone https://github.com/micronucleus/micronucleus.git
|
|
||||||
cd micronucleus/commandline/
|
|
||||||
sudo make install
|
|
||||||
```
|
|
||||||
|
|
||||||
On GNU/Linux distributions, you will need proper privileges to access the MCU. You can either use `sudo` when flashing firmware, or place [these files](https://github.com/micronucleus/micronucleus/blob/master/commandline/49-micronucleus.rules) in /etc/udev/rules.d/. Once added run the following:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
sudo udevadm control --reload-rules
|
|
||||||
sudo udevadm trigger
|
|
||||||
```
|
|
||||||
|
|
||||||
### Instructions
|
|
||||||
|
|
||||||
* Run one of the following commands:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
make anavi/macropad2:default:flash
|
|
||||||
|
|
||||||
# or directly with...
|
|
||||||
micronucleus --run <firmware.hex>
|
|
||||||
```
|
|
||||||
|
|
||||||
* Plug ANAVI Macro Pad 2 to the USB port and the flashing procedure should start
|
|
||||||
|
|
||||||
### Recovery
|
|
||||||
|
|
||||||
* [Original Firmware](https://github.com/AnaviTechnology/anavi-macro-pad-2/tree/main/bootloader)
|
|
||||||
* [Bootloader Repair](https://digistump.com/wiki/digispark/tutorials/proisp)
|
|
@ -1,34 +0,0 @@
|
|||||||
# MCU name
|
|
||||||
MCU = attiny85
|
|
||||||
|
|
||||||
# Bootloader selection
|
|
||||||
BOOTLOADER = micronucleus
|
|
||||||
OPT_DEFS += -DBOOTLOADER_SIZE=1862
|
|
||||||
PROGRAM_CMD = micronucleus --run $(BUILD_DIR)/$(TARGET).hex
|
|
||||||
|
|
||||||
# Build Options
|
|
||||||
# change yes to no to disable
|
|
||||||
#
|
|
||||||
BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration
|
|
||||||
MOUSEKEY_ENABLE = no # Mouse keys
|
|
||||||
EXTRAKEY_ENABLE = no # Audio control and System control
|
|
||||||
CONSOLE_ENABLE = no # Console for debug
|
|
||||||
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 = no # USB Nkey Rollover
|
|
||||||
BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality
|
|
||||||
RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
|
|
||||||
MIDI_ENABLE = no # MIDI support
|
|
||||||
UNICODE_ENABLE = no # Unicode
|
|
||||||
BLUETOOTH_ENABLE = no # Enable Bluetooth
|
|
||||||
AUDIO_ENABLE = no # Audio output
|
|
||||||
|
|
||||||
# Save as much space as we can...
|
|
||||||
LTO_ENABLE = yes
|
|
||||||
GRAVE_ESC_ENABLE = no
|
|
||||||
MAGIC_ENABLE = no
|
|
||||||
SPACE_CADET_ENABLE = no
|
|
||||||
|
|
||||||
BACKLIGHT_DRIVER = software
|
|
@ -36,7 +36,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||||||
#define RGBLIGHT_EFFECT_RAINBOW_SWIRL
|
#define RGBLIGHT_EFFECT_RAINBOW_SWIRL
|
||||||
#define RGBLIGHT_EFFECT_SNAKE
|
#define RGBLIGHT_EFFECT_SNAKE
|
||||||
#define RGBLIGHT_EFFECT_KNIGHT
|
#define RGBLIGHT_EFFECT_KNIGHT
|
||||||
#define RGBLIGHT_EFFECT_CHRISTMAS
|
|
||||||
#define RGBLIGHT_EFFECT_STATIC_GRADIENT
|
#define RGBLIGHT_EFFECT_STATIC_GRADIENT
|
||||||
//#define RGBLIGHT_EFFECT_RGB_TEST
|
//#define RGBLIGHT_EFFECT_RGB_TEST
|
||||||
//#define RGBLIGHT_EFFECT_ALTERNATING
|
//#define RGBLIGHT_EFFECT_ALTERNATING
|
||||||
|
Loading…
Reference in New Issue
Block a user