* Cluecard: refactor
- renamed layout macro KEYMAP to LAYOUT
- reformatted layout macro to more closely resemble physical device layout
- keymaps now use #include QMK_KEYBOARD_H
- config.h files updated to use #pragma once method
- deleted outdated QUANTUM_DIR code blocks from rules.mk files
- white space changes on rules.mk files (alignment/readability)
* Cluecard: Configurator support
* Cluecard: readme update
- added image
- updated Docs links
* Clueboard 66% HotSwap: corrected matrix and Configurator data
- removed k31 and k84 from LAYOUT
- both appear to be unsupported for this PCB according to images on clueboard.co
- updated block comment mock-ups to match changes
- rebuilt info.json file
- delete removed keys from default keymap.c
* Clueboard 66% HotSwap: readme update
- fix make example
- updated Docs links
* Clueboard 66% HotSwap: 66_ansi keymap update
Updated to use #include QMK_KEYBOARD_H
* Clueboard 60% refactor
- renamed layout macro KEYMAP to LAYOUT_all
- renamed layout macro KEYMAP_AEK to LAYOUT_aek
- removed redundant KC_TRNS definitions from keymaps
- all keymaps now use #include QMK_KEYBOARD_H
* Clueboard 17%: refactor
* Clueboard 17%: Configurator support
* Clueboard 17%: update Docs links in readme
* Cleanup the 2x1800 files
* Update Clueboard 60% to standard matrix
* Update the clueboard default keymaps
* Refresh and update clueboard 17
* Add the 66% hotswap to Clueboard's readme
* Clarify the 66% hotswap's readme
* change the image to imgur
* Update the clueboard 66 to follow modern standards
* update clueboard 66_hotswap to follow modern practices
* Move the logo to imgur
* update clueboard/card to follow modern practices
* remove clueboard/66 as a valid make target
* Address comments in #4902
* fix user keymaps after the changes
* Added TGR Alice keyboard support
This keyboard uses ps2avrGB firmware, so I used the same matrix
Bootmapper Client was using and was able to flash it appropriately.
* Refactor alice to use QMK core
* Fixed markdown line breaks on TGR Alice readme
* handwired/retro_refit: refactor
- retro_refit.h
- updated to use #pragma once include guard
- refactored layout macro to not auto-prepend KC_ to keycodes
- renamed to LAYOUT (from KEYMAP)
- aligned for readability
- default keymap.c
- now uses #include QMK_KEYBOARD_H
- removed unused fn_actions and action_get_macro blocks
* handwired/retro_refit: Configurator support
* handwired/retro_refit: readme update
Updated readme to format of current QMK template.
* Create ISO HHKB keymapping for GH60
* Add media controls to Fn layer
* Use M(x) instead of F(x), add Copyright text
* Create initial firmware for TMO50
* Correct year and author
* Fix repos README
* Remove unnecessary code
* Change include guard in tmo50.h
* Plain60: remove redundant include guard from plain60.h
Superseded by #pragma once.
* Plain60: add Docs links to readme file
* Plain60: Configurator support
* new hhkb keymap implementing movement layer + comfort features
* Apply suggestions from code review
Co-Authored-By: schaefer-dev <schaefer.dev@gmail.com>
* removed deprecated function action_get_macro and mousewheel configs that are no longer used
* handwired/reddot: refactor
- reddot.h
- updated to use #pragma once include guard
- renamed layout macro KEYMAP to LAYOUT
- refactored arguments to more closely resemble physical layout
- aligned for readability
- keymaps/default/keymap.c
- now uses #include QMK_KEYBOARD_H
- updated include path for keymap_french.h
- refactored to use short keycodes
- aligned for readability
* handwired/reddot: Configurator support
* handwired/reddot: readme update
- update readme to current QMK template
- add KLE permalink to my best guess at the layout
* Initial support for TKC Candybar
* Correct FN layer issue
Both shift keys were overloaded. Moved Caps Lock to FN + C.
* Update keyboard description in config.h.
* Info.json
* Update project information
* Update keyboards/candybar/readme.md
Co-Authored-By: TerryMathews <terry@terrymathews.net>
* handwired/qc60: refactor and Configurator update
- correct layout macro name (LAYOUT_ANSI_DEFAULT to LAYOUT_ansi_default)
- add layout data for remaining layout macros
- correct ISO layout macros (neither had a split left Shift)
- refactor LAYOUT_iso_alt (place KC_NUHS key on home row; consistent with LAYOUT_iso_default)
- proto.h refactored to use #pragma once include guard
* handwired/qc60: keymap refactor
- delete redundant KC_TRNS and KC_NO aliases
* handwired/qc60: readme update
- update header (made consistent with QMK template)
- update Docs links (Newbs Guide; grammar)
* handwired/ortho60: Configurator update
- correct labels for Up and Right keys
- add layout data for LAYOUT_1x2uC
* handwired/ortho60: readme update
- update readme file to use QMK template
* handwired/ortho60: deleted DEFAULT_FOLDER rule
Not needed as the keyboard currently has no revisions.
* TKC1800: refactor
- tkc1800.h
- updated to use #pragma once
- visual alignment
- update config.h files to use #pragma once
- update all keymaps to use #include QMK_KEYBOARD_H
- delete redundant mod mask, KC_TRNS, and KC_NO definitions
- reformat keymap layers for readability
- add block comment for Function layer in default keymap
- delete commented action_get_macro code blocks (deprecated function)
- update files to better conform with QMK coding conventions
- update smt keymap to use set_single_persistent_default_layer (instead of persistent_default_layer_set)
- replace instances of `?=` with `=` in rules.mk
* TKC1800: Configurator visual fixes
- correct key sizes and positioning
- reformat file so each physical key object has its own line for readability
- update and add `label` keys for readability
* TKC1800: readme update
- fix image gallery link
- update Hardware Supported and Hardware Availability lines
- update make example (add :default suffix)
- update QMK Docs links (Newbs Guide; grammar)
* Add missing semicolons to smt keymap
Discovered the LAYOUT_compact macro didn't compile in QMK Configurator. Realized the reason for that was that it automatically prepends `KC_` to every keycode received.
Renamed the macro to LAYOUT_kc so Configurator will ignore it.
Also changed the file to use the #pragma once include guard because I was in here anyway.
* change VENDOR_ID, PRODUCT_ID, and DEVICE_VER as step one in getting VIA support
* fix v1 product id
* VIA doesn't use the version, so we need to encode it into PRODUCT_ID
* Eliminate separate slave loop
Both master and slave run the standard keyboard_task main loop now.
* Refactor i2c/serial specific code
Simplify some of the preprocessor mess by using common function names.
* Fix missing #endif
* Move direct pin mapping support from miniaxe to split_common
For boards with more pins than sense--sorry, switches.
* Reordering and reformatting only
* Don't run matrix_scan_quantum on slave side
* Clean up the offset/slaveOffset calculations
* Cut undebounced matrix size in half
* Refactor debouncing
* Minor fixups
* Split split_common transport and debounce code into their own files
Can now be replaced with custom versions per keyboard using
CUSTOM_TRANSPORT = yes and CUSTOM_DEBOUNCE = yes
* Refactor debounce for non-split keyboards too
* Update handwired/xealous to build using new split_common
* Fix debounce breaking basic test
* Dodgy method to allow a split kb to only include one of i2c/serial
SPLIT_TRANSPORT = serial or SPLIT_TRANSPORT = i2c will include only
that driver code in the binary.
SPLIT_TRANSPORT = custom (or anything else) will include neither, the
keyboard must supply it's own code
if SPLIT_TRANSPORT is not defined then the original behaviour (include
both avr i2c and serial code) is maintained.
This could be better but it would require explicitly updating all the
existing split keyboards.
* Enable LTO to get lets_split/sockets under the line
* Add docs for SPLIT_TRANSPORT, CUSTOM_MATRIX, CUSTOM_DEBOUNCE
* Remove avr-specific sei() from split matrix_setup
Not needed now that slave doesn't have a separate main loop.
Both sides (on avr) call sei() in lufa's main() after exiting
keyboard_setup().
* Fix QUANTUM_LIB_SRC references and simplify SPLIT_TRANSPORT.
* Add comments and fix formatting.
* Crawlpad: delete kbfirmware JSON file
* Crawlpad: refactor
- config.h and crawlpad.h updated to use #pragma once method
- layout macro renamed from KEYMAP to LAYOUT_ortho_4x4
- default keymap now uses #include QMK_KEYBOARD_H
- deleted deprecated action_get_macro function
- cleanup rules.mk file
- add LAYOUTS = ortho_4x4 to rules.mk
* Crawlpad: Configurator support
* Crawlpad: readme update
- update image link to direct link
- fully update Docs link line
- delete reference to deleted kbfirmware JSON file
* Add encoder support
* Add VIA support to Iris Rev. 3
* Update pinout and disable mouse keys to free up space
* Rollout VIA support to all Iris revisions
* Update default keymap
* Update vendor ID
* Add kbd6x:konstantin keymap
* Prevent tap dance from sending LShift as a weak mod in KBD6X
* Move config.h and rules.mk definitions into userspace
* Add UC_WIN to UNICODE_SELECTED_MODES
* Temporarily use Bootmagic until Command is fixed
* Move common behavior from keyboards into userspace
* Update kbd6x:konstantin keymap and userspace
* Make a RCTRL layer in kbd6x:konstantin
* Make KC_ESC turn off layers
* KC_ESC turns L_FN off only if it was locked on
* Add missing record->event.pressed checks
* Move numpad toggling logic into function
* Disable Bootmagic, enable KEYBOARD_SHARED_EP with Command
* Add support for THE50
A 50% custom keyboard designed and produced by LazyDesigners
* THE50 code-improvement
Implement the changes suggested by noroadsleft.
* changed ortho keymaps and userspace
* changed prime_o keymap
* changed userspace
* optimized keymaps and userspace
* removed permissive hold as it doesn't seem to do anything
* defined TAPPING_TERM in userspace config.h
* Commited into clean repo
* Gergo initial release
* Cleaning up
* Cleaning up
* Update readme.md
* Updated image, fixed MD formatting, added clairity
* Moved keymap to keyboard subdir, modified rules.mk
* Cleaned header guards
* Cleaned header guards. Read the rest of the PR comments
* Update keyboards/gergo/keymaps/default/keymap.c
Co-Authored-By: germ <jeremythegeek@gmail.com>
* Update keyboards/gergo/readme.md
Co-Authored-By: germ <jeremythegeek@gmail.com>
* Moved makefiles to keymap mod-area-thingy-with-overrides
* Update rules.mk
Slow the roll on the defaults while I wait for merge
* Update rules.mk
* Cleaning cleaning cleaning
* More housekeeping. Keeping optdefs
* moved keyboard specfic conf to config.h. Can we merge yet?
* added info.json
* adds proton c base
* fixes custom matrix include
* adds readme.md
* initial proton coversion, no pin mapping
* start of mcu selection
* add pin mapping and sweet16 test
* add at90 to list
* disable backlight, fix d7
* update flag names
* doc updates
* proton c update for mcu selection
* initial prime_o commit
* Cleaned up comments, other things.
* Update bakingpy 4x12 keymap and add test mode for debugging/development (#4810)
* Keymap: ave-63's iris layout (#4812)
* Updated keymap to use standard seven-underscore KC_TRNS notation
* initial prime_o commit
* Cleaned up comments, other things.
* Updated keymap to use standard seven-underscore KC_TRNS notation
* Downbubble: Configurator fix
Fix the visual key alignment and some typos.
* Downbubble: refactor
Rename layout macros:
- LAYOUT_downbubble_standard to LAYOUT_standard
- LAYOUT_downbubble_splitbackspace to LAYOUT_split_bs
- LAYOUT_downbubble_splitrightshift to LAYOUT_split_rshift
- LAYOUT_downbubble_splitnumpad to LAYOUT_split_numpad
- LAYOUT_downbubble_spliteverything to LAYOUT_all
Microsecond (us) delays are now handled by a busy wait loop according to MCU frequency. This replaces the system counter method which had an overhead of around 12us.
TC5 device and supporting routines removed as it was the old us delay counter.
wait_ms is now properly a macro to CLK_delay_ms.
wait_us is now properly a macro to CLK_delay_us.
Removed CLK_get_us as it has no use.
All calls to CLK_get_ms() have been replaced by timer_read64() with corrected typing.
All calls to CLK_delay_ms() have been replaced by wait_ms().
All calls to CLK_delay_us() have been replaced by wait_us() and timings verified or updated as needed after review on scope.
Corrected typing of variables using 64bit ms timer readings if needed.
* initial commit, this now mostly works
- RGB controls work
- Dynamic keymap still broken due to eeprom
- Via works
* STM32 eeprom update
- Update EEPROM emulation library to handle 8bit data like AVR.
- This library also allows for multiple page pairs resulting in greater EEPROM size flexibility
* hs60 changes
* HS60 hhkb added
* Update keyboards/hs60/v2/config.h
Co-Authored-By: yiancar <yiangosyiangou@cytanet.com.cy>
* Fractal: layout macro cleanup
Removed KEYMAP alias for LAYOUT_preonic_mit. Alias was unused, and the terminology usage is deprecated.
* Fractal: readme cleanup
Updated the line containing the documentation links in the readme.
* Fractal: disable preonic_mit community layout
QMK doesn't have a preonic_mit community layout at this time.
Disables preonic_mit as an option for community layout. Can be re-enabled when the layout is added.
* Numbrero: fix Configurator mismatch
Key object order in info.json didn't match the layout macro, leading to keys being assigned out-of-sequence.
* Numbrero: tidy
- white space changes in numbrero.h (alignment/readability/QMK conventions)
- minor changes to readme.md (grammar, mostly)
* Tradestation: tidy code
- correct JSON syntax on info.json
- visual key alignment on info.json
- white space changes on rules.mk and tradestation.h (readability/QMK conventions)
* Tradestation: readme refactor
Modify readme.md to more closely match QMK template.
* Tradestation: readme update
Update The Board podcast link for libsyn.
* S65-X: remove S65-Plus support
The original QMK codebase for the Sentraq S65-X actually supported both the S65-X and the S65-Plus. In the interim, the S65-Plus has been broken off into its own directory.
This commit removes support for the S65-Plus from the `keyboards/s65_x/` directory, as that code has been superseded by the code in the S65-Plus directory (`keyboards/s65_plus/`).
- deleted S65-Plus layout macros from s65_x.h and info.json
- deleted s65plus keymap directory
- removed references to the unused column pins
- removed the two unused columns for the switch matrices
- renamed switch K300 in LAYOUT_ansi to K301 (reflects matrix position)
- renamed switch K214 in LAYOUT_iso to K114 (reflects matrix position)
* S65-X: keymap refactor
- all keymaps now use #include QMK_KEYBOARD_H
- default and iso keymaps refactored for readability
- deleted redundant KC_TRNS and KC_NO keycode definitions from smt keymap
* S65-X: readme update
- updated Hardware Availability link
- updated Docs links
* S65-Plus: add LAYOUT_iso data
Adds LAYOUT_iso macro to s65_plus.h and info.json, and an ISO layout version of the default keymap.
* S65-Plus: refactor default keymap
- refactor for alignment/readability
- removed fn_actions code block
- add empty process_record_user block
* S65-Plus: readme update
- Hardware Availability link is now a hyperlink
- updated Docs links
* S65-X: enable 65_ansi and 65_iso community layouts
Thi commit allows the Sentraq S65-X to use the 65_ansi and 65_iso community layouts.
- LAYOUT_ansi renamed to LAYOUT_65_ansi
- LAYOUT_iso renamed to LAYOUT_65_iso
- added LAYOUTS rule to rules.mk
* 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.
* Use standard KC_ALGR, remove language-specific redefinitions
* Use ALGR instead of ALTGR in BÉPO and Canadian multilingual keymaps
* Remove BE_LALT, BE_LGUI aliases
* adding default settings to support 3v ERM vibration motors
* set default settings of haptic motor for LV061228B-L64-A 2v LRA
* update ishtob keymap and fix config settings
* Added my Mechmini2 layout to qmk.
* Added more info to the readme.
* Made changes.
* Update keyboards/mechmini/v2/keymaps/lbibass_625_space/keymap.c
Co-Authored-By: lbibass <ewdries02@gmail.com>
* Update keyboards/mechmini/v2/keymaps/lbibass_split_space/keymap.c
Co-Authored-By: lbibass <ewdries02@gmail.com>
* Added brightness and volume controls to MechMini 625 layout.
* Make CRKBD keylogger output actually show tap keys
* check MT/LT for twinkling
* Add ortho 5x12 support for fractal keyboard
* Use newer interface for setting pins/ports
* Remove custom unicode methods
* Reomve unicode input info
* Odd rules issue
* Redefine REST note to be more pleasing
* Properly disable PM LEDs with GPIO commands
* Update gitlab CI yaml file
* Remove extra mod tap check
* Remove initial state on ergodox glow
* Rev6 Cleanup
* Fix KC_MAKE macro
* Update GitLab CI yaml file
* More GitLab CI changes
* One final GitLab CI change
* Remove unneeded unicode support
* Optimize KC_MAKE
* Change rgblight_get_mode's return type to uint8_t.
Since rgblight_get_mode() is just returning rgblight_config_t.mode,
it should match rgblight_config_t.mode's type: uint8_t.
* Update rgb_matrix_get_mode to return uint8_t.
It seems the led_mask is set incorrectly on the WhiteFox meaning that
the LED at C9-1 (the space bar) doesn't get lit. I can't see any reason
for this to be intentional so I am pretty sure it's a typo. At the very
least it fixes the space bar LED for me.
* Add my zeal60 keymap
* Temporarily remove failing community layout from zeal60 make rules
* Revert "Temporarily remove failing community layout from zeal60 make rules"
This reverts commit ffd0018fb1dcf3d5f90d4a226c437d4e85430cce.
* refactored cyclops keyboard project
Moved the files into a subfolder to allow consistency in preparation for additional commits to come in the future.
made some small adjustments to the configuration and keymap
* Update keyboards/westfoxtrot/cyclops/keymaps/default/keymap.c
Co-Authored-By: westfoxtrot <17062872+westfoxtrot@users.noreply.github.com>
* Update keyboards/westfoxtrot/cyclops/readme.md
Co-Authored-By: westfoxtrot <17062872+westfoxtrot@users.noreply.github.com>
* Update keyboards/westfoxtrot/cyclops/readme.md
Co-Authored-By: westfoxtrot <17062872+westfoxtrot@users.noreply.github.com>
* Update keyboards/westfoxtrot/cyclops/readme.md
Co-Authored-By: westfoxtrot <17062872+westfoxtrot@users.noreply.github.com>
* XMMX: matrix and keymap refactor
- xmmx.h updated to use #pragma once
- renamed LAYOUT_ansi_wk macro to LAYOUT_tkl_ansi
- renamed LAYOUT_ansi_wkl macro to LAYOUT_tkl_ansi_wkl
- renamed LAYOUT_iso_wk macro to LAYOUT_tkl_iso
- renamed LAYOUT_iso_wkl macro to LAYOUT_tkl_iso_wkl
* XMMX: Configurator support
* XMMX: readme update
* Add support for reset to bootloader
Chibios_test/STM32_F072_ONEKEY wouldn't reset to bootloader on a
compatible Discovery board because the Chibios library board file was
lacking the __early_init(void) function necessary to read the magic key.
Borrowed code from Clueboard 60, tested working.
* Remove board.chcfg
* Add provisional Helix implementation to test the quantum/split_common.
* copy keyboards/helix/serial.[ch] to quantum/split_common/
* Make serial.c a pure driver.
Remove buffer name and buffer size from serial.c. They should be placed in the caller(matrix.c, split_utils.c).
* remove quantum/split_common/serial_backward_compatibility.h
* Changed array serial_master_buffer to structure serial_m2s_buffer.
* Changed array serial_slave_buffer to structure serial_s2m_buffer.
* Change keyboards/miniaxe/matrix.c
I also made changes to quantum/split_comon/matrix.c to keyboards/miniaxe/matrix.c.
Note: I contacted @ka2hiro, creator of miniaxe, and I got permission to change keyboards/miniaxe/matrix.c.
* update history comment in quantum/split_common/serial.c
* Revert "Add provisional Helix implementation to test the quantum/split_common."
This reverts commit 168c82ef82c88e79979d9796bab9cc819cc2f685.
* fix keyboards/miniaxe/matrix.c, quantum/split_common/matrix.c
avr-gcc 4.9.[23] report error.
avr-gcc 5.4.0, avr-gcc 7.3.0 pass.
It is funny.
* update comment quantum/split_common/serial.c
* Reserve RGBLIGHT_SPLIT macro in quantum/split_common
* initial commit for Othi's HHKB layout keymap,
covering multiple modifiers hold and vim-like support and german characters. If there's
any suggestion i can be reached via mnpqraven on github or Othi#6661 on
discord
* added readme.md. TODO: update readme.md
* changed to default quantum keycode for `KC_TRNS`,
removed `PREVENT_STUCK_MODIFIERS`,
fixed tap dance using one shots
TODO: unicode implementation at https://docs.qmk.fm/#/feature_unicode
* keymap documentaion(readme) added
* unicode init
TODO: figure out what made the compose sequence not running
* update unicode and readme
* JD40: default keymap refactor
- Removed redundant action_layer.h include
- Refactored to use LAYOUT macro (from LAYOUT_kc)
- Refactored to use QMK-native keycodes
- Removed superseded TMK code blocks
* JD40: readme cleanup
Fixed and updated the links in the readme file
* Infinity60: refactor
- infinity60.h / keymap.c
- renamed layout macro to LAYOUT_60_ansi_split_bs_rshift; removed layout macro alias
- updated to #pragma once
- keymaps now use #include QMK_KEYBOARD_H
- keymaps/jpetermans/config.h updated to #pragma once
- keymaps/jpetermans/rules.mk deleted (complete contents were deprecated make instructions)
* Infinity 60%: Configurator support
* Infinity60: readme update
Updated the Docs links.
* Infinity60: bugfix depariel keymap
Had a typo.
* Infinity60: edit matrix.c
per @drashna
- https://github.com/qmk/qmk_firmware/pull/4707#issuecomment-449540676
* 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
* temporary change, compiling C, C++ and ASM without -g
* helix config.h refine
* Revert "temporary change, compiling C, C++ and ASM without -g"
This reverts commit e9730cbbfd94fbcf792d992e3a1a65ad279b24d6.
* 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
* fix comment typo
* Fix the value of helix:five_rows variable HELIX_ROWS to 5.
* led_test rules.mk some change
* Separate common parts of helix/rev2/keymaps/*/rules.mk into helix/rev2/keymaps_common.mk
* helix/rev2/keymaps/edvorakjp/rules.mk use helix/rev2/keymaps_common.mk
* Separate common parts of helix/pico/keymaps/*/rules.mk into helix/pico/keymaps_common.mk
* Helix each keymap's using rgblight mode symbol instead magic number
No change in build result.
* Helix pico keymaps: make rgblight modes selectable.
No change in build result.
* Helix rev2 keymaps: make rgblight modes selectable.
No change in build result.
* fixed Helix froggy/keymap.c: invalid rgblight mode value 0 to 1 (=RGBLIGHT_MODE_STATIC_LIGHT)
* Deselect RGB_TEST and ALTERNATING in Helix rev2,pico keymaps config.h.
* Merge branch 'master' of https://github.com/qmk/qmk_firmware
* revert 955dcbc
* delete keymaps_common.mk
* add LAYOUT_kc() to keyboards/helix/pico/pico.h
* Standardize the Unicode EEPROM code
* Remove unicode init from process_record_* functions
* Add unicode init to where it belongs: matrix_init_quantum
* Move Unicode proccessing to unicode common
* Add audio feedback to input mode keys to drive konstantin up a wall
* Tap_code cleanup
* Update keycodes
* Update unicode documentation
* Update unicode keycodes for consistency/easier merge
* Add Audio Feedback section
* Remove Functions from feature page
And link to the file instead. Link to specific lines later on.
* Fix spacing
Co-Authored-By: drashna <drashna@live.com>
* Because I missed it!
Co-Authored-By: drashna <drashna@live.com>
* Fix spacing
Co-Authored-By: drashna <drashna@live.com>
* SPAAAAAAAAAACing
Co-Authored-By: drashna <drashna@live.com>
* Add BSD for future compatibility
* Thought I fixed that!
Co-Authored-By: drashna <drashna@live.com>
* non-breaking
Co-Authored-By: drashna <drashna@live.com>
* Considered that
Co-Authored-By: drashna <drashna@live.com>
* Yuuup
Co-Authored-By: drashna <drashna@live.com>
* consistency
Co-Authored-By: drashna <drashna@live.com>
* white spaces .... copied from elsewhere
Co-Authored-By: drashna <drashna@live.com>
* white spaces
Co-Authored-By: drashna <drashna@live.com>
* white spaces
Co-Authored-By: drashna <drashna@live.com>
* Update keycode defines
* Fix Linux Song
* Update all of the songs
* Cleanup
* Move and update check to ensure only one unicode method is enabled
* Update quantum/quantum_keycodes.h
* Update documentation
* Wordsmithing and cleanup
* Format unicode_common (#13)
* case alignment
* process_record_unicode_common → process_unicode_common
* Move song arrays into function where they're used, align preprocessor directives
* Swap the order of UC_WIN and UC_BSD
* Update Unicode docs
* Reorder Unicode mode stuff to match the order of input mode constants
* Fix capitalization in doc subtitle
* Readd BSD and OSX_RALT songs
* Reword BSD note in docs
* Readd BSD keycode description
* Reword explanation of input on different platforms
* Steal vomindoraan's input mode documentation
Co-Authored-By: vomindoraan (vomindoraan@gmail.com)
* Willingly give Drashna the rest of my Unicode doc improvements
* Wordsmithing
Co-Authored-By: drashna <drashna@live.com>
* remove merge artifacts
* Unicode common cleanup (#17)
* Standardize the Unicode EEPROM code
* Remove unicode init from process_record_* functions
* Add unicode init to where it belongs: matrix_init_quantum
* Move Unicode proccessing to unicode common
* Add audio feedback to input mode keys to drive konstantin up a wall
* Tap_code cleanup
* Update keycodes
* Update unicode documentation
* Update unicode keycodes for consistency/easier merge
* Add Audio Feedback section
* Remove Functions from feature page
And link to the file instead. Link to specific lines later on.
* Fix white spaces
Co-Authored-By: drashna <drashna@live.com>
* Fix spacing
Co-Authored-By: drashna <drashna@live.com>
* Because I missed it!
Co-Authored-By: drashna <drashna@live.com>
* Fix spacing
Co-Authored-By: drashna <drashna@live.com>
* SPAAAAAAAAAACing
Co-Authored-By: drashna <drashna@live.com>
* white spaces
Co-Authored-By: drashna <drashna@live.com>
* Add BSD for future compatibility
* Thought I fixed that!
Co-Authored-By: drashna <drashna@live.com>
* non-breaking
Co-Authored-By: drashna <drashna@live.com>
* Considered that
Co-Authored-By: drashna <drashna@live.com>
* Yuuup
Co-Authored-By: drashna <drashna@live.com>
* consistency
Co-Authored-By: drashna <drashna@live.com>
* white spaces .... copied from elsewhere
Co-Authored-By: drashna <drashna@live.com>
* white spaces
Co-Authored-By: drashna <drashna@live.com>
* white spaces
Co-Authored-By: drashna <drashna@live.com>
* Update keycode defines
* Fix Linux Song
* Update all of the songs
* Cleanup
* Move and update check to ensure only one unicode method is enabled
* Update quantum/quantum_keycodes.h
* Update documentation
* Wordsmithing and cleanup
* Format unicode_common (#13)
* case alignment
* process_record_unicode_common → process_unicode_common
* Move song arrays into function where they're used, align preprocessor directives
* Swap the order of UC_WIN and UC_BSD
* Update Unicode docs
* Reorder Unicode mode stuff to match the order of input mode constants
* Fix capitalization in doc subtitle
* Readd BSD and OSX_RALT songs
* Reword BSD note in docs
* Readd BSD keycode description
* Reword explanation of input on different platforms
* Steal vomindoraan's input mode documentation
Co-Authored-By: vomindoraan (vomindoraan@gmail.com)
* Willingly give Drashna the rest of my Unicode doc improvements
* Wordsmithing
Co-Authored-By: drashna <drashna@live.com>
* Rearrange process_unicode_common functions
* Make Unicode input mode constants (UC_*) an enum
* Simplify unicode_input_start/finish code
* Make the key used for WinCompose configurable
* Remove UC_OSX_RALT in favor of setting the key with UNICODE_OSX_KEY
* Update Unicode input mode doc
* Add descriptions and rearrange definitions in process_unicode_common.h
* Add registry command to Unicode docs + misc updates
* Reword an explanation in Unicode docs
* Add TODO comment
* Remove trailing whitespace
* Improve Cycling documentation
* Add Unicode Input method Cycling support (#19)
* Standardize the Unicode EEPROM code
* Remove unicode init from process_record_* functions
* Add unicode init to where it belongs: matrix_init_quantum
* Move Unicode proccessing to unicode common
* Add audio feedback to input mode keys to drive konstantin up a wall
* Tap_code cleanup
* Update keycodes
* Update unicode documentation
* Update unicode keycodes for consistency/easier merge
* Add Audio Feedback section
* Remove Functions from feature page
And link to the file instead. Link to specific lines later on.
* Fix white spaces
Co-Authored-By: drashna <drashna@live.com>
* Fix spacing
Co-Authored-By: drashna <drashna@live.com>
* Because I missed it!
Co-Authored-By: drashna <drashna@live.com>
* Fix spacing
Co-Authored-By: drashna <drashna@live.com>
* SPAAAAAAAAAACing
Co-Authored-By: drashna <drashna@live.com>
* white spaces
Co-Authored-By: drashna <drashna@live.com>
* Add BSD for future compatibility
* Thought I fixed that!
Co-Authored-By: drashna <drashna@live.com>
* non-breaking
Co-Authored-By: drashna <drashna@live.com>
* Considered that
Co-Authored-By: drashna <drashna@live.com>
* Yuuup
Co-Authored-By: drashna <drashna@live.com>
* consistency
Co-Authored-By: drashna <drashna@live.com>
* white spaces .... copied from elsewhere
Co-Authored-By: drashna <drashna@live.com>
* white spaces
Co-Authored-By: drashna <drashna@live.com>
* white spaces
Co-Authored-By: drashna <drashna@live.com>
* Update keycode defines
* Fix Linux Song
* Update all of the songs
* Cleanup
* Move and update check to ensure only one unicode method is enabled
* Update quantum/quantum_keycodes.h
* Update documentation
* Wordsmithing and cleanup
* Format unicode_common (#13)
* case alignment
* process_record_unicode_common → process_unicode_common
* Move song arrays into function where they're used, align preprocessor directives
* Swap the order of UC_WIN and UC_BSD
* Update Unicode docs
* Reorder Unicode mode stuff to match the order of input mode constants
* Fix capitalization in doc subtitle
* Readd BSD and OSX_RALT songs
* Reword BSD note in docs
* Readd BSD keycode description
* Reword explanation of input on different platforms
* Steal vomindoraan's input mode documentation
Co-Authored-By: vomindoraan (vomindoraan@gmail.com)
* Willingly give Drashna the rest of my Unicode doc improvements
* Wordsmithing
Co-Authored-By: drashna <drashna@live.com>
* Rearrange process_unicode_common functions
* Make Unicode input mode constants (UC_*) an enum
* Simplify unicode_input_start/finish code
* Make the key used for WinCompose configurable
* Remove UC_OSX_RALT in favor of setting the key with UNICODE_OSX_KEY
* Update Unicode input mode doc
* Add descriptions and rearrange definitions in process_unicode_common.h
* Add registry command to Unicode docs + misc updates
* Reword an explanation in Unicode docs
* Add TODO comment
* Add cycle_unicode_input_mode and UNICODE_SELECTED_MODES macro
* Add an option for making cycle changes persistent
* Add debug prints to functions that change input_mode
* Use cycle_unicode_input_mode in whitefox/konstantin
* Add persist_unicode_input_mode function
* Add offset to cycle to allow stepping in reverse
* Add keycodes: UNICODE_MODE_FORWARD, UNICODE_MODE_REVERSE
Aliases: UC_MOD, UC_RMOD (respectively)
* REVERT ME: Undo changes to whitefox/konstantin to avoid conflicts
* Fix wrong constant name
* Revert "REVERT ME: Undo changes to whitefox/konstantin to avoid conflicts"
This reverts commit 42676bf251fc8e3823f5e614dad6e510ba47a2f3.
* Change dprintf text
* Give selected modes priority over EEPROM when !UNICODE_CYCLE_PERSIST
* Remove trailing whitespace
* Cleanup of RALT code and unicode compilation stuff
* Remove else for unicode handling
* Espectro: layout macro refactor
- updated to #pragma once method
- restructure LAYOUT_all data as block comment
- Configurator was reading the LAYOUT_all macro even though it was commented out.
- updated all keyswitch arguments to use K<ROW><COLUMN> notation
- add LAYOUT_iso macro
- add info.json file for Configurator support
* Espectro: keymap refactor
- deleted unused MODS_CTRL_MASK definitions
- iso keymap refactored to use LAYOUT_iso macro
- default and iso keymaps refactored for readability
* A Planck style keymap with iris flair
- Re-arrange layers to be more planck like.
- move backspace to right thumb
- replace backspace with minus, more useful for coding
- replace center keys with brackets
- MT(MOD_LCTRL and ESCAPE)
- Use QMK-DFU for bootloader
- add a soft reset to keymap
* Feedback from reviewers
- remove redundant define (noroadsleft)
- remove unused layer switch case (drashna)
* Adding ortho60 to handwired
* update to use LAYOUT_ortho_5x12
* Address PR comments about layout macros
* Add default layout to info.json for configurator
* Hack to xyverz layout until RGB branch is merged
* Fix undef RGBDIPIN in xyverz 12x5 layout
* Revert change to xvyerz's layout
* Fix typo
* Fix order
* Revert xyverz rules.mk
* ErgoInu: Configurator update, part 1
Give each key its own line to make the file easier to debug.
* ErgoInu: Configurator update, part 2
- converted all JSON variables to lowercase (this was the bugfix)
- converted Tabs to Spaces
* ErgoInu: Configurator update, part 3
- break key data into chunks
* ErgoInu: Configurator update, part 4
Rebuilt the layout tree into a new file, taking the Y values from the original data. Copied relevant data from original file into the new file, and then overwrote the original file.
* Cospad: Configurator update
- added LAYOUT_gamepad_6x4 data
- renders as 4 rows by 6 columns visually
- fixed LAYOUT_numpad_6x4 data
- JSON objects were in the wrong order
* Cospad: readme update
- markdown formatting fixes
- made Hardware Availability address a hyperlink
- updated Docs links
* converter/ibm_5291: Configurator support
- added layout data to info.json file
- corrected keyboard_folder value
* converter/ibm_5291: readme cleanup
- Fixed "image" url (target of link was a web page; changed markdown formatting to text link)
- Sentence capitalization fixes
- markdown formatting fixes for readability
* Layout macro refactor
- Renamed KC_KEYMAP to LAYOUT_kc
- Renamed KEYMAP to LAYOUT
- moved LAYOUT above LAYOUT_kc (Hoping this encourages users to use LAYOUT.)
- updated layout macro name in info.json
- white space changes for readability
* Keymap refactor: default
Default keymap now uses `#include QMK_KEYBOARD_H` and LAYOUT macro (from KC_KEYMAP/LAYOUT_kc). Keymap was also refactored to use process_record_user function instead of deprecated action_get_macro from TMK.
Also moved LONGPRESS_DELAY and LAYER_TOGGLE_DELAY definitions to config.h.
* Keymap refactor: dcompact
- Changed chimera_ortho.h include for QMK_KEYBOARD_H
- Updated layout name on keymap layers
* Coding conventions fix in default keymap
* Keymap refactor: gordon
- Changed chimera_ortho.h include for QMK_KEYBOARD_H
- Removed redundant includes of action_layer.h and process_tap_dance.h (superseded by QMK_KEYBOARD_H)
- Removed redundant definitions for KC_NO and KC_TRNS
- Updated layout name on keymap layers
* add temporary compile test shell script
* Extended support of SKIP_VERSION to make invariant compile results during testing.
* build_keyboard.mk, tmk_core/rules.mk: add LIB_SRC, QUANTUM_LIB_SRC support
Support compiled object enclosed in library.
e.g.
```
LIB_SRC += xxxx.c
xxxx.c --> xxxx.o ---> xxxx.a
```
* remove 'ifdef/ifndef USE_I2C' from quantum/split_common/{i2c|serial}.c
* add SKIP_DEBUG_INFO into tmk_core/rules.mk
When SKIP_DEBUG_INFO=yes is specified, do not use the -g option at compile time.
* tmk_core/rules.mk: Library object need -fno-lto
* add SKIP_DEBUG_INFO=yes
* remove temporary compile test shell script
* add '#define SOFT_SERIAL_PIN D0' to keyboards/lets_split/rev?/config.h
* quantum/split_common/serial.c: Changed not to use USE_I2C.
* Refactor fourier to use split common code
* Refactor fourier to use split common code - fix handedness when not using EE_HANDS or MASTER_LEFT
* add SOFT_SERIAL_PIN config
* handwired/CMD60: refactor
- renamed layout macro KEYMAP to LAYOUT
- removed K2C, K3B and K3C locations (indications are these locations were unused in hardware)
- keymap
- now uses #include QMK_KEYBOARD_H
- converted keycodes to short format
- deleted TMK fn_actions and action_get_macro blocks
- white space changes (readability/alignment)
* handwired/CMD60: Configurator support
* handwired/CMD60: readme update
- updated to conform to current QMK template
- added image and build gallery links
* handwired/cmd60: rename all files and folders to lowercase
* handwired/maartenwut: readme cleanup
- Fixed typo (Maarten's last name was misspelled)
- Updated Docs links
* handwired/maartenwut: Configurator support
* S7 Elephant: Configurator bugfix, part 1
Reformatted the JSON so each key is on its own line:
This makes the keys easier to rearrange.
* S7 Elephant: Configurator bugfix, part 2
Deleted the extra key from LAYOUT_iso_1u:
JSON contents stated this layout used a split Backspace, but the matrix is configured and intended to have a 2u Backspace.
Extended the Backspace to 2u width and deleted the extra key. (This fixes the error that broke LAYOUT_iso_1u's rendering in the Configurator.)
* S7 Elephant: Configurator bugfix, part 3
Fix ISO layouts:
Noticed JSON object for Enter on ISO layouts was immediately after Right Bracket. Inspection of s7_elephant.h revealed the expected and appropriate location to be after ISO Hash.
Moved Enter key to the proper location on all ISO layouts.
* Add standard ALGR defition, remove (re)definitions from language files
* Use ALGR(kc) consistently in ALTGR(kc) aliases
* Non-Nordic keymaps should not use NO_ALGR
* Add standard KC_ALGR definition
* Update docs with ALGR and KC_ALGR
* Update SS_ALGR and ALGR_T aliases
* handwired/numpad20: refactor
- layout macro no longer auto-prepends keycodes with KC_
- keymaps for this keyboard will now compile in QMK Configurator
- keymap now uses #include QMK_KEYBOARD_H
- deleted unused fn_actions code block
* handwired/numpad20: Configurator support
* Preonic: refactor layout macros
Unify layout macro names across AVR and ARM.
- all layouts and matrices have moved/duplicated to their appropriate revisions
- preonic.h now includes the appropriate header file from the selected revision
- revision header files only contain layouts appropriate for that revision
- Previously, all layouts were available in source for all revisions.
- removed KEYMAP layout macro alias (was unused)
- macros LAYOUT_preonic_1x2uC and LAYOUT_preonic_grid for AVR and ARM revisions
- LAYOUT_preonic_grid has alias LAYOUT_ortho_5x12 for all revisions
- deleted LAYOUT_ortho_4x12 alias (not appropriate for this keyboard)
- ARM-based revisions have 1x2uR, 1x2uL and 2x2u matrices
* Preonic: updated revision headers to #pragma once
* Preonic: update Configurator files
Updated the Configurator files to reflect the previous changes in this branch.
- Preonic revs. 1 and 2 will use keyboards/preonic/info.json
- Preonic rev. 3 will use keyboards/preonic/rev3/info.json
- This file will override keyboards/preonic/info.json when preonic/rev3 is selected in the Configurator.
* handwired/practice60: Configurator Support
* handwired/practice60: refactor
- layout macro rows did not have an equal number of arguments in all rows of the matrix
- white space changes for readability/alignment
* handwired/pilcrow: refactor
- layout macro renamed from KEYMAP to LAYOUT
- keymap now uses #include QMK_KEYBOARD_H
- layers reformatted for readability
- removed unused and deprecated fn_actions and action_get_macro blocks
- keymap config.h
- updated to use #pragma once
- removed redundant config.h include
* handwired/pilcrow: Configurator support
* handwired/pilcrow: readme update
Updated readme.md file to use modern template formatting.
MCU Pins for debugging, LED, boot tracing, and shift registers are now configurable at keyboard level.
Macros led_* replaced by DBG_LED_*
Macros m15_* replaced by DBG_1_*
Macros m27_* replaced by DBG_2_*
Macros m28_* replaced by DBG_3_*
For CTRL and ALT keyboards, debug boot tracing pin default now set to pad M27 instead of M28 since although M28 is not being used, it is technically a signal for USB port detection.
m15_print(...) renamed to dbg_print(...) to get away from hard coded port names.
dbg_print function now follows similar pattern to debug led output.
* Added RGB toggle and cycle to default mapping. This is present on layouts on 'http://qmkeyboard.cn/' but not here.
* Added addition keycodes for hue/sat/val.
* handwired/minorca: refactor
- Refactored keymaps to use a layout macro, which was added to minorca.h.
- keymaps now use QMK_KEYBOARD_H include
- removed redundant KC_TRNS and KC_NO definitions
- rgb keymap refactor to use QMK core layer switching and Mod-Tap keycodes
* handwired/minorca: Configurator support
* handwired/minorca: readme cleanup
Restructure readme file to current QMK template.
* Update alps64 aek layout to work
I tried using the layout provided with my alp64 board in AEK
configuration, but keys weren't mapping correctly until I made this fix.
* Update crd's alps64 aek keymp to match other boards
(inspired by mechmerlin)
* Fix minor whitespace issue
* Initial palm_usb support
* removing left over sun .c file
* fixing licenses
* actually adding updated files
* fixing build error
* more include cleanup
* handwired/gamenum: refactor
- layout macro KEYMAP renamed to LAYOUT
- white space changes for alignment
- default keymap
- now uses #include QMK_KEYBOARD_H
- updated layout macro names
- white space changes (for readability)
* handwired/gamenum: Configurator support
* handwired/gamenum: readme cleanup
- renamed file to lowercase
- updated to match current QMK template more closely
- edits to reflect the other changes in this PR
Adds Configurator support for the Sol rev. 1 by RGBKB.
Notes:
The Sol keyboard supports split thumb keys like the Ergodox - any of the 2u thumb keys can be split into two 1u keys. The matrix here is configured for fully 1u keys on the thumbs.
The Sol also supports installing a rotary encoder on each half. The key matrix given includes the encoders' functions, which are shown in the Configurator as two 1u keys side by side below each half's main key block. The left key of the two (for each side) represents that half's rotary encoder's counter-clockwise function, and the right key is that encoder's clockwise function.
* handwired/fivethirteen: refactor
- Layout macro KEYMAP renamed to LAYOUT
- Default keymap
- now uses #include QMK_KEYBOARD_H
- Removed redundant KC_TRNS definition
- Removed deprecated fn_actions and action_get_macro functions.
* handwired/fivethirteen: Configurator support
* handwired/fivethirteen: readme cleanup
Restructured readme file to be closer to current QMK template.
Couldn't find a photo of an assembled fivethirteen, so deleted the
reference to the photograph.
Renamed to readme.md
* handwired/dactyl_manuform/4x5: Configurator support
* handwired/dactyl_manuform/4x6: Configurator support
* handwired/dactyl_manuform/5x6: Configurator support
* handwired/dactyl_manuform/5x7: Configurator support
* handwired/dactyl_manuform/6x6: Configurator support
* Update to work with Planck Rev. 6
Still something that needs to be worked with under keymap.c
Qwerty layer tap-toggle function seems to be a little laggy? Not instantaneous
* Changes
Deleted some unneeded lines
* deleting unneeded lines
* my XD75 builds for idobo and XD75
these are my xd75 layouts for the 2 versions of the board
* clearing of free space
spring cleaning
* additional cleaning
more spring cleaning
* removed lighting commands
don't need lighting on the idobo board so removal of such commands to keep the sizing down
* update for readme.md
* Update config.h
* commiting with keymap erros on idobo for review
* syntax fix for idobo and xd75 revok75, addition of del key switch on fn layer
* config edit to config user and keymap QMK_KEYBOARD_H
* update to vol controls for both idobo and xd75 for revok75 keymap
* filename changes
* Refactor lets split to use split common code
* Refactor lets split to use split common code
* Build fixes for OLED_sample keymap
* Build fixes for OLED_sample keymap - attempt to reduce firmware size
* preonic-kuatsure: ctrl / esc in one key + hello ` again
* preonic-kuatsure: remove esc on lower
* preonic-kuatsure: programmy macros
* user-kuatsure: turn off console all the time
* preonic-kuatsure: auto shift, but only for numbers
* preonic-kuatsure: remove programmery macros
* preonic-kuatsure: move braces, parens, etc over to raise
backwards compat
move &*() on lower
* preonic-kuatsure: stop with the full rep of game layer
* Add tsangan bottom row hhkb layout for dz60
* Add crd's tsangan hhkb layout for dz60
* Resort to native key aliases when they exist
* Update crd's dz60 ansi keymap to match updates for hhkb fn layer
* Add tsangan hhkb layout to dz60 info.json for KLE
* Fix JSON nesting in dz60 layouts block
* Minor adjustments to crd layouts to make them more consistent
* Update layout naming to 60_tsangan_hhkb
* Hacker Dvorak
Programmer Dvorak based layout for the Ergodox EZ.
* Address drashna comments.
* Fix RGB and drop OSL for MO.
* Add gulp file to automate development.
* Fix gulpfile.
* Caps, num and scroll lock indicators.
* Fix scroll lock.
* Add final RGBKB Sol firmware
* Apply suggestions from code review
Apply most of the changes noroadsleft has suggested
Co-Authored-By: Legonut <legonut3@gmail.com>
* Cleanup readme
* Cleanup keymaps per @noroadslefts suggestions
* Remove eeproms, use set_single_persistent_default_layer
* Suggestions from @noroadsleft and @drashna
some small cleanup
* Change RGB_SMOD to RGB_RMOD
* fix RGB_SMOD
* Apply suggestions from code review
Remove redundant lines
Co-Authored-By: Legonut <legonut3@gmail.com>
* add initial support for hadron ver3
* add initial support for hadron ver3
* pull qwiic support for micro_led to be modified for use in hadron's 64x24 ssd1306 oled display
* initial work on OLED using qwiic driver
* early work to get 128x32 oled working by redefining qwiic micro oled parameters. Currently working, but would affect qwiic's micro oled functionality
* moved oled defines to config.h and added ifndef to micro_oled driver
* WORKING :D - note, still work in progress to get the start location correct on the 128x32 display.
* added equation to automatically calculate display offset based on screen width
* adding time-out timer to oled display
* changed read lock staus via read_led_state
* lock indications fixes
* Added scroll lock indication to oled
* add support for DRV2605 haptic driver
* Improve readabiity of DRV2605 driver.
-added typedef for waveform library
-added unions for registers
* Update keyboards/hadron/ver2/keymaps/default/config.h
Co-Authored-By: ishtob <ishtob@gmail.com>
* Update keyboards/hadron/ver2/keymaps/default/config.h
Co-Authored-By: ishtob <ishtob@gmail.com>
* Update keyboards/hadron/ver2/keymaps/default/config.h
Co-Authored-By: ishtob <ishtob@gmail.com>
* Update keyboards/hadron/ver2/keymaps/default/config.h
Co-Authored-By: ishtob <ishtob@gmail.com>
* Fixes for PR
* PR fixes
* fix old persistent layer function to use new set_single_persistent_default_layer
* fix issues with changing makefile defines that broken per-key haptic pulse
* Comment fixes
* Add definable parameter and auto-calibration based on motor choice
* keymap + alpha
* some fixes
* keymap + alpha
* some fixes
* drashna changes
* linked main Alpha repo in keyboards/alpha readme
* missed a spot
* there's another function called FUNC lol
* keymap + alpha
* some fixes
* keymap + alpha
* drashna changes
* Fixed include
* Revert "Fixed include"
This reverts commit ea92f261f86d8433eab313cde498adca1682a006.
* messed up my git, fixed include
* handwired/atreus50: refactor
- layout macro renames:
- KEYMAP is now LAYOUT
- COMPACT_KEYMAP is now LAYOUT_kc
- keymap updates:
- both keymaps now use #include QMK_KEYBOARD_H
- removed redundant KC_TRNS and KC_NO definitions
- default keymap now uses LAYOUT macro instead of LAYOUT_kc
* handwired/atreus50: readme cleanup
Reformatted the readme to be more closely aligned to current QMK
template, and fixed some typos/grammar.
* handwired/atreus50: Configurator support
* add 60_hhkb support
* add qmk configurator support for the new 60_hhkb layout
* allow community layout support for the 60_hhkb
* fixup readme to adhere to new QMK standards
* handwired/promethium: refactor
- config.h files
- updated to use #pragma once
- removed redundant config.h includes
- layout macro moved from config.h to promethium.h
- layout macro renamed from KEYMAP_CUSTOM to LAYOUT
* handwired/promethium: Configurator support
* Add support for S7 Elephant
A high-end 70% custom keyboard designed and produced by jacky from Geekhack.
* Polish S7 Elephant code
Implement drashna's suggestions:
- specify bootloader
- remove unnecessary defines
- use led_set_user() for LED logic
* Correct info.json and s7_elephant.h
Correct info.json and s7_elepant.h to follow QMK convention and fix a
missing curly bracket.
* Refactored M6-B to use Zeal60 RGB backlight code
* Fixed M6-B LED co-ordinates
* Minor changes to RGB config for Zeal65
* Added dynamic keymaps to WT80-A, WT60-A, WT-80A, U80-A
* Macro implementation
* Implemented macros, API protocol version 8, RGB backlight fixes
* Improved radial effects for M6-B
* Fixed undefined references when building an RGB keyboard after M6-A
* handwired/arrow_pad: layout macro and keymap refactor
- Layout macros moved from the keymaps to arrow_pad.h.
- LAYOUT_pad21 refactored to only accept keys that are physical present (no KC_NO entries required in keymap)
- Keymaps now use #include QMK_KEYBOARD_H
- Keymaps refactored to use process_record_user function (from action_get_macro)
* handwired/arrow_pad: Readme cleanup
Fixed the make commands and updated the layout macro.
* handwired/arrow_pad: Configurator support
* Fix reversed bool check in layer_state_set
* Add Quefrency 65 for a friend
* Add Ergodox EZ Glow keymap
* Add RGB Matrix Code
* Further changes to rgb matrix ErgoDox EZ
* Update bjohnson keymaps
* Fix CRKBD display
* Overhaul to corne keyboard
* Narrow scope for keylogger
* Minor layout tweaks to Corne Keyboard
* additional CRKBD tweaks
* Minor tweaks to CRKBD
* Add all characters for keylogger
* Ergodox EZ Glow overhaul
* Fix Ergodox EZ Glow layer colors
* Increase Tapping Term for Corne Keyboard
* Fix unicode-ish
* Revert some changes
* Add layer specific lighting effects
* Some minor tweaks to ergodox glow config
* revert changes to ergodox files
* Update Glow readme
* Add more tapping term defines
* Fix changes
* Fix ergodox keymap
* Hopefully fix sleeping
* Disable layer indications if rgb matrix is disabled
* Add support for sleeping and rgb layer change toggle to ergodox ez glow
* Make RGB Layer Indication Great Again
* Make Unicode Great Again
* Remove placeholder define
Co-Authored-By: drashna <drashna@live.com>
* Remove placeholder define
Co-Authored-By: drashna <drashna@live.com>
* Remove old EEPROM Reset keycode
* Enable ortho_4x12 community layouts for lets_split_eh
* Keymap build fixes now that ortho_4x12 is enabled
* Keymap build fixes now that ortho_4x12 is enabled
* compiles but is not working
* still testing 5291
* compiles but is not working
* still testing 5291
* fixed a but in the layout (reversed key order in row)
* compiles but is not working
* still testing 5291
* fixed a but in the layout (reversed key order in row)
* fixed some issues
* doumentation needed
* doumentation needed
* documentation needed
* documentation needed
* Update readme.md
documentation
* Update readme.md
i dislike markdown <_>
* merge preperation
* Enable 4x4 and 5x5 community keymap support
* Pull 4x4 community keymap fixes from @noroadsleft
* Build fixes for guidoism keymap - move keymap to layouts/community/planck_mit as it uses the LAYOUT_planck_mit macro
* remove clmk and dvrk and backlight; switch esc and enter to be modtap; add meh key
* change songs
* space cadet; move enter; move '"; move pgup pgdn
* remove extra songs
* update from noahfredrick keymap
* make it easier to type ../../thing/*/*
* move pipe
* requested changes
* add interrobang support
* add shift-insert to raise-v and lower-v, move pipe to raise-/lower-n
* Adding my new keymap, based of xd75, with leds enabled via the rules.mk file
* cleaned up the rules file
* Per Change Requests: removed deprecated functions along with updated the map to use the layout macro instead of raw matrix
* Fix firmware to work with latest Wilba changes (i.e. dynamic keymap) and M60a.
* Get back RGB Backlight codes.
* More tweaks.
* Update users/talljoe/rules.mk
Co-Authored-By: Talljoe <jwasson+github@gmail.com>
* Include both base keyboards
* Merge the keymap
* Merge the configs
* Add wiring diagram for clarity of documentation
* Merge rules
* Merge keyboard sources
* Change names to compile
* Update documentation to suit
* Add qwerty layout to 108keyTrackpoint
* Separate the dvorak standard layout from a media focused one
* Update documentation to reflect new keymaps
* [style] Add empty lines at ends of files
* [style] Meet current QMK style guide
* Bring READEME closer to the QMK template
* [style] Change all "108keyTrackpoint" to "108key_trackpoint"
* [style] Use "LAYOUT" instead of "KEYMAP"
QMK terminology has changed
Co-Authored-By: mkem114 <20897849+mkem114@users.noreply.github.com>
* Add two spaces after maintainer in README
This is required to render properly
Co-Authored-By: mkem114 <20897849+mkem114@users.noreply.github.com>
* Remove redundant line
"PREVENT_STUCK_MODIFIERS" is default on for QMK
Co-Authored-By: mkem114 <20897849+mkem114@users.noreply.github.com>
* Change include of keymaps to use QMK_KEYBOARD_H
This includes automatically
* Update make rules to match template
* Change from KC_MENU to KC_APP
The button functionality actually wanted is the context menu key
* [style] Change "dvorakMedia" to "dvorak_media"
* Update README to reflect minor changes
The debounce filtering reports a key/switch change directly, without any extra delay. After that the debounce logic will filter all further changes, until the key/switch reports the same state for the given count of scans.
So a perfect switch will get a short debounce period and a bad key will get a much longer debounce period. The result is an adaptive debouncing period for each switch.
This value defines how often the same key/switch state has to be detected in successive reads until the next key state can be reported.
In other words this value defines the minimum debouncing period for a switch.
* Add TKL JIS layout for Pegasus Hoof
Tested with a JIS Majestouch 2 TKL
* Add default_jis keymap for Pegasus Hoof
* Remove unnecessary keycode definition
* Remove legacy fn_actions in favor of MO(1)
* Remove unnecessary build directive
* fix to prime o keymap
* changed ortho keymaps
* added some symbols to lower layer
* set lower to be a higher layer than raise
* added split layout option with center numpad to prime_o keymap
* added some gaming functionality
* added alt f4 ortho keymaps and userspace
* fixed small error
* fixed arrow keys and left control
* added right shift
* latest version
* reverted arrow keys
* edited readme
* added osu layer
* updated osu layout
* updated osu layout
* added full arrow keys to osu layout
* in case i mess up creating macros
* added the best meme key in the world
* added plover steno layer
* updated boy314 layout
* removed unused layers
* added boy314 xd75 layout, inspired by preonic layout
* added boy314 xd75 layout, inspired by preonic layout
* version 2 of boy314's xd75 layout
* added readme notes
* updated readme for boy314 xd75 layout
* qwerty support, brackets on bottom row, caps lock underglow
* fixed readme/
* small changes to allow merging
* minor changes to format
* fixed up default readme
* added numpad and tweaked bottom row
* Move 68keys keymap to mf68 folder
* Remove 68keys keyboard now its been migrated to mf68 keymap
* Migrate 68keys build config to mf68 keymap overrides
* Add 412-64 keyboard firmware
It's pretty barebones for now, but the Model 00 is also a pretty barebones machine. Model 01 won't be better, but plenty of pins exist for things like LEDs on Model 02.
* MANU/PROD ID changes.
Changed around the MANUFACTURER and PRODUCT IDs to be more polite when viewed in qmk toolbox.
* Fixing PROD again.
For the love of all that is good and holy, that was ugly. This new one looks better. This stuff matters to me for some reason.
* Yep, updating MANU again.
There we go. That's better - From my name to my "design firm".
* Update keyboards/412_64/keymaps/default/keymap.c
Co-Authored-By: FateEverywhere <41215461+FateEverywhere@users.noreply.github.com>
* Update keyboards/412_64/rules.mk
Co-Authored-By: FateEverywhere <41215461+FateEverywhere@users.noreply.github.com>
* Update keyboards/412_64/rules.mk
Co-Authored-By: FateEverywhere <41215461+FateEverywhere@users.noreply.github.com>
* Update keyboards/412_64/rules.mk
Co-Authored-By: FateEverywhere <41215461+FateEverywhere@users.noreply.github.com>
* Update keyboards/412_64/rules.mk
Co-Authored-By: FateEverywhere <41215461+FateEverywhere@users.noreply.github.com>
* Refactored M6-B to use Zeal60 RGB backlight code
* Fixed M6-B LED co-ordinates
* Minor changes to RGB config for Zeal65
* Added dynamic keymaps to WT80-A, WT60-A, WT-80A, U80-A
* initial commit for kbd67 keyboard
* add in a standard matrix
* get the correct matrix for layout_all
* add a layout_65_ansi LAYOUT macro
* get a default keymap in
* add caps lock led support
* fix formatting of my name in the comments
* add QMK Configurator support
* turn on bootmagic
* Starting point for blue pill based practice60
* Changes
* add
* try raw bin no botloader
* swap back to bootloader version
* edit
* Remove debug LED flash
* Disable JTAG to open up B3 and B4
* Add led backlight support (no breathing yet)
* Update matrix for correctness
* RGB Underglow working in a very simple state
* not as bright
* Move to handwired
* revert ChibiOS_Test changes
* Changes based on PR comments
* Address PR comments v2
* Move files
* Fix up screen off timer of helix
* Fix Up ScreenOffInterval exceeded uint16_t
* Fix Up never waking up once screen off if in case of matrix are not dirty
* Changing referenIng incorrect constant name
* OLED_ENABLED => SSD1306OLED
* Improve internal processing of process_record_kb()
* Use the return value of process_record_gfx()
* Move a include statement into #ifdef block
Move #include "ssd1306.h` statement into #ifdef block
* Move process_record_kbI()
Move process_record_kb() from helix.c to rev1.c/rev2.c/pico.c
* Move process_record_kb()
* fix about screen off timer
* Fix Up ScreenOffInterval exceeded uint16_t
* Fix Up never waking up once screen off if in case of matrix are not dirty.
* Revert "fix about screen off timer"
This reverts commit 3d175f2340c14250a71af78afec5a1e890d9f4e7.
* Fix up screen off timer of crkbd
* Fix Up ScreenOffInterval exceeded uint16_t
* Fix Up never waking up once screen off if in case of matrix are not dirty.
* Fix up screen off timer of helix
* Fix Up ScreenOffInterval exceeded uint16_t
* Fix Up never waking up once screen off if in case of matrix are not dirty
* Revert "Fix up screen off timer of helix"
This reverts commit f0efb82443a7dc34b75579359b0514e8bfa51100.
* Improve internal processing of process_record_kb()
* Use the return value of process_record_gfx()
* Fix a indent
Fix a indent
* Remove unnecessary re-definitions for XXXXXXX and _______
* Update 6lit to use KC_NO in layout macros
* Update rules.mk to follow current template
* Remove use of deprecated function action_get_macro - unused and contents were from old template
* Remove use of deprecated function action_get_macro - all code was commented out
* Remove use of deprecated function action_get_macro - convert macro to use process_record_user
* Convert keymap to consistent use of _______
* fix use of old style header guards
* Swap KC_NO for XXXXXXX macro since the swap to the macro for KC_TRANS
* Resolve use of ?= in rules.mk files
* Remove duplication of rules.mk and config.h in gherkin mjt keymap
* Remove unnecessary #includes
* Align layout macros so foobar can use gherkin keymaps
* Align 6lit layout macros with foobar
* Remove ifndef QUANTUM_DIR from keymaps
* Initial 25 port
* Initial 25 port - fix info.json and hand_swap_config
* Review comments - fix layout macros, copyright comments, and duplicated use of layering macros
* initial commit
* put my name everywhere
* get the switch matrix correct
* add a basic keymap
* use a better LAYOUT macro
* update readme
* Add QMK Configurator support
* Added support for backlight , and a UK iso layout
Added support for backlight , and a UK iso layout. Now uses the SPLIT_KEYBOARD #define rather than relying on lets split
* Update keyboards/diverge3/keymaps/isoUK/keymap.c
Co-Authored-By: mcmadhatter <mcmadhatter@hotmail.com>
* Update keyboards/diverge3/keymaps/isoUK/keymap.c
Co-Authored-By: mcmadhatter <mcmadhatter@hotmail.com>
* Simplified the lower layer
Simplified the lower layer
* dir rename to snake case
dir rename to snake case
* changed dir case
changed dir case
* Update keyboards/diverge3/rules.mk
Co-Authored-By: mcmadhatter <mcmadhatter@hotmail.com>
* Update keyboards/diverge3/keymaps/iso_uk/config.h
Co-Authored-By: mcmadhatter <mcmadhatter@hotmail.com>
* Update keyboards/diverge3/config.h
Co-Authored-By: mcmadhatter <mcmadhatter@hotmail.com>
* Update keyboards/diverge3/keymaps/iso_uk/keymap.c
Co-Authored-By: mcmadhatter <mcmadhatter@hotmail.com>
* Update keyboards/diverge3/keymaps/iso_uk/keymap.c
Co-Authored-By: mcmadhatter <mcmadhatter@hotmail.com>
* Update keyboards/diverge3/keymaps/iso_uk/keymap.c
Co-Authored-By: mcmadhatter <mcmadhatter@hotmail.com>
* Update keyboards/diverge3/config.h
Co-Authored-By: mcmadhatter <mcmadhatter@hotmail.com>
* Update keyboards/diverge3/keymaps/iso_uk/config.h
Co-Authored-By: mcmadhatter <mcmadhatter@hotmail.com>
* Update keyboards/diverge3/keymaps/iso_uk/config.h
Co-Authored-By: mcmadhatter <mcmadhatter@hotmail.com>
* Update keyboards/diverge3/keymaps/iso_uk/config.h
Co-Authored-By: mcmadhatter <mcmadhatter@hotmail.com>
* aligned and tidyied up
aligned and tidyied up
* dlg's keymap
* fix list order
* remove cruft
* pragma
Co-Authored-By: dlgoodr <dlg@dsrw.org>
* turn on bootmagic, enable swapping ` and Esc while I figure out which compromise is least bad
* Initial move of 40percent.club boards to common parent folder.
* Refactor readme files to be consistent
* Refactor readme files to be consistent - fix make command examples.
* Refactor readme files to be consistent - align readme filenames.
* Refactor readme files to be consistent - fix repo url.
* Disable Community keymap builds as they are currently failing due to missing functionality
* Move more of 40percent.club boards to common parent folder.
* Refactor readme files to be consistent - align readme filenames.
* Refactor readme files to be consistent - fix make command examples.
* Preliminary 30wer firmware. Not tested on real board yet.
* Added a layer to default 30wer keymap.
* Wrote readme for 30wer.
* Added 30wer info.json.
The new simple API can be selected.
Previous version, can select two way.
* use old API (compatible with let's split serial.c)
* use new API (multi-type transaction)
This version, can select three way.
* use old API (compatible with let's split serial.c)
* use new API (single-type transaction)
* use new API (multi-type transaction)
There is no change in the code generated by this change.
* Use Magic+Esc for entering bootloader mode
* Expand rules.mk
* Improve FN_RCTL tap dance
* Avoid one-line if statements
* Add PROGMEM to keymaps definition
* td_fn_rctl_* → td_fn_rctrl_*
* Fix FN_RCTL tap dance bug when count is 4, 8, 12 etc.
* Add ACTION_TAP_DANCE_DOUBLE_MODS
* Rearrange/rename keycode defines
* Use RAL_RGU and RCT_RSF in keymaps
* Replace keymap ASCII art with box drawing characters
* Add FN_FNLK and use it
* Set Unicode input mode in eeconfig_init_user instead of matrix_init_user
* Update userspace with common config.h
* Add my dz60, satan and xd75 keyboard keymaps
* Fixing executable bits changed during last upstream merge
* Cleanup unnecessary files and defines
* Remove unnecessary defines from userspace config
* Add underglow controls to dz60 function layer
* Fixing merge conflicts
* Fixing exectable bits changed during merge
After further testing and feedback from others, the bottom row matrix was incorrect. Also RGB number was incorrect (I was tired when building this, really shouldn't do that).
* converter/adb_usb: Configurator support
Note: LAYOUT_ext_ansi has a blank space between the Spacebar and the
Right Alt/Option key when loaded in the Configurator. This is
deliberate.
Stock Apple Extended Keyboards and AEK IIs send the scan code for Left
Command when either Command key is used. (This is noted already in the
readme.) That being the case, the Command keys cannot be assigned to
different functions. Whichever keycode is placed on Left Command will be
used for both Command keys.
* converter/adb_usb: adb_usb.h cleanup
- replaced KEYMAP_COMMON_H with ADB_USB_H
- white space changes for visual alignment in LAYOUT_ext_ansi macro
* port over Rozakiin https://github.com/Rozakiin/Noxary_Firmware/tree/master/noxary_x268
* rename LAYOUT to LAYOUT_65_ansi default layout
* add configurator support
* add community layout support
* put Rozakiin's name everywhere
* update readme
* problems with the 65_ansi keymap to be diagnosed later
* Keymap: add jyh levinson keymaps
remove tap dance number keys due to sluggish responses
simplify I2C configuration
reverse hyper and meh positions
reduce tapping term to allow fast typing with mod tap space keys
remove Alt hold on right space key. too many false touches.
add vim-style arrows (hjkl) on asdf; semicolon/quote on raise
correct documentation string for jyh levinson layout
add alternative levinson layout for jyh
more inspiration from atreus keyboard. keeps shift in the expected
places. reduces number of layers. puts numpad layout easily
accessible. places important keys on palms and meta keys on top
corners for xmonad.
correct layer switching in jyh2 levinson layout
I was getting stuck on the numpad layer because the numpad hold key
was remapped once the layer was activated. Bad idea. Minor other
refinements.
use curly bracket { instead of brace [ on raise layer
add RGB keys on adjust layer
bootmagic key is confusing. turn it off.
try out permissive hold setting to make mod-tap better
remove hold for right control on quote key. too many mistakes
turn off permissive hold. it was causing unexpected behavior
enable rgb underglow animations
add make it pink/blue key to levinson layout
prevent stuck modifiers in jyh2 levinson keymap
* fix up deprecated code after code review
* remove PREVENT_STUCK_MODIFIERS because it is default
Co-Authored-By: yamad <jyamada1@gmail.com>