Commit graph

978 commits

Author SHA1 Message Date
Joel Challis
40c7ecfdea
Move gpio wait logic to wait.h (#12067) 2021-03-10 22:47:36 +00:00
Ryan
9155b59e1a
LED Matrix: decouple from Backlight (#12054) 2021-03-08 16:55:00 +11:00
QMK Bot
37d1fa53e0 Merge remote-tracking branch 'origin/master' into develop 2021-03-07 06:40:08 +00:00
Ryan
8556068534
Require BOOTLOADER = qmk-dfu for :bootloader target (#12136) 2021-03-07 17:39:35 +11:00
XScorpion2
cde2859a65
Split RGB Matrix (#11055)
* Split RGB Matrix

* Suspend State sync for rgb matrix
2021-03-03 07:32:15 +11:00
QMK Bot
4c04c848b5 Merge remote-tracking branch 'origin/master' into develop 2021-03-02 14:32:29 +00:00
Drashna Jaelre
ab3986a684
Set default for USB_SUSPEND_WAKEUP_DELAY to 0/disabled (#12081) 2021-03-02 14:31:23 +00:00
Drashna Jaelre
0e984b6e7e
Add ability to toggle One Shot functionality (#4198)
Co-authored-by: Nick Brassel <nick@tzarc.org>
Co-authored-by: Ryan <fauxpark@gmail.com>
2021-03-01 08:57:02 -08:00
QMK Bot
93a1d4f156 Merge remote-tracking branch 'origin/master' into develop 2021-02-28 21:25:41 +00:00
Joel Challis
f8266a228c
Migrate make_dfu_header to CLI (#12061)
* Migrate make_dfu_header to CLI

* lint fixes

* Update lib/python/qmk/cli/generate/dfu_header.py

Co-authored-by: Ryan <fauxpark@gmail.com>

* Rename object

Co-authored-by: Ryan <fauxpark@gmail.com>
2021-02-28 21:25:09 +00:00
QMK Bot
3b8ca5f343 Merge remote-tracking branch 'origin/master' into develop 2021-02-28 16:01:51 +00:00
Fabián González Martín
90c7ae70c6
Modified tmk_core/rules.mk to avoid linking errors (#10728)
* Modified tmk_core/rules.mk to avoid linking errors

Added -fcommon flag to avoid linking errors due to multiple variable definitions. Though this is neither a definitive nor good solution, proper changes and use of extern  keyword to avoid those multiple definitions must be made

* Comment updated
2021-02-28 08:01:16 -08:00
Joel Challis
5ba4391cf2
Refactor of USB code within split_common (#11890)
* Initial refactor of usb code within split_common

* Add headers

* Correct disable condition

* Format

* Align func name
2021-02-28 15:52:58 +00:00
Joel Challis
415a8bc249
ARM - Refactor SLEEP_LED to support more platforms (#8403)
* Initial refactor of ARM SLEEP_LED to enable more platforms

* fix build issues

* Disable SLEEP_LED for boards with no caps lock code

* Enable GPT14 for boards with caps lock code and SLEEP_LED enabled

* Enable GPT for boards with caps lock code and SLEEP_LED enabled
2021-02-28 15:52:43 +00:00
Joel Challis
a3cbc8a004
Overhaul bootmagic logic to have single entrypoint (#8532)
* Relocate bootmagic logic to have single entrypoint

* Align init of layer state
2021-02-28 15:50:15 +00:00
Isaac Elenbaas
765d8a33dd
Fixes #4072, #6214. Revision of #156 to clear before AS/TD. (#9941) 2021-02-28 15:48:19 +11:00
github-actions[bot]
deaabff752
Format code according to conventions (#12046)
Co-authored-by: QMK Bot <hello@qmk.fm>
2021-02-27 22:35:41 +00:00
Nick Brassel
6623744172
Fix build for attiny85-based boards. (#12044) 2021-02-28 09:33:33 +11:00
github-actions[bot]
d99e330548
Format code according to conventions (#12024)
Co-authored-by: QMK Bot <hello@qmk.fm>
2021-02-26 17:47:22 +11:00
Nick Brassel
abe189377c
[BUG] Massdrop develop rgb fix (#12022)
* Allow for disabling RGB_MATRIX on Massdrop boards.

* Fixup init sequence.

* Make some functions static as they've got very generic names.
2021-02-26 17:07:05 +11:00
fauxpark
23fd1aee00 Merge remote-tracking branch 'upstream/master' into develop 2021-02-25 16:04:53 +11:00
Ryan
39694d5eb0
V-USB suspend refactor (#11891) 2021-02-25 15:54:25 +11:00
Liyang HU
c4bd6af837
tmk_core/common/action.c: refactor for code size; merge multiple cases into one (#11943)
* tmk_core/common/report.h: define `enum mouse_buttons` in terms of `#define MOUSE_BTN_MASK()`

* tmk_core/common/action.c: collapse multiple `case KC_MS_BTN[1-8]:` into single `MOUSE_BTN_MASK(action.key.code - KC_MS_BTN1)`

We all love tapping on our keyboards but this is taking the piss.

This saves ~134 bytes on my ATmega32.
2021-02-20 14:53:53 -05:00
Ryan
7ab9f6a101
Output selection: Remove "USB and BT" option (#11940) 2021-02-20 18:11:02 +11:00
github-actions[bot]
a5f63dbf93
Format code according to conventions (#11936)
Co-authored-by: QMK Bot <hello@qmk.fm>
2021-02-17 17:30:16 +11:00
Ryan
be70f466fe
Fix compilation error for tap_code_delay() (#11938) 2021-02-17 17:26:57 +11:00
Ryan
3345ce2686
Add tap_code_delay(code, delay) (#11913)
Co-authored-by: Drashna Jaelre <drashna@live.com>
2021-02-17 07:26:52 +11:00
github-actions[bot]
b0e161e33d
Format code according to conventions (#11928)
Co-authored-by: QMK Bot <hello@qmk.fm>
2021-02-16 11:33:03 +11:00
XScorpion2
d1806a26e4
Split transport mirror (#11046)
* Split transport mirror support

* Updated RGB Matrix to respond to electrical events instead of key events

* split matrix slave fix
2021-02-16 11:30:33 +11:00
Joshua Diamond
f1a3ce49cc Merge branch 'master' into develop 2021-02-14 19:59:26 -05:00
github-actions[bot]
c27a778281
Format code according to conventions (#11905)
Co-authored-by: QMK Bot <hello@qmk.fm>
2021-02-15 06:55:43 +11:00
Joel Challis
1f2fe2eab9
Refactor platform logic within print.h (#11863)
* Remove GCC check from debug

* Remove platform logic from common.mk

* Refactor platform logic within print.h

* restore debug.c format

* headers

* Rename function pointer type

* review comments

* Update tmk_core/common/printf.c

Co-authored-by: Nick Brassel <nick@tzarc.org>

* Format

Co-authored-by: Nick Brassel <nick@tzarc.org>
2021-02-14 01:44:22 +00:00
Joel Challis
de8caf708c
Split gpio and atomic to platform (#11792) 2021-02-14 11:51:06 +11:00
Drashna Jaelre
7161d65070
Remove FAUXCLICKY feature (deprecated) (#11829) 2021-02-09 09:49:05 -08:00
QMK Bot
3a98bd75c8 Merge remote-tracking branch 'origin/master' into develop 2021-02-07 23:16:47 +00:00
Joel Challis
99bffc2a21
Migrate some tmk_core files to quantum (#11791)
* Migrate some tmk_core files to quantum

* Fix build errors
2021-02-07 23:16:15 +00:00
Alexander Ulitin
9146d30f06
[Bug] Fix media key missing upstroke event (#11162)
[Bug] Pressing media key on a momentarily activated layer may leads to
missing key up events.
2021-02-07 08:43:39 -08:00
Joel Challis
0288142769
Migrate mousekey to quantum (#11804) 2021-02-07 13:56:08 +00:00
Joel Challis
f5a38b95c1
Remove legacy print backward compatiblitly (#11805)
* Remove legacy print backward compatiblitly

* Remove legacy print backward compatiblitly - core

* revert comment changes
2021-02-06 16:56:13 +00:00
QMK Bot
a1ddba6bc4 Merge remote-tracking branch 'origin/master' into develop 2021-02-06 14:16:03 +00:00
Ryan
9b874d5071
Manual formatting fix for serial_uart.c (#11806) 2021-02-06 14:15:30 +00:00
QMK Bot
843643aef3 Merge remote-tracking branch 'origin/master' into develop 2021-02-05 22:21:23 +00:00
Ryan
5ea92a9c1c
Serial refactor (#11521) 2021-02-06 09:20:48 +11:00
QMK Bot
b4e02f8ddf Merge remote-tracking branch 'origin/master' into develop 2021-02-05 13:28:01 +00:00
Joel Challis
b2d0e8a491
Manually run formatting job (#11797) 2021-02-05 13:27:24 +00:00
QMK Bot
00b9ec088d Merge remote-tracking branch 'origin/master' into develop 2021-02-03 01:31:03 +00:00
Drashna Jaelre
c0de49e393
Fix DEBUG_MATRIX_SCAN_RATE on chibiOS when console is enabled (#11776)
* Fix DEBUG_MATRIX_SCAN_RATE on chibiOS when console is enabled

* update type in dprintf

Co-authored-by: Ryan <fauxpark@gmail.com>

Co-authored-by: Ryan <fauxpark@gmail.com>
2021-02-03 12:30:33 +11:00
Joshua Diamond
9a4618b05b
Address wake from sleep instability (#11450)
* resolve race condition between suspend and wake in LUFA

* avoid multiple calls to suspend_power_down() / suspend_wakeup_init()

* Remove duplicate suspend_power_down_kb() call

* pause on wakeup to wait for USB state to settle

* need the repeated suspend_power_down() (that's where the sleep is)

* more efficient implementation

* fine tune the pause after sending wakeup

* speculative chibios version of pause-after-wake

* make wakeup delay configurable, and adjust value

* better location for wakeup delay
2021-02-02 11:12:41 +11:00
Joshua Diamond
ae4ee7553a
Stop sounds when suspended (#11553)
* fix stopping audio on suspend vs. startup sound

* trim firmware size

* fix stuck audio on startup (ARM)
2021-02-01 09:25:55 +11:00
Nick Brassel
db11a2a1fd
Decouple USB events from the USB interrupt handler. (#10437) 2021-02-01 08:19:00 +11:00
Nick Brassel
d65db68f9f Merge remote-tracking branch 'upstream/master' into develop 2021-01-28 10:52:59 +11:00
Drashna Jaelre
99f3df2893
Add support for 8 buttons to mouse report (#10807)
* Add support for 8 buttons to mouse report

This includes support for 8 buttons in mousekeys.  However, this does move the keys around due to the fact that the last mousekey keycode is already 0xFF, so any past that would not work with register_code and the like, breaking them for tap hold keys, encoders, and other features.

* Update mouse key docs

* Add changes based on feedback

* Fix VUSB report size comment

Because drashna red gud

* Fix typo in action.c

* Fix IS_MOUSE_BUTTON check

* Change start range for mousekeys so that the end is 0xFF properly

* condense mousekeys check
2021-01-28 04:38:34 +11:00
Takeshi ISHII
c27f16158d
add get_matrix_scan_rate() to tmk_core/common/keyboard.c (#11489) 2021-01-28 04:34:50 +11:00
Ryan
30b46fad57
UART driver refactor (#11637) 2021-01-27 17:42:49 +11:00
Gentoli
28b1c913b4
Remove duplicated housekeeping in arm_atsam (#11672) 2021-01-24 12:55:43 +11:00
Nick Brassel
1108210f1b
Keep track of encoder activity (#11595)
* Keep track of encoder activity, provide API for either matrix/encoder.

* Fixup build when no RGBLIGHT or Backlight enabled.
2021-01-21 22:24:07 +11:00
Joel Challis
14c2f671cb
Switch to nano specs on ChibiOS builds - Round 2 (#11607) 2021-01-20 10:27:21 +11:00
Nick Brassel
9e18f41fcf Merge remote-tracking branch 'upstream/master' into develop 2021-01-20 10:00:28 +11:00
Nick Brassel
49dcc824db
Fixup declaration for _kill, add other missing syscalls, populate errno. (#11608) 2021-01-19 14:23:03 +00:00
Nick Brassel
31c57aab35 qmk cformat 2021-01-17 10:19:56 -08:00
Nick Brassel
e702c7f1b4
Keep track of last matrix activity. (#11552)
Co-authored-by: Dasky <daskygit@users.noreply.github.com>

Co-authored-by: Dasky <daskygit@users.noreply.github.com>
2021-01-18 05:01:38 +11:00
QMK Bot
d6d15b91f3 Merge remote-tracking branch 'origin/master' into develop 2021-01-17 17:46:01 +00:00
Nick Brassel
e524e0a397
Add syscall fallbacks to ChibiOS builds (#11573)
* Add fallback syscalls to ChibiOS builds that are present but able to be overridden as appropriate.

* Modified location to be ChibiOS-specific.
2021-01-18 04:45:21 +11:00
fauxpark
ca7da3866d Merge remote-tracking branch 'upstream/master' into develop 2021-01-15 18:34:12 +11:00
Ryan
84e2f1ec17
Adafruit BLE cleanups (#11556) 2021-01-15 14:32:00 +11:00
Ryan
f519a9908e
arm_atsam: temporarily lower raw HID endpoint/report size (#11554) 2021-01-15 14:11:04 +11:00
Nick Brassel
ab375d3d07 Revert "Keep track of last matrix activity (#10730)"
This reverts commit 79d1db3324.
2021-01-15 06:55:07 +11:00
Takeshi ISHII
302b35c2a0
fix matrix_io_delay() timing in quantum/matrix.c (#9603)
* fix matrix_io_delay() timing in quantum/matrix.c

* Updated comments explaining the need for matrix_io_delay() in quantum/matrix.c

* fix matrix_io_delay() timing in quantum/split_common/matrix.c

* Update quantum/matrix.c

Co-authored-by: Ryan <fauxpark@gmail.com>

* Update quantum/split_common/matrix.c

Co-authored-by: Ryan <fauxpark@gmail.com>

* Update quantum/matrix.c

Co-authored-by: Ryan <fauxpark@gmail.com>

* Update quantum/split_common/matrix.c

Co-authored-by: Ryan <fauxpark@gmail.com>

* add waitOutputPinValid() and wait_cpuclock() into quantum/quantum.h and tmk_core/common/wait.h

* add matrix_output_select_delay() and matrix_output_unselect_delay()

* fix quantum/matrix_common.c, tmk_core/common/matrix.h

* fix tmk_core/common/wait.h

* fix quantum/quantum.h, tmk_core/common/wait.h

* waitOutputPinValid() rename to waitInputPinDelay() in quantum/quantum.h.

* waitOutputPinValid() rename to waitInputPinDelay() in quantum/matrix_common.c

* update tmk_core/common/wait.h

* update comment in quantum/matrix.c, quantum/split_common/matrix.c

* update quantum/quantum.h: Make more margin in the GPIO_INPUT_PIN_DELAY default value.

Co-authored-by: Ryan <fauxpark@gmail.com>
2021-01-13 12:46:22 +11:00
Nick Brassel
79d1db3324
Keep track of last matrix activity (#10730)
* Allow recording of the last matrix activity time, to simplify implementation of display timeouts and the like.

* Add requested changes from code review.

* Simplify split matrix last changed.
2021-01-12 19:48:24 +11:00
QMK Bot
3bc436988d Merge remote-tracking branch 'origin/master' into develop 2021-01-11 08:47:07 +00:00
Ryan
aa0e33eca0
Add support for shared EP on V-USB boards (#11103) 2021-01-11 19:46:30 +11:00
QMK Bot
6f9db2b48e Merge remote-tracking branch 'origin/master' into develop 2021-01-11 08:07:48 +00:00
Joshua Diamond
4d96b85b6f
Lighting Layers should be disabled when suspended (#11442)
* Lighting Layers should be disabled when suspended

* bugfixes
2021-01-11 00:07:09 -08:00
QMK Bot
c8320726bd Merge remote-tracking branch 'origin/master' into develop 2021-01-10 22:16:06 +00:00
Joel Challis
d58d7dd192
manually run formatting job (#11503) 2021-01-10 22:15:29 +00:00
QMK Bot
621d54f662 Merge remote-tracking branch 'origin/master' into develop 2021-01-05 22:27:48 +00:00
Takeshi ISHII
3edfb93d5d
Add build debug option to tmk_core/rules.mk (#11324)
* Add DUMP_C_MACROS to tmk_core/rules.mk

* update DUMP_C_MACROS

* add VERBOSE_LD_CMD, VERBOSE_AS_CMD

* add VERBOSE_C_CMD, VERBOSE_C_INCLUDE

* update DUMP_C_MACROS, VERBOSE_C_INCLUDE, VERBOSE_C_CMD
2021-01-06 07:27:10 +09:00
Dasky
e7db582e35
Set avr's bootloader_jump function to be weak (#11418)
Co-authored-by: Dasky <dasky@nowhere>
2021-01-04 21:53:37 -08:00
QMK Bot
d0aa9ff972 Merge remote-tracking branch 'origin/master' into develop 2021-01-05 00:37:55 +00:00
Drashna Jaelre
810eafad12
Fix Tap-Hold Configs (#11127)
* Add proper prototypes for Tap-Hold Per Key functions

* Fix handwired/tennie default keymap

* Remove unneeded references

* Fix tapping term per key check in space cadet

* Pre-emptive fix for tap dance

* Fix marksard/leftover30

* Replace hard coded tapping term with define
2021-01-04 16:37:20 -08:00
Nick Brassel
25e972e8a4
Fix up build dependencies. (#11435) 2021-01-05 07:36:02 +11:00
QMK Bot
1f8acb7619 Merge remote-tracking branch 'origin/master' into develop 2021-01-03 20:30:50 +00:00
Joel Elkins
070240f212
arm_atsam: Use PROGRAM_CMD for :flash target if set (#11424) 2021-01-04 07:30:22 +11:00
Zach White
11bd98f684
Fix broken keyboards (#11412)
* Fix a couple errors

* add a dependency for the generated headers
2021-01-03 13:08:17 +11:00
fauxpark
e3da93e658 Merge remote-tracking branch 'upstream/master' into develop 2021-01-01 05:09:50 +11:00
Joel Challis
a68d289fa5
Manually run formatting CI process (#11375) 2021-01-01 03:50:32 +11:00
QMK Bot
633d2cb648 Merge remote-tracking branch 'origin/master' into develop 2020-12-31 06:21:45 +00:00
Takeshi ISHII
6169b47e82
Add target 'check-md5' to build_keyboard.mk (#11338)
* Add target 'build-for-compare' to `build_keyboard.mk`

The `build-for-compare` target provides an easy way to check the md5 checksum of the generated binary.

You can easily see if there is any change in the generated binaries between the two versions, as in the example below.

```
$ git checkout 0.11.0
M	build_keyboard.mk
M	tmk_core/rules.mk
Note: checking out '0.11.0'.
HEAD is now at c66df1664 2020 November 28 Breaking Changes Update (#11053)

$ make helix:all:build-for-compare | grep ^MD5
MD5 (.build/helix_rev2_default.hex) = 5c3606562c944bb4d18832e601b45d4a
MD5 (.build/helix_rev2_edvorakjp.hex) = 9e43d13d389d518ba7e99cd7337e28d6
MD5 (.build/helix_rev2_five_rows.hex) = 8bcb61c2fd5d237c2997f2fa007d4934
MD5 (.build/helix_rev2_five_rows_jis.hex) = b97cd818d52f73ca2d4e78c86d90a791
MD5 (.build/helix_rev2_froggy.hex) = c492172364188f4e2918b10bf0f3a0a6
MD5 (.build/helix_rev2_froggy_106.hex) = b0861fd735a8f81881a8c02730641a2b
MD5 (.build/helix_rev2_led_test.hex) = 5c97d982a5da5cfb3dacb28a8934b81d
MD5 (.build/helix_rev2_xulkal.hex) = 01f603dc46bcf9094d7e106831d8f5b1
MD5 (.build/helix_rev2_yshrsmz.hex) = 5a008bca2d0c5790a151c02834c529ba

$ git checkout 0.11.1
M	build_keyboard.mk
M	tmk_core/rules.mk
Previous HEAD position was c66df1664 2020 November 28 Breaking Changes Update (#11053)
HEAD is now at cc08e3082 nix-shell: add milc dependency (#11086)

$ make helix:all:build-for-compare | grep ^MD5
MD5 (.build/helix_rev2_default.hex) = 5c3606562c944bb4d18832e601b45d4a
MD5 (.build/helix_rev2_edvorakjp.hex) = 9e43d13d389d518ba7e99cd7337e28d6
MD5 (.build/helix_rev2_five_rows.hex) = 8bcb61c2fd5d237c2997f2fa007d4934
MD5 (.build/helix_rev2_five_rows_jis.hex) = b97cd818d52f73ca2d4e78c86d90a791
MD5 (.build/helix_rev2_froggy.hex) = c492172364188f4e2918b10bf0f3a0a6
MD5 (.build/helix_rev2_froggy_106.hex) = b0861fd735a8f81881a8c02730641a2b
MD5 (.build/helix_rev2_led_test.hex) = 5c97d982a5da5cfb3dacb28a8934b81d
MD5 (.build/helix_rev2_xulkal.hex) = d848383adfd7463b138c6da179cf1436
MD5 (.build/helix_rev2_yshrsmz.hex) = 5a008bca2d0c5790a151c02834c529ba
```

* make builds reproducable by default

* update build_keyboard.mk: remove 'build-for-compare' target

* GNU make (3.81) on macOS 10.14(Mojave) does not have the 'undefine' directive.

* Adopted fauxpark's suggestion.

* Update tmk_core/rules.mk

Co-authored-by: Ryan <fauxpark@gmail.com>

* update tmk_core/rules.mk

* fix tmk_core/rules.mk

Co-authored-by: Zach White <skullydazed@gmail.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
2020-12-31 15:20:56 +09:00
QMK Bot
b51cc6d67a Merge remote-tracking branch 'origin/master' into develop 2020-12-30 15:45:24 +00:00
Ryan
7071900407
Missed a couple more #pragma onces (#11351) 2020-12-30 15:44:53 +00:00
QMK Bot
f801c69c75 Merge remote-tracking branch 'origin/master' into develop 2020-12-30 09:59:32 +00:00
Ryan
411b92e206
Remove useless wait in AVR suspend code (#11352) 2020-12-30 20:58:57 +11:00
siggie0815
1b3504e329
Update ADB impelemtation in TMK Core (#11168)
* Update ADB impelmentation in tmk_core to recent version.

Pcked from tmk_keyboard repository revision: 48d696443857512d45f9a7329e0dd0a76345860f

* Restore convenient ADB functions used in QMK port.

* Do cformat.
2020-12-29 19:18:16 -08:00
QMK Bot
9634c72d7e Merge remote-tracking branch 'origin/master' into develop 2020-12-29 21:45:35 +00:00
xyzz
2573ed8c6b
Remove MATRIX_IS_ON macro (#11330)
* Remove MATRIX_IS_ON macro

this macro is both incorrect and excessive given that macro_is_on()
exists

* Remove massdrop matrix.h
2020-12-29 21:45:04 +00:00
QMK Bot
99d6349978 Merge remote-tracking branch 'origin/master' into develop 2020-12-27 17:37:04 +00:00
Ryan
1b7b72c0e9
Ensure single newline at EOF for core files (#11310) 2020-12-28 04:36:32 +11:00
QMK Bot
0b37c0dfa0 Merge remote-tracking branch 'origin/master' into develop 2020-12-26 04:56:43 +00:00
Ryan
1d1d5da43f
Change include guards in tmk_core/ and drivers/ to pragma once (#11240) 2020-12-26 15:56:11 +11:00
Jan Christoph Ebersbach
010271d6ea
Implement kinetic mouse movement algorithm (#6739)
* Implement kinetic mouse movement algorithm

* Adjust mouse wheel speed

* Remove unused math.h include

* Wrap mouse_timer definition in ifdef

* Replace double space by single space

* Clarify documentation of kinetic mouse speed

Co-Authored-By: lf <software@lfcode.ca>

* Clarify documentation of kinetic mouse speed

Co-Authored-By: lf <software@lfcode.ca>

* Remove superfluous definition of speed

* fix(variable): remove unused variable

Co-authored-by: lf <software@lfcode.ca>
2020-12-24 14:12:19 -08:00