* Fix some minor errors in tap dance example
Fix for #3529
Fix minor errors in the code examples for __Example 4: 'Quad Function Tap-Dance'__ and relevant documentation.
Clarified the need to include the header file in `keymap.c`.
* Use #pragma once in header guard
Fix for #3529
Implement change requested in #3530
* Make Bootmagic and Command docs a little easier to read
* Sometimes Bootmagic/Command is default on
* "Escape" pipe character so it renders correctly
* 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
* 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"
* 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
* integrated Peter Fleury's LCD library for HD44780 LCDs
* fixed typo
* cleanup finished
* add documentation
* added HD44780 documentation
* removed keyboard from .gitmodules
* resolved merge conflict
* removed edit of kira75s rules.mk made by merge
* moved hd44780 to drivers/avr
* Added licence info to hd44780 files
* Added link to hd44780 docs.
@drashna mentioned it'd be good to have a mention of the userspace in
the QMK structure section. Rather than rewrite the docs on userspace, I
chose to link to the existing documentation.
If you run `brew install avr-gcc`, you get a version that has
compatibility issues with LUFA. I updated the getting started guide for
osx, the qmk_install setup script, and added a section to the FAQ for
folks like me who accidentally updated avr-gcc past 7.
* Addition of hard brigtness limit for RGB_Matrix
- Added a define "RGB_MATRIX_MAXIMUM_BRIGHTNESS" to enable hard limiting the maximum brightness for rgb_matrix
- Used the above define to limit the maximum brigthness of HS60 for better stability
* Added docs for new rgb_matrix define
* Addition of check for maximum brightness
* Clean up SEND_STRING keycodes and add media keys
* Remove stray define
* Add missing SEND_STRING keycodes for completeness
Also, add KC_EJCT to the keycode references
* Add suspend functions
* Disable RGB code if it's disabled
* Add suspend code to ChibiOS for future compatibility
* Add keyboard_init functions
* Change where references so it will compile
* Wrong command chained in wake up kb function
* Fix non-feature file changes
* Add documentation
* Re-add matrix init docs
* add rgblight code to example
* Remove keyboard init stuff for separate PR
* And and fix _noeeprom functions to many of the RGB Underglow functions
* Many functions are unnecessarily calling the eeprom write code. The toggle/enable is command is especially guilty of this, as it writes to EEPROM 3 times. But rgb mode writes twice, every time it's called. And init resets the rgb eeprom range and then writes back to it twice!
* Fixed the rgblight_sethsv_noeeprom to work as expected, by moving a lot of the code to a helper function.
* Added a noeeprom function for mode, enable, disable, and toggle functions. (didn't bother for increase/decrease stuff, and didn't add new keycodes)
* Add to predefined colors list
* Add new functions to manual/docs
* Update RGB Sleep feature to use _noeeprom
Because that's exactly what it should be doing, actually!
* Refresh & improve leader documentation page
- register_code/unregister_code are not the recommanded way to do macro.
- Provide some details I wish I had found when first used the leader
functionality.
* Add old way to use macro.
* Added Modular keyboards L,R and NUM
Created code modules for the 3 modules of the modular keyboard.
Original idea by MechboardsUK. Uses i2c implementation similar to lets
split
* Remove modular from master
This is to fix incorrect branching
* General fixes for RGB_matrix
- Complited speed support for all effects
- Fixed raindrop effects to initialized after toggle
- Fixed raindrop effects to use all available LEDs
- Fixed effect step reverse function
- Moved RGB_MATRIX_SOLID_REACTIVE under correct flag
* Documentation update for RGBmatrix
* More doc updates
* Added support for the upcomming Lets_split vitamins included
* Updated readme
* Corrected header of readme
* Enabled RGB
* Broke everything
* broke some more shit
* Revert "broke some more shit"
This reverts commit 6ad68e6269cc0d04c16564ce9598dfd3db1e23c1.
* Revert "Broke everything"
This reverts commit feeee4e40db15a726f2292b6a9406ef45c1e54a7.
* Fixed USB detection, and RGB on slave
* started modifying readme, to use msys2
* Added support for the upcomming Lets_split vitamins included
* Updated readme
* Corrected header of readme
* Enabled RGB
* Broke everything
* broke some more shit
* Revert "broke some more shit"
This reverts commit 6ad68e6269cc0d04c16564ce9598dfd3db1e23c1.
* Revert "Broke everything"
This reverts commit feeee4e40db15a726f2292b6a9406ef45c1e54a7.
* Fixed USB detection, and RGB on slave
* started modifying readme, to use msys2
* Updated readme to reflect use of msys2 Added avrdude to msys path
* added avrdude option to msys installer
* Removed extra installation of avrdude
* Renamed to vitamins_included and implemented drashnas changes
* Fixed include guard
* Fixed some includes, and added avrdude target to docs.
* Fixed default keyboard
* Added Modular keyboards L,R and NUM
Created code modules for the 3 modules of the modular keyboard.
Original idea by MechboardsUK. Uses i2c implementation similar to lets
split
* Remove modular from master
This is to fix incorrect branching
* Add effect speed support for RGB Matrix *No eeprom yet*
Keycodes RGB_SPI and RGB_SPD have been added to increase and decrease effect speed.
Speed is not saved in EEPROM yet as per Jack's request.
* Update rgb_matrix.c
* RGB Matrix speed fix rgblight.h
* More fixes for rgb speed. Speed functions declared but not used in rgblight
* More travis fixes..
* Another one for travis..
* 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.
* Add userspace to talljoe layout.
* Move more authority to userspace and create Bananasplit layout.
* Move more things into userspace.
* Common Core example
* More work on common layout.
* Num layer.
* talljoe-ansi layout
* Updates for Zeal60
* Add Zeal60 to 60_ansi_split_bs_rshift
* Swap Escape and Grave
* Num-layer tweaks
* More tweaks.
* Add 1up60rgb to world of layouts.
* Rename ansi_split_bs_rshift layout to hhkb.
* Control RGB Backlight.
* change capslock led
* Remove obsolete line from rules.mk.
* Add user-friendly userspace override.
* Fix enter for 1uprgb60
* Revert "Rename ansi_split_bs_rshift layout to hhkb."
This reverts commit 53133719db25c7cb6a199108bbf5d980481a45f4.
* Add Faux Clicky to main Audio feature
* Make clicky settings user configurable
* Add additional documentation
* Don't play when music mode is enabled (hopefully)
Some values that can never, ever, change were held in local
variables, rather than in PROGMEM. Fixed.
Change "pressed" to a signed int so the test for < 0 makes
sense, and to avoid possible weird failure modes in the
case where a key release comes in when pressed is already
zero. (Shouldn't happen, sure, but computers are weird.)
A lot of things in process_steno had external linkage for no
particular reason. They've been marked static. Stuff still
builds.
Distinguish between currently-held keys and keys that have
been held, and expose these values through a nicely-named API
so other code could, say, check on the current set of steno
chording in order to make displays. Also in passing fix up the
"state" value having external linkage so it could clash with
other people's variable declarations.
The API also provides hooks for key processing and steno chord
events, so you can monitor those events without having to
run in matrix_scan_user and recheck the values directly. Also
document these.
There is no path through processing a key that doesn't
end with a return false, so the nested return foo() are
gone and we just return false.
* Update feature_rgblight.md
I got caught out with this as most color pickers use a percentage NOT 0-255 for this number
* Amended description
Woops! Was focused on s/v not being a percentage i got h wrong.
* Generate api docs from source code
* Add a bunch of doxygen comments
* more doxygen comments
* Add the in-progress api docs
* script to generate docs from travis
* Add doc generation to the travis job
* make travis_docs.sh commit the work it does
* make sure the docs script exits cleanly
* Macro for a momentary layer switch with mods
Passes through to the existing ACTION_LAYER_MODS macro, albeit with more
limited options due to lack of space in the quantum_keycodes enum.
* Add documentation for LM layer-mod macro
* Clean up Tap Toggle documentation
* Skip process_music in NO_MUSIC_MODE is defined
* Skip matrix_scan_music if NO_MUSIC_MODE is defined
* Skip music_all_notes_off if NO_MUSIC_MODE is defined
* Leave matrix_scan_music in, because it reduces firmware size by 150b....
* Add docs for NO_MUSIC_MODE
* 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
* new planck keymap, new feature - hybrid shift/enter action key (great for small keyboards!)
* corrected documentation to specify rules.mk file instead of Makefile
This link was broken. And the latest, live version of that keymap link doesn't line up with the docs below, so the link will now point to the older version of the file in the git history
* pull fuse settings for bootloader jump
* fix 32a chips
* make automatic bootloader selection optional
* quantify bootloaders
* fixs #164, speeds up dfu reset
* fix for chips w/o usb
* missing an n
* fix bootloader sizes, use words for addresses
* fix bmini, pearl, and [[ issue, make things quiet
* ignore avr errors on arm for now
* update settings for the light
* document bootloader stuff
* add bootloader title
This is particularly relevant for, e.g., the ergodox EZ and
other keyboards with slow scan rates. Without changing the API or
behavior of individual process_record() calls, we allow a
configuration flag to make multiple calls in a single scan.
This will probably have miniscule effects on non-steno users,
and it's not enabled by default for any keyboards. Added note
about it to ergodox README.
Signed-off-by: seebs <seebs@seebs.net>
* Set up tap dance for layers on the lower button.
* Refactored code to share in the users directory between my two keyboard layouts.
* Small keyboard layout change.
* Updated documentation on oneshot usage in macros/tap dance.
* Typo: Github => GitHub
* Typo: windows => Windows, docker => Docker, and some punctuations
* "QMK Introduction" links to the right file
* "Unix" rather than "UNIX", which is a trademark
* Directory name is "keyboards", not "keyboard"
* "handwired" is a subdirectory of "keyboards"
* Punctuation and minor fixes
* macOS rather than Mac
* Punctuation and other minor fixes
* Vagrant Guide links to an existing file
* Jun Wako referenced with his name rather than his nickname
* Saxon genitive 's outside the link
* add RETRO_TAP: tap anyway, even after TAP_TERM, if no interruption
* consistent variable name
* add option doc
* change name for consistency
* make RETRO_TAPPING default to off
I'm almost 100% sure "else if (state->count = 2) {" was a typo (it should have two ='s for a logical operator), and I'm *pretty* sure "if (state->interrupted || state->!pressed) return SINGLE_TAP;" has a typo. At least, it returns an error on my machine saying something about an unexpected '!'.
I changed it to a slightly longer form (i.e., "state->pressed==0"), and that worked fine.
This commit adds a new keycode `RGB_SMOD` which is the same as `RGB_MOD` (cycle through all modes),
but when it is used in combination with shift it will reverse the direction.
* Added section to example, detailing how to accomplish the
'quad-function' tap dance.
* Refactored TD documentation to clearly separate different complex
examples
Change-Id: Ifc1495d1142849c771418fdabc458c04c48311e6
* Address #1689 by using a formula to define the breathing curve and exposing defines to control the shape of the curve.
* Tweak the behavior of breathing for clueboard
* redo make args to use colons, better folder structuring system [skip ci]
* don't put spaces after statements - hard lessons in makefile development
* fix-up some other rules.mk
* give travis a chance
* reset KEYMAPS variable
* start converting keyboards to new system
* try making all with travis
* redo make args to use colons, better folder structuring system [skip ci]
* don't put spaces after statements - hard lessons in makefile development
* fix-up some other rules.mk
* give travis a chance
* reset KEYMAPS variable
* start converting keyboards to new system
* try making all with travis
* start to update readmes and keyboards
* look in keyboard directories for board.mk
* update visualizer rules
* fix up some other keyboards/keymaps
* fix arm board ld includes
* fix board rules
* fix up remaining keyboards
* reset layout variable
* reset keyboard_layouts
* fix remainging keymaps/boards
* update readmes, docs
* add note to makefile error
* update readmes
* remove planck keymap warnings
* update references and docs
* test out tarvis build stages
* don't use stages for now
* don't use stages for now
At one time, "ez" and "infinity" may have been subprojects of a
unified "ergodox" project, but this is not currently the case. Running
`make ergodox-ez-default-teensy` (or similar), as the documentation
currently implies, does not work.
* Remove all Makefiles from the keyboards directory.
* update keymaps added in the last 8 days
* Ignore keyboard/keymap makefiles
* update hand_wire to reflect our new Makefile-less reality
* Update the make guide to reflect the new reality
* move planck keymap options to rules.mk
* update planck keymaps 4real
* trigger travis
* add back build_keyboard.mk
* restore changes to build_keyboard
* Allow the knight animation to be restricted to a portion of the LED strip
* Add keys for jumping directly to particular animation modes
* Remove orphaned break statements
* Tweak the `RGB_MODE` buttons so they cycle through the same mode.
* small indentation fix
`avr-libc` is no longer, and it's called `avr-gcc` now. https://github.com/osx-cross/homebrew-avr
Also you need `gcc-arc-none-eabi` to be able to compile in my experience.
* include variables and .h files as pp directives
* start layout compilation
* split ergodoxes up
* don't compile all layouts for everything
* might seg fault
* reset layouts variable
* actually reset layouts
* include rules.mk instead
* remove includes from rules.mk
* update variable setting
* load visualizer from path
* adds some more examples
* adds more layouts
* more boards added
* more boards added
* adds documentation for layouts
* use lowercase names for LAYOUT_
* add layout.json files for each layout
* add community folder, default keymaps for layouts
* touch-up default layouts
* touch-up layouts, some keyboard rules.mk
* update documentation for layouts
* fix up serial/i2c switches