Commit Graph

10597 Commits

Author SHA1 Message Date
Bob
bc536b9b6d Switch process_combo to using global register and timer (#2561)
Since combos keep local state about what keys have been previously pressed, when combos are layered, multiple keypresses will register for any key with multiple combos assigned to it. In order to fix this, I switched process_combo to use a global keycode / keyrecord register and timer. When a keypress is consumed by a combo, it gets stored in the register and the timer is updated; when the next keypress takes too long or a key is pressed that isn't part of any combo, the buffer is emitted and the timer reset. This has a few side effects. For instance, I couldn't _not_ fix combo keys printing out of order while also fixing this bug, so combo keys print in order correctly when a combo fails. since combos no longer have local timers, the logic around when combos time out has changed. now that there is a single timer pressing any combo key (including one in a different combo) will reset the timer for all combos, making combo entry a little more lenient. Since combos no longer have local keycode / keyrecord state, there is an edge case where incomplete combo keys can be consumed. if you have a combo for a+s = tab and a combo for b+n = space, if you press a+b+n, only a space will be emitted. This is because when b+n completes successfully, it drops the register.
2019-04-08 14:07:15 -07:00
Drashna Jaelre
f8d365a478 Convert BFO9000 to Split Keyboard code (#5568) 2019-04-08 12:43:03 -07:00
zvecr
da9bb59055 [Keyboard] Refactor jj4x4 to current standards (#5567)
* Refactor 4x4 in line with current ps2avrgb template

* Add backlight pwm bodge till #4324 lands

* Disable bootmagic lite as it seems to not work on atmega32a/bootloadHID
2019-04-08 11:35:47 -07:00
MechMerlin
15d7c5f0bd [Keyboard] Bootmagic does not actually work on BMC boards, removing from panc60 (#5573)
* remove unneeded uart setting

* use pragma once everywhere

* remove custom matrix support

* fixup readme

* set bootmagic to lite

* remove dependency on custom i2c code

* use the right header files and function calls

* remove bootmagic support as it doesn't work on bmc boards

* readme merge artifacts removal
2019-04-08 11:03:53 -07:00
MechMerlin
3e26886700 [Keyboard] Refactor Singa (#5579)
* pragma once it all

* put amnesia's name everywhere

* fixup readme

* remove custom matrix

* remove unneccessary configs

* disable bootmagic

* remove custom i2c in favor of i2c_master

* fix rgb led num

* add in rgb underglow support
2019-04-08 10:55:36 -07:00
Takeshi ISHII
0456bd668d [Docs] update feature_rgblight.md: add some figures (#5578)
* Added diagrams to illustrate the RGBLIGHT_LED_MAP macro and the `rgblight_set_clipping_range()` function.

* change fig size

* change fig size

* update figs
2019-04-08 10:55:00 -07:00
zvecr
91b18e263f [Keyboard] Refactor jj40 to current standards (#5574)
* Refactor jj40 in line with current ps2avrgb template

* Disable bootmagic lite as it seems to not work on atmega32a/bootloadHID

* Add backlight pwm bodge till #4324 lands

* Increase planck keymap compatibility
2019-04-08 10:53:15 -07:00
MechMerlin
9b393700d2 [Keyboard] Waldo 60 PCB Refactor (#5583)
* use pragma once

* modified readme with maintainer info

* remove rev1 for the time being

* QMK Configurator support for 60_ansi and 60_ansi_split_bs_rshift

* add hhkb layout and QMK Configurator support

* fix compile issue due to missing DEVICE_VER

* use a saner and less complicated default layout

* remove unused file

* fix up LAYOUT_all and formatting along with QKM Configurator support

* turn on bootmagic lite as the hardware reset switch isn't in a standard position

* remove default folder
2019-04-07 23:32:01 -07:00
That-Canadian
f44483f6aa Adding the Waldo PCB (PCB for the Holz keyboard) (#4817)
* Added Waldo keyboard base files and default keymap

* Updated Waldo files and added keymap for split shift and split backspace

* Updated meta-data for the Waldo board

* Apply suggestions from code review

Committing suggestions for real this time.

Co-Authored-By: That-Canadian <Poole.Chris.11@gmail.com>

* Made suggested changes that were not explicitly made.
2019-04-07 21:05:32 -07:00
fauxpark
95ebe90185 [Keymap] Change SFT_ESC keycode in default Satan keymap to KC_GESC (#5482) 2019-04-07 19:32:12 -07:00
Jan Christoph Ebersbach
eef00e4da1 [Keyboard] Add Signum 3.0 for the elite-c (#5478)
* Add keyboard Signum 3.0 for the elite-c

* Update readme.md

* Remove unused macros

* Use bootmagic lite instead of full

* Add warning to keymap.c that it's auto-generate

* Add description for customizing keyboard layouts

* Make generate_km.py executable

* Make right shift available in numpad layer

* Update keyboards/signum/3_0/elitec/readme.md

Co-Authored-By: jceb <jceb@e-jc.de>

* Update keyboards/signum/3_0/elitec/readme.md

Co-Authored-By: jceb <jceb@e-jc.de>

* Fix typo in symbol name
2019-04-07 19:20:09 -07:00
Drashna Jaelre
908966bdf3
Fixed tap/down/up handling in dynamic keymap macros (#5363)
* Fixed tap/down/up handling in dynamic keymap macros

* Added SS_TAP_CODE, SS_DOWN_CODE, SS_UP_CODE
2019-04-07 19:19:00 -07:00
Andrew Kannan
6a4c54870c [Keyboard] Instant60 Tsangan (#5580)
* Update instant60 for tsangan version

* Add extra init hook

* Remove hacky first init thing
2019-04-07 18:32:16 -07:00
fauxpark
8dd0ff6c7a Remove keyboard description from Adafruit BLE device name 2019-04-07 16:05:30 -07:00
Konstantin Đorđević
9a701632c4 [Keyboard] Remove unnecessary IS_COMMAND definition in treadstone48 (#5566) 2019-04-07 07:40:09 -07:00
MechMerlin
b262f20ad4 [Keyboard] Refactor HB85 to get rid of custom i2c code (#5570)
* remove dependency on custom i2c code

* missed a pragma once

* fix readme install instructions

* config.h cleanup

* make the bootmagic key not the same bmc reset key

* disable bootmagic functionality as it doesn't seem to work on atmega32a bmc boards
2019-04-07 07:34:31 -07:00
MechMerlin
a8e3462b4b [Keyboard] Refactor budget96 to remove custom i2c code in favor of QMK i2c_master (#5571)
* remove custom i2c code in favor of QMK i2c_master

* fix readme

* disable bootmagic as it doesn't work on bmc boards
2019-04-07 07:34:01 -07:00
Drashna Jaelre
b8f7834051
Refactor E6V2 BMC PCB to get rid of custom i2c code in favor of QMK i2c_master (#5572)
* remove custom i2c code in favor of QMK i2c_master

* clean up config file

* fix pyusb install instructions

* fix naming in usbconfig.h

* disable bootmagic as it does not work for bmc boards
2019-04-07 07:33:10 -07:00
noroadsleft
18a9f7999e [Keymap] Updates to noroadsleft keymap for KC60 (2019-04-07) (#5576)
* Update macros and keycode handling

- Update NUBS_Z macro so it repeats when held down
- Number row now uses numpad keycodes if Right Alt is being held
- coding conventions and formatting update
  - switched to four-space indent
  - reformatted a block comment

* Update readme files
2019-04-07 07:32:06 -07:00
MechMerlin
0231caa25a [Keyboard] Refactor FaceW for new BMC changes (#5575)
* use #pragma once for guards

* update readme and fix pyusb install instructions

* replace custom i2c code with QMK i2c_master

* remove unneeded code from config.h

* fix keyboard name

* remove custom matrix and i2c driver

* turn off bootmagic, turn on leds

* remove keymap in favor of userspace/community layouts keymap

* remove custom matrix

* update readme
2019-04-07 07:30:40 -07:00
mechmerlin
1b9f82c844 disable bootmagic as it does not work for bmc boards 2019-04-06 19:24:41 -07:00
mechmerlin
0baa1e2b2f fix naming in usbconfig.h 2019-04-06 18:33:32 -07:00
mechmerlin
8173db634d fix pyusb install instructions 2019-04-06 18:31:36 -07:00
mechmerlin
f6c305ba52 clean up config file 2019-04-06 18:31:00 -07:00
mechmerlin
44435d7444 remove custom i2c code in favor of QMK i2c_master 2019-04-06 18:30:15 -07:00
MechMerlin
5c1ef2bddc [Keyboard] Panc60 Refactor (#5559)
* remove unneeded uart setting

* use pragma once everywhere

* remove custom matrix support

* fixup readme

* set bootmagic to lite

* remove dependency on custom i2c code

* use the right header files and function calls
2019-04-06 18:08:57 -07:00
MechMerlin
410984486b i2c_init update to work with atmega32a boards (#5562)
* On i2c_init, enable two wire interface, twi interrupt, and slave
address ACK along with pull up resistors.

* thanks to some testing by drashna, we know that setting TWI doesn't work for all boards. Putting the new code into an ifdef block
2019-04-06 17:30:48 -07:00
Lenbok
2ffa4798a4 Fix bugs that cause compile failures when enabling only some animations. 2019-04-06 10:59:25 -07:00
Drashna Jaelre
cb33643f02 Remove user keymap changes 2019-04-05 14:58:42 -07:00
Drashna Jaelre
c9a2d9d1aa Additional cleanup of orthodox files and keymaps 2019-04-05 14:58:42 -07:00
Drashna Jaelre
a615a2ae93 Convert Orthodox to Split Common code 2019-04-05 14:58:42 -07:00
Bernard
ced2bbdac8 Add a new keyboard: NQG (#5558)
* Add new keyboard: NQG

* Delete .gitignore

.gitignore removed

Originally used to ignore .DS_Store files from being committed.

* Changed Maintainer information

Maintainer link now points to a github account.
2019-04-05 12:53:07 -07:00
Drashna Jaelre
5701b75e3c Custom Tapping Term per key (#5009)
* Add customizable tapping terms

* Add Documentation

* Fix function

* Fixes

* It's not a pointer

* Add debugging output

* Update documentation to be at least vaguely accurate

* Use `get_tapping_term(tapping_key.event)` instead

`e` doesn't include column and row information, properly. It registers as 255, regardless of the actual keypress.

However `tapping_key.event` actually gives the correct column and row information.  It appears be the correct structure to use. 

In fact, it looks like the issue is that `e` is actually the "TICK" structure, as defined in keyboard.h

* Use variable tapping term value rather than define

* Silly drashna - tapping_key.event, not event

* add get_event_keycode() function

* Fix typo

Co-Authored-By: drashna <drashna@live.com>

* Remove post_process_record_quantum since it's the wrong PR

* Update quantum/quantum.c

Co-Authored-By: drashna <drashna@live.com>

* Better handle ifdef statement for permissive hold

Since we can't be sure that tapping term is actually 500

* Update quantum.c comments based on feedback

* Clean up get_tapping_term function

Clean up function so that users don't need to call the event function, and instead only check the keycode

* Add ability to run functionality on and off

* Make ifdef's more compact
2019-04-05 15:47:25 -04:00
James Churchill
4c1760883e Update ps2avrgb template to use standard matrix/i2c code (#4957)
* Update ps2avrgb template to use standard matrix/i2c code

* Default to an 8x11 matrix in the ps2avrgb template
2019-04-05 09:20:43 -07:00
Alex Ong
dad66cad40 [Keyboard] Simplified handwired/xealous since most of the features are in core now. (#5556) 2019-04-04 21:44:33 -07:00
MechMerlin
7e5c107d43 [Keyboard] Move scrabblepad into donutcables directory (#5553)
* move scrabblepad into donutcables directory

* use pragma once

* update scrabblepad readme
2019-04-04 15:16:59 -07:00
stanrc85
60668ef39d [Keymap] Additional RGB options set (#5551)
* Add new RGB backlight options to config

* Add new RGB options
2019-04-04 14:41:55 -07:00
MechMerlin
f698f1e3f4 [Keyboard] Add Budget96 by Donut Cables (#5550)
* initial commit of budget96

* non logic changes

* add my name to readme

* update matrix.c

* make the matrix representation of the layout macro

* fix up LAYOUT macro

* add missing character

* initial keymap commit

* put KC_NO where they belong

* basic keymap

* fix matrix row and col definition

* The diagram I was sent and the pins used I was sent were in opposite order from each other. This should fix the issues

* update the readme

* change up manufacturer for budget96

* update copyright date

* fix up the switch matrix and provide a keymap

* forgot the keymap

* other matrix fixes

* missing a few keys in the switch matrix

* messed up the row tracing

* tweak keymap a bit

* use a lower case k

* fix spacing for markdown rendering

* put in the reset key documentation

* clean up the file a little

* use LAYOUT_96_ansi

* add a second layer for lighting controls

* add in lighting support

* add QMK Configurator support

* use pragma once

* remove un needed matrix.c

* convert to GPIO methods

* turn on rgblight_enable and get rid of custom matrix

* set bootloadhid_bootloader to 1

* set bootmagic to lite and set it to k50

* add reset information to readme

* use i2c_master instead of custom i2c

* restore the custom i2c code

* introduce reset key and eep_rst in function layer 1

* fix up pip3 install commands

* fix up device and manufacturer names

* remove un needed comments

* add an ALL layout macro along with QMK Configurator support

* move budget96 into donutcables directory since he actually has different boards

* add a short donut cables blurb taken from his website

* update readme for make instructions to point to the new path

* Update keyboards/donutcables/budget96/config.h

Co-Authored-By: mechmerlin <30334081+mechmerlin@users.noreply.github.com>

* Update keyboards/donutcables/budget96/readme.md

Co-Authored-By: mechmerlin <30334081+mechmerlin@users.noreply.github.com>

* Update keyboards/donutcables/budget96/info.json

Co-Authored-By: mechmerlin <30334081+mechmerlin@users.noreply.github.com>

* turn on backlight

* Update keyboards/donutcables/budget96/readme.md

Co-Authored-By: mechmerlin <30334081+mechmerlin@users.noreply.github.com>

* remove extra UART and BOOTLOADER settings that are not needed
2019-04-04 14:25:35 -07:00
Wilba
852d125413 [Keyboard] Added configurable defaults for RGB backlight parameters. (#5549)
* Added configurable defaults for RGB backlight indicators.

* Added more configurable defaults
2019-04-04 07:10:07 -07:00
Deckweiss
3c7cb5cf5d Added Hacked Motospeed keyboard (#5534)
* Added first configuration for handwired hacked motosped keyboard

* Added first keymap

* Fixed h file key layout

* Swapped Y and Z in default keymap

* Added name, email and description

* Moved hacked motospeed keyboard to handwired

* Changed make command in readme

* Formatted readme to be displayed properly with markdown

* Formatted keymap and layout to better reflect the physical keyboard

* Fixed info.json

* Update keyboards/handwired/hacked_motospeed/info.json

Co-Authored-By: Deckweiss <Deckweiss75@gmail.com>

* Removed .directory from .gitignore

Co-Authored-By: Deckweiss <Deckweiss75@gmail.com>

* Minor changes and cleanup

* Update keyboards/handwired/hacked_motospeed/hacked_motospeed.h

Added back newline needed for properly parsing

Co-Authored-By: Deckweiss <Deckweiss75@gmail.com>
2019-04-04 06:05:06 -07:00
stanrc85
76d982feba [Keymap] New HS60/v2 HHKB keymap for goatmaster (#5545)
* Adding new keymap folder for goadmaster

* add switch break

* zeal60 rgb backlight files

* modified for red caps lock key

* Remove return statement

* Files removed

* Add new RGB options

* Back to original file
2019-04-03 22:57:41 -07:00
marksard
debd902a3d [Keyboard] add treeadstone48 (#5405)
* Keyboard: add treeadstone48

* rename layout defines

* Use of pragma once

* move common include code

* fixed info.json

* change keymap layout from kc to normal

* fix alpha revision keymap

* fixed info.json

* remove USE_Link_Time_Optimization
2019-04-03 22:56:22 -07:00
Nicholas Shaff
4f4fad8373 [Keyboard] Doro67 Multi PCB port (#5539)
* Initial portover of the doro68.json with corrected column pins.

* Initial setup of LAYOUT_ansi and it's use in the default keymap.

* Added F keys to default kemap on layer 1.

* Added split space (and everything else) layout and a base keymap to be updated.

* Renamed split_space to multi.

* Changed product_id for doro.

* Created a basic doro LAYOUT_iso and default keymap.

* Copied over basic layout and keymap.

* Added readme.md for doro67 multi.

* Removed basic keyboad layout and keymap because it's a separate PCB.

* Added backlight controls to the various keymaps.

* Added explicit backlight pin define.

* Increased number of backlight levels for flexibility.

* Removed unnecessary line slashes and unified keymcaps.

* Corrected ISO layout and switched position with multi.

* Added keymap readme.md files.

* Corrected ISO keymap.

* Added Layouts to info.json for toolbox.

* Re-added slashes as they were necessary here...

* Corrected info.json/keymap discreptancies.

* Updated copyright messages (and fixed small readme error).

* Added missing line break spaces in readme.md

Co-Authored-By: ShadeDream <nick@shadedream.com>

* Keymap alignments on default_multi readme.md

Co-Authored-By: ShadeDream <nick@shadedream.com>

* Keymap alignments on default_multi readme.md

Co-Authored-By: ShadeDream <nick@shadedream.com>

* Keymap alignments on default_multi readme.md

Co-Authored-By: ShadeDream <nick@shadedream.com>

* Small alignment adjustment on the default keymap readme.md

Co-Authored-By: ShadeDream <nick@shadedream.com>
2019-04-03 22:54:30 -07:00
MechMerlin
b463415d84 [Keyboard] V60 Type R - Turn on leds for Configurator + Refactor (#5546)
* use pragma once where applicable

* remove ?

* update default keymap readme

* remove un need include

* update readme with newbs guide

* set underglow and backlight to be on by default, and explicitly set them to no for the default keymap to handle the non Polestar case.

* put mine and benlyall's name in the code

* update readme
2019-04-03 18:35:53 -07:00
Daniel Prilik
763b26cdb9 RGB Matrix support for Massdrop CTRL/ALT (#5328)
* port Massdrop CTRL/ALT to use RGB Matrix

Co-authored-by: Matt Schneeberger <helluvamatt@gmail.com>

* Massdrop lighting support working

This commit is to get the Massdrop lighting code working again through use of the compilation define USE_MASSDROP_CONFIGURATOR added to a keymap's rules.mk.
Added keymaps for both CTRL and ALT named default_md and mac_md. These should be used if the Massdrop style lighting is desired.

* Updating config based on testing results with patrickmt & compile errors

* Updates for PR5328

For CTRL and ALT:
Moved location of new RGB Matrix macros from config_led.h to config.h.
Added RGB_MATRIX_LED_FLUSH_LIMIT (time between flushes) to config.h for correct LED driver update timing.
Re-added missing breathing code for when Massdrop configurator mode is defined.

* remove prilik keymap form PR
2019-04-03 18:30:47 -07:00
XScorpion2
63177760de Added encoder support to split common code (#5477)
* Added slave encoder support to split common

* Fixing handwired/xealous/rev1 compile error

* Removed unnecessary ifdef
2019-04-03 16:01:17 -07:00
Alex Ong
17e7762de7 Eager Per Row Debouncing added (added to Ergodox) (#5498)
* Implemented Eager Per Row debouncing algorithm.

Good for when fingers can only press one row at a time (e.g. when keyboard is wired so that "rows" are vertical)

* Added documentation for eager_pr

* Ported ergodox_ez to eager_pr debouncing.

* Removed check for changes in matrix_scan.

* Added further clarification in docs.

* Accidental merge with ergodox_ez

* Small cleanup in eager_pr

* Forgot to debounce_init - this would probably cause seg-faults.
2019-04-03 14:45:55 -07:00
Drashna Jaelre
e1e08a494b
Merge pull request #5536 from stanrc85/feature/updates
[Keymap] Config tweaks and adding zeal60 RGB files to userspace
2019-04-03 10:25:09 -07:00
Wilba6582
eb0bbe997b Added configurable defaults for RGB backlight indicators. 2019-04-03 10:24:40 -07:00
MechMerlin
cb2f2fd258 [Keyboard] Small Refactor of Duck boards (#5521)
* first [ass at pulling out common duck library functions

* use new library in jetfire

* use new library in duck lightsaver

* use new library in octagon v2

* put Device into the library

* refactor send_value

* refactor send_value and send_color

* use pragma once

* use pragma once

* use pragma once

* use pragma once

* rename backlight_led to indicator_leds to match with other duck boards

* rename enum

* make #define names consistent

* rename ducklib to duck_led

* update rules.mk ?= to =

* put rgb in the correct order

* add debounce debugging printouts

* turn on bootmagic lite and set it to the top left most key commonly programmed as Escape

* add reset key documentation

* fix that typo

* Update keyboards/duck/duck_led/duck_led.c

Co-Authored-By: mechmerlin <30334081+mechmerlin@users.noreply.github.com>

* include the correct library
2019-04-03 10:17:25 -07:00