summaryrefslogtreecommitdiff
path: root/docs/config_options.md
AgeCommit message (Collapse)Author
2019-10-11ARM split - detect USB to select master/slave (#6424)Joel Challis
* Initial split refactor to allow usb master detection * Add split USB detect docs * Add SPLIT_USB_DETECT demo mode limitation * fix rebase issues * clang-format
2019-09-27ARM split - Add support for dfu-util EE_HANDS flashing (#6543)Joel Challis
* Initial stab at some fake dfu-util-split-left behaviour * Apply suggestions from code review Co-Authored-By: fauxpark <fauxpark@gmail.com> * Clang format fixes * Fake eeprom init for both left and right hand
2019-09-06Make USB polling rate configurable with a define (#6668)fauxpark
2019-08-08Improve backlight PWM pin support (#6202)fauxpark
* Improve backlight PWM pin support * I accidentally an equals sign * Another typo * Order by pin number * Throw an error if backlight pin is C4 or C5 on 16/32U4 * Use else for clarity * Minor alignment adjustments
2019-08-03[Split] Add config option for DIRECT_PINS_RIGHT (#6479)Garrett Singer
Adds support for different direct pin mappings on the halves of a split keyboard.
2019-07-20Update IS_COMMAND definitions to use MOD_MASK_SHIFT (#6348)Konstantin Đorđević
* Update IS_COMMAND definition in templates to use MOD_MASK_SHIFT * Update IS_COMMAND in docs * Update IS_COMMAND default definition in tmk_core * Update table in Command docs based on suggestion Co-Authored-By: fauxpark <fauxpark@gmail.com>
2019-07-16Make Caps Lock delay more reasonable (#6199)Drashna Jaelre
* Make Caps Lock delay more reasonable * Update documentation * Update docs/config_options.md Co-Authored-By: Konstantin Đorđević <vomindoraan@gmail.com> * Update docs/config_options.md Co-Authored-By: Konstantin Đorđević <vomindoraan@gmail.com>
2019-07-15Usbasploader bootloader option addition (#6304)yiancar
* Added USBasp bootloader option for USBasploader * author comment * ifdef fix :) * Add usbasp target * Update docs/flashing.md Co-Authored-By: fauxpark <fauxpark@gmail.com> * Update docs/flashing.md Co-Authored-By: fauxpark <fauxpark@gmail.com> * Update docs/flashing.md Co-Authored-By: fauxpark <fauxpark@gmail.com>
2019-06-19Fix breathing always on for soft PWM (#5983)fauxpark
* Fix breathing always on for soft PWM * Remove reference to hardware PWM pins in BACKLIGHT_BREATHING description Now, breathing will only be unsupported when Timers 1 and 3 are both used by Audio * Document BACKLIGHT_ON_STATE and its purpose
2019-06-19Set default I2C clock speed to 100kHz for split_common (#6161)Danny
* Set default I2C clock rate for split_common boards to 100kHz Default from I2C driver is 400kHz. * Update documentation for setting I2C clock speed
2019-06-17Fix backlight breathing on C6 (#6102)fauxpark
* Fix backlight breathing on C6 * Account for ATmega32A's single TIMSK register (MT40) * Document hardware PWM on D4 for ATmega32A * Add C6 and D4 to BACKLIGHT_PIN description
2019-06-06Replace DEBOUNCING_DELAY (deprecated) with DEBOUNCE (#5997)Drashna Jaelre
2019-05-16Make delay for Capslock in Hold-Tap functions configurable (#5497)Drashna Jaelre
* Increase delay for Hold-Tap register for CAPSLOCK Because it seems that the 80ms delay wasn't too much * Screw it, make the caps delay a define and make it configurable
2019-05-02Add option to enable LTO easily (#5674)Drashna Jaelre
* Add option to enable LTO easily and disable features that cause compiling errors with LTO * Add documentation about LTO option * Add to show_options
2019-04-19Change split_common to use RGBLIGHT_SPLIT (#5509)Takeshi ISHII
* add I2C_slave_buffer_t to quantum/split_common/transport.c Improvements to ease the maintenance of the I2C slave buffer layout. And this commit does not change the compilation results. * add temporary pdhelix(Patched Helix) code * temporary cherry-pick from #5020 add new version(#5020) quantum/rgblight.[ch], quantum/rgblight_modes.h * add post_config.h support to build_keyboard.mk * add quantum/rgblight_post_config.h, quantum/split_common/post_config.h Add quantum/rgblight_post_config.h and quantum/split_common/post_config.h using POST_CONFIG_H variable of build_keyboard.mk. quantum/rgblight_post_config.h additionally defines RGBLIGHT_SPLIT if RGBLED_SPIT is defined. quantum/split_common/post_config.h defines RGBLIGHT_SPLIT additionally when master-slave communication is I2C. * Change split_common's transport.c I2C to use the synchronization feature of rgblight.c * Change split_common's transport.c serial to use the synchronization feature of rgblight.c * test RGBLIGHT_SPLIT on keyboards/handwired/pdhelix * Test End Revert "test RGBLIGHT_SPLIT on keyboards/handwired/pdhelix" This reverts commit 80118a6bbd3d9fc4c7797fef0c34bc67aa73aa98. [x] make RGBLIGHT_TEST=1 handwired/pdhelix/i2c:default [x] make RGBLIGHT_TEST=2 handwired/pdhelix/i2c:default (same RGBLIGHT_TEST=3) [x] make RGBLIGHT_TEST=3 handwired/pdhelix/i2c:default [x] make RGBLIGHT_TEST=1 handwired/pdhelix/pd2:default [x] make RGBLIGHT_TEST=2 handwired/pdhelix/pd2:default [x] make RGBLIGHT_TEST=3 handwired/pdhelix/pd2:default [x] make RGBLIGHT_TEST=1 handwired/pdhelix/pd2_2oled:default [x] make RGBLIGHT_TEST=2 handwired/pdhelix/pd2_2oled:default [x] make RGBLIGHT_TEST=3 handwired/pdhelix/pd2_2oled:default * Test End, Revert "temporary cherry-pick from #5020" This reverts commit d35069f68bda0c50370442a5c7aae60c2f4ce5c0. * Test End, Revert "add temporary pdhelix(Patched Helix) code" This reverts commit aebddfc1a879796afae297ef0723a4fe73af3660. * temporarily cherry-pick from #5020 to see if it passes the travis-ci test. add new version(#5020) quantum/rgblight.[ch], quantum/rgblight_modes.h * Passed the travis-ci test. Revert "temporarily cherry-pick from #5020 to see if it passes the travis-ci test." This reverts commit 647c0a9755eb6a05f76d09b2d59bce67b85a841f. * update docs/config_options.md * update split_common/transport.c, improves maintainability of serial transaction IDs. No change in build result. * temporary cherry-pick from #5020 * fix build fail keebio/iris/rev3:default * fix build fail lets_split_eh/eh:default * Revert "temporary cherry-pick from #5020" This reverts commit be48ca1b4515366a097af8dd1cd7b28b7ee09947. * temporary cherry-pick from #5020 (0.6.336) * Revert "temporary cherry-pick from #5020 (0.6.336)" This reverts commit 978d26a8b3cf0acc485838a7d76d6128b77c630c. * temporary cherry-pick from #5020 (0.6.336)
2019-04-11Port DIRECT_PINS from split_common/matrix.c to matrix.c (#5091)zvecr
* Port DIRECT_PINS from split_common/matrix.c to matrix.c * Reorder matrix.c to remove foward declaration and match split_common/matrix.c * Refactor nano to use DIRECT_PINS * Reorder matrix.c to remove foward declaration and match split_common/matrix.c * Add DIRECT_PINS documentation * Reorder matrix.c to remove foward declaration and match split_common/matrix.c - fix logic from inherited from split_common * Add DIRECT_PINS documentation - review comments
2019-04-05Custom Tapping Term per key (#5009)Drashna Jaelre
* Add customizable tapping terms * Add Documentation * Fix function * Fixes * It's not a pointer * Add debugging output * Update documentation to be at least vaguely accurate * Use `get_tapping_term(tapping_key.event)` instead `e` doesn't include column and row information, properly. It registers as 255, regardless of the actual keypress. However `tapping_key.event` actually gives the correct column and row information. It appears be the correct structure to use. In fact, it looks like the issue is that `e` is actually the "TICK" structure, as defined in keyboard.h * Use variable tapping term value rather than define * Silly drashna - tapping_key.event, not event * add get_event_keycode() function * Fix typo Co-Authored-By: drashna <drashna@live.com> * Remove post_process_record_quantum since it's the wrong PR * Update quantum/quantum.c Co-Authored-By: drashna <drashna@live.com> * Better handle ifdef statement for permissive hold Since we can't be sure that tapping term is actually 500 * Update quantum.c comments based on feedback * Clean up get_tapping_term function Clean up function so that users don't need to call the event function, and instead only check the keycode * Add ability to run functionality on and off * Make ifdef's more compact
2019-03-23Add support for RGB LEDs wired directly to each half's controller (#5392)Danny
* Add support for wiring RGB LEDs for both halves directly to their respective controllers RGB LEDs for each half don't need to be chained together across the TRRS cable with this * Add split RGB LED support for serial * Update config/rules for bakingpy layout * Un-nest ifdefs for hand detection * Read RGB config state from memory instead of EEPROM for serial updates * Reuse existing LED pointer instead of creating new one
2019-03-15Add avrdude split EE_HANDS flash commands (#5414)Danny
* Add EEPROM avrdude flashing commands for setting handedness * Update docs with info on flashing EEPROM handedness files with commands
2019-03-04Clean up debounce a bit (#5255)James Churchill
2019-02-20Markdown cleanup on Config Options docnoroadsleft
Descriptions for B5_AUDIO, B6_AUDIO, and B7_AUDIO under Hardware Options were partially italicized when parsed by Docsify, though rendered as intended by GitHub.
2019-01-27Fix Command feature: use get_mods() instead of keyboard_report->mods (#4955)Konstantin Đorđević
* 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)
2019-01-17Simplify split_common Code significantly (#4772)James Churchill
* 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.
2019-01-10Documentation clarification (#3611)orbitingorca
* Documentation fix * Further clarification
2018-12-28Update split keyboard docs (#4735)Danny
* Remove unused I2C_MASTER_RIGHT setting * Update documentation about split keyboard options
2018-12-20Fix up process_leader to be a bit more optimized (#4662)Drashna Jaelre
* Fix up process_leader to be a bit more optimized * Process dual function keys better * Make leader start a callable function * Fix per key timer call location * Add escape if already leading * Return false for KC_LEAD * Add documentation
2018-12-20Docs: Add additional clarification to Leader Key documention (#4660)Drashna Jaelre
* Add clarification for Leader Timeout * Add additional documentatin to config_options.md * Add leader_start() and leader_end() documentation * Add Examples * Clarify timout * Remove customization * Improve docs based on feedback * Better clarification of features * Fix example * Spelling/grammar issue * Spelling and clarification
2018-12-15Per Key Leader Timing Option (#4026)Alexander Kagno
* leader changes to enable per key timing option * Changes requested to docs for @drashna * Changes requested by @drashna
2018-12-14Make quantum/split_common/serial.[ch] configurable (#4419)Takeshi ISHII
* add temporary compile test shell script * add 'CONFIG_H += serial_backward_compatibility.h' into common_features.mk:SPLIT_KEYBOARD block * add quantum/split_common/serial_backward_compatibility.h SERIAL_PIN_PORT and other PIN define move to serial_backward_compatibility.h SERIAL_BACKLIT_START move to split_util.h * quantum/split_common/serial.c change to helix-serial.c style serial configuration * add temporary file quantum/split_common/split-keyboards-list.txt * add '#define SOFT_SERIAL_PIN D0' to keyboards/6lit/config.h * add '#define SOFT_SERIAL_PIN D0' to keyboards/divergetm2/config.h * add '#define SOFT_SERIAL_PIN D0' to keyboards/ergotravel/rev1/config.h * add '#define SOFT_SERIAL_PIN D0' to keyboards/foobar/config.h * add '#define SOFT_SERIAL_PIN D0' to keyboards/handwired/dactyl_manuform/config.h * add '#define SOFT_SERIAL_PIN D0' to keyboards/handwired/qc60/config.h * add '//#define SOFT_SERIAL_PIN D0' to keyboards/handwired/xealous/config.h * add '#define SOFT_SERIAL_PIN D0' to keyboards/iris/rev*/config.h * add '//#define SOFT_SERIAL_PIN D0' to keyboards/lets_split_eh/config.h * add '#define SOFT_SERIAL_PIN D0' to keyboards/levinson/rev*/config.h * add '#define SOFT_SERIAL_PIN D0' to keyboards/miniaxe/config.h * add '#define SOFT_SERIAL_PIN D0' to keyboards/nyquist/rev?/config.h * add '#define SOFT_SERIAL_PIN D0' to keyboards/quefrency/rev1/config.h * add '#define SOFT_SERIAL_PIN D0' to keyboards/qwertyydox/config.h,keyboards/qwertyydox/rev1/config.h * add '#define SOFT_SERIAL_PIN D0' to keyboards/redox/rev1/config.h * add '#define SOFT_SERIAL_PIN D0' to keyboards/rorschach/rev1/config.h * remove '#define SOFT_SERIAL_PIN D0' from quantum/split_common/serial_backward_compatibility.h * remove temporary file quantum/split_common/split-keyboards-list.txt * remove temporary compile test shell script * Revert "remove temporary compile test shell script" This reverts commit 15b0021b4092127b8d8a21f572642ad3702b46d4. * update quantum/split_common/compile_split_test.sh for new keyboard test * add '#define SOFT_SERIAL_PIN D0' to keyboards/diverge3/config.h * add '#define SOFT_SERIAL_PIN D0' to keyboards/40percentclub/25/config.h * remove temporary compile test shell script * update docs/config_options.md, quantum/template/avr/config.h * fix quantum/template/avr/config.h * fix typo docs/config_options.md
2018-12-14Fix up tap_code functionality (#4609)Drashna Jaelre
* Add delay in Tap Code to avoid issues I think a few people have reporting issues with it working properly, and it may be a timing issue. The 'register_code' uses this sort of delay in some of the functions, and this is probably why. Adding the 100ms delay should hopefully fix any issues with it. * Make tap_code delay configurable * Update documentation * Bring tap_code16 inline with changes * Fix type for tap_code16 Bad copy-paste job * Just use the value check for the define * Clarify timing in docs Co-Authored-By: drashna <drashna@live.com> * Wordsmithing Co-Authored-By: drashna <drashna@live.com>
2018-11-15Use a single endpoint for HID reports (#3951)James Laird-Wah
* Unify multiple HID interfaces into one This reduces the number of USB endpoints required, which frees them up for other things. NKRO and EXTRAKEY always use the shared endpoint. By default, MOUSEKEY also uses it. This means it won't work as a Boot Procotol mouse in some BIOSes, etc. If you really think your keyboard needs to work as a mouse in your BIOS, set MOUSE_SHARED_EP = no in your rules.mk. By default, the core keyboard does not use the shared endpoint, as not all BIOSes are standards compliant and that's one place you don't want to find out your keyboard doesn't work.. If you are really confident, you can set KEYBOARD_SHARED_EP = yes to use the shared endpoint here too. * unify endpoints: ChibiOS protocol implementation * fixup: missing #ifdef EXTRAKEY_ENABLEs broke build on AVR with EXTRAKEY disabled * endpoints: restore error when too many endpoints required * lufa: wait up to 10ms to send keyboard input This avoids packets being dropped when two reports are sent in quick succession (eg. releasing a dual role key). * endpoints: fix compile on ARM_ATSAM * endpoint: ARM_ATSAM fixes No longer use wrong or unexpected endpoint IDs * endpoints: accommodate VUSB protocol V-USB has its own, understandably simple ideas about the report formats. It already blasts the mouse and extrakeys through one endpoint with report IDs. We just stay out of its way. * endpoints: document new endpoint configuration options * endpoints: respect keyboard_report->mods in NKRO The caller(s) of host_keyboard_send expect to be able to just drop modifiers in the mods field and not worry about whether NKRO is in use. This is a good thing. So we just shift it over if needs be. * endpoints: report.c: update for new keyboard_report format
2018-11-06Clarify the Mod Tap defines in documentation (#4352)Drashna Jaelre
* Fix up Mod Tap settings keys * Change link names * permissive hold wordsmith Co-Authored-By: drashna <drashna@live.com> * ignore mod tap wordsmithing Co-Authored-By: drashna <drashna@live.com> * grammar fix Co-Authored-By: drashna <drashna@live.com> * wordsmithing Co-Authored-By: drashna <drashna@live.com> * word smithing Co-Authored-By: drashna <drashna@live.com>
2018-10-10Add documentation for Combo featureDrashna Jaelre
2018-10-07Update Bluetooth docs (#4062)chipperdoodles
* syncing upstream * Bluetooth Doc update More Description in bluetooth section, Addition to Config options rules.mk section. * merge upstream chibios * lib/chibios checkout * Additional EZ key Section added back EZ-Key diy link, Cleaned up some errors
2018-09-17Make `PREVENT_STUCK_MODIFIERS` the default (#3107)Joe Wasson
* Remove chording as it is not documented, not used, and needs work. * Make Leader Key an optional feature. * Switch from `PREVENT_STUCK_MODIFIERS` to `STRICT_LAYER_RELEASE` * Remove `#define PREVENT_STUCK_MODIFIERS` from keymaps.
2018-09-05Add the ability to disable the USB startup check for Chibiosyiancar
- Added support for NO_USB_STARTUP_CHECK. This allows the keyboard do function and not get stuck in a SUSPENDED state loop in case of no USB connection. - Added support for WAIT_FOR_USB. In LUFA no keyboard has this flag enable therefor no keyboard waits for usb to be active. - Added documentation for both configuration flags as they were missing.
2018-08-11Document FIRMWARE_FORMAT (#3631)skullydazed
2018-07-25Fix for the Split Common I2C code's SCL_CLOCK issue (#3474)Drashna Jaelre
* Fix the SLC_CLOCK setting for the Split Common code Make the SCL_CLOCK setting configurable per board, since some use different settings And change the Iris to use 100000L instead of 400000L * Add SCL_CLOCK variable to documentation * Change SCL_CLOCK default to 100000L
2018-07-16Lets split eh (#3120)That-Canadian
* Line ending stuff again * Added Let's Split Eh? Files and updated #USE_IC2 checks to also include th EH revision (can only be used in I2C) * Added personal keymap, updated some of the EH files * Created new keyboard file for testing "lets_split_eh" will merge into lets_split once fully functional * Added split code from lets_split, removed pro micro imports and LED code THIS IS WORKING CODE, WITHOUT RGB AND BACKLIGHT * Took back original Lets Slit files for the lets_split keyboard, working in the lets_split_eh folder for now * Updated eh.c * More rework of the I2C code, added global flags for split boards. * Introduced RGB over I2C, having weird edge case issues at the moment though * Fixed weird I2C edgecase with RGB, although still would like to track down route cause.. * Changed RGB keycodes (static ones) to activate on key-up instead of key-down to elimate weird ghosting issue over I2C * Lots of changes, mainly externalized the Split keyboard code and added logic for only including when needed. - Added makefile option "SPLIT_KEYBOARD" that when = yes will include the split keyboard files and custom matrix - Split keyboard files placed into quantum/split_common/ - Added define option for config files "SPLIT_HAND_PIN" FOr using high/low pin to determine handedness, low = right hand, high = left hand - Cleaned up split logic for RGB and Backlight so it is only exectuted / included when needed * Updated documentation for the new makefile options and #defines specific to split keyboards * Added a bit more info to docs, so people aren't confused * Modifed Let's Split to use externalized code, also added left and right hand eeprom files to the split_common folder * Removed some debugging from eh.c * Small changes to keyboard configs. Also added a default keymap (just a copy of my that_canadian keymap). * Added a README file to the Let's Split Eh? * Changed it so RGB static updates are done on key-up ONLY for split boards rather than all boards. Also fixed leftover un-used variable in rgblight.c * Updated default keymap and my keymap for Let's Split Eh? Updated the comments so it reflects RGB control, and removed audio functions. * Fixed lets_split_eh not having a default version * Removed "eh" references from lets_split folder for now * Took lets_split folder from master to fix travis build errors, weird my local was overriding. * Changed LAYOUT_ortho_4x12_kc -> LAYOUT_kc_ortho_4x12 to match bakingpy and others * Removed rules.mk from my lets_split keymap, not needed * Updated the config_options doc to better explain the usage of "#define SPLIT_HAND_PIN"
2018-07-15Overhaul to keycode related docsDrashna Jaelre
* Adds Audio Keycodes to both the feature page and master list * Re-orders the keycode list, so it's alphabetical (mostly) * Add additional (missing) sections to the keycode list * Add and update links in the keycode page * Add and reorder links in sidebar's keycode section
2018-07-06Add documentation for TAPPING_FORCE_HOLD (#2957) (#3320)Nicolas Schodet
Also improve documentation for related settings.
2018-05-02Add dilly/pletcher layout (#2880)Charles Pletcher
* Add pletcher keymap to dilly/keymaps For the moment, this keymap just removes unneeded RGB keycodes, since an iPad will cut the keyboard off if LEDs are turned on. * Drop support for A_RSFT, add media and autoshift * Lower USB_MAX_POWER_CONSUMPTION for dilly on iPad * Document USB_MAX_POWER_CONSUMPTION This config option is useful for limiting the requested power by, e.g., an iOS device. While the default value is 500, a much lower value--say, 50--can sufficiently power a small keyboard without LEDs.
2018-04-19Correct documentation for `PREVENT_STUCK_MODIFIERS`Joe Wasson
2018-04-12Added support for audio using pins C4, C5, B6, B7Michael L. Walker
2018-03-25Fixes and updates to docs (#2611)Drashna Jaelre
* Fix advanced keycode headers * Add caveat for OSM over Remote Desktop * Hopefully add better anchors to docs * Add Action code list reference * Formatting of RGB Underglow doc * Add brew update issue on macOS * Revert formatting * Revert RGB doc formatting * Make Config Options doc's sections linkable
2018-01-12Clarify that we actually have max 16 total backlight levelsfauxpark
2018-01-01backlight breathing overhaul (#2187)Balz Guenat
* add breathing to bananasplit * backlight breathing overhaul * fix the backlight_tick thing. * fix for vision_division backlight * fix a few keymaps and probably break breathing for some weirdly set-up boards. * remove BL_x keycodes because they made unreasonable assumptions * some fixes for BL keycodes * integer cie lightness scaling * use cie lightness for non-breathing backlight and make breathing able to reach true max brightness
2017-12-09Fix some of the more obvious typosfauxpark
2017-12-09Convert all headings to Title Casefauxpark
2017-11-21Update config_options.mdJack Humbert