Merge remote-tracking branch 'upstream/master'

example_keyboards
Joshua T 8 years ago
commit e9a501d447

@ -20,7 +20,7 @@ RUN apt-get install --no-install-recommends -y build-essential \
RUN apt-get clean
RUN rm -rf /var/lib/apt/lists/*
ENV keyboard=ergodox_ez
ENV keyboard=ergodox
ENV keymap=default
VOLUME /qmk

2
Vagrantfile vendored

@ -91,7 +91,7 @@ Vagrant.configure(2) do |config|
Or you can copy and paste the example line below.
cd /vagrant; cd keyboards; cd ergodox_ez; make clean; make
cd /vagrant; cd keyboards; cd ergodox; make clean; make
EOT

@ -34,7 +34,7 @@ You can find some keyboard specific projects under `converter` and `keyboard` di
* [atomic](keyboards/atomic/) - [Atomic] Ortholinear 60% keyboard
### Ergodox EZ
* [ergodox_ez](keyboards/ergodox_ez) - [Ergodox_EZ] Assembled split keyboard
* [ergodox_ez](keyboards/ergodox/ez) - [Ergodox_EZ] Assembled split keyboard
## Other projects

@ -20,7 +20,7 @@ See [/doc/keymap.md](/doc/keymap.md).
## Flashing the firmware
The "easy" way to flash the firmware is using a tool from your host OS like the Teensy programming app. [ErgoDox EZ](/keyboards/ergodox_ez/readme.md) gives a great example.
The "easy" way to flash the firmware is using a tool from your host OS like the Teensy programming app. [ErgoDox EZ](/keyboards/ergodox/readme.md) gives a great example.
If you want to program via the command line you can uncomment the ['modifyvm'] lines in the Vagrantfile to enable the USB passthrough into Linux and then program using the command line tools like dfu-util/dfu-programmer or you can install the Teensy CLI version.

@ -0,0 +1,34 @@
#----------------------------------------------------------------------------
# On command line:
#
# make = Make software.
#
# make clean = Clean out built project files.
#
# That's pretty much all you need. To compile, always go make clean,
# followed by make.
#
# For advanced users only:
# make teensy = Download the hex file to the device, using teensy_loader_cli.
# (must have teensy_loader_cli installed).
#
#----------------------------------------------------------------------------
SUBPROJECT_DEFAULT = ez
# Build Options
# comment out to disable the options.
#
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 ?= yes # Commands for debug and configuration
CUSTOM_MATRIX ?= yes # Custom matrix file for the ErgoDox EZ
SLEEP_LED_ENABLE ?= yes # Breathing sleep LED during USB suspend
NKRO_ENABLE ?= yes # USB Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
MIDI_ENABLE ?= no # MIDI controls
UNICODE_ENABLE ?= yes # Unicode
ifndef QUANTUM_DIR
include ../../Makefile
endif

@ -0,0 +1,36 @@
#ifndef KEYBOARDS_ERGODOX_CONFIG_H_
#define KEYBOARDS_ERGODOX_CONFIG_H_
#define MOUSEKEY_DELAY 100
#define MOUSEKEY_INTERVAL 20
#define MOUSEKEY_MAX_SPEED 3
#define MOUSEKEY_TIME_TO_MAX 10
#define TAPPING_TOGGLE 1
/* define if matrix has ghost */
//#define MATRIX_HAS_GHOST
#define TAPPING_TERM 200
#define IGNORE_MOD_TAP_INTERRUPT // this makes it possible to do rolling combos (zx) with keys that convert to other keys on hold (z becomes ctrl when you hold it, and when this option isn't enabled, z rapidly followed by x actually sends Ctrl-x. That's bad.)
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE
/* key combination for command */
#define IS_COMMAND() ( \
keyboard_report->mods == (MOD_BIT(KC_LCTL) | MOD_BIT(KC_RCTL)) || \
keyboard_report->mods == (MOD_BIT(KC_LSFT) | MOD_BIT(KC_RSFT)) \
)
#ifdef SUBPROJECT_ez
#include "ez/config.h"
#endif
#ifdef SUBPROJECT_infinity
#include "infinity/config.h"
#endif
#endif /* KEYBOARDS_ERGODOX_CONFIG_H_ */

