| Commit message (Collapse) | Author | Age | Files | Lines |
|\ |
|
| |\
| | |
| | | |
Flesh out MIDI support
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
MIDI_ENABLE = no
text data bss dec hex filename
0 17080 0 17080 42b8 satan_midi.hex
MIDI_ENABLE = yes
MIDI_BASIC undefined
MIDI_ADVANCED undefined
text data bss dec hex filename
0 19494 0 19494 4c26 satan_midi.hex
MIDI_ENABLE = yes
#define MIDI_BASIC
MIDI_ADVANCED undefined
text data bss dec hex filename
0 19788 0 19788 4d4c satan_midi.hex
MIDI_ENABLE = yes
MIDI_BASIC undefined
#define MIDI_ADVANCED
text data bss dec hex filename
0 20846 0 20846 516e satan_midi.hex
MIDI_ENABLE = yes
#define MIDI_BASIC
#define MIDI_ADVANCED
text data bss dec hex filename
0 21140 0 21140 5294 satan_midi.hex
|
| | | |
|
| | | |
|
| |\ \
| | | |
| | | | |
Add TAPPING_FORCE_HOLD to regulate behaviour
|
| | | |
| | | |
| | | |
| | | | |
See #889 for the detail.
|
| | | |
| | | |
| | | |
| | | | |
Also restored serial init back to original location. Was getting junk data.
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Refactored Bluetooth support to make adding new Bluetooth modules
easier in the future.
* Remove `OUT_BLE` key from QMK's keymap. `OUT_BT` is all we need now
as there's no difference anymore.
* Made BLUETOOTH_ENABLE build option legacy as not to break existing
keymaps (Falls back to existing EZ Key support if on)
* Removed `ADAFRUIT_BLE_ENABLE` build option
* Created new build option `BLUETOOTH` with module option (Currently
`AdafruitEZKey` & `AdafruitBLE`)
* Moved all LUFA bluetooth key/mouse events under `BLUETOOTH_ENABLE`
ifdef with selected modules output.
|
| | |/
| |/| |
|
| |\ \
| | |/
| |/| |
Add weak layer_state_set_kb hook
|
| | | |
|
| | | |
|
| | | |
|
| |/ |
|
| | |
|
| |\
| | |
| | | |
Fix V-USB bug on Windows 10
|
| | | |
|
| |\ \
| | | |
| | | | |
Minor cleanup
|
| | |/ |
|
| |\ \
| | | |
| | | | |
Add Tapping Macros to QMK
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
A macro key can now be easily set to act as a modifier on hold, and
press a shifted key when tapped. Or to switch layers when held, and
again press a shifted key when tapped.
Various other helper defines have been created which send macros when
the key is pressed, released and tapped, cleaning up the
action_get_macro function inside keymap definitions.
The layer switching macros require a GCC extension - 'compound
statements enclosed within parentheses'. The use of this extension is
already present within the macro subsystem of this project, so its use
in this commit should not cause any additional issues.
MACRO_NONE had to be cast to a (macro_t*) to suppress compiler
warnings within some tapping macros.
|
| | |/ |
|
| |\ \
| | | |
| | | | |
Implement runtime selectable output (USB or BT)
|
| | | | |
|
| | | | |
|
| | | | |
|
| | |/ |
|
| |\ \
| | |/
| |/| |
oneshot timeout would only timeout after an event.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The oneshot cancellation code do not depend on the
action_tapping_process and since process_record get called via the
action_tapping_process logic moved the oneshot cancellation code into
the action_exec function just before the action_tapping_process call
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
After setting a ONESHOT_TIMEOUT value, the oneshot layer state would
not expire without an event being triggered (key pressed). The reason
was that in the process_record function we would return priort to
execute the process_action function if it detected a NOEVENT cycle. The
process_action contained the codes to timeout the oneshot layer state.
The codes to clear the oneshot layer state have been move just in
front of where we check for the NOEVENT cycle in the process_record
function.
|
| |\ \
| | | |
| | | | |
added mods status bit to visualizer.
|
| | |/
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Since we can't read the real_mods and oneshot_mods static variable
directly within the update_user_visualizer_state
function (Threading and serial link). We are know storing the mods
states in the visualizer_keyboard_status_t structure. We can now
display the status of the modifier keys on the LCD display.
|
| | | |
|
| |/ |
|
| |\
| | |
| | | |
Keycode refactor
|
| | | |
|
| |/
| |
| |
| |
| |
| |
| |
| | |
Fix memory leaks by using stack instead of malloc
Reduce memory usage by having less temporary bufffers
Remove warnings by adding includes
Decrease code size by 608 bytes (mostly due to not linking malloc)
More robust handling of buffer overflows
|
| | |
|
| | |
|
| |\
| | |
| | | |
Allow negative values for mouse movements
|
| | | |
|
| |/ |
|
| |\
| | |
| | | |
Initial version of Raw HID interface
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | | |
There are a lot of PS/2 commands, some are vendor/device specific, so we
provide a weak ps2_mouse_init_user() to be implemented in each keyboard
that need it.
|
| |\ \
| | | |
| | | | |
Improving ps/2 mouse
|
| | | | |
|