summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPriyadi Iman Nurcahyo <priyadi@priyadi.net>2016-12-04 23:57:47 +0700
committerPriyadi Iman Nurcahyo <priyadi@priyadi.net>2016-12-04 23:57:47 +0700
commitfc80aa9974faad146837cd26d9264b5a6c74dd4b (patch)
tree893e6f573c2753a51f67ed3636110850036405c7
parenta8e5f6180585f46684d713976ad05d4d81b11ab1 (diff)
parentf39e1b5dfe7552f01dbc6eab95c268f41a9d98e2 (diff)
Merge branch 'master' into promethium
-rw-r--r--Dockerfile3
-rw-r--r--build_keyboard.mk14
-rw-r--r--common.mk1
-rw-r--r--keyboards/amj60/config.h2
-rw-r--r--keyboards/clueboard/rev1/config.h2
-rw-r--r--keyboards/clueboard/rev2/config.h2
-rw-r--r--keyboards/cluecard/config.h2
-rw-r--r--keyboards/cluecard/keymaps/rgb_effects/config.h2
-rw-r--r--keyboards/cluepad/config.h2
-rw-r--r--keyboards/ergodox/ez/Makefile7
-rw-r--r--keyboards/ergodox/ez/config.h13
-rw-r--r--keyboards/ergodox/ez/ez.c10
-rw-r--r--keyboards/ergodox/ez/matrix.c2
-rw-r--r--keyboards/ergodox/ez/rules.mk2
-rw-r--r--keyboards/ergodox/infinity/rules.mk2
-rw-r--r--keyboards/ergodox/keymaps/bepo/Makefile9
-rw-r--r--keyboards/ergodox/keymaps/bepo/bepo.pngbin79747 -> 80249 bytes
-rw-r--r--keyboards/ergodox/keymaps/bepo/keymap.c335
-rw-r--r--keyboards/ergodox/keymaps/bepo/readme.md6
-rw-r--r--keyboards/ergodox/keymaps/erez_experimental/Makefile2
-rw-r--r--keyboards/ergodox/keymaps/erez_experimental/config.h1
-rw-r--r--keyboards/ergodox/keymaps/erez_experimental/keymap.c42
-rw-r--r--keyboards/ergodox/keymaps/jack/Makefile6
-rw-r--r--keyboards/ergodox/keymaps/jack/config.h17
-rw-r--r--keyboards/ergodox/keymaps/jack/keymap.c22
-rw-r--r--keyboards/ergodox/keymaps/kristian/keymap.c79
-rw-r--r--keyboards/ergodox/keymaps/robot_test_layout/keymap.c151
-rw-r--r--keyboards/ergodox/keymaps/robot_test_layout/readme.md5
-rw-r--r--keyboards/ergodox/rules.mk1
-rw-r--r--keyboards/gh60/keymaps/robotmaxtron/config.h2
-rw-r--r--keyboards/handwired/minorca/keymaps/rgb/config.h2
-rw-r--r--keyboards/jd40/config.h2
-rw-r--r--keyboards/kc60/keymaps/ws2812/config.h2
-rw-r--r--keyboards/lets_split/config.h3
-rw-r--r--keyboards/lets_split/keymaps/i2c/config.h2
-rw-r--r--keyboards/lets_split/keymaps/serial/config.h2
-rw-r--r--keyboards/phantom/config.h2
-rw-r--r--keyboards/planck/keymaps/bone2planck/Makefile4
-rw-r--r--keyboards/planck/keymaps/brandon/Makefile4
-rw-r--r--keyboards/planck/keymaps/cbbrowne/Makefile7
-rw-r--r--keyboards/planck/keymaps/cbbrowne/config.h3
-rw-r--r--keyboards/planck/keymaps/cbbrowne/keymap.c10
-rw-r--r--keyboards/planck/keymaps/default/Makefile8
-rw-r--r--keyboards/planck/keymaps/default/keymap.c4
-rw-r--r--keyboards/planck/keymaps/experimental/config.h2
-rw-r--r--keyboards/planck/keymaps/impossible/Makefile4
-rw-r--r--keyboards/planck/keymaps/jeebak/Makefile4
-rw-r--r--keyboards/planck/keymaps/jhenahan/Makefile4
-rw-r--r--keyboards/planck/keymaps/joe/Makefile5
-rw-r--r--keyboards/planck/keymaps/leo/Makefile5
-rw-r--r--keyboards/planck/keymaps/lucas/Makefile5
-rw-r--r--keyboards/planck/keymaps/mollat/Makefile5
-rw-r--r--keyboards/planck/keymaps/nico/Makefile5
-rw-r--r--keyboards/planck/keymaps/premek/Makefile3
-rw-r--r--keyboards/planck/keymaps/priyadi/Makefile3
-rw-r--r--keyboards/planck/keymaps/pvc/Makefile5
-rw-r--r--keyboards/planck/keymaps/sgoodwin/Makefile5
-rw-r--r--keyboards/planck/keymaps/tak3over/Makefile5
-rw-r--r--keyboards/planck/keymaps/thermal_printer/Makefile29
-rw-r--r--keyboards/planck/keymaps/thermal_printer/config.h23
-rw-r--r--keyboards/planck/keymaps/thermal_printer/keymap.c314
-rw-r--r--keyboards/planck/keymaps/thermal_printer/readme.md2
-rw-r--r--keyboards/planck/keymaps/vifon/Makefile3
-rw-r--r--keyboards/planck/keymaps/yang/config.h2
-rw-r--r--keyboards/planck/rules.mk1
-rw-r--r--keyboards/preonic/config.h2
-rw-r--r--keyboards/preonic/keymaps/default/Makefile22
-rw-r--r--keyboards/preonic/keymaps/kinesis/config.h2
-rw-r--r--keyboards/preonic/rules.mk3
-rw-r--r--keyboards/satan/config.h2
-rw-r--r--keyboards/tada68/config.h2
-rw-r--r--quantum/api.c178
-rw-r--r--quantum/api.h59
-rw-r--r--quantum/api/api_sysex.c29
-rw-r--r--quantum/api/api_sysex.h10
-rw-r--r--quantum/config_common.h101
-rw-r--r--quantum/keymap.h4
-rw-r--r--quantum/keymap_extras/keymap_nordic.h2
-rwxr-xr-xquantum/light_ws2812.c151
-rwxr-xr-xquantum/light_ws2812.h21
-rw-r--r--quantum/pincontrol.h37
-rw-r--r--quantum/process_keycode/process_printer.c254
-rw-r--r--quantum/process_keycode/process_printer.h8
-rw-r--r--quantum/process_keycode/process_printer_bb.c260
-rw-r--r--quantum/process_keycode/process_unicode.h1
-rw-r--r--quantum/quantum.c48
-rw-r--r--quantum/quantum.h11
-rw-r--r--quantum/rgblight.c145
-rw-r--r--quantum/rgblight.h15
-rw-r--r--readme.md191
-rw-r--r--tmk_core/common.mk6
-rw-r--r--tmk_core/common/avr/timer.c36
-rw-r--r--tmk_core/common/host_driver.h9
-rw-r--r--tmk_core/protocol/lufa.mk4
-rw-r--r--tmk_core/protocol/lufa/adafruit_ble.cpp805
-rw-r--r--tmk_core/protocol/lufa/adafruit_ble.h60
-rw-r--r--tmk_core/protocol/lufa/lufa.c141
-rw-r--r--tmk_core/protocol/lufa/lufa.h13
-rw-r--r--tmk_core/protocol/lufa/ringbuffer.hpp66
-rw-r--r--tmk_core/protocol/midi.mk1
-rw-r--r--tmk_core/protocol/ps2_mouse.c369
-rw-r--r--tmk_core/protocol/ps2_mouse.h84
-rw-r--r--tmk_core/ring_buffer.h26
103 files changed, 3822 insertions, 589 deletions
diff --git a/Dockerfile b/Dockerfile
index 744ded8579..c42bbeb32a 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -25,5 +25,4 @@ ENV subproject=ez
ENV keymap=default
VOLUME /qmk
-WORKDIR /qmk
-CMD make clean ; make keyboard=${keyboard} subproject=${subproject} keymap=${keymap}
+WORKDIR /qmk \ No newline at end of file
diff --git a/build_keyboard.mk b/build_keyboard.mk
index 055ce632ae..ce505de126 100644
--- a/build_keyboard.mk
+++ b/build_keyboard.mk
@@ -131,6 +131,14 @@ ifndef CUSTOM_MATRIX
SRC += $(QUANTUM_DIR)/matrix.c
endif
+ifeq ($(strip $(API_SYSEX_ENABLE)), yes)
+ OPT_DEFS += -DAPI_SYSEX_ENABLE
+ SRC += $(QUANTUM_DIR)/api/api_sysex.c
+ OPT_DEFS += -DAPI_ENABLE
+ SRC += $(QUANTUM_DIR)/api.c
+ MIDI_ENABLE=yes
+endif
+
ifeq ($(strip $(MIDI_ENABLE)), yes)
OPT_DEFS += -DMIDI_ENABLE
SRC += $(QUANTUM_DIR)/process_keycode/process_midi.c
@@ -174,6 +182,12 @@ ifeq ($(strip $(TAP_DANCE_ENABLE)), yes)
SRC += $(QUANTUM_DIR)/process_keycode/process_tap_dance.c
endif
+ifeq ($(strip $(PRINTING_ENABLE)), yes)
+ OPT_DEFS += -DPRINTING_ENABLE
+ SRC += $(QUANTUM_DIR)/process_keycode/process_printer.c
+ SRC += $(TMK_DIR)/protocol/serial_uart.c
+endif
+
ifeq ($(strip $(SERIAL_LINK_ENABLE)), yes)
SRC += $(patsubst $(QUANTUM_PATH)/%,%,$(SERIAL_SRC))
OPT_DEFS += $(SERIAL_DEFS)
diff --git a/common.mk b/common.mk
index 18751cd5ac..c4b9394a24 100644
--- a/common.mk
+++ b/common.mk
@@ -23,4 +23,5 @@ COMMON_VPATH += $(QUANTUM_PATH)
COMMON_VPATH += $(QUANTUM_PATH)/keymap_extras
COMMON_VPATH += $(QUANTUM_PATH)/audio
COMMON_VPATH += $(QUANTUM_PATH)/process_keycode
+COMMON_VPATH += $(QUANTUM_PATH)/api
COMMON_VPATH += $(SERIAL_PATH) \ No newline at end of file
diff --git a/keyboards/amj60/config.h b/keyboards/amj60/config.h
index d98e0e9f2f..7c06f9a6c7 100644
--- a/keyboards/amj60/config.h
+++ b/keyboards/amj60/config.h
@@ -67,7 +67,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#define RGB_DI_PIN E2
-#define RGBLIGHT_TIMER
+#define RGBLIGHT_ANIMATIONS
#define RGBLED_NUM 8 // Number of LEDs
#define RGBLIGHT_HUE_STEP 10
#define RGBLIGHT_SAT_STEP 17
diff --git a/keyboards/clueboard/rev1/config.h b/keyboards/clueboard/rev1/config.h
index 8c94972324..f40876ffbf 100644
--- a/keyboards/clueboard/rev1/config.h
+++ b/keyboards/clueboard/rev1/config.h
@@ -26,7 +26,7 @@
/* Underlight configuration
*/
#define RGB_DI_PIN B2
-#define RGBLIGHT_TIMER
+#define RGBLIGHT_ANIMATIONS
#define RGBLED_NUM 14 // Number of LEDs
#define RGBLIGHT_HUE_STEP 10
#define RGBLIGHT_SAT_STEP 17
diff --git a/keyboards/clueboard/rev2/config.h b/keyboards/clueboard/rev2/config.h
index 15ca4ece86..8435fd02be 100644
--- a/keyboards/clueboard/rev2/config.h
+++ b/keyboards/clueboard/rev2/config.h
@@ -30,7 +30,7 @@
/* Underlight configuration
*/
#define RGB_DI_PIN D7
-#define RGBLIGHT_TIMER
+#define RGBLIGHT_ANIMATIONS
#define RGBLED_NUM 14 // Number of LEDs
#define RGBLIGHT_HUE_STEP 10
#define RGBLIGHT_SAT_STEP 17
diff --git a/keyboards/cluecard/config.h b/keyboards/cluecard/config.h
index 765347b131..6520eb5574 100644
--- a/keyboards/cluecard/config.h
+++ b/keyboards/cluecard/config.h
@@ -140,7 +140,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* Underlight configuration
*/
#define RGB_DI_PIN E6
-//#define RGBLIGHT_TIMER
+//#define RGBLIGHT_ANIMATIONS
#define RGBLED_NUM 4 // Number of LEDs
#define RGBLIGHT_HUE_STEP 10
#define RGBLIGHT_SAT_STEP 17
diff --git a/keyboards/cluecard/keymaps/rgb_effects/config.h b/keyboards/cluecard/keymaps/rgb_effects/config.h
index e88847df4d..c6c9342c81 100644
--- a/keyboards/cluecard/keymaps/rgb_effects/config.h
+++ b/keyboards/cluecard/keymaps/rgb_effects/config.h
@@ -4,7 +4,7 @@
#include "../../config.h"
// place overrides here
-#define RGBLIGHT_TIMER
+#define RGBLIGHT_ANIMATIONS
#define RGBLIGHT_EFFECT_SNAKE_LENGTH 3
#define RGBLIGHT_EFFECT_KNIGHT_LENGTH 2
#define RGBLIGHT_EFFECT_KNIGHT_OFFSET 2
diff --git a/keyboards/cluepad/config.h b/keyboards/cluepad/config.h
index bae05fade3..bd64dfd27d 100644
--- a/keyboards/cluepad/config.h
+++ b/keyboards/cluepad/config.h
@@ -70,7 +70,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* Underlight configuration
*/
#define RGB_DI_PIN F6
-#define RGBLIGHT_TIMER
+#define RGBLIGHT_ANIMATIONS
#define RGBLED_NUM 4 // Number of LEDs
#define RGBLIGHT_HUE_STEP 10
#define RGBLIGHT_SAT_STEP 17
diff --git a/keyboards/ergodox/ez/Makefile b/keyboards/ergodox/ez/Makefile
index 191c6bb664..9b6121e2c2 100644
--- a/keyboards/ergodox/ez/Makefile
+++ b/keyboards/ergodox/ez/Makefile
@@ -1,3 +1,8 @@
+SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
+COMMAND_ENABLE = no # Commands for debug and configuration
+RGBLIGHT_ENABLE ?= yes
+MIDI_ENABLE ?= yes
+
ifndef MAKEFILE_INCLUDED
include ../../../Makefile
-endif \ No newline at end of file
+endif
diff --git a/keyboards/ergodox/ez/config.h b/keyboards/ergodox/ez/config.h
index 084a044ee1..c2750a321f 100644
--- a/keyboards/ergodox/ez/config.h
+++ b/keyboards/ergodox/ez/config.h
@@ -21,6 +21,8 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#include "../config.h"
+#include "config_common.h"
+
/* USB Device descriptor parameter */
#define VENDOR_ID 0xFEED
#define PRODUCT_ID 0x1307
@@ -39,6 +41,17 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define LED_BRIGHTNESS_LO 15
#define LED_BRIGHTNESS_HI 255
+/* ws2812 RGB LED */
+#define RGB_DI_PIN D7
+#define RGBLIGHT_ANIMATIONS
+#define RGBLED_NUM 15 // Number of LEDs
+#define RGBLIGHT_HUE_STEP 12
+#define RGBLIGHT_SAT_STEP 255
+#define RGBLIGHT_VAL_STEP 12
+
+#define RGB_MIDI
+#define RGBW_BB_TWI
+
/* Set 0 if debouncing isn't needed */
#define DEBOUNCE 5
diff --git a/keyboards/ergodox/ez/ez.c b/keyboards/ergodox/ez/ez.c
index ddb8ff0cf7..039e4c6bb1 100644
--- a/keyboards/ergodox/ez/ez.c
+++ b/keyboards/ergodox/ez/ez.c
@@ -16,10 +16,10 @@ void matrix_init_kb(void) {
// unused pins - C7, D4, D5, D7, E6
// set as input with internal pull-ip enabled
DDRC &= ~(1<<7);
- DDRD &= ~(1<<7 | 1<<5 | 1<<4);
+ DDRD &= ~(1<<5 | 1<<4);
DDRE &= ~(1<<6);
PORTC |= (1<<7);
- PORTD |= (1<<7 | 1<<5 | 1<<4);
+ PORTD |= (1<<5 | 1<<4);
PORTE |= (1<<6);
ergodox_blink_all_leds();
@@ -51,6 +51,10 @@ uint8_t init_mcp23018(void) {
mcp23018_status = 0x20;
// I2C subsystem
+
+ uint8_t sreg_prev;
+ sreg_prev=SREG;
+ cli();
if (i2c_initialized == 0) {
i2c_init(); // on pins D(1,0)
i2c_initialized++;
@@ -79,6 +83,8 @@ uint8_t init_mcp23018(void) {
out:
i2c_stop();
+ SREG=sreg_prev;
+
return mcp23018_status;
}
diff --git a/keyboards/ergodox/ez/matrix.c b/keyboards/ergodox/ez/matrix.c
index a19bab90b2..43f5152591 100644
--- a/keyboards/ergodox/ez/matrix.c
+++ b/keyboards/ergodox/ez/matrix.c
@@ -121,7 +121,7 @@ void matrix_init(void)
matrix_scan_count = 0;
#endif
- matrix_init_kb();
+ matrix_init_quantum();
}
diff --git a/keyboards/ergodox/ez/rules.mk b/keyboards/ergodox/ez/rules.mk
index a9715beb85..893cfa7a84 100644
--- a/keyboards/ergodox/ez/rules.mk
+++ b/keyboards/ergodox/ez/rules.mk
@@ -72,6 +72,8 @@ OPT_DEFS += -DBOOTLOADER_SIZE=512
#
SLEEP_LED_ENABLE = no
+API_SYSEX_ENABLE ?= yes
+RGBLIGHT_ENABLE ?= yes
ifndef QUANTUM_DIR
include ../../../Makefile
diff --git a/keyboards/ergodox/infinity/rules.mk b/keyboards/ergodox/infinity/rules.mk
index ccb735a485..473a6dfec6 100644
--- a/keyboards/ergodox/infinity/rules.mk
+++ b/keyboards/ergodox/infinity/rules.mk
@@ -63,6 +63,8 @@ VISUALIZER_ENABLE ?= no #temporarily disabled to make everything compile
LCD_ENABLE ?= yes