summaryrefslogtreecommitdiffstats
path: root/tmk_core
Commit message (Collapse)AuthorAgeFilesLines
...
* | | | Fix Command feature: use get_mods() instead of keyboard_report->mods (#4955)Konstantin Đorđević2019-01-272-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Remove unnecessary IS_COMMAND definition in clueboard/66/rev4 * Replace keyboard_report->mods with get_mods() in IS_COMMAND definitions * Update docs to use get_mods() instead of keyboard_report->mods * Replace keyboard_report->mods with get_mods() in tmk_core/protocol/usb_hid/test For some reason, this occurrence used KB_LSHIFT and KB_RSHIFT, which don't exist * Replace keyboard_report->mods with get_mods() in Massdrop keyboards (as per @patrickmt)
* | | | Adds a default value for IS_COMMAND for COMMAND feature (#4301)Drashna Jaelre2019-01-261-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Add default value for IS_COMMAND for COMMAND feature * Cleanup and consistency * Update Templates to reflect change * Fix IS_COMMAND in template * Fix IS_COMMAND define * Use consistent IS_COMMAND block in templates * Remove unnecessary `#undef IS_COMMAND` directives * Fix compile issue on orthodox * Reomve IS_COMMAND option for newer boards * Remove all existing definitions of IS_COMMAND if they use default LSHIFT and RSHIFT setting * Remove a couple of additional IS_COMMAND defines * Remove remaining redundant IS_COMMAND definitions * Remove #undef IS_COMMAND from orthodox:drashna and whitefox:konstantin * Remove multiple empty lines in modified config.h files * Update additional boards * Reomve IS_COMMAND from newer boards * Update Alice keyboard * Remove IS_COMMAND from additional boards Jan 24th edition
* | | | Fix RGBLIGHT_SLEEP function (#4865)Drashna Jaelre2019-01-251-17/+30
| |_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | * Only re-enable RGBLIGHT if it was on when going to sleep * Reformat file to follow QMK Standards * Fix check, since this is a loop, whoops Much thanks to @Rockman18 for catching this and posting the additional code!
* | | Circular animation (#4796)Drashna Jaelre2019-01-252-6/+18
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Add ability to animate arm_atsam led matrix from the center of a circle * Make arm_atsam led matrix circular animation circular rather than obloid * Fix indentation in tmk_core led_matrix.c
| * | | Fix indentation in tmk_core led_matrix.cIan O'Dea2019-01-071-9/+9
| | | |
| * | | Make arm_atsam led matrix circular animation circular rather than obloidIan O'Dea2019-01-072-1/+4
| | | |
| * | | Add ability to animate arm_atsam led matrix from the center of a circleIan O'Dea2019-01-072-6/+15
| | | |
* | | | Add MOD_MASK_* macros to core code (#4337)Konstantin Đorđević2019-01-251-0/+16
| | | | | | | | | | | | | | | | | | | | | | | | * Add MOD_MASK_* macros to core code * MOD_MASK_ALL → MOD_MASK_CSAG
* | | | Fix oneshot_time wrong type (#3696)Shihpin Tseng2019-01-251-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | * Fix oneshot_time wrong type * Fix oneshot_time_layer wrong type
* | | | Add support for RETRO_TAPPING to LT(layer, kc)lambda_sakura2019-01-252-1/+10
| | | |
* | | | Always read two bytes from the endpoint if we have two bytes to readfauxpark2019-01-221-5/+1
| | | | | | | | | | | | | | | | | | | | When this if statement is false, it will cause the report ID to be read as the LED state. We already know there are two bytes in the endpoint, which is a reasonably good indicator that it contains a report ID, so we should always read both.
* | | | Tidy up IS_{,HOST_}LED_{ON,OFF} macros (#4894)Konstantin Đorđević2019-01-201-11/+6
| | | | | | | | | | | | | | | | | | | | | | | | * Tidy up IS_{,HOST_}LED_{ON,OFF} macros * Tweak LED control docs
* | | | Flip definitions of macOS brightness aliasJunya Ogura2019-01-171-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Before: KC_BRMU - Brightness Down KC_BRMD - Brightness Up After: KC_BRMU - Brightness Up KC_BRMD - Brightness Down
* | | | Defined IS_(HOST_)LED_ON/OFF() and improved LED documentation (#4853)DidierLoiseau2019-01-171-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Defined IS_(HOST_)LED_ON/OFF() and improved LED documentation * Update docs/custom_quantum_functions.md Co-Authored-By: DidierLoiseau <didierloiseau+github@gmail.com> * Update docs/custom_quantum_functions.md Co-Authored-By: DidierLoiseau <didierloiseau+github@gmail.com> * Integrated @drashna and @fauxpark's PR comments - changed all plurals of "LED" to "LEDs" in the file - rewording of the note about host_keyboard_leds() vs. led_set_user() * Update docs/custom_quantum_functions.md Co-Authored-By: DidierLoiseau <didierloiseau+github@gmail.com>
* | | | MacOS Brightness Alias (#4836)Jeremy Bernhardt2019-01-171-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Added aliases for OSX brightness * Updated docs for alises * Moved aliases, added docs to Brightness section * Update docs/keycodes.md Co-Authored-By: germ <jeremythegeek@gmail.com> * Update docs/keycodes.md Co-Authored-By: germ <jeremythegeek@gmail.com> * Update keycode.h * Update keycode.h * Update keycodes.md * Update docs/keycodes.md Co-Authored-By: germ <jeremythegeek@gmail.com>
* | | | Simplify split_common Code significantly (#4772)James Churchill2019-01-171-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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.
* | | | Add documentation and fix formating (#4860)Drashna Jaelre2019-01-171-156/+145
| | | |
* | | | Add some function comments in action_layer.c (#4858)Nikolaus Wittenstein2019-01-161-6/+6
| | | |
* | | | Improved fix for __always_inline redefinition bugJames Churchill2019-01-111-1/+3
| | | | | | | | | | | | Instead of changing based on the version of GCC, check for the presence of the macro instead.
* | | | Fix Caps Lock LEDs once and for all (#4824)fauxpark2019-01-111-9/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Check the size of the SET_REPORT packet If we have two bytes, that probably means the first is a report ID. The 6KRO interface may or may not have one, but the NKRO interface always does, so we need to check this regardless of whether KEYBOARD_SHARED_EP is defined. * Fix indentation
* | | | Add missing parentheses to some important macros (#4775)Konstantin Đorđević2019-01-081-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | * Add missing parentheses to quantum_keycodes macros * Add missing parentheses to progmem macros
* | | | Update to arm_atsam wait and timer routinespatrickmt2019-01-0710-115/+55
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* | | Final HS60v2 changes. (#4790)yiancar2019-01-068-649/+173
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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>
* | | Add underscores to names of brightness control constants in report.h (#4764)Konstantin Đorđević2019-01-051-4/+4
| |/ |/|
* | Keep pressed keys on layer state change (fixes #2053, #2279) (#3905)Konstantin Đorđević2018-12-283-1/+19
| | | | | | | | | | | | | | | | | | | | * Keep pressed keys on layer state change * Add doc comment for clear_keyboard_but_mods_and_keys * Keep pressed keys only if PREVENT_STUCK_MODIFIERS is on * Check STRICT_LAYER_RELEASE instead of PREVENT_STUCK_MODIFIERS
* | Refactor quantum/split_common/i2c.c, quantum/split_common/serial.c (#4522)Takeshi ISHII2018-12-142-8/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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.
* | Add left/right EEPROM flashing for DFU (#4560)Drashna Jaelre2018-12-141-1/+30
| |
* | Fix macro redefinition for GNUC compilers > 6patrickmt2018-12-141-1/+1
| | | | | | | | GNUC compilers greater than version 6 already have the macro __always_inline defined. This fix checks GNUC version before defining the macro itself.
* | Fix up tap_code functionality (#4609)Drashna Jaelre2018-12-142-1/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |