-
-
Notifications
You must be signed in to change notification settings - Fork 39.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Reuse of EEPROM debounce logic #14699
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
zvecr
changed the title
Reuse of RGB Matrix debounce logic
Reuse of EEPROM debounce logic
Oct 4, 2021
drashna
approved these changes
Oct 5, 2021
fauxpark
approved these changes
Oct 5, 2021
Looks like this broke via, because it calls rgblight's version, which is mapped to rgb matrix, for compatibility. |
cadusk
pushed a commit
to cadusk/qmk_firmware
that referenced
this pull request
Oct 7, 2021
* qmk/develop: (47 commits) Correct the Turkish F '?' keycode (TR_QUES) (qmk#14740) Enabled Bootmagic Lite (qmk#14573) Remove SERIAL_LINK feature (qmk#14727) Reuse of EEPROM debounce logic (qmk#14699) Fix i2c_readReg16 (qmk#14730) Purge uGFX. (qmk#14720) i2c_master: Add support for reading/writing to 16-bit registers (qmk#14289) Updated Keychron Q1 user keymap (qmk#14666) Mode M65S touch-up (qmk#14722) Remove sysex API (qmk#14723) MelGeek Mach80: correct Configurator layout (qmk#14716) Added semicolons to rules.mk to allow symlinks from /bin/sh to /bin/zsh to complete the filesize check without error. (qmk#14718) Move Audio drivers from quantum to platform drivers folder (qmk#14308) [Bug] Fix command feature if mousekey is enabled and using 3-speed setting (qmk#14697) [Keyboard] Add basic Keyhive Sofle support (qmk#14296) [Keymap] Some updates to mechmerlin userspace and keymaps (qmk#14711) 0xc7/61key touch-up (qmk#14712) Durgod DGK6X Galaxy: correct Configurator layout (qmk#14714) More PR checklist updates (qmk#14705) Add clarification for licensing. (qmk#14704) ...
14 tasks
ptrxyz
pushed a commit
to ptrxyz/qmk_firmware
that referenced
this pull request
Apr 9, 2022
* reuse rgb debounce logic * Refactor led matrix * Remove log line * timeout should not be hard coded
BorisTestov
pushed a commit
to BorisTestov/qmk_firmware
that referenced
this pull request
May 23, 2024
* reuse rgb debounce logic * Refactor led matrix * Remove log line * timeout should not be hard coded
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
Partially borrowed from RGB Matrix, the idea is to provide debounce of arbitrary sections of EEPROM.
Ideally the process would be completely transparent, but minimising the RAM/execution overhead is tricky. For example, with STM eeprom emulation you would end up with a write log on top of a write log. Implementing linked lists/maps, to store only the most recent changes burns extra cycles to get the latest value. The RGB Matrix tracks the changes of its own block of data, with a periodic write. This has been generalised a little with some gross macros, but should help with some consistency in behaviour.
For some additional context, this is some WIP of the additional use case -18ee1f5.
Types of Changes
Checklist