diff options
Diffstat (limited to 'keyboards/helix')
54 files changed, 646 insertions, 1774 deletions
diff --git a/keyboards/helix/config.h b/keyboards/helix/config.h index fbfbd32804..875312f0c3 100644 --- a/keyboards/helix/config.h +++ b/keyboards/helix/config.h @@ -16,8 +16,7 @@ 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 +#pragma once #include "config_common.h" @@ -27,8 +26,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. // -include keyboards/helix/rev?/keymaps/MAPNAME/config.h // XXXX.c -#include <serial_config.h> - // GCC include search path in qmk_firmare/keyboards/helix/ // #include "..." search starts here: // #include <...> search starts here: @@ -38,14 +35,3 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. // . // ./tmk_core // ...... - -#ifdef USE_Link_Time_Optimization - // LTO has issues with macros (action_get_macro) and "functions" (fn_actions), - // so just disable them - #define NO_ACTION_MACRO - #define NO_ACTION_FUNCTION - - #define DISABLE_LEADER -#endif // USE_Link_Time_Optimization - -#endif /* CONFIG_H */ diff --git a/keyboards/helix/helix.h b/keyboards/helix/helix.h index d73feb6bbf..7dac2455de 100644 --- a/keyboards/helix/helix.h +++ b/keyboards/helix/helix.h @@ -1,5 +1,4 @@ -#ifndef HELIX_H -#define HELIX_H +#pragma once #ifdef KEYBOARD_helix_rev1 #include "rev1.h" @@ -12,5 +11,3 @@ #endif #include "quantum.h" - -#endif diff --git a/keyboards/helix/i2c.c b/keyboards/helix/local_drivers/i2c.c index 4bee5c6398..4bee5c6398 100644 --- a/keyboards/helix/i2c.c +++ b/keyboards/helix/local_drivers/i2c.c diff --git a/keyboards/helix/i2c.h b/keyboards/helix/local_drivers/i2c.h index 47cf6bd1b2..47cf6bd1b2 100644 --- a/keyboards/helix/i2c.h +++ b/keyboards/helix/local_drivers/i2c.h diff --git a/keyboards/helix/serial.c b/keyboards/helix/local_drivers/serial.c index 6006ebf1bd..6006ebf1bd 100644 --- a/keyboards/helix/serial.c +++ b/keyboards/helix/local_drivers/serial.c diff --git a/keyboards/helix/serial.h b/keyboards/helix/local_drivers/serial.h index 2e53928df2..2e53928df2 100644 --- a/keyboards/helix/serial.h +++ b/keyboards/helix/local_drivers/serial.h diff --git a/keyboards/helix/ssd1306.c b/keyboards/helix/local_drivers/ssd1306.c index dd3290ba0c..dd3290ba0c 100644 --- a/keyboards/helix/ssd1306.c +++ b/keyboards/helix/local_drivers/ssd1306.c diff --git a/keyboards/helix/ssd1306.h b/keyboards/helix/local_drivers/ssd1306.h index 9cf6983b7e..9cf6983b7e 100644 --- a/keyboards/helix/ssd1306.h +++ b/keyboards/helix/local_drivers/ssd1306.h diff --git a/keyboards/helix/pico/back/rules.mk b/keyboards/helix/pico/back/rules.mk new file mode 100644 index 0000000000..066fffb74a --- /dev/null +++ b/keyboards/helix/pico/back/rules.mk @@ -0,0 +1 @@ +LED_BACK_ENABLE = yes diff --git a/keyboards/helix/pico/config.h b/keyboards/helix/pico/config.h index b377332efa..260560f556 100644 --- a/keyboards/helix/pico/config.h +++ b/keyboards/helix/pico/config.h @@ -16,8 +16,7 @@ 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 PICO_CONFIG_H -#define PICO_CONFIG_H +#pragma once /* USB Device descriptor parameter */ #define VENDOR_ID 0xFEED @@ -35,6 +34,11 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. #define USE_SERIAL //#define USE_MATRIX_I2C +/* Soft Serial defines */ +#define SOFT_SERIAL_PIN D2 +#define SERIAL_SLAVE_BUFFER_LENGTH ((MATRIX_ROWS)/2) +#define SERIAL_MASTER_BUFFER_LENGTH ((MATRIX_ROWS)/2) + /* Select hand configuration */ #define MASTER_LEFT // #define MASTER_RIGHT @@ -138,5 +142,3 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. //#define NO_ACTION_ONESHOT //#define NO_ACTION_MACRO //#define NO_ACTION_FUNCTION - -#endif diff --git a/keyboards/helix/pico/keymaps/biacco/rules.mk b/keyboards/helix/pico/keymaps/biacco/rules.mk index d6b36580e1..0c60c40f64 100644 --- a/keyboards/helix/pico/keymaps/biacco/rules.mk +++ b/keyboards/helix/pico/keymaps/biacco/rules.mk @@ -1,125 +1,24 @@ - -# Build Options +# QMK Standard Build Options # change to "no" to disable the options, or define them in the Makefile in # the appropriate keymap folder that will get included automatically # -BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000) -MOUSEKEY_ENABLE = no # Mouse keys(+4700) +# See TOP/keyboards/helix/rules.mk for a list of options that can be set. +# See TOP/docs/config_options.md for more information. +# EXTRAKEY_ENABLE = yes # Audio control and System control(+450) -CONSOLE_ENABLE = no # Console for debug(+400) -COMMAND_ENABLE = no # Commands for debug and configuration -NKRO_ENABLE = no # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work -BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality -MIDI_ENABLE = no # MIDI controls AUDIO_ENABLE = yes # Audio output on port B5 -UNICODE_ENABLE = no # Unicode -BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. -SWAP_HANDS_ENABLE = no # Enable one-hand typing - -define HELIX_CUSTOMISE_MSG - $(info Helix customize) - $(info - OLED_ENABLE=$(OLED_ENABLE)) - $(info - LED_BACK_ENABLE=$(LED_BACK_ENABLE)) - $(info - LED_UNDERGLOW_ENABLE=$(LED_UNDERGLOW_ENABLE)) - $(info - LED_ANIMATION=$(LED_ANIMATIONS)) - $(info - IOS_DEVICE_ENABLE=$(IOS_DEVICE_ENABLE)) -endef - -# Helix keyboard customize -# you can edit follows 6 Variables -# jp: 以下の6つの変数を必要に応じて編集します。 -OLED_ENABLE = no # OLED_ENABLE -LOCAL_GLCDFONT = no # use each keymaps "helixfont.h" insted of "common/glcdfont.c" -LED_BACK_ENABLE = no # LED backlight (Enable WS2812 RGB underlight.) -LED_UNDERGLOW_ENABLE = no # LED underglow (Enable WS2812 RGB underlight.) -LED_ANIMATIONS = no # LED animations -IOS_DEVICE_ENABLE = no # connect to IOS device (iPad,iPhone) -Link_Time_Optimization = no # if firmware size over limit, try this option - -#### LED_BACK_ENABLE and LED_UNDERGLOW_ENABLE. -#### Do not enable these with audio at the same time. - -### Helix keyboard 'default' keymap: convenient command line option -## make HELIX=<options> helix:defualt -## option= oled | back | under | na | ios -## ex. -## make HELIX=oled helix:defualt -## make HELIX=oled,back helix:defualt -## make HELIX=oled,under helix:defualt -## make HELIX=oled,back,na helix:defualt -## make HELIX=oled,back,ios helix:defualt -## -ifneq ($(strip $(HELIX)),) - ifeq ($(findstring oled,$(HELIX)), oled) - OLED_ENABLE = yes - endif - ifeq ($(findstring back,$(HELIX)), back) - LED_BACK_ENABLE = yes - else ifeq ($(findstring under,$(HELIX)), under) - LED_UNDERGLOW_ENABLE = yes - endif - ifeq ($(findstring na,$(HELIX)), na) - LED_ANIMATIONS = no - endif - ifeq ($(findstring ios,$(HELIX)), ios) - IOS_DEVICE_ENABLE = yes - endif - $(eval $(call HELIX_CUSTOMISE_MSG)) - $(info ) -endif - -# Uncomment these for checking -# jp: コンパイル時にカスタマイズの状態を表示したい時はコメントをはずします。 -# $(eval $(call HELIX_CUSTOMISE_MSG)) -# $(info ) - -ifeq ($(strip $(LED_BACK_ENABLE)), yes) - RGBLIGHT_ENABLE = yes - OPT_DEFS += -DRGBLED_BACK - ifeq ($(strip $(LED_UNDERGLOW_ENABLE)), yes) - $(eval $(call HELIX_CUSTOMISE_MSG)) - $(error LED_BACK_ENABLE and LED_UNDERGLOW_ENABLE both 'yes') - endif -else ifeq ($(strip $(LED_UNDERGLOW_ENABLE)), yes) - RGBLIGHT_ENABLE = yes -else - RGBLIGHT_ENABLE = no -endif - -ifeq ($(strip $(IOS_DEVICE_ENABLE)), yes) - OPT_DEFS += -DIOS_DEVICE_ENABLE -endif - -ifeq ($(strip $(LED_ANIMATIONS)), yes) - OPT_DEFS += -DLED_ANIMATIONS -endif - -ifeq ($(strip $(OLED_ENABLE)), yes) - OPT_DEFS += -DOLED_ENABLE -endif - -ifeq ($(strip $(LOCAL_GLCDFONT)), yes) - OPT_DEFS += -DLOCAL_GLCDFONT -endif - -ifeq ($(strip $(AUDIO_ENABLE)),yes) - ifeq ($(strip $(RGBLIGHT_ENABLE)),yes) - Link_Time_Optimization = yes - endif - ifeq ($(strip $(OLED_ENABLE)),yes) - Link_Time_Optimization = yes - endif -endif - -ifeq ($(strip $(Link_Time_Optimization)),yes) - EXTRAFLAGS += -flto -DUSE_Link_Time_Optimization -endif - -# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE -SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend - -# Uncomment these for debugging -# $(info -- RGBLIGHT_ENABLE=$(RGBLIGHT_ENABLE)) -# $(info -- OPT_DEFS=$(OPT_DEFS)) -# $(info ) +LINK_TIME_OPTIMIZATION_ENABLE = no # if firmware size over limit, try this option + +# Helix Spacific Build Options +# you can uncomment and edit follows 6 Variables +# jp: 以下の6つの変数を必要に応じて編集し、コメントアウトをはずします。 +# OLED_ENABLE = no # OLED_ENABLE +# LOCAL_GLCDFONT = no # use each keymaps "helixfont.h" insted of "common/glcdfont.c" +# LED_BACK_ENABLE = no # LED backlight (Enable WS2812 RGB underlight.) +# LED_UNDERGLOW_ENABLE = no # LED underglow (Enable WS2812 RGB underlight.) +LED_ANIMATIONS = no # LED animations +# IOS_DEVICE_ENABLE = no # connect to IOS device (iPad,iPhone) + +# convert Helix-specific options (that represent combinations of standard options) +# into QMK standard options. +include $(strip $(KEYBOARD_LOCAL_FEATURES_MK)) diff --git a/keyboards/helix/pico/keymaps/default/readme.md b/keyboards/helix/pico/keymaps/default/readme.md index 13948cf620..9013e31287 100644 --- a/keyboards/helix/pico/keymaps/default/readme.md +++ b/keyboards/helix/pico/keymaps/default/readme.md @@ -95,16 +95,15 @@ see `qmk_firmware/keyboards/helix/pico/keymaps/default/rules.mk` ``` -# Helix keyboard customize -# you can edit follows 6 Variables -# jp: 以下の6つの変数を必要に応じて編集します。 -OLED_ENABLE = no # OLED_ENABLE -LOCAL_GLCDFONT = no # use each keymaps "helixfont.h" insted of "common/glcdfont.c" -LED_BACK_ENABLE = no # LED backlight (Enable WS2812 RGB underlight.) -LED_UNDERGLOW_ENABLE = no # LED underglow (Enable WS2812 RGB underlight.) -LED_ANIMATIONS = yes # LED animations -IOS_DEVICE_ENABLE = no # connect to IOS device (iPad,iPhone) - +# Helix Spacific Build Options +# you can uncomment and edit follows 6 Variables +# jp: 以下の6つの変数を必要に応じて編集し、コメントアウトをはずします。 +# OLED_ENABLE = no # OLED_ENABLE +# LOCAL_GLCDFONT = no # use each keymaps "helixfont.h" insted of "common/glcdfont.c" +# LED_BACK_ENABLE = no # LED backlight (Enable WS2812 RGB underlight.) +# LED_UNDERGLOW_ENABLE = no # LED underglow (Enable WS2812 RGB underlight.) +# LED_ANIMATIONS = yes # LED animations +# IOS_DEVICE_ENABLE = no # connect to IOS device (iPad,iPhone) ``` ## Compile @@ -116,11 +115,18 @@ $ cd qmk_firmware build ``` $ make helix/pico:default +$ make helix/pico/back:default # with backlight +$ make HELIX=no_ani helix/pico/back:default # with backlight without animation +$ make helix/pico/under:default # with underglow ``` flash to keyboard ``` -$ make helix/pico:default:avrdude +$ make helix/pico:default:flash +$ make helix/pico/back:default:flash # with backlight +$ make HELIX=no_ani helix/pico/back:default:flash # with backlight without animation +$ make helix/pico/under:default:flash # with underglow + ``` ## Link diff --git a/keyboards/helix/pico/keymaps/default/readme_jp.md b/keyboards/helix/pico/keymaps/default/readme_jp.md index 1e272f9e6a..28594dafcb 100644 --- a/keyboards/helix/pico/keymaps/default/readme_jp.md +++ b/keyboards/helix/pico/keymaps/default/readme_jp.md @@ -56,31 +56,6 @@ 他の配列(Colemak,Dvorak)は、[readme.md](readme.md) を参照 -## コンパイルの仕方 - -コンパイルは、qmk_firmware のトップディレクトリで行います。 - -``` -$ cd qmk_firmware -``` -qmk_firmwareでは各キーボードのコンパイルは、`<キーボード名>:<キーマップ名>`という指定で行います。 - -``` -$ make helix/pico:default -``` - -キーボードへの書き込みまで同時に行うには下記のように`:avrdude`を付けます。 - -``` -$ make helix/pico:default:avrdude -``` - -コンパイル結果と中間生成物を消去したい場合は以下のようにします。 - -``` -$ make helix/pico:default:clean -``` - ## カスタマイズ オプションの OLED をつけたり、 @@ -88,16 +63,15 @@ RGB バックライトまたは、RGB Underglow をつけた場合は、 `qmk_firmware/keyboards/helix/pico/keymaps/default/rules.mk` の以下の部分を編集して機能を有効化してください。 ``` -# Helix keyboard customize -# you can edit follows 6 Variables -# jp: 以下の6つの変数を必要に応じて編集します。 -OLED_ENABLE = no # OLED_ENABLE -LOCAL_GLCDFONT = no # use each keymaps "helixfont.h" insted of "common/glcdfont.c" -LED_BACK_ENABLE = no # LED backlight (Enable WS2812 RGB underlight.) -LED_UNDERGLOW_ENABLE = no # LED underglow (Enable WS2812 RGB underlight.) -LED_ANIMATIONS = yes # LED animations -IOS_DEVICE_ENABLE = no # connect to IOS device (iPad,iPhone) - +# Helix Spacific Build Options +# you can uncomment and edit follows 6 Variables +# jp: 以下の6つの変数を必要に応じて編集し、コメントアウトをはずします。 +# OLED_ENABLE = no # OLED_ENABLE +# LOCAL_GLCDFONT = no # use each keymaps "helixfont.h" insted of "common/glcdfont.c" +# LED_BACK_ENABLE = no # LED backlight (Enable WS2812 RGB underlight.) +# LED_UNDERGLOW_ENABLE = no # LED underglow (Enable WS2812 RGB underlight.) +# LED_ANIMATIONS = yes # LED animations +# IOS_DEVICE_ENABLE = no # connect to IOS device (iPad,iPhone) ``` ## RGB バックライトを有効にする @@ -131,6 +105,43 @@ RBG Underglow や RGBバックライトの輝度を抑えて、iPad, iPhone に IOS_DEVICE_ENABLE = no # connect to IOS device (iPad,iPhone) ``` +## コンパイルの仕方 + +コンパイルは、qmk_firmware のトップディレクトリで行います。 + +``` +$ cd qmk_firmware +``` +qmk_firmwareでは各キーボードのコンパイルは、`<キーボード名>:<キーマップ名>`という指定で行います。 + +``` +$ make helix/pico:default +``` + +キーボードへの書き込みまで同時に行うには下記のように`:flash`を付けます。 + +``` +$ make helix/pico:default:flash +``` + +コンパイル結果と中間生成物を消去したい場合は以下のようにします。 + +``` +$ make helix/pico:default:clean +``` + +上記の、rules.mk によるカスタマイズ項目の一部は下記のようにコマンド上で直接指定することも可能です。 + +RGB バックライトを有効にしてコンパイルしてキーボードへ書き込む。 +``` +$ make helix/pico/back:default:flash +``` + +RGB Underglow を有効にしてコンパイルしてキーボードへ書き込む。 +``` +$ make helix/pico/under:default:flash +``` + ## リンク * さらに詳細は、[こちら helix/Doc/firmware_jp.md](https://github.com/MakotoKurauchi/helix/blob/master/Doc/firmware_jp.md)をご覧ください。 diff --git a/keyboards/helix/pico/keymaps/default/rules.mk b/keyboards/helix/pico/keymaps/default/rules.mk index 3b518ff881..764b073007 100644 --- a/keyboards/helix/pico/keymaps/default/rules.mk +++ b/keyboards/helix/pico/keymaps/default/rules.mk @@ -1,125 +1,24 @@ - -# Build Options +# QMK Standard Build Options # change to "no" to disable the options, or define them in the Makefile in # the appropriate keymap folder that will get included automatically # -BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000) -MOUSEKEY_ENABLE = no # Mouse keys(+4700) +# See TOP/keyboards/helix/rules.mk for a list of options that can be set. +# See TOP/docs/config_options.md for more information. +# EXTRAKEY_ENABLE = yes # Audio control and System control(+450) -CONSOLE_ENABLE = no # Console for debug(+400) -COMMAND_ENABLE = no # Commands for debug and configuration -NKRO_ENABLE = no # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work -BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality -MIDI_ENABLE = no # MIDI controls -AUDIO_ENABLE = yes # Audio output on port B5 -UNICODE_ENABLE = no # Unicode -BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. -SWAP_HANDS_ENABLE = no # Enable one-hand typing - -define HELIX_CUSTOMISE_MSG - $(info Helix customize) - $(info - OLED_ENABLE=$(OLED_ENABLE)) - $(info - LED_BACK_ENABLE=$(LED_BACK_ENABLE)) - $(info - LED_UNDERGLOW_ENABLE=$(LED_UNDERGLOW_ENABLE)) - $(info - LED_ANIMATION=$(LED_ANIMATIONS)) - $(info - IOS_DEVICE_ENABLE=$(IOS_DEVICE_ENABLE)) -endef - -# Helix keyboard customize -# you can edit follows 6 Variables -# jp: 以下の6つの変数を必要に応じて編集します。 -OLED_ENABLE = no # OLED_ENABLE -LOCAL_GLCDFONT = no # use each keymaps "helixfont.h" insted of "common/glcdfont.c" -LED_BACK_ENABLE = no # LED backlight (Enable WS2812 RGB underlight.) -LED_UNDERGLOW_ENABLE = no # LED underglow (Enable WS2812 RGB underlight.) -LED_ANIMATIONS = yes # LED animations -IOS_DEVICE_ENABLE = no # connect to IOS device (iPad,iPhone) -Link_Time_Optimization = no # if firmware size over limit, try this option - -#### LED_BACK_ENABLE and LED_UNDERGLOW_ENABLE. -#### Do not enable these with audio at the same time. - -### Helix keyboard 'default' keymap: convenient command line option -## make HELIX=<options> helix:defualt -## option= oled | back | under | na | ios -## ex. -## make HELIX=oled helix:defualt -## make HELIX=oled,back helix:defualt -## make HELIX=oled,under helix:defualt -## make HELIX=oled,back,na helix:defualt -## make HELIX=oled,back,ios helix:defualt -## -ifneq ($(strip $(HELIX)),) - ifeq ($(findstring oled,$(HELIX)), oled) - OLED_ENABLE = yes - endif - ifeq ($(findstring back,$(HELIX)), back) - LED_BACK_ENABLE = yes - else ifeq ($(findstring under,$(HELIX)), under) - LED_UNDERGLOW_ENABLE = yes - endif - ifeq ($(findstring na,$(HELIX)), na) - LED_ANIMATIONS = no - endif - ifeq ($(findstring ios,$(HELIX)), ios) - IOS_DEVICE_ENABLE = yes - endif - $(eval $(call HELIX_CUSTOMISE_MSG)) - $(info ) -endif - -# Uncomment these for checking -# jp: コンパイル時にカスタマイズの状態を表示したい時はコメントをはずします。 -# $(eval $(call HELIX_CUSTOMISE_MSG)) |