* Fix indentation
* Fix braces
* Expand descriptor headers
* Align descriptor elements
* Nicer formatting
* Tidy up preprocessor statements
* Remove VERSION_BCD redefine - LUFA_VERSION_INTEGER is currently 0x170418
* Tidy up comments
* Tweak ordering of HID report elements (no functional changes)
* We don't need all of these newlines
* Move default USB_MAX_POWER_CONSUMPTION closer to where it makes sense
* Ask nicely
* Add some more comments
* Change indentation back to 4 spaces
* Add changelog entry
* 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
* Update how_keyboards_work.md
bridged the gap between scancodes and keycodes, the doc didn't make the distinction and was ambiguous.
* Update docs/how_keyboards_work.md
Co-Authored-By: Drashna Jaelre <drashna@live.com>
* Update docs/how_keyboards_work.md
fix typo
Co-Authored-By: noroadsleft <18669334+noroadsleft@users.noreply.github.com>
* Additional changes for Layer State typedef compatibility
* Replace biton32 with get_highest_layer in docs
* Change additional layer structure code
* Fix uGFX reference issue
* Remove dynamic_keymap check
* Where did all these extra spaces come from
Co-Authored-By: fauxpark <fauxpark@gmail.com>
* Add MAGIC_SWAP_CONTROL_LGUI and MAGIC_UNSWAP_CONTROL_LGUI keycodes
Key codes to swap and unswap the control and windows/cmd keys
* Fix issues with pull request #6110
Renamed swap/unswap lctl and lgui key codes, added key codes to swap/unswap rctl and rgui, and moved new bool inside keycode_config.h struct to the end
* Move new keycodes to the end of the enum (#6110)
* add cases for swapped control and OS keys to mod_config (#6110)
* Add new keycodes to feature_bootmagic.md (#6110)
* Add R+L swap codes to keep in parity with AG_* codes
* Extend Magic range check to include new magic codes
* Update audio docs
* Combine 2 byte ranges into 1 word for EECONFG
Fix names for Keymap config EEPROM
* Update docs/feature_bootmagic.md
Co-Authored-By: noroadsleft <18669334+noroadsleft@users.noreply.github.com>
* Update docs/feature_bootmagic.md
Co-Authored-By: noroadsleft <18669334+noroadsleft@users.noreply.github.com>
* Update docs/feature_bootmagic.md
Co-Authored-By: noroadsleft <18669334+noroadsleft@users.noreply.github.com>
* Update docs/feature_bootmagic.md
Co-Authored-By: noroadsleft <18669334+noroadsleft@users.noreply.github.com>
* Remove superfluous JTAG disable code
* 32A has differently named register
* Accidentally some operators
* 32A also has different JTAG pins
* Wrap disable_jtag() in an ifndef
* Document this new define
* Rename the define, it conflicts with a LUFA thing
Also, move the ifndef wrapping to the call in keyboard_setup()
* 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
* Add Sections and MO(layer)/TG(layer) Example
Major changes:
1. Added sub-section headings to the portion before the examples.
2. Added a new Example 6, that allows MO(layer) and TG(layer) functionality to be embedded within tap dance functions.
Minor Changes:
1. Edited some text to better fit with new sub-headings.
* Update feature_tap_dance.md
* Update feature_tap_dance.md
* 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>
* Remove the need to set NUM_OF_ENCODERS
Instead, calculate the size of the array, and use that instead
* Add hack for split common support
* Remove NUM_OF_ENCODERS from keyboard config
Can be reverted, if needed
* Initial conversion of vagrant to use qmkfm/base_container
* Fix vagrant when using docker provider
* Workaround for VirtualBox VM restarts
* Generalise Vagrant docs slightly and add FAQ
* 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
* Hightlight that sudo may be needed
Also added "dfu-programmer: no device present" in so that anyone searching for that particular error can hopefully find the page.
* Use new style of indicating a warning
* Indicate that the FAQ should be read instead of blindly using sudo
* Clarify the rules.mk setup for Unicode
* code point
Co-Authored-By: Konstantin Đorđević <vomindoraan@gmail.com>
* Remove "your"
Co-Authored-By: Konstantin Đorđević <vomindoraan@gmail.com>
* Undo a line change
Co-Authored-By: Konstantin Đorđević <vomindoraan@gmail.com>
* dot the comma
Co-Authored-By: Konstantin Đorđević <vomindoraan@gmail.com>
* Update docs/feature_unicode.md
Co-Authored-By: Konstantin Đorđević <vomindoraan@gmail.com>
* 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
* 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
* modify oled_driver to support SH1106
also:
- improve mechanism to specify which OLED IC we use
- comment calc_bounds()
- give OLED_COLUMN_OFFSET a default value
- inline comment re: OLED MEMORY_MODE and SH1106
- update docs/feature_oled_driver.h for SH1106 support and related changes
- docs: OLED: note we have tested SSD1306 on ARM boards (per @XScorpion2)
- define out MEMORY_MODE when using SH1106 OLED driver
* document that SSD1306 128x64 on AVR works
Per @XScorpion2: https://github.com/qmk/qmk_firmware/pull/5787#discussion_r291837842
* faq_general.md to Chinese
faq_general.md to Chinese
faq finished
* custom_quantum_functions.md to Chinese
custom_quantum_functions.md to Chinese
* custom_quantum_functions.md fix
custom_quantum_functions.md fix
* custom_quantum_functions.md fix translate
custom_quantum_functions.md fix translate
* !ver.English! _summary.md bug fix
_summary.md bug fix of English doc. add".md" behind "feature_combo"
* !ver.English! custom_quantum_functions.md fix#5869
custom_quantum_functions.md in English : delete redundant "is" . issue#5869
* !ver.English! how_keyboards_work.md link fix
change
https://en.wikipedia.org/wiki/Unicode_input#Hexadecimal_code_input
to
https://en.wikipedia.org/wiki/Unicode_input#Hexadecimal_input
"#Hexadecimal_code_input" not exist
* !English! how_keyboards_work.md add missing "t"
Tied to a specific OS a a time (need recompilation when changing OS);
change to
Tied to a specific OS at a time (need recompilation when changing OS);
* _summary.md improve translation
_summary.md improve translation
* reference_glossary.md into Chinese
reference_glossary.md into Chinese
术语表翻译,这个术语表英文版似乎不太全,应该补充英文版,并在中文版添加其他具有中国特色的术语。
I2C timing parameters were seemingly set up for an STM32F303 target MCU, at a specific clock speed. This commit allows specifying the timing parameters via config.h, allowing other STM32 MCUs to be targeted, potentially at different clock frequencies.
Alternate function modes for the I2C pins are now also configurable, allowing for remapping to other pins.
* translate docs into Mandarin Chinese
translate
faq_debug.md
into Chinese
* translate faq_build.md into Chinese
translate faq_build.md into Chinese
* faq_keymap.md to zh-cn
faq_keymap.md to zh-cn
* Adding an AUDIO_CLICKY_DELAY_DURATION configurable value to the AUDIO_CLICKY feature.
* Tweaking my community keymap to work better with my rev 4 planck.
* 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
* add rgblight_set_effect_range()
* implement effect range
* Arrange the order of function list in rgblight.h .
* update docs/feature_rgblight.md
* fix RGBLIGHT_RAINBOW_SWIRL_RANGE default value
* add example code about Utility Functions
* add example code about direct operation functions
* When RGBLIGHT_SPLIT is defined, the following function has no meaning and is invalidated.
* rgblight_setrgb_master(r, g, b)
* rgblight_setrgb_slave(r, g, b)
* rgblight_sethsv_master(h, s, v)
* rgblight_sethsv_slave(h, s, v)
* add temporary test code for rgblight_set_effect_range
* fix rgblight_effect_knight() bug
* Test End. Revert "add temporary test code for rgblight_set_effect_range"
This reverts commit 5680cddd01.
* Added check for pressed to clear space cadet
* Found some docs to update
* Update docs/quantum_keycodes.md
Co-Authored-By: fauxpark <fauxpark@gmail.com>
* Changes from PR
* translate newbs.md into Madarin Chinese
translate newbs.md into Madarin Chinese
* translate docs into Mandarin Chinese
translate getting_started_github.md into Mandarin Chinese
* translate getting_started_getting_help.md into Mandarin Chinese
translate getting_started_getting_help.md into Mandarin Chinese
* contributing.md to Chinese
Personify QMK as a girl named Q酱 . It can make more developer read this document and contribute QMK.
* getting_started_introduction.md to Chinese
getting_started_introduction.md to Chinese
* faq.md to Chinese
faq.md to Chinese
* crlf2lf getting_started_introduction.md
ending line fix getting_started_introduction.md
* crlf2lf contributing.md
crlf2lf contributing.md
* clean up rgb matrix extern usage
Moved rgb matrix boiler plate into macros
Rebased onto typing heatmap pr
* Fixing the reversed frame buffer access in digital rain
* Fixing digital rain & typing heatmap if keyreactive effects are not enabled
* Apply suggestions from code review
Co-Authored-By: Drashna Jaelre <drashna@live.com>
* Adding parenthesizes to DRIVER_LED_TOTAL where necessary
* Updated docs
* added notes about parentheses
* Improve Animation docs with example
- example to reduce flash footprint of animations using RGBLIGHT_EFFECT_ defines
* Re-order the effects list
* Update docs/feature_rgblight.md
Co-Authored-By: yanfali <yanfali@gmail.com>
* Update docs/feature_rgblight.md
Co-Authored-By: yanfali <yanfali@gmail.com>
* Update docs/feature_rgblight.md
Co-Authored-By: yanfali <yanfali@gmail.com>
* Introduce line breaks
* Add title for animation speed section
* Organize Animation Defines Into Groups
* Use the RGB EFFECT recommended by mtei in docs
- has the most modes, and STATIC_LIGHT can't really be disabled.
* Use more accurate titles for effects and animation
- accidentally put a toggle in settings
* Initial conversion of the rgb_led struct
* Converting last keyboard & updating effects to take advantage of the new structure
* New struct should not be const
* Updated docs
* Changing define ___ for no led to NO_LED
* Missed converting some keymap usages of the old struct layout
The code as originally listed didn't work for me, but replacing `unregister_code16(LALT(KC_TAB));` with `unregister_code(KC_LALT);` fixes the problem and causes the macro to work as intended.
Thanks to folks on Discord for helping me figure this out.
* Expose unicode_saved_mods
* Add UNICODEMAP shift pair functionality and XS keycode
* Add XS to keycode reference documentation
* Pick pair index based on both Shift and Caps Lock state
* Add XS to Unicode feature docs
* Clean up process_unicode* headers
* Extract unicode_map index calculation into function
* Pick pair index as XOR rather than OR of Shift and Caps states
* unicode_input_start() has to be called before the unicode_map index is calculated
* Replace unicodemap_input_error() with more generic unicode_input_cancel()
* Replace register+tap+unregister with tap_code16(LCTL(LSFT(KC_U)))
* UNICODE_OSX_KEY → UNICODE_KEY_OSX, UNICODE_WINC_KEY → UNICODE_KEY_WINC
* Make keycode range checks more robust
* Fix keycode range checks for different input modes
* Add UNICODE_KEY_LNX, update docs
* QK_UNICODEMAP_SHIFT → QK_UNICODEMAP_PAIR
* XS → XP, update docs
* Tweak Unicode docs
* Use recently added MOD_MASK_SHIFT and IS_HOST_LED_ON helpers
* Update Unicode table in docs/keycodes.md
* Update Unicode docs per review comments
* Replace references to Mac OS X with macOS in Unicode docs
* As of v0.9.0, WinCompose supports all possible code points
* Expand descriptions in XP docs
* Update keycode table and cycling docs
* Further expand cycling docs
translate
newbs_getting_started.md
newbs_building_firmware.md
newbs_flashing.md
newbs_testing_debugging.md
newbs_best_practices.md
newbs_learn_more_resources.md
into Mandarin Chinese
* If RGBLIGHT_EFFECT_BREATHE_CENTER is undefined, use fixed breathe table instead of exp() and sin()
* Change rgblight breathing table size to be easily selectable.
add RGBLIGHT_BREATHE_TABLE_SIZE macro for customize breathing effect.
* Revamped custom effects approach
See docs for example usage
* push-up RGB Matrix default mode
Override default effect using RGB_MATRIX_STARTUP_MODE.
Useful on boards without EEPROM support
(*cough* Massdrop ALT/CTRL *cough*)
* update docs
* A better new_project.sh
* Fix docstrings
* Use single quotes for anything not shown to user
* Missed this docstring
* Simplify get_git_username()
Thanks @vomindoraan
* chmod +x
* Add docstring for print_error()
* Break up git username call into multiple lines
* Use with statement here
* Conform to PEP 8 even more
* Turn it back into a shell script
* chmod +x again
* Update docs to reflect new keyboard generator usage
* Tweak wording slightly
* Trim trailing whitespace
* Don't actually need to escape the newlines here
* As I suspected, you can pass shift a number
* Prepend ./ to match the other code block
* Minor syntax tweaks
* The username token has changed
* Replace name in the readme too
* Make some reasonable assumptions about the presence of Git
With my XD60, I noticed that when typing the backlight was flickering.
The XD60 doesn't have the backlight wired to a hardware PWM pin.
I assumed it was a timing issue in the matrix scan that made the PWM
lit the LED a bit too longer. I verified it because the more keys that
were pressed, the more lighting I observed.
This patch makes the software PWM be called during CPU interruptions.
It works almost like the hardware PWM, except instead of using
the CPU waveform generation, the CPU will fire interruption
when the LEDs need be turned on or off.
Using the same timer system as for hardware PWM, when the counter
will reach OCRxx (the current backlight level), an Output Compare
match interrupt will be fired and we'll turn the LEDs off.
When the counter reaches its maximum value, an overflow interrupt
will be triggered in which we turn the LEDs on.
This way we replicate the hardware backlight PWM duty cycle.
This gives a better time stability of the PWM computation than pure
software PWM, leading to a flicker free backlight.
Since this is reusing the hardware PWM code, software PWM also supports
backlight breathing.
Note that if timer1 is used for audio, backlight will use timer3, and if
timer3 is used for audio backlight will use timer1.
If both timers are used for audio, then this feature is disabled and we
revert to the matrix scan based PWM computation.
Signed-off-by: Brice Figureau <brice@daysofwonder.com>
* Define RGB colors
Define RGB colors and pass them to the rgblight functions, instead of
defining multiple macros.
* Add new color definitions support for RGB Matrix
* Add/clarify info about new color definitions in Docs
* Add deprecation warning banner to rgblight_list.h