summaryrefslogtreecommitdiff
path: root/keyboards/helix/rev2/keymaps/five_rows
AgeCommit message (Collapse)Author
2021-11-02[Core] Change OLED task function to be boolean (#14864)Drashna Jaelre
* [Core] Add kb level callbacks to OLED driver * Update keyboards and keymaps * Update docs * Update userspace configs * Add fix for my keymap ... * update lefty
2021-09-17Merge remote-tracking branch 'origin/master' into developDrashna Jael're
2021-09-16[Keymap] Update Helix:five_rows OLED code (#14427)Takeshi ISHII
* Stop using snprintf() in keymaps/five_rows/oled_display.c. The binary size becomes 1350 bytes smaller. make HELIX=verbose,core-oled helix/rev2/sc:five_rows (104 bytes over) -> (95%, 1256 bytes free) make helix/rev3_5rows:five_rows (528 bytes over) -> (97%, 830 bytes free) * add matrix scan rate display to OLED for keymaps/five_rows * add matrix_output_unselect_delay.c to helix keymaps/five_rows * add GPLv2 header * apply review comment
2021-08-31[Keyboard] Helix use `post_rules.mk` (#14216)Takeshi ISHII
* Helix/pico use post_rules.mk insted of local_features.mk Tested with the following procedure. ``` git checkout 77a93fec79 (qmk/develop) make clean make helix/pico:all:check-md5 make helix/pico/sc:all:check-md5 git checkout helix_use_post_rules.mk make clean make helix/pico:all:check-md5 make helix/pico/sc:all:check-md5 ``` * Helix/rev2 use post_rules.mk Tested with the following procedure. ``` git checkout 77a93fec79 (qmk/develop) make clean make helix/pico:all:check-md5 make helix/pico/sc:all:check-md5 make helix/rev2:all:check-md5 make helix/rev2/sc:all:check-md5 git checkout helix_use_post_rules.mk make clean make helix/pico:all:check-md5 make helix/pico/sc:all:check-md5 make helix/rev2:all:check-md5 make helix/rev2/sc:all:check-md5 ```
2021-08-24[Core] Refactor OLED to allow easy addition of other types (#13454)Xelus22
* add docs * core changes * update keyboards to new OLED * updated users to new OLED * update layouts to new OLED * fixup docs * drashna's suggestion * fix up docs * new keyboards with oled * core split changes * remaining keyboard files * Fix The Helix keyboards oled options * reflect develop Co-authored-by: Drashna Jaelre <drashna@live.com> Co-authored-by: mtei <2170248+mtei@users.noreply.github.com>
2021-04-04[Keymap] cleanup keyboards/helix/{rev2|rev3_5rows}/keymaps/five_rows (#12259)Takeshi ISHII
* cleanup keyboards/helix/{rev2|rev3_5rows}/keymaps/five_rows * Made the layout data easier to read. * helix/rev2/keymaps/five_rows/keymap.c * helix/rev3_5rows/keymaps/five_rows/keymap.c * The following two were made the same. * keymaps/five_rows/config.h * keymaps/five_rows/oled_display.c The binary of the compilation result has not changed. * update keyboards/helix/rev2/keymaps/five_rows/rules.mk KEYBOARD_LOCAL_FEATURES_MK was moved to the end. * add '#define DISABLE_SYNC_TIMER' into helix/rev3_5rows/keymaps/five_rows/config.h The sync timer features worsen the matrix scan rate of the Helix keyboard. I'm not sure if it makes sense to have sync timer features enabled on the Helix keyboard. So in my keymap I disable this.
2020-12-26[Keymap] update rules.mk and config.h of `helix/rev2:five_rows` (#11302)Takeshi ISHII
* update keyboards/helix/rev2/keymaps/five_rows/rules.mk: oled selection, led animation selection * add OLED_UPDATE_INTERVAL support into keyboards/helix/rev2/keymaps/five_rows/oled_display.c Support for OLED_UPDATE_INTERVAL, even for older types of OLED tasks. * Add 'HELIX=debug/no-debug' option into 'helix/rev2/keymaps/five_rows/rules.mk'
2020-12-16Normalise include statements in keyboard code (#11185)Ryan
2020-11-17[Keymap] clean up helix:five_rows keymap (#10866)Takeshi ISHII
* Makes the OLED driver used by the helix:five_rows keymap switchable. * use TOP/drivers/oled/oled_driver.c `make HELIX=stdole helix:five_rows` * use helix/local_drivers/ssd1306.c `make HELIX=oled helix:five_rows` * Separated the OLED related code from keymap.c and moved it to oled_display.c. * scan rate without OLED * make HELIX=verbose,dispoff,scan helix/rev2:five_rows use Helix original code text data bss dec hex filename 18880 58 235 19173 4ae5 .build/helix_rev2_five_rows.elf matrix scan frequency: 1590 * make HELIX=verbose,dispoff,scan,sc helix/rev2:five_rows use split_common code text data bss dec hex filename 18554 40 231 18825 4989 .build/helix_rev2_five_rows.elf matrix scan frequency: 1202 * scan rate with helix/local_drivers/ssd1306.c * make HELIX=verbose,dispoff,scan,oled helix/rev2:five_rows use Helix original code text data bss dec hex filename 24048 196 342 24586 600a .build/helix_rev2_five_rows.elf matrix scan frequency: 739 * make HELIX=verbose,dispoff,scan,sc,oled helix/rev2:five_rows use split_common code text data bss dec hex filename 23750 176 338 24264 5ec8 .build/helix_rev2_five_rows.elf matrix scan frequency: 642 * scan rate with drivers/oled/oled_driver.c * make HELIX=verbose,dispoff,scan,stdole helix/rev2:five_rows use Helix original code text data bss dec hex filename 24590 210 798 25598 63fe .build/helix_rev2_five_rows.elf matrix scan frequency: 293 * make HELIX=verbose,dispoff,scan,sc,stdole helix/rev2:five_rows use split_common code text data bss dec hex filename 24290 190 794 25274 62ba .build/helix_rev2_five_rows.elf matrix scan frequency: 277 * clean up helix/rev2/keymaps/five_rows/keymap.c * update five_rows/oled_display.c * update helix/rev2/keymaps/five_rows/keymap.c: remove LAYOUT_kc() * Ported the keymap from helix/rev2:five_rows to helix/rev3_5rows:five_rows. * update five_rows/oled_display.c * add License comment
2020-08-29Better handle LTO_ENABLE (#9832)Drashna Jaelre
* Better handle LTO_ENABLE Especially when calling from command line * Replace LINK_TIME_OPTIMIZATION_ENABLE with LTO_ENABLE * Remove long for LTO from show_options.mk
2020-04-11[Keymap] fix OLED display on Helix keyboard keymaps default and… (#8737)Takeshi ISHII
Since #7773, the mode number of RGBlight is no longer displayed on the Helix OLEDs. I fixed this.
2019-10-16[Keyboard] Cleanup helix rules options (#6952)MakotoKurauchi
* add temporary test shell-spript * Use LINK_TIME_OPTIMIZATION_ENABLE instead of Link_Time_Optimization No change in build result. * Helix config.h use '#pragma once' No change in build result. * Helix helix.h,rev?/rev?.h,pico/pico.h use '#pragma once' No change in build result. * Use drivers/avr/pro_micro.h instead of keyboards/helix/pro_micro.h No change in build result. * remove keyboards/helix/{rev2|pico}/serial_config.h No change in build result. * 'HELIX_ROWS' macro is now referenced only in rev1/config.h and rev2/config.h. No change in build result. * The contents of helix/rules.mk were distributed to subdirectories. This is a preparation to create a new subdirectory for helix code using split_common. No change in build result. remove 'USE_I2C = yes', 'SUBPROJECT_rev1 = no' from keyboards/helix/rules.mk. follow code move from keyboards/helix/rules.mk to keyboards/helix/{rev1,rev2,pico}/rules.mk. ---- SRC += i2c.c SRC += serial.c SRC += ssd1306.c CUSTOM_MATRIX = yes --- * helix/{i2c.[ch], serial.[ch], ssd1306.[ch]} move into helix/local_drivers/ No change in build result. * Simplified 'helix/pico/keymap/*/rules.mk' using KEYBOARD_LOCAL_FEATURES_MK. No change in build result. * add keyboards/helix/pico/local_features.mk * add 'KEYBOARD_LOCAL_FEATURES_MK := $(dir $(lastword $(MAKEFILE_LIST)))local_features.mk' into keyboards/helix/pico/rules.mk * remove HELIX_CUSTOMISE_MSG from keyboards/helix/pico/keymaps/*/rules.mk * remove HELIX= process from keyboards/helix/pico/keymaps/*/rules.mk * remove convert code(helix to standaerd) from keyboards/helix/pico/keymaps/*/rules.mk * add 'include $(strip $(KEYBOARD_LOCAL_FEATURES_MK))' into keyboards/helix/pico/keymaps/*/rules.mk * Simplified 'helix/rev2/keymap/*/rules.mk' using KEYBOARD_LOCAL_FEATURES_MK. No change in build result. * add keyboards/helix/rev2/local_features.mk * add 'KEYBOARD_LOCAL_FEATURES_MK := $(dir $(lastword $(MAKEFILE_LIST)))local_features.mk' into keyboards/helix/rev2/rules.mk * remove HELIX_CUSTOMISE_MSG from keyboards/helix/rev2/keymaps/*/rules.mk * remove HELIX= process from keyboards/helix/rev2/keymaps/*/rules.mk * remove convert code(helix to standaerd) from keyboards/helix/rev2/keymaps/*/rules.mk * add 'include $(strip $(KEYBOARD_LOCAL_FEATURES_MK))' into keyboards/helix/rev2/keymaps/*/rules.mk * Added helix keyboard build NEW method. No change in build result. ## Helix build $ make helix:default ## no oled, no backlight, no underglow $ make helix/rev2/back:default ## no oled, with backlight, no underglow $ make helix/rev2/under:default ## no oled, no backlight, with underglow $ make helix/rev2/oled:default ## with oled, no backlight, not underglow $ make helix/rev2/oled/back:default ## with oled, with backlight, no underglow $ make helix/rev2/back/oled:default ## with oled, with backlight, no underglow $ make helix/rev2/oled/under:default ## with oled, no backlight, with underglow $ make helix/rev2/under/oled:default ## with oled, no backlight, with underglow ## Helix pico build $ make helix/pico:default ## no oled, no backlight, no underglow $ make helix/pico/back:default ## no oled, with backlight, no underglow $ make helix/pico/under:default ## no oled, no backlight, with underglow $ make helix/pico/oled:default ## with oled, no backlight, not underglow * add temporary test shell-spript * test end remove test script. Revert "add temporary test shell-spript" This reverts commit 5dac20cd0f8b4bc192edb2313652c1635f829657. * test end remove test script. Revert "add temporary test shell-spript" This reverts commit ec49f63b2dc0f2b3fe8c1c36ffa615cee2f7e3ed. * Extended the 'HELIX=' option. add keyword 'verbose', 'no_ani'. No change in build result. * update keyboards/helix/{rev2,pico}/keymaps/default/readme.md * rename KEYBOARD_TOP_DIR to HELIX_TOP_DIR in rules.mk * update keyboards/helix/{rev2,pico}/keymaps/default/readme_jp.md * rm keyboards/helix/pico/oled/rules.mk * update helix's readmes. All the ':avrdude' was replaced with ':flash'. * remove F_CPU, ARCH, F_USB, INTERRUPT_CONTROL_ENDPOINT from helix/rules.mk No change in build result.
2019-01-04Remove deprecated QUANTUM_DIR code blocks from makefiles (#4754)noroadsleft
* Remove QUANTUM_DIR code blocks from keyboard rules This commit removes the deprecated "QUANTUM_DIR" code block from rules.mk files that affect entire keyboards. * remove QUANTUM_DIR code blocks from rules for default keymaps This commit removes the deprecated "QUANTUM_DIR" code block from rules.mk files that affect default keymaps. * remove QUANTUM_DIR code blocks from rules for user keymaps This commit removes the deprecated "QUANTUM_DIR" code block from rules.mk files that affect "user" keymaps. (It's actually any keymap that isn't named `default`.) * remove QUANTUM_DIR code blocks from rules for community layouts This commit removes the deprecated "QUANTUM_DIR" code block from rules.mk files for community layouts. * remove QUANTUM_DIR code blocks from rules for userspaces This commit removes the deprecated "QUANTUM_DIR" code block from rules.mk files for userspaces.
2018-12-18Keymap: Changed to use LAYOUT_kc() macro instead of LAYOUT() macro for easy ↵Takeshi ISHII
maintenance. (#4676)
2018-11-27Remove RGB_SMOD alias and replace uses with RGB_MOD (#4319)Konstantin Đorđević
2018-10-22Replace outdated RGB/Audio informationDrashna Jaelre
2018-10-22Keyboard: Helix serial.c, split_scom.c bug fix and update (#4191)Takeshi ISHII
* helix/serial.c add support PD1,PD3,PE6 and configuration simplify * Add comment about ATmega32U4 I2C * Add compile time check for ATmega32U4 I2C * change TAB code to 8 SPACE code * Helix serial.c PORTD,PD0 test. OK OK PD0 - PD1 OK PD2 - PD3 - PE6 * Helix serial.c PORTD,PD1 test. OK OK PD0 OK PD1 OK PD2 - PD3 - PE6 * Helix serial.c PORTD,PD3 test. OK OK PD0 OK PD1 OK PD2 OK PD3 - PE6 * Helix serial.c PORTE,PD6 test. OK OK PD0 OK PD1 OK PD2 OK PD3 OK PE6 * Helix serial.c: PD0,PD1,PD3,PE6 all test end * Helix serial.c: rename SOFT_SERIAL_PORT to SOFT_SERIAL_PIN * Helix serial.c add debug code * Helix serial.c: add transaction ID range check * Helix serial.c debug code update * Helix serial.c debug code update * Helix serial.c: Strict checking of the value of tid. * adjust the delay of serial.c * Helix serial.c: remove debug code * remove EXTRAFLAGS += -DCONSOLE_ENABLE from five_rows/rules.mk tmk_core/common.mk has >ifeq ($(strip $(CONSOLE_ENABLE)), yes) > TMK_COMMON_DEFS += -DCONSOLE_ENABLE * Fix error handling in split_scomm.c * add some comment to serial.c * add some comment about SELECT_SOFT_SERIAL_SPEED
2018-10-05Keyboard: Helix five_rows keymap reduced size (#4082)Takeshi ISHII
* add PERMISSIVE_HOLD in helix:five_rows/config.h * add Eucalyn char layout into helix:five_rows * Helix five_rows keymap: make rgblight modes selectable. No change in build result. * fix keymap.c map comment, add console compile option No change in build result. * Helix five_rows keymap: reduced the size.
2018-08-10Keyboard: Helix serial improvements (#3608)MakotoKurauchi
* add change_reciver2sender()/change_sender2reciver() This is a change to improve readability. * txled, rxled off in matrix_init() * add serial_send_packet() / serial_recive_packet() This is a change to reduce object size. * add serial_low() at ISR() top * add __attribute__((always_inline)) to some functions * modify serial_send_packet()/serial_recive_packet() A little, object size reduction. A little, speedup. * add debug code to helix/serial.c * Adjust sampling timing of serial signal being received * add split_scomm.c/split_scomm.h and change serial.c/serial.h serial.c was divided into 2 layers, split_scom.c and serial.c. The upper layer split_scomm.c is called from matrix.c. The lower layer serial.c accesses the hardware. * add split_scomm.c/split_scomm.h into helix/rev1 * reduce object size helix/rev2/matrix.c * remove checksum check, add parity check * force occur parity error for test * parity test ok. remove test code * change some comment & add skip code when buffer_size == 0 * serial.c: multiple types of transaction support Add 4 bits transaction-type field at packet top. Select Transaction Descriptor Table entry by transaction-type. * helix serial master-slave transaction optimize Using multi-type transaction feature of serial.c, communication contents between master slaves were optimized. * add debug code for retry * add comment into each config.h * fix ISR status drop * add a debug macro 'debug_retry_chg()' * reduce led_test size * remove debug code from helix/serial.c and etc. * helix:five_rows change TAPPING_TERM value 140 * Improved compatibility with let's split of serial.c. Finish helix/serial.c improvement. - The difference with the original let's split's serial.c - It's high-speed about 4 times. - Stable bi-directional data transfer. (Helix need master to slave transfer) - serial.h was divided 2 files, serial_config.h and sereial.h - With multiple types of transaction support, communication contents can be optimized. (NEW flexible API) - USE OLD Simple APIs (compatible with let's split serial.c) - files : - serial_config.h -- hardware configuration (need include by config.h) - serial.c/serial.h -- serial communication - USE NEW flexible APIs. (Support multi-type transaction function.) serial.c was divided into 2 layers, split_scom.c and serial.c. The upper layer split_scomm.c is called from matrix.c. The lower layer serial.c accesses the hardware. - files - split_scomm.c -- communication buffer is defined in here. call by matrix.c. - split_scomm.h -- buffer size is defined in here. include by matrix.c, split_util.c - serial_config.h -- hardware configuration (need include by config.h) To use the NEW API, specify #define SERIAL_USE_MULTI_TRANSACTION - serial.c/serial.h -- serial communication lower layer - NEW APIs for serial.c / serial.h (The lower layer) // Soft Serial Transaction Descriptor typedef struct _SSTD_t { uint8_t *status; uint8_t initiator2target_buffer_size; uint8_t *initiator2target_buffer; uint8_t target2initiator_buffer_size; uint8_t *target2initiator_buffer; } SSTD_t; // initiator is transaction start side void soft_serial_initiator_init(SSTD_t *sstd_table); // target is interrupt accept side void soft_serial_target_init(SSTD_t *sstd_table); int soft_serial_transaction(int sstd_index); int soft_serial_get_and_clean_target_status(int sstd_index); - NEW APIs for split_scomm.c / split_scomm.h (The upper layer) move from old serial.c the following buffer and functions serial_slave_buffer[] serial_master_buffer[] void serial_master_init(void) void serial_slave_init(void) int serial_update_buffers(void) define SERIAL_xxxxx_BUFFER_LENGTH move from serial_config.h to split_scomm.h
2018-08-02Keyboard: fixed build break (size overflow) HelixPico with Backlight or ↵Takeshi ISHII
Underglow (#3546) * build break fix for HelixPico * add customize variable 'Link_Time_Optimization' into rev2 and pico keymaps rules.mk * "CFLAGS += -flto" change to "EXTRAFLAGS += -flto" * add USE_Link_Time_Optimization macro
2018-07-12Helix config refine (#3374)MakotoKurauchi
* helix config.h refine
2018-06-30Helix shrink config (#3268)MakotoKurauchi
* add some comment about Helix customize and auto-setup RGBLIGHT_LIMIT_VAL * add define USB_MAX_POWER_CONSUMPTION * Helix keyboard OLED, RGBLIGHT enable/disable control integrate into rules.mk rules.mk: add 4 Variables for compile control. # Helix keyboard customize # you can edit follows 4 Variables # jp: 以下の4つの変数を必要に応じて編集します。 OLED_ENABLE = no # OLED_ENABLE 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 config.h: auto set RGBLED_NUM by HELIX_ROWS and rules.mk's define * HELIX_ROWS define move from config.h to rules.mk * add readme.md * rename readme.md to readme_jp.md * add readme.md and modify readme_jp.md * change helix/ssd1306.c for select glcdfont.c position * add variable LOCAL_GLCDFONT into each keymaps rules.mk * Add iPhone/iPad LED support to Helix default keymap * renumber _ADJUST for shrink program size * Fix Helix i2c wrong bit rate * add helix serial debug code * serial debug macro move from config.h to serial.h * helix serial.c debugging... * refine debug macros * add some comments * add SELECT_SERIAL_SPEED * add comments * debugging sync_send/sync_recv * add very high speed * fix sync_send/sync_recv * fix com. start and switch send/recv * debug mode off * remove debug codes * Shrinked config.h
2018-06-27Helix: Refactor and Configurator support (#3238)noroadsleft
* Matrix refactor * Keymap refactor * Configurator support
2018-06-21Fix Helix i2c wrong bit rate (#3207)MakotoKurauchi
2018-04-30Add LOCAL_GLCDFONT option (#2854)MakotoKurauchi
* add some comment about Helix customize and auto-setup RGBLIGHT_LIMIT_VAL * add define USB_MAX_POWER_CONSUMPTION * Helix keyboard OLED, RGBLIGHT enable/disable control integrate into rules.mk rules.mk: add 4 Variables for compile control. # Helix keyboard customize # you can edit follows 4 Variables # jp: 以下の4つの変数を必要に応じて編集します。 OLED_ENABLE = no # OLED_ENABLE 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 config.h: auto set RGBLED_NUM by HELIX_ROWS and rules.mk's define * HELIX_ROWS define move from config.h to rules.mk * add readme.md * rename readme.md to readme_jp.md * add readme.md and modify readme_jp.md * change helix/ssd1306.c for select glcdfont.c position * add variable LOCAL_GLCDFONT into each keymaps rules.mk
2018-04-15update Helix keymap 'five_rows' (#2635)Takeshi ISHII
* add 'HELIX=' option for build * add IOS_DEVICE_ENABLE for iPad * shrink size to helix five_rows keymap.c * shrink size. _ADJUST number change * add KEYPAD layer * modify keypad leyer * display RGB mode on slave side OLED * fix Colemak, Dvorak center DEL to BS * change LEFT BS to LEFT SP and add AUX layer for try old map * update update_base_layer() * add right keypad and keypad func layer * use MO() macro insted of LOWER,RAISE,ADJUST custom key-code * remove LOWER,RAISE,ADJUST custom key-code * use MO(_LOWER|_RAISE|_ADJUST) * relayout ADJUST layer * modify Function Layer. PGUP,PGDN swap HOME,END * add Keypad aux layer for '00' send * update README.md, README_jp.md * fix README.md * fix README.md, README_jp.md
2018-03-23New keymap for The Helix keyboard("five_rows") (#2592)Takeshi ISHII
* duplicate keyboards/helix/rev2/keymaps/default to keyboards/helix/rev2/keymaps/five_rows * OLED Layer display 'Qwerty','Colemak','Dvorak' * set Qwerty, Lower, Raise map * set Colemak map * set Dvorak map * OLED Layer display 'Raise','Lower' change to 'Extra char','Function' * fix ExtraChar Layer Shift-key disable * Raise,Lower,Adjust layer modify some key change KC_TRNS to KC_NO add KANA, EISU key * refine keymaps/five_rows/{config.h,rules.mk} for easy and safe customize * modify Adjust layer: all function into left hand, remove F1..F12,DEL * Add Helix five_rows keymap README.md and README_jp.md * Raise Layer modify: enable Raise(Extr)+Lower(Func)==Adjust * fix image file url in README.md,README_jp.md * change Layer display on OLED * change OLED display base name position