Using the wpm feature, I create a responsive OLED animation that changes based on how fast the user types. As written there are three phases (It's bongo cat!) but can easily be reconfigured and replaced with other images.
Multiple byte arrays consume considerable space so choose your usage wisely. When customized, the smaller the byte array used, the better, due to space limitations on most microcontrollers.
I made this with no prior knowledge of C, so I'm looking forward to any and all suggested improvements.
Credit is owed to obosob for laying the foundation for this little script as well to /u/pixelbenny for graciously providing the bongocat artwork I adapted for the animation.
The config.h includes a tweak to the Kyria's LED mapping, so that the order now reflects their physical positions, making animations smoother.
Co-authored-by: Ryan <fauxpark@gmail.com>
Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: Simon Schuster <SimonSchuster@Simons-MacBook-Pro-2.local>
Co-authored-by: James Incandenza <james@ij.net>
* [Keymap] plattfot - Kyria layout
Keymap for programming, writing in both English and Swedish and
easy navigate a tiling window manager.
See README.md for more info
* Fix letter case on the headline for the readme
As suggested by fauxpark
* Update keyboards/kyria/keymaps/plattfot/keymap.c
Clean up double tap
As suggested by fauxpark
* Update led check for render_status
As suggested by fauxpark
* Update to use get_highest_layer for encoder_update_user
As suggested by fauxpark
* Missing an apostrophe in the header of the README.md
Last minute change.
* Removed explicit initialization for _DEFAULT
As suggested by drashna
* Use smaller image for the README.md
As suggested by noroadsleft
* Enable External EEPROM on Planck Rev6
* Update KC_MAKE macro to use qmk cli util
* Disable additional gradients for rgb matrix
* Update analog code for newer methods
* Update ergodox layout
* Disable Grave Escape
* Cleanup OLED code a bit
* Remove old unicode code
* Seperate RGB Matrix code from RGB Light code in userspace
* Massive overhaul an generalization of personal OLED code
Now lets hope I NEVER get a keyboard using a 128x32 in a normal orientation.
* Super tiny cleanup
* Enable Diablo layer on kyria
* clang format pass
* Additional OLED cleanup
* Add Colemak layout
* Add status bar for mods & locks with a custom font
* Swap DEL and TAB
* Fix media keys and add QMK Configurator layout
* Add dead grave accent on <leader>e
* [keymap] ninjonas keymap updates
* [refactor(kyria)] updating keymap for numpad layer to be transparent rather than ignores
* [keymap(lily58)] added numpad layer
* [keymap(crkbd)] added numpad layer activated through tapdance
* [fix(8170)] fixing code review changes requested by noroadsleft
* [fix(8170)] updating comments and .md files to use 'Cmd' instead of and ⌘
* [keymap(kyria)] moved OLED & encoder implementation to separate classes
* [feat] created logic to cycle through hue wheel when starting keyboard
* [feat] created logic to cycle through hue wheel and return to user's default color
* [refactor] updating OLED layout for crkbd & lily58
* [refactor] updating OLED layout for crkbd & lily58
* [fix(8070)] updating encoder.c logic based off drashna's code review
* [refactor(8070)] added key to send + Shift + M
* ifdef rgb stuff like a madman for RGB Coexistance
* Re-enable RGB Light on Planck
* fix RGB Coexistance issue
* Tweak feature settings for Ergodox EZ Glow
* Their powers combine, and I am Captain RGB
This one is for noroadsleft and yan.
* Limit brightness when both RGB features are enabled
* Change shutdown method
* Add RGB Coexistience stuff to keymap
* disable RGBLIGHT_SLEEP until a solution can be found
* Disable Unicode on the kyria
* Fix up Iris rev defines
* Fix up community layouts to compile properly
* Cleanup rgb stuff
* Merge ergodox keymaps
* Update CCCV macro to use tap_code16
* Enable Solenoid on C39
Because josh couldn't
* Enable RGB Light, not Matrix on rev6 keymap
* Only enable LTO on non-ARM boards
* Clean up Bootmagic OLED display
* Enable RGBLIGHT_SPLIT on kyria
Not that it does anything
* Add hotkey for discord
* Fix key object order
info.json: Reorder the key objects into the order required by kyria.h
* linting
info.json: fix indent depth and trailing whitespaces
* Minimize visual footprint
info.json: Subtract 0.25 from each Y value to minimize the keyboard dimensions when rendered
* Add Kyria Keymap
* Enable all RGBLIGHT Animations for ARM and high capacity AVR
* Reduce GNUC version for __has_include
* Cleanup Ortho 4x12 Community layout
* Update Collide 39 keymap
* Cleanup Keymaps
* Enable full 30 LEDs for Ergodox
* Change EEPROM Load timing
* Use RGB Matrix on Planck Rev6
* Use correct keymap swap
* Enable everything for ARM
* Only enable rgb sleep on avr until crash is fixed
* Add additional Kyria keymap config
* Overhaul Kyria OLED display
* Improve kyria keymap based on usage
* Minor tweaks to rules
* Update OLED code to truncate properly
* Fix RGB Light layer indication
* Switch all of biton32 to get_highest_layer function
* Fix OLED Keylogger display
* Run qmk cformat over all of my user files
* Slight tweak to kyria based on usage
* Move around LALT_T config
* Add comments about base wrappers to keymaps
* Another cformat pass
* Temp fix for VUSB boards and NKRO
* Convert tabs to spaces in rules.mk files
* Only enable RGBLight if it's enabled
* Add Encoder Flip setting
* Update OLED font file