@ -0,0 +1,10 @@
#ifndef KEYBOARDS_ERGODOX_ERGODOX_H_
#define KEYBOARDS_ERGODOX_ERGODOX_H_
#ifdef SUBPROJECT_ez
#include "ez.h"
#endif
#ifdef SUBPROJECT_infinity
#include "infinity.h"
#endif
#endif /* KEYBOARDS_ERGODOX_ERGODOX_H_ */

@ -70,17 +70,7 @@ OPT_DEFS += -DBOOTLOADER_SIZE=512
# Build Options
# comment out to disable the options.
#
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 ?= yes # Commands for debug and configuration
CUSTOM_MATRIX ?= yes # Custom matrix file for the ErgoDox EZ
SLEEP_LED_ENABLE ?= yes # Breathing sleep LED during USB suspend
NKRO_ENABLE ?= yes # USB Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
MIDI_ENABLE ?= no # MIDI controls
UNICODE_ENABLE ?= yes # Unicode
ifndef QUANTUM_DIR
include ../../Makefile
include ../../../Makefile
endif

@ -16,10 +16,10 @@ You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef CONFIG_H
#define CONFIG_H
#ifndef ERGODOX_EZ_CONFIG_H
#define ERGODOX_EZ_CONFIG_H
#include "config_common.h"
#include "../config.h"
/* USB Device descriptor parameter */
#define VENDOR_ID 0xFEED
@ -33,34 +33,15 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define MATRIX_ROWS 14
#define MATRIX_COLS 6
#define MOUSEKEY_DELAY 100
#define MOUSEKEY_INTERVAL 20
#define MOUSEKEY_MAX_SPEED 3
#define MOUSEKEY_TIME_TO_MAX 10
#define TAPPING_TOGGLE 1
/* define if matrix has ghost */
//#define MATRIX_HAS_GHOST
/* number of backlight levels */
#define BACKLIGHT_LEVELS 3
#define LED_BRIGHTNESS_LO 15
#define LED_BRIGHTNESS_HI 255
/* Set 0 if debouncing isn't needed */
#define DEBOUNCE 5
#define TAPPING_TERM 200
#define IGNORE_MOD_TAP_INTERRUPT // this makes it possible to do rolling combos (zx) with keys that convert to other keys on hold (z becomes ctrl when you hold it, and when this option isn't enabled, z rapidly followed by x actually sends Ctrl-x. That's bad.)
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE
/* key combination for command */
#define IS_COMMAND() ( \
keyboard_report->mods == (MOD_BIT(KC_LCTL) | MOD_BIT(KC_RCTL)) || \
keyboard_report->mods == (MOD_BIT(KC_LSFT) | MOD_BIT(KC_RSFT)) \
)
/*
* Feature disable options

@ -1,4 +1,4 @@
#include "ergodox_ez.h"
#include "ez.h"
#include "i2cmaster.h"
bool i2c_initialized = 0;

@ -33,7 +33,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#include "debug.h"
#include "util.h"
#include "matrix.h"
#include "ergodox_ez.h"
#include "ez.h"
#include "i2cmaster.h"
#ifdef DEBUG_MATRIX_SCAN_RATE
#include "timer.h"

@ -52,34 +52,26 @@ ARMV = 7
# Vector table for application
# 0x00000000-0x00001000 area is occupied by bootlaoder.*/
# The CORTEX_VTOR... is needed only for MCHCK/Infinity KB
OPT_DEFS = -DCORTEX_VTOR_INIT=0x00002000
OPT_DEFS += -DCORTEX_VTOR_INIT=0x00002000
# Build Options
# comment out to disable the options.
#
BOOTMAGIC_ENABLE ?= yes # Virtual DIP switch configuration
## (Note that for BOOTMAGIC on Teensy LC you have to use a custom .ld script.)
MOUSEKEY_ENABLE ?= yes # Mouse keys
EXTRAKEY_ENABLE ?= yes # Audio control and System control
CONSOLE_ENABLE ?= yes # Console for debug
COMMAND_ENABLE ?= yes # Commands for debug and configuration
SLEEP_LED_ENABLE ?= yes # Breathing sleep LED during USB suspend
NKRO_ENABLE ?= yes # USB Nkey Rollover
CUSTOM_MATRIX ?= yes # Custom matrix file
SERIAL_LINK_ENABLE = yes
VISUALIZER_ENABLE ?= yes
VISUALIZER_ENABLE ?= no #temporarily disabled to make everything compile
LCD_ENABLE ?= yes
LED_ENABLE ?= yes
LCD_BACKLIGHT_ENABLE ?= yes
ifndef QUANTUM_DIR
include ../../../Makefile
endif
ifdef LCD_ENABLE
include drivers/gdisp/st7565ergodox/driver.mk
include $(SUBPROJECT_PATH)/drivers/gdisp/st7565ergodox/driver.mk
endif
ifdef LED_ENABLE
include drivers/gdisp/IS31FL3731C/driver.mk
include $(SUBPROJECT_PATH)/drivers/gdisp/IS31FL3731C/driver.mk
endif
ifndef QUANTUM_DIR
include ../../Makefile
endif

