summaryrefslogtreecommitdiff
path: root/docs/_summary.md
AgeCommit message (Collapse)Author
2020-08-29Hid joystick interface (#4226)a-chol
* add support for hid gamepad interface add documentation for HID joystick Add joystick_task to read analog axes values even when no key is pressed or release. update doc Update docs/feature_joystick.md Manage pin setup and read to maintain matrix scan after analog read * Incorporates patches and changes to HID reporting There are some patches provided by @a-chol incorporated on this commit, and also some changes I made to the HID Report structure. The most interesting is the one dealing with number of buttons: Linux doesn't seem to care, but Windows requires the HID structure to be byte aligned (that's in the spec). So if one declares 8/16/32... buttons they should not have any issues, but this is what happens when you have 9 buttons: ``` bits |0|1|2|3|4|5|6|7| |*|*|*|*|*|*|*|*| axis 0 (report size 8) |*|*|*|*|*|*|*|*| ... |*|*|*|*|*|*|*|*| |*|*|*|*|*|*|*|*| |*|*|*|*|*|*|*|*| |*|*|*|*|*|*|*|*| |*|*|*|*|*|*|*|*| axis 6 |*|*|*|*|*|*|*|*| first 8 buttons (report size 1) |*| | | | | | | | last of 9 buttons, not aligned ``` So for that I added a conditonal that will add a number of reports with size 1 to make sure it aligns to the next multiple of 8. Those reports send dummy inputs that don't do anything aside from aligning the data. Tested on Linux, Windows 10 and Street Fighter (where the joystick is recognized as direct-input) * Add save and restore of each pin used in reading joystick (AVR). Allow output pin to be JS_VIRTUAL_AXIS if the axis is connected to Vcc instead of an output pin from the MCU. Fix joystick report id Fix broken v-usb hid joystick interface. Make it more resilient to unusual settings (none multiple of eight button count, 0 buttons or 0 axes) Correct adc reading for multiple axes. Piecewise range conversion for uncentered raw value range. Input, output and ground pin configuration per axis. Documentation fixes * Fix port addressing for joystick analog read * The other required set of changes As per the PR, the changes still holding it up. Add onekey for testing. Fix ARM builds. Fix device descriptor when either axes or buttons is zero. Add compile-time check for at least one axis or button. Move definition to try to fix conflict. PR review comments. qmk cformat * avoid float functions to compute range mapping for axis adc reading * Remove V-USB support for now. Updated docs accordingly. * Update tmk_core/protocol/lufa/lufa.c Co-Authored-By: Ryan <fauxpark@gmail.com> * Update tmk_core/protocol/usb_descriptor.c Co-Authored-By: Ryan <fauxpark@gmail.com> * Update tmk_core/protocol/usb_descriptor.c Co-Authored-By: Ryan <fauxpark@gmail.com> * Update tmk_core/protocol/usb_descriptor.c Co-Authored-By: Ryan <fauxpark@gmail.com> * Add support for joystick adc reading for stm32 MCUs. Fix joystick hid report sending for chibios * Fix HID joystick report sending for ChibiOS. Add one analog axis to the onekey:joystick keymap. Fix pin state save and restore during joystick analog read for STM32 MCUs. * Update tmk_core/protocol/chibios/usb_main.c Co-Authored-By: Ryan <fauxpark@gmail.com> * Update tmk_core/protocol/lufa/lufa.c Co-Authored-By: Ryan <fauxpark@gmail.com> * Add missing mcuconf.h and halconf.h to onekey:joystick keymap. Add suggested fixes from PR. * Switch saveState and restoreState signature to use pin_t type. onekey:joystick : add a second axis, virtual and programmatically animated. * Update docs/feature_joystick.md Co-Authored-By: Ryan <fauxpark@gmail.com> * Update docs/feature_joystick.md Co-Authored-By: Ryan <fauxpark@gmail.com> * Add PR corrections * Remove halconf.h and mcuconf.h from onekey keymaps * Change ADC_PIN to A0 Co-authored-by: achol <allecooll@hotmail.com> Co-authored-by: José Júnior <jose.junior@gmail.com> Co-authored-by: a-chol <achol@notamail.com> Co-authored-by: Nick Brassel <nick@tzarc.org> Co-authored-by: Ryan <fauxpark@gmail.com>
2020-08-07Add PR checklist document. (#9913)Nick Brassel
* Add PR checklist document. * Update docs/pr_checklist.md Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com> * Apply suggestions from code review Co-authored-by: Ryan <fauxpark@gmail.com> * Reword the lower/raise/adjust suggestion somewhat for clarity. * Add suggestion from @Didel for coding conventions. Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com> Co-authored-by: Ryan <fauxpark@gmail.com>
2020-06-10Add documentation for selecting an Arm MCU (#9046)Nick Brassel
* Initial doco write-up. * Update docs/platformdev_selecting_arm_mcu.md Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com> * Apply suggestions from code review Co-authored-by: Ryan <fauxpark@gmail.com> Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com> Co-authored-by: Ryan <fauxpark@gmail.com>
2020-05-302020 May 30 Breaking Changes Update (#9215)James Young
* Branch point for 2020 May 30 Breaking Change * Migrate `ACTION_LAYER_TOGGLE` to `TG()` (#8954) * Migrate `ACTION_MODS_ONESHOT` to `OSM()` (#8957) * Migrate `ACTION_DEFAULT_LAYER_SET` to `DF()` (#8958) * Migrate `ACTION_LAYER_MODS` to `LM()` (#8959) * Migrate `ACTION_MODS_TAP_KEY` to `MT()` (#8968) * Convert V-USB usbdrv to a submodule (#8321) * Unify Tap Hold functions and documentation (#8348) * Changing board names to prevent confusion (#8412) * Move the Keyboardio Model01 to a keyboardio/ subdir (#8499) * Move spaceman keyboards (#8830) * Migrate miscellaneous `fn_actions` entries (#8977) * Migrate `ACTION_MODS_KEY` to chained mod keycodes (#8979) * Organizing my keyboards (plaid, tartan, ergoinu) (#8537) * Refactor Lily58 to use split_common (#6260) * Refactor zinc to use split_common (#7114) * Add a message if bin/qmk doesn't work (#9000) * Fix conflicting types for 'tfp_printf' (#8269) * Fixed RGB_DISABLE_AFTER_TIMEOUT to be seconds based & small internals cleanup (#6480) * Refactor and updates to TKC1800 code (#8472) * Switch to qmk forks for everything (#9019) * audio refactor: replace deprecated PLAY_NOTE_ARRAY (#8484) * Audio enable corrections (2/3) (#8903) * Split HHKB to ANSI and JP layouts and Add VIA support for each (#8582) * Audio enable corrections (Part 4) (#8974) * Fix typo from PR7114 (#9171) * Augment future branch Changelogs (#8978) * Revert "Branch point for 2020 May 30 Breaking Change"
2020-05-27Documentation for keymap_extras (#9194)Ryan
2020-05-21ARM split - Add uart half duplex transport support (#7987)Joel Challis
* ARM split - Add uart half duplex transport support * Fix for f103 * initial full duplex pass * partially remove full duplex * Correct speeds within driver docs Co-authored-by: Nick Brassel <nick@tzarc.org> Co-authored-by: Nick Brassel <nick@tzarc.org>
2020-05-19Reintegrate previous docker docs (#9084)Joel Challis
2020-05-01[Documentation] Added raw hid documentation page (#7640)Ahmed Elshafey
* Added raw hid feature documentation page * Update docs/feature_rawhid.md Co-Authored-By: fauxpark <fauxpark@gmail.com> * Update docs/feature_rawhid.md Co-Authored-By: fauxpark <fauxpark@gmail.com> * Update docs/feature_rawhid.md Co-Authored-By: fauxpark <fauxpark@gmail.com> * Update docs/features.md Co-Authored-By: fauxpark <fauxpark@gmail.com> * added feature_rawhid.md to _summary.md in docs * fixed _summary.md order * Update docs/feature_rawhid.md Co-Authored-By: fauxpark <fauxpark@gmail.com> * Update feature_rawhid.md Removed the useless bit about finding usage page and usage. * Update feature_rawhid.md * Update docs/feature_rawhid.md Co-Authored-By: Nick Brassel <nick@tzarc.org> * Update docs/feature_rawhid.md Co-Authored-By: Nick Brassel <nick@tzarc.org> * Update docs/feature_rawhid.md Co-Authored-By: Nick Brassel <nick@tzarc.org> * Update docs/feature_rawhid.md Co-Authored-By: Nick Brassel <nick@tzarc.org> * Remove teensy client, small origanization fixes * Fixed merge conflicts Removed features.md Updated _summary.md with new format and added RAW HID entry under Software Features * Added rawhid feature page Messy is what you get when you don't do things right the first time Co-authored-by: fauxpark <fauxpark@gmail.com> Co-authored-by: Nick Brassel <nick@tzarc.org>
2020-04-19Add a syllabus to guide people who are learning QMK (#8816)skullydazed
2020-04-13Add support for hardware and board initialisation overrides. (#8330)Nick Brassel
* Add support for hardware and board initialisation overrides. * qmk cformat. * Add some documentation. * Docs clarity. * Make early_hardware_init_pre a no-op for now, until migrations occur. * Doco update * Make distinction between keyboard and ChibiOS board in docs * Doc anchors. * Update tmk_core/protocol/chibios/main.c Co-Authored-By: Joel Challis <git@zvecr.com> * Rework bootloader entry to be off by default, allow opting-in. Co-authored-by: Joel Challis <git@zvecr.com>
2020-04-08spi_master for AVR (#8299)Ryan
* Change _delay_ms/us() to wait_ms/us() * Switch to platform-agnostic GPIO macros * Add AVR spi_master and migrate Adafruit BLE code * Set verbose back to false * Add clock divisor, bit order and SPI mode configuration for init * Add start and stop functions * Move configuration of mode, endianness and speed to `spi_start()` * Some breaks here would be good * Default Adafruit BLE clock divisor to 4 (2MHz on the Feather 32U4) * Remove mode and divisor enums * Add some docs * No hr at EOF * Add links in sidebar
2020-03-23Add Word Per Minute calculation feature (#8054)brickbots
* Add Word Per Minute calculation feature * Fix copyright info * Remove header from quantum.c, setup overloadable keycode inclusion for WPM, update docs * Simplify logic for keycode filtering * Adding link from summary to wpm_feature info * Update docs/feature_wpm.md Typo in function prototype example in docs Co-Authored-By: James Young <18669334+noroadsleft@users.noreply.github.com> * Add WPM transport via i2c Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com>
2020-03-21[Docs] Update layer documentation (#8371)Drashna Jaelre
* [Docs] Update layer documentation * Add layer_state_cmp functions * Fix cut/copy/paste issue * Add id tags * Apply noroads corrections * Move Layers section to separate document * Fix ID tag for layers * Use better name for summary/side bar * Fix feature page linkage As well as a small spell error close by * Remove paper analogy for now
2020-03-15Fix some broken links in the docs (#8394)skullydazed
* fix some broken links * remove duplicate and confusing material from cli.md * Switch brazil to the 2 letter country code * Update docs/_langs.md Co-Authored-By: Ryan <fauxpark@gmail.com> Co-authored-by: Ryan <fauxpark@gmail.com>
2020-03-05link the 2020 Feb 29 Breaking Changes changelog from the summaryJames Young
2020-03-05make sure all our redirects are in orderskullY
2020-03-05split Hand Wire Preamble to a separate docJames Young
2020-03-05rearrange the sidebar a bitskullY
2020-03-05make custom_keycode_names.md a faq entry insteadskullY
2020-03-05break feature_advanced_keycodes.md up into multiple filesskullY
2020-03-05improve our docsify setupskullY
2020-03-05overhaul the newbs guideskullY
2020-03-05More sidebar organizationskullY
2020-03-05Add API documentationskullY
2020-03-05Rework the newbs guide around the qmk cliskullY
2020-03-05_summary.md: move Auto Shift page to Software Features categoryJames Young
2020-03-05rework the index pageskullY
2020-03-05more wipskullY
2020-03-05wipskullY
2020-01-25change Instructions listing in Docs summaryJames Young
2020-01-25add Breaking Change PR Instructions docJames Young
2020-01-24Add customisable EEPROM driver selection (#7274)Nick Brassel
- uprintf -> dprintf - Fix atsam "vendor" eeprom. - Bump Kinetis K20x to 64 bytes, too. - Rollback Kinetis to 32 bytes as partitioning can only be done once. Add warning about changing the value. - Change RAM-backed "fake" EEPROM implementations to match eeconfig's current usage. - Add 24LC128 by request.
2020-01-18Add docs for 'CUSTOM_MATRIX = lite' (#7906)Joel Challis
* Add some docs to cover 'CUSTOM_MATRIX = lite' * Apply suggestions from code review Co-Authored-By: fauxpark <fauxpark@gmail.com> * Add 'SRC += matrix.c' docs * Update docs/custom_matrix.md Co-Authored-By: fauxpark <fauxpark@gmail.com> Co-authored-by: fauxpark <fauxpark@gmail.com>
2019-12-08Improve support and docs for ADC driver (#7191)fauxpark
* Improve support and docs for ADC driver * Comment ADC channels * Move to Makers and Modders section, and fix usage instructions * Flesh out intro * Superscript 328P note * Fix pin_to_mux LUT * Support USB64/1287 as well * analogReadPin() defaults to 0V mux on invalid pin * Update pinToMux() function documentation * Dot * Accept (some of) the `qmk cformat` changes * Do clang-format properly * More wording tweaks * Link to encoder docs
2019-12-02[Docs] Restructure of Git Best Practices doc (#7231)James Young
* Add "Resynchronizing an Out-of-Sync Git Branch" doc * Update (Git) Best Practices doc title and filename * Rename Branch Resync doc * fork Best Practices doc into multiple files * Add the doc list to Git Best Practices doc * Update sidebar * Update internal references * Update sidebar - add subsection * Update Your Fork's Master page title * title case on Git Best Practices main doc * ... and in the Resynchronizing a Branch doc * Please read Part 1 I worked really hard on this, okay? * Please use branches, too. * suggestions by mtei * change note about adding multiple files * note that the name given the remote repo is arbitrary * suggestions by fauxpark * Git Best Practices -> Best Git Practices Reads more naturally. * rephrase hint block regarding remote name * rework the resynchronization instructions per mtei * use hint boxes for reference to Part 1 doc I may be addicted to hint boxes. I'm sorry fauxpark. :cry: * add some clarity about the upstream repo * wordsmithing per mtei * restyle the shell code blocks Makes them more consistent to the other docs in this section.
2019-11-23Set up language fallback for docs, and update translation guidelines (#7403)fauxpark
* Set up language fallback for docs, and update translation guidelines * Title Case * Add ID example * Link to emoji flag cheatsheet * Move docs preview section to contributing.md * Point to docs preview in the readme
2019-11-08[Doc] Tidy up compatible MCUs docs (#7295)fauxpark
* Tidy up compatible MCUs docs * ARM chips should have USB * 32KB soft lower limit applies to ARM as well * NXP is the manufacturer name, not Kinetis * Units
2019-10-29 Refactor ps2avrgb i2c ws2812 to core (#7183)Joel Challis
* Refactor ps2avrgb i2c ws2812 to core * Refactor jj40 to use ws2812 i2c driver * Refactor ps2avrgb template to use ws2812 i2c driver * Add ws2812 stub files * clang-format and driver config * Add ws2812 driver docs * Fix default config values * Update tmk_core/protocol/vusb/main.c Co-Authored-By: Drashna Jaelre <drashna@live.com>
2019-10-01Expose zh-cn docs, delete bad zh docs, add docs for adding translations (#6855)Jack Humbert
* expose zh-cn docs, delete bad zh docs, add docs for adding translations * Update docs/translating.md Co-Authored-By: noroadsleft <18669334+noroadsleft@users.noreply.github.com> * Update docs/translating.md Co-Authored-By: noroadsleft <18669334+noroadsleft@users.noreply.github.com> * update for python 3
2019-09-22Configuration system for CLI (#6708)skullydazed
* Rework how bin/qmk handles subcommands * qmk config wip * Code to show all configs * Fully working `qmk config` command * Mark some CLI arguments so they don't pollute the config file * Fleshed out config support, nicer subcommand support * sync with installable cli * pyformat * Add a test for subcommand_modules * Documentation for the `qmk config` command * split config_token on space so qmk config is more predictable * Rework how subcommands are imported * Document `arg_only` * Document deleting from CLI * Document how multiple operations work * Add cli config to the doc index * Add tests for the cli commands * Make running the tests more reliable * Be more selective about building all default keymaps * Update new-keymap to fit the new subcommand style * Add documentation about writing CLI scripts * Document new-keyboard * Update docs/cli_configuration.md Co-Authored-By: noroadsleft <18669334+noroadsleft@users.noreply.github.com> * Update docs/cli_development.md Co-Authored-By: noroadsleft <18669334+noroadsleft@users.noreply.github.com> * Update docs/cli_development.md Co-Authored-By: noroadsleft <18669334+noroadsleft@users.noreply.github.com> * Update docs/cli_development.md Co-Authored-By: noroadsleft <18669334+noroadsleft@users.noreply.github.com> * Address yan's comments. * Apply suggestions from code review suggestions from @noahfrederick Co-Authored-By: Noah Frederick <code@noahfrederick.com> * Apply suggestions from code review Co-Authored-By: Noah Frederick <code@noahfrederick.com> * Remove pip3 from the test runner
2019-09-03Add Dip Switch as a core feature (#6140)Drashna Jaelre
* Add Dip Switches as a core feature * Add documentation for Dip Switch feature * Update Preonic Rev3 to use new feature and remove custom matrix * Apply suggestions from code review Co-Authored-By: noroadsleft <18669334+noroadsleft@users.noreply.github.com> * Remove custom matrix line completely Rather than just disabling it Co-Authored-By: fauxpark <fauxpark@gmail.com> * DIP changes Co-Authored-By: fauxpark <fauxpark@gmail.com> * Use better check for DIP Switch configuration * Add to show features * Add bitmask callback for dip switch * Fix OLKB Boards dip switch config * Update docs to include bitmask example * Fix comments/documentation Co-Authored-By: fauxpark <fauxpark@gmail.com> * Fix issues with docs and use example from @tuzonghua * Fix wording Co-Authored-By: fauxpark <fauxpark@gmail.com> * Fix example to use proper formatting Bad, BAAAAAAD drashna!!! * Handle dip switch initialization better
2019-08-30Merge point for 2019 Aug 30 Breaking ChangeskullY
2019-08-23Add Zadig 101 to docs (#6585)fauxpark
* Add Zadig 101 to docs * Add USBasp bootloader name * Add links to the page * Note the usual VIDs and PIDs for the bootloaders * Add "List All Devices" note, just in case * Talk about keyboard-specific bootloader procedures * Send users to the new page in "Unknown Device for DFU Bootloader" section * Halfkay bootloaders are also an exception here
2019-07-15[Docs] Add dedicated page for Split Keyboard information (#5802)Drashna Jaelre
* [Docs] Add dedicated page for Split Keyboard information * Apply suggestions from code review Co-Authored-By: drashna <drashna@live.com> * Fix Typos Co-Authored-By: drashna <drashna@live.com> * Fix some formatting issues * Add Additional RGB info * Fix Bulletted formatting * Apply suggestions from code review Co-Authored-By: drashna <drashna@live.com> * Fix line wrapping * Additional fixes and expansion * Reword warning/note Co-Authored-By: drashna <drashna@live.com> * add i2c/serial coexistance info * i2c markdown * Change i2c wiring text Co-Authored-By: drashna <drashna@live.com>
2019-07-15QMK CLI and JSON keymap support (#6176)skullydazed
* Script to generate keymap.c from JSON file. * Support for keymap.json * Add a warning about the keymap.c getting overwritten. * Fix keymap generating * Install the python deps * Flesh out more of the python environment * Remove defunct json2keymap * Style everything with yapf * Polish up python support * Hide json keymap.c into the .build dir * Polish up qmk-compile-json * Make milc work with positional arguments * Fix a couple small things * Fix some errors and make the CLI more understandable * Make the qmk wrapper more robust * Add basic QMK Doctor * Clean up docstrings and flesh them out as needed * remove unused compile_firmware() function
2019-05-22Additional link fixesDrashna Jaelre
Co-Authored-By: noroadsleft <18669334+noroadsleft@users.noreply.github.com>
2019-05-22Fix linksDrashna Jaelre
Co-Authored-By: noroadsleft <18669334+noroadsleft@users.noreply.github.com>
2019-05-21Add missing links to features page and sidebar sectionDrashna Jaelre
2019-04-30Added OLED Driver to the summaryRyan Caltabiano
2019-04-29Simple extended space cadet (#5277)XScorpion2
* Simplifying and Extending Space Cadet to work on Ctrl and Alt keys * PR Review feedback * Reverting back to keycodes