@ -15,8 +15,10 @@ You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef CONFIG_H
#define CONFIG_H
#ifndef INFINITY_ERGODOX_CONFIG_H
#define INFINITY_ERGODOX_CONFIG_H
#include "../config.h"
/* USB Device descriptor parameter */
@ -35,25 +37,18 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define MATRIX_COLS 5
#define LOCAL_MATRIX_ROWS 9
/* number of backlight levels */
#define BACKLIGHT_LEVELS 3
#define LED_BRIGHTNESS_LO 15
#define LED_BRIGHTNESS_HI 255
/* define if matrix has ghost */
//#define MATRIX_HAS_GHOST
/* Set 0 if debouncing isn't needed */
#define DEBOUNCE 5
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
//#define LOCKING_SUPPORT_ENABLE
/* Locking resynchronize hack */
//#define LOCKING_RESYNC_ENABLE
/* key combination for command */
#define IS_COMMAND() ( \
keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \
)
/* Keymap for Infiity prototype */
#define INFINITY_PROTOTYPE
#define SERIAL_LINK_BAUD 562500
#define SERIAL_LINK_THREAD_PRIORITY (NORMALPRIO - 1)
// The visualizer needs gfx thread priorities

@ -1,8 +1,10 @@
#include "infinity_ergodox.h"
#include "infinity.h"
#include "ch.h"
#include "hal.h"
#include "serial_link/system/serial_link.h"
#ifdef VISUALIZER_ENABLE
#include "lcd_backlight.h"
#endif
void init_serial_link_hal(void) {
PORTA->PCR[1] = PORTx_PCRn_PE | PORTx_PCRn_PS | PORTx_PCRn_PFE | PORTx_PCRn_MUX(2);
@ -36,7 +38,7 @@ void init_serial_link_hal(void) {
// Using a higher pre-scalar without flicker is possible but FTM0_MOD will need to be reduced
// Which will reduce the brightness range
#define PRESCALAR_DEFINE 0
#ifdef VISUALIZER_ENABLE
void lcd_backlight_hal_init(void) {
// Setup Backlight
SIM->SCGC6 |= SIM_SCGC6_FTM0;
@ -74,3 +76,57 @@ void lcd_backlight_hal_color(uint16_t r, uint16_t g, uint16_t b) {
CHANNEL_GREEN.CnV = g;
CHANNEL_BLUE.CnV = b;
}
#endif
__attribute__ ((weak))
void matrix_init_user(void) {
}
__attribute__ ((weak))
void matrix_scan_user(void) {
}
void matrix_init_kb(void) {
// put your keyboard start-up code here
// runs once when the firmware starts up
matrix_init_user();
}
void matrix_scan_kb(void) {
// put your looping keyboard code here
// runs every cycle (a lot)
matrix_scan_user();
}
void ergodox_board_led_on(void){
}
void ergodox_right_led_1_on(void){
}
void ergodox_right_led_2_on(void){
}
void ergodox_right_led_3_on(void){
}
void ergodox_right_led_on(uint8_t led){
}
void ergodox_board_led_off(void){
}
void ergodox_right_led_1_off(void){
}
void ergodox_right_led_2_off(void){
}
void ergodox_right_led_3_off(void){
}
void ergodox_right_led_off(uint8_t led){
}

@ -0,0 +1,110 @@
#ifndef KEYBOARDS_ERGODOX_INFINITY_INFINITY_H_
#define KEYBOARDS_ERGODOX_INFINITY_INFINITY_H_
#include "quantum.h"
void ergodox_board_led_on(void);
void ergodox_right_led_1_on(void);
void ergodox_right_led_2_on(void);
void ergodox_right_led_3_on(void);
void ergodox_right_led_on(uint8_t led);
void ergodox_board_led_off(void);
void ergodox_right_led_1_off(void);
void ergodox_right_led_2_off(void);
void ergodox_right_led_3_off(void);
void ergodox_right_led_off(uint8_t led);
inline void ergodox_led_all_on(void)
{
ergodox_board_led_on();
ergodox_right_led_1_on();
ergodox_right_led_2_on();
ergodox_right_led_3_on();
}
inline void ergodox_led_all_off(void)
{
ergodox_board_led_off();
ergodox_right_led_1_off();
ergodox_right_led_2_off();
ergodox_right_led_3_off();
}
inline void ergodox_right_led_1_set(uint8_t n){
if (n) {
ergodox_right_led_1_on();
} else {
ergodox_right_led_1_off();
}
}
inline void ergodox_right_led_2_set(uint8_t n){
if (n) {
ergodox_right_led_2_on();
} else {
ergodox_right_led_2_off();
}
}
inline void ergodox_right_led_3_set(uint8_t n){
if (n) {
ergodox_right_led_3_on();
} else {
ergodox_right_led_3_off();
}
}
inline void ergodox_right_led_set(uint8_t led, uint8_t n){
if (n) {
ergodox_right_led_on(led);
} else {
ergodox_right_led_off(led);
}
}
inline void ergodox_led_all_set(uint8_t n) {
ergodox_right_led_1_set(n);
ergodox_right_led_2_set(n);
ergodox_right_led_3_set(n);
}
#define KEYMAP( \
A80, A70, A60, A50, A40, A30, A20, \
A81, A71, A61, A51, A41, A31, A21, \
A82, A72, A62, A52, A42, A32, \
A83, A73, A63, A53, A43, A33, A23, \
A84, A74, A64, A54, A44, \
A13, A03, \
A04, \
A34, A24, A14, \
B20, B30, B40, B50, B60, B70, B80, \
B21, B31, B41, B51, B61, B71, B81, \
B32, B42, B52, B62, B72, B82, \
B23, B33, B43, B53, B63, B73, B83, \
B44, B54, B64, B74, B84, \
B03, B13, \
B04, \
B14, B24, B34 \
) { \
{ KC_NO, KC_NO, KC_NO, A03, A04 }, \
{ KC_NO, KC_NO, KC_NO, A13, A14 }, \
{ A20, A21, KC_NO, A23, A24 }, \
{ A30, A31, A32, A33, A34 }, \
{ A40, A41, A42, A43, A44 }, \
{ A50, A51, A52, A53, A54 }, \
{ A60, A61, A62, A63, A64 }, \
{ A70, A71, A72, A73, A74 }, \
{ A80, A81, A82, A83, A84 }, \
{ KC_NO, KC_NO, KC_NO, B03, B04 }, \
{ KC_NO, KC_NO, KC_NO, B13, B14 }, \
{ B20, B21, KC_NO, B23, B24 }, \
{ B30, B31, B32, B33, B34 }, \
{ B40, B41, B42, B43, B44 }, \
{ B50, B51, B52, B53, B54 }, \
{ B60, B61, B62, B63, B64 }, \
{ B70, B71, B72, B73, B74 }, \
{ B80, B81, B82, B83, B84 } \
}
#endif /* KEYBOARDS_ERGODOX_INFINITY_INFINITY_H_ */

@ -63,6 +63,8 @@ void matrix_init(void)
memset(matrix, 0, MATRIX_ROWS);
memset(matrix_debouncing, 0, LOCAL_MATRIX_ROWS);
matrix_init_quantum();
}
uint8_t matrix_scan(void)
@ -127,6 +129,7 @@ uint8_t matrix_scan(void)
}
debouncing = false;
}
matrix_scan_quantum();
return 1;
}

Before

Width:  |  Height:  |  Size: 79 KiB

After

Width:  |  Height:  |  Size: 79 KiB

@ -1,4 +1,4 @@
#include "ergodox_ez.h"
#include "ergodox.h"
#include "debug.h"
#include "action_layer.h"

@ -1,4 +1,4 @@
#include "ergodox_ez.h"
#include "ergodox.h"
#include "debug.h"
#include "action_layer.h"
#include "keymap_german.h"

@ -1,4 +1,4 @@
#include "ergodox_ez.h"
#include "ergodox.h"
#include "debug.h"
#include "action_layer.h"

Before

Width:  |  Height:  |  Size: 814 KiB

After

Width:  |  Height:  |  Size: 814 KiB

@ -4,13 +4,19 @@ SLEEP_LED_ENABLE=no
UNICODE_ENABLE=no
FORCE_NKRO ?= yes
DEBUG_ENABLE = no
CONSOLE_ENABLE = yes
CONSOLE_ENABLE = no
TAP_DANCE_ENABLE = yes
KEYLOGGER_ENABLE ?= yes
ifeq (${FORCE_NKRO},yes)
OPT_DEFS += -DFORCE_NKRO
endif
ifeq (${KEYLOGGER_ENABLE},yes)
OPT_DEFS += -DKEYLOGGER_ENABLE
CONSOLE_ENABLE = yes
endif
KEYMAP_VERSION = $(shell \
if [ -d "${KEYMAP_PATH}/.git" ]; then \
cd "${KEYMAP_PATH}" && git describe --abbrev=6 --dirty --always --tags --match 'v*' 2>/dev/null; \

@ -50,6 +50,7 @@ At its core, this is a Dvorak layout, with some minor changes. The more interest
- `LEAD a` makes the [ADORE layer](#adore-layer) the default.
- `LEAD v` prints the firmware version, the keyboard and the keymap.
- `LEAD d` toggles logging keypress positions to the HID console.
- `LEAD t` toggles time travel. Figuring out the current `date` is left as an exercise to the reader.
## ADORE layer
@ -148,6 +149,14 @@ The keymap default to forcing NKRO, which seems to upset Windows, and except the
# Changelog
## v1.4 - 2016-07-29
* When toggling the key logging on or off, the LEDs will do a little dance.
* The keylogger is now optional, but enabled by default. Use `KEYLOGGER_ENABLE=no` on the `make` command line to disable it.
* The `TAB`/`ARRW` key was turned into a tap-dance key, allowing one to toggle the **ARROW** layer on by double-tapping, and as such, avoid the need to hold the key.
* The `-`/`_` key was turned into a tap-dance key too.
* There is now a way to travel time with the keyboard, toggle the feature on by hitting `LEAD t`.
## v1.3 - 2016-07-06
* Added support for logging keys, by pressing `LEAD d`. Also included is a tool to generate a [heatmap](#heatmap) out of the logs.

@ -0,0 +1,533 @@
[
{
"backcolor": "#ffffff",
"name": "ErgoDox - algernon's layout: Heatmap",
"author": "Gergely Nagy <kbd@gergo.csillger.hu>",
"notes": "See [here](https://github.com/algernon/ergodox-layout#readme) for the QMK keymap source.",
"switchMount": "cherry",
"switchBrand": "gateron",
"switchType": "KS-3-Tea",
"pcb": true,
"css": ".keyborder { -webkit-filter: blur(5px); filter: blur(5px); } .keytop { -webkit-filter: blur(10px); } .keylabels { border: 1px solid black; }"
},
[
{
"x": 3.5,
"c": "#a7d0db",
"fa": [
0,
0,
2
]
},
"#\n3\nF3",
{
"x": 10.5,
"c": "#a7d0db",
"t": "#000000",
"a": 4,
"fa": [
0,
0,
2
]
},
"*\n8\nF8"
],
[
{
"y": -0.875,
"x": 2.5,
"c": "#bfbad1",
"t": "#0d0d0b"
},
"@\n2\nF2",
{
"x": 1,
"c": "#7adabd",
"t": "#000000"
},
"$\n4\nF4",
{
"x": 8.5
},
"&\n7\nF7",
{
"x": 1,
"c": "#bfbad1",
"t": "#0d0d0b"
},
"(\n9\nF9"
],
[
{
"y": -0.875,
"x": 5.5,
"c": "#7adabd",
"t": "#000000"
},
"%\n5\nF5",
{
"c": "#f9cd31",
"a": 7,
"f": 2
},
"STENO",
{
"x": 4.5,
"f": 6
},
"<i class='mss mss-Unicode-Option-3'></i>",
{
"c": "#7adabd",
"a": 4,
"f": 3,
"fa": [
0,
0,
2
]
},
"^\n6\nF6"
],
[
{
"y": -0.875,
"c": "#ffb2d2",
"f": 3,
"w": 1.5
},
"\n\n~\n`",
{
"t": "#0d0d0b"
},
"!\n1\nF1",
{
"x": 14.5
},
")\n0\nF10",
{
"a": 7,
"w": 1.5
},
"F11"
],
[
{
"y": -0.375,
"x": 3.5,
"c": "#a7d0db",
"t": "#000000",
"a": 6
},
"L",
{
"x": 10.5
},
"C"
],
[
{
"y": -0.875,
"x": 2.5,
"c": "#bfbad1",
"t": "#0d0d0b",
"a": 4
},
">\n.",
{
"x": 1,
"c": "#7adabd",
"t": "#000000",
"a": 6
},
"W",
{
"x": 8.5
},
"H",
{
"x": 1,
"c": "#bfbad1",
"t": "#0d0d0b"
},
"P"
],
[
{
"y": -0.875,
"x": 5.5,
"c": "#7adabd",
"t": "#000000"
},
"M",
{
"c": "#93c9b7",
"a": 4,
"h": 1.5
},
"{\n[",
{
"x": 4.5,
"h": 1.5
},
"}\n]",
{
"c": "#7adabd",
"a": 6
},
"F"
],
[
{
"y": -0.875,
"c": "#ffb07b",
"t": "#0d0d0b",
"f": 6,
"w": 1.5
},
"<i class='fa fa-fast-backward'></i>\n\n<i class='fa fa-fast-forward'></i>",
{
"c": "#ffb2d2",
"a": 4,
"f": 3
},
"<\n,",
{
"x": 14.5,
"a": 6
},
"Y",
{
"a": 4,
"w": 1.5
},
"|\n\\"
],
[
{
"y": -0.375,
"x": 3.5,
"c": "#a7d0db",
"t": "#000000",
"a": 6
},
"E",
{
"x": 10.5
},
"T"
],
[
{
"y": -0.875,
"x": 2.5,
"c": "#bfbad1",
"t": "#0d0d0b"
},
"O",
{
"x": 1,
"c": "#7adabd",
"t": "#000000",
"n": true
},
"I",
{
"x": 8.5,
"n": true
},
"R",
{
"x": 1,
"c": "#bfbad1",
"t": "#0d0d0b"
},
"N"
],
[
{
"y": -0.875,
"x": 5.5,
"c": "#7adabd",
"t": "#000000"
},
"U",
{
"x": 6.5
},
"D"
],
[
{
"y": -0.875,
"c": "#ffb2d2",
"t": "#0d0d0b",
"fa": [
6
],
"w": 1.5
},
"<i class='fa fa-arrows'></i>\n\nTab",
{
"f": 3
},
"A",
{
"x": 14.5,
"f": 3
},
"S",
{
"a": 4,
"fa": [
0,
0,
0,
0,
0,
0,
0,
6
],
"w": 1.5
},
"+\n="
],
[
{
"y": -0.625,
"x": 6.5,
"c": "#93c9b7",
"t": "#000000",
"a": 7,
"h": 1.5
},
"(",
{
"x": 4.5,
"h": 1.5
},
")"
],
[
{
"y": -0.75,
"x": 3.5,
"c": "#a7d0db",
"a": 4,
"f": 3
},
"\"\n'",
{
"x": 10.5
},
"V"
],
[
{
"y": -0.875,
"x": 2.5,
"c": "#bfbad1",
"t": "#0d0d0b"
},
"Z",
{
"x": 1,
"c": "#7adabd",
"t": "#000000"
},
"K",
{
"x": 8.5
},
"G",
{
"x": 1,
"c": "#bfbad1",
"t": "#0d0d0b"
},
"J"
],
[
{
"y": -0.875,
"x": 5.5,
"c": "#7adabd",
"t": "#000000"
},
"X",
{
"x": 6.5
},
"B"
],
[
{
"y": -0.875,
"c": "#ffb07b",
"f": 9,
"w": 1.5
},
"\n\n<i class='kb kb-Multimedia-Play-Pause'></i>",
{
"c": "#ffb2d2",
"t": "#0d0d0b",
"a": 4,
"f": 3
},
"?\n/",
{
"x": 14.5,
"a": 6
},
"Q",
{
"c": "#ffb07b",
"t": "#000000",
"f": 9,
"w": 1.5
},
"<i class='kb kb-Multimedia-Stop'></i>"
],
[
{
"y": -0.375,
"x": 3.5,
"c": "#d9dae0",
"g": true,
"a": 7,
"f": 3
},
"",
{
"x": 10.5
},
""
],
[
{
"y": -0.875,
"x": 2.5
},
"",
{
"x": 1,
"c": "#d4872a",
"g": false,
"a": 5
},
";\n:",
{
"x": 8.5
},
"_\n-",
{
"x": 1,
"c": "#d9dae0",
"g": true,
"a": 7
},
""
],
[
{
"y": -0.75,
"x": 0.5
},
"",
{},
"",
{
"x": 14.5
},
"",
{},
""
],
[
{
"r": 30,
"rx": 6.5,
"ry": 4.25,
"y": -1,
"x": 1,
"c": "#f9cd31",
"g": false
},
"Alt",
{
"a": 4,
"fa": [
0,
0,
0,
9
]
},
"\n\n\n<i class='kb kb-logo-linux-debian fa-large'></i>"
],
[
{
"c": "#d4872a",
"a": 7,
"f": 9,
"h": 2
},
"<i class='kb kb-Unicode-BackSpace-DeleteLeft-Big'></i>",
{
"h": 2
},
"<i class='fa fa-angle-double-up'></i>",
{
"c": "#f9cd31",
"f": 3
},
"Ctrl"
],
[
{
"x": 2,
"c": "#e26757"
},
"ESC"
],
[
{
"r": -30,
"rx": 13,
"y": -1,
"x": -3,
"c": "#f9cd31",
"f": 2
},
"MEDIA",
{},
"1HAND"
],
[
{
"x": -3
},
"LEAD",
{
"c": "#d4872a",
"f": 9,
"h": 2
},
"<i class='kb kb-Return-2'></i>",
{
"f": 3,
"h": 2
},
"SPC"
],
[
{
"x": -3,
"c": "#f9cd31",
"f": 2
},
"HUN"
]
]

@ -1,7 +1,7 @@
// Netable differences vs. the default firmware for the ErgoDox EZ:
// 1. The Cmd key is now on the right side, making Cmd+Space easier.
// 2. The media keys work on OSX (But not on Windows).
#include "ergodox_ez.h"
#include "ergodox.h"
#include "debug.h"
#include "action_layer.h"

Before

Width:  |  Height:  |  Size: 78 KiB

After

Width:  |  Height:  |  Size: 78 KiB

@ -1,4 +1,4 @@
#include "ergodox_ez.h"
#include "ergodox.h"
#include "debug.h"
#include "action_layer.h"
#include "keymap_bepo.h"

@ -0,0 +1,2 @@
SLEEP_LED_ENABLE = no
UNICODE_ENABLE = yes

@ -1,7 +1,8 @@
#include "ergodox_ez.h"
#include "ergodox.h"
#include "debug.h"
#include "action_layer.h"
#include "keymap_neo2.h"
#include "led.h"
#include "keymap_extras/keymap_neo2.h"
// Layer names
#define BASE 0 // default layer
@ -33,7 +34,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
*/
[BASE] = KEYMAP(
// left hand
KC_TAB, KC_1, KC_2, KC_3, KC_4, KC_5, KC_EQL,
KC_TAB, KC_1, KC_2, KC_3, KC_4, KC_5, NEO_GRV,
NEO_Y, NEO_X, NEO_V, NEO_L, NEO_C, NEO_W, KC_HOME,
NEO_L1_L, NEO_U, NEO_I, NEO_A, NEO_E, NEO_O,
KC_LSFT, NEO_UE, NEO_OE, NEO_AE, NEO_P, NEO_Z, TG(PMQ),
@ -42,7 +43,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_MINS,
KC_SPC, KC_ENT, ALL_T(KC_NO),
// right hand
DE_ACUT, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
NEO_ACUT, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
KC_END, NEO_K, NEO_H, NEO_G, NEO_F, NEO_Q, NEO_SS,
NEO_S, NEO_N, NEO_R, NEO_T, NEO_D, NEO_L1_R,
TG(PMN), NEO_B, NEO_M, KC_COMM,KC_DOT, NEO_J, KC_RSFT,
@ -140,10 +141,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* F9 F10 F11 F12
*
* F5 F6 F7 F8
*
* (TL2) (TL3)
* F1 F2 F3 F4
*
* (MO1) (MO1)
* (MO1) (MO4) (MO4) (MO1)
*
* Ms Ms Ms Ms
*
@ -267,7 +268,13 @@ void matrix_scan_user(void)
ergodox_right_led_3_on();
break;
default:
ergodox_board_led_off();
if(host_keyboard_leds() & (1<<USB_LED_SCROLL_LOCK)) {
ergodox_led_all_set(LED_BRIGHTNESS_HI);
ergodox_right_led_1_on();
}
else {
ergodox_board_led_off();
}
break;
}

@ -1,4 +1,4 @@
#include "ergodox_ez.h"
#include "ergodox.h"
#include "debug.h"
#include "action_layer.h"

@ -1,4 +1,4 @@
#include "ergodox_ez.h"
#include "ergodox.h"
#include "debug.h"
#include "action_layer.h"
#include "keymap_norwegian.h"
@ -39,7 +39,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
NO_COLN, KC_A, KC_R, KC_S, KC_T, KC_D,
KC_EXLM, KC_Z, KC_X, KC_C, KC_V, KC_B, NO_SCLN,
MO(4), KC_BTN1, KC_BTN2, KC_TAB,GUI_T(KC_COMMA),
NO_AMP, NO_PIPE,
NO_AMPR, NO_PIPE,
NO_PLUS,
KC_FN1,CTL_T(KC_DOT),ALT_T(NO_MINS),
// right hand

@ -1,4 +1,4 @@
#include "ergodox_ez.h"
#include "ergodox.h"
#include "debug.h"
#include "action_layer.h"

@ -1,4 +1,4 @@
#include "ergodox_ez.h"
#include "ergodox.h"
#include "debug.h"
#include "action_layer.h"

Before

Width:  |  Height:  |  Size: 189 KiB

After

Width:  |  Height:  |  Size: 189 KiB

@ -1,4 +1,4 @@
#include "ergodox_ez.h"
#include "ergodox.h"
#include "debug.h"
#include "action_layer.h"

@ -1,7 +1,7 @@
// Netable differences vs. the default firmware for the ErgoDox EZ:
// 1. The Cmd key is now on the right side, making Cmd+Space easier.
// 2. The media keys work on OSX (But not on Windows).
#include "ergodox_ez.h"
#include "ergodox.h"
#include "debug.h"
#include "action_layer.h"

@ -1,4 +1,4 @@
#include "ergodox_ez.h"
#include "ergodox.h"
#include "debug.h"
#include "action_layer.h"

Before

Width:  |  Height:  |  Size: 85 KiB

After

Width:  |  Height:  |  Size: 85 KiB

@ -1,4 +1,4 @@
#include "ergodox_ez.h"
#include "ergodox.h"
#include "debug.h"
#include "action_layer.h"

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save