Commit graph

1079 commits

Author SHA1 Message Date
Jack Humbert
db32864ce7 Cleans up quantum/keymap situation, removes extra lufa folders (#416)
* sorts out keycodes

* move midi around

* remove mbed

* replaces keymap with qmk/keymap_common

* fixes keymap.h

* keymap, config, quantum rearrange

* removes unneeded lufa stuff
2016-06-18 14:30:24 -04:00
Eric Tang
e175b8d56f removes extra dfu erase (#415) 2016-06-17 20:25:58 -04:00
Jack Humbert
91b469d88f correctly test to see if awk exists 2016-06-16 15:48:54 -04:00
Jack Humbert
33e83aaaca make awk optional (uses cat) 2016-06-16 10:42:00 -04:00
Eric Tang
6955719075 Move LED strip initialization (#397) 2016-06-12 18:01:55 -04:00
Jack Humbert
42b40e6fde no more cc error on windows 2016-06-11 22:54:34 -04:00
Jack Humbert
d9e4dad0a8 Makefile redo & other features (#395)
* .build containment implemented

* no destructive variable setting - builds in either folder

* make from 3 places

* cleans before each build
* make from root with keyboard=keyboard, keymap=keymap
* make from keyboard/keyboard with keymap=keymap
* make from keymaps/keymap
* only implemented on planck

* adds color diag to avr-gcc

* makefiles for all plancks, clean-up

* quick build-all makefile for plancks

* reformatting of make output (colors)

* color toggle, tmk path corrections

* correct if statement for color

* move config.h to main makefile, updates preonic, atomic

* format update, all keyboards targets

* makefile optional for build all target, alps and arrow_pad updated

* alps updated

* make planck default, trying out travis recipe for all-keyboards

* all-keymaps target, different travis recipe

* updates alps64

* updates keyboards to new format

* updates clue* projects

* all projects updated, specialise EZ .hex, let .hex through

* updates travis

* automatically find root, keyboard, keymap

* silent echo, cleaned-up mass make output

* updates all keyboards' .hex files except EZ

* Rename Bantam44.c to bantam44.c

* Rename Bantam44.h to bantam44.h

* nananana

* adds six key keyboard

* does same to ez as rest

* updates send_string example

* brings ergodox_ez up to date

* updates template/new project script

* adds sixkeyboard

* adds readme for sixkeyboard

* adds sixkeyboard to travis

* filenames, gitignore mess

* define clock prescaler stuff manually

* make quick, size test example

* documentation and dfu-no-build
2016-06-11 13:31:31 -04:00
Masahiro Wakame
6b8b332f77 fix HID_RI_LOGICAL_MAXIMUM value (#388) 2016-06-07 11:30:15 -04:00
Jack Humbert
b36e532b5e cleans up folder structure
* consolidates docs
* deletes converter/
* updates .md references (most)
2016-06-04 00:10:47 -04:00
Jack Humbert
84276ee561 removes stray paren 2016-06-01 16:57:12 -04:00
Hartmut Goebel
cea4b9a4bb Update to Makefile an ergodox readme (#365)
* Autodetect teensy-loader-cli over teensy_loader_cli.

Some distributions (e.g. Arch Linux, Guix) install teensy_loader_cli
as teensy-loader-cli. Use this one if it is installed.

* Update ergodox_ez/readme.md

- Mention Linux distris providing teensy-loader-cli
- Mention `make teensy ...`
2016-05-31 10:03:04 -04:00
Jack Humbert
a53bc24c4d makes .SILENT (less verbose) by default - override with VERBOSE=1
also took out some @echo newlines to make things a bit cleaner
2016-05-28 15:33:08 -04:00
Jack Humbert
287eb7ad14 Converted audio play functions to *_user (#349)
* Updated personal layouts

* tweaked personal

* Nightly - Audio Cleanup

Refactored the LUTs. Abstracted some of the registers out of audio to
use more functional names. Split audio into audio and audio_pwm. WIP

* nightly - collapsed code

* Added check for note playing to LEDs

* Usability tweaks

* TWEAE

* nightly

added extra kcs to keymap common

* turned on Plank audio

* Added backlight breathing to atomic

* reverted accidental merge

* Added music and audio toggles to Quantum.c

* Redid the audio callbacks

* Adjusted default planck layout to use the user tone naming

* tabs to spaces

* Rewrote the ALL recipe to allow for faster parallel make

* tabs to spaces

* Renamed custom event functions to be 'startup_user' and 'shutdown_user'. Also moved the prototypes around.

* Tweaked pvc atomic layout to work with the pvc planck.

* updates midi scale calling
2016-05-24 11:56:53 -04:00
Eric Tang
1ae6011cef Clean up #343's code (#348) 2016-05-24 11:44:40 -04:00
Jack Humbert
897f5b2f9d updates midi in play_note to better octave 2016-05-23 23:44:36 -04:00
Eric Tang
aaa758f1d3 Optimize matrix scanning (#343) 2016-05-23 23:42:21 -04:00
Jack Humbert
b732b79b49 adapts unicode to quantum.c (#333)
* Unicode

to have unicode input you need to:

- set your OS input method to UNICODE if needed
- enable unicode in your makefile
- copy the action_function from
keyboard/planck/keymaps/unicode/unicode.c to your keymap.c
set the target OS method in your keymap.c: void matrix_init_user() {
set_unicode_mode(UC_OSX); } you can then switch when you want with:
set_unicode_mode(UC_OSX); set_unicode_mode(UC_LNX);
set_unicode_mode(UC_WIN);
put some unicode codes in your keymap like so: UC(0x0061)
I did change the bit mask in quantum/keymap_common.c and .h
I’m afraid we will need uint32 to get a total support for all unicode
tables or relocate the handler as @mbarkhau did.

* rearranges keycode values, hooks-up unicode

* removes extra lalt ref

* adds unicode shortcuts and example
2016-05-18 23:47:16 -04:00
Jack Humbert
bf545061f2 outputs size when make dfuing 2016-05-18 23:16:33 -04:00
Jack Humbert
fde477a927 updates midi functionality (#331)
* implements leader key for planck experimental

* allows override of leader timeout

* adds ability to use the leader key in seq

* fixes leader keycode

* adds chording prototype

* fixes keycode detection

* moves music mode to quantum.c

* disables chording by default

* adds music sequencer functionality

* implements audio/music functions in quantum.c

* splits up process_action to allow independent processing of actions

* moves midi stuff to quantum.c

* adds additional scales for midi
2016-05-15 00:51:06 -04:00
Jack Humbert
bf5c2ccee5 splits process_action up to handle records separately (#329)
* implements leader key for planck experimental

* allows override of leader timeout

* adds ability to use the leader key in seq

* fixes leader keycode

* adds chording prototype

* fixes keycode detection

* moves music mode to quantum.c

* disables chording by default

* adds music sequencer functionality

* implements audio/music functions in quantum.c

* splits up process_action to allow independent processing of actions

* merging?
2016-05-15 00:47:25 -04:00
Erez Zukerman
1a8c0dd22d Leader key implementation (#326)
* implements leader key for planck experimental

* allows override of leader timeout

* adds ability to use the leader key in seq

* fixes leader keycode

* adds chording prototype

* fixes keycode detection

* moves music mode to quantum.c

* disables chording by default

* updates process_action functions to return bool
2016-05-15 00:27:32 -04:00
Jack Humbert
3f02637f4d Backlight Breathing for Planck and Atomic
* Updated personal layouts

* tweaked personal

* Nightly - Audio Cleanup

Refactored the LUTs. Abstracted some of the registers out of audio to
use more functional names. Split audio into audio and audio_pwm. WIP

* nightly - collapsed code

* Added check for note playing to LEDs

* Usability tweaks

* TWEAE

* nightly

added extra kcs to keymap common

* turned on Plank audio

* Added backlight breathing to atomic

* reverted accidental merge

* adds backlight pulse to planck
2016-05-09 13:17:15 -04:00
Erez Zukerman
8ffc73fcbd [Jack & Erez] Adds an option for user-specific config.h files 2016-05-05 22:21:39 -04:00
Thiago Alves
74e97eefd7 Adds oneshot layer and oneshot tap toggling (#308)
This commit is mostly a cherry-pick from `ahtn` at
https://github.com/tmk/tmk_keyboard/pull/255.

These are the changes:

* Adds ACTION_LAYER_ONESHOT
* Adds ONESHOT_TAP_TOGGLE
* Mentions sticky keys in the docs on oneshot.
2016-05-05 21:41:37 -04:00
Jack Humbert
2bbf3d5820 stops forcing debug_action 2016-04-28 23:23:33 -04:00
Eric Tang
620ac4b260 Update functions used to write to EEPROM 2016-04-21 20:07:03 -07:00
Jack Humbert
157ddccc2c start-up sound working, removes tick with some devices 2016-04-20 20:11:05 -04:00
IBNobody
4b3358acc2 Fixed speaker being on during sleep. 2016-04-18 18:58:37 -05:00
IBNobody
5c98ad5960 Added extra songs, LED indicator notes 2016-04-17 20:14:37 -05:00
IBNobody
d5b72e7bde Fixed many compiler warnings related to print being disabled 2016-04-17 12:54:32 -05:00
IBNobody
4aea806aa8 Adding Musical Notes 2016-04-16 19:31:32 -05:00
Jack Humbert
ab19ebd08a MAGIC functionality, AG swap in default layout 2016-04-16 18:51:58 -04:00
Jack Humbert
c294636c66 audio on by default 2016-04-15 23:46:35 -04:00
Jack Humbert
0faa18eab9 audio enable stored in eeprom 2016-04-15 23:38:21 -04:00
IBNobody
39e520c010 Prepping for merge with new_defaults 2016-04-15 13:09:42 -05:00
Jack Humbert
bb0836c620 the spacessss 2016-04-15 00:26:22 -04:00
Jack Humbert
43a4ffc259 bootmagic somehow not getting enabled, so adding eeconfig to backlight src include cond 2016-04-14 23:53:35 -04:00
IBNobody
66c1024bd3 fixed merging 2016-04-14 22:33:18 -05:00
Jack Humbert
63462bf8c1 changing up the makefile a bit 2016-04-14 20:42:14 -04:00
IBNobody
f051496f13 Checkin 2016-04-14 18:01:29 -05:00
IBNobody
e0ddbba1ef Merge remote-tracking branch 'refs/remotes/jackhumbert/master' 2016-04-13 21:30:04 -05:00
IBNobody
3755ef5ddb Compiler Warnings / Atomic TLC
Corrected compiler warnings for a number of issues.  Gave Atomic some
TLC.
2016-04-13 20:57:51 -05:00
Wojciech Siewierski
02a3d77940 Optimize source_layers_cache for the cache memory
Swapping the array indices should increase the locality of the memory access.
2016-04-13 22:24:42 +02:00
Erez Zukerman
153a6fb0d3 Merge pull request #182 from Vifon/modifier-release-fix
Fix the layer-dependent modifiers handling
2016-04-06 22:47:31 +03:00
Didier Loiseau
08871e56f7 Fix issue #221: LGUI(KC_LSFT) does not work
on mod keys, register LGUI, LSFT etc. as normal mods
 instead of weak mods:
 - they won't be cleared when pressing another key (#188)
 - they won't be cleared by layer switching
 - LSFT(KC_LGUI) will now have the same behavior as LGUI(KC_LSFT)
2016-04-06 00:30:50 +02:00
Wojciech Siewierski
567f256c5d Refactor the source layer cache encoding 2016-04-05 11:08:04 +02:00
Wojciech Siewierski
47dd29513e Merge branch 'master' of https://github.com/jackhumbert/qmk_firmware into modifier-release-fix 2016-04-03 11:23:00 +02:00
Wojciech Siewierski
4dce7258d1 Cleanup after merge
- remove a superfluous parenthesis
- wrap lines longer than 80 characters
- add const specifiers where appropriate
- remove unnecessary casts
2016-04-02 19:29:01 +02:00
eltang
5a9091689c Update action.c 2016-04-02 10:00:31 -07:00
eltang
6c8e374d57 Update action.c 2016-04-02 09:59:53 -07:00
eltang
f4f592910c Update action.c 2016-04-02 09:34:01 -07:00
eltang
da101b8866 Update action.c 2016-04-02 09:29:32 -07:00
eltang
fddccc95fe Update action.c 2016-04-02 09:13:13 -07:00
eltang
680301e3e3 Update action.c 2016-04-02 06:48:44 -07:00
Eric-L-T
f5365d1c1c Update action.c 2016-04-01 20:04:13 -07:00
Eric-L-T
307f1dee21 Update action.c 2016-04-01 19:54:02 -07:00
Eric-L-T
420fc8620b Update action.c 2016-04-01 18:26:43 -07:00
Eric-L-T
9a35f01c55 Update action.c 2016-04-01 13:49:03 -07:00
Eric-L-T
cd8dd1b6d6 Update action.h 2016-04-01 13:45:01 -07:00
Eric-L-T
317455178d Update action.c 2016-04-01 13:43:49 -07:00
Jack Humbert
8bbc1dcf4f Merge pull request #219 from IBNobody/master
Master
2016-03-28 23:17:16 -04:00
IBNobody
1d13aa933b Minor Tweaks and Documentation
Fixed compiler warning by including bootloader.h in keymap_common.c.

Changed FORCE_NKRO to only be applied if NKRO_ENABLE is defined.

Added extra documentation to the template config.h
2016-03-28 19:45:20 -05:00
IBNobody
a70f439672 Added command to turn LED indicators off while sleeping 2016-03-28 16:21:09 -05:00
Jack Humbert
fd9e5d1510 Merge pull request #214 from cdlm/action-hook
Add per-event user hook function
2016-03-28 11:55:19 -04:00
Damien Pollet
acd64aa841 Rename function to be keyboard-specific 2016-03-28 16:30:00 +02:00
Damien Pollet
ef21a855e6 Add per-event user hook function to QMK 2016-03-28 16:30:00 +02:00
IBNobody
577971ab07 Magic Key Overrides / Keyboard Lock / Forced NKRO
Added Magic Key Overrides / Magic Key Cleanup / Added Keyboard Lock
option to template / Added forced NKRO option to template (disabled by
default)
2016-03-28 00:03:21 -05:00
Wojciech Siewierski
b4f442dfea Cut the memory consumption of PREVENT_STUCK_MODIFIERS in half 2016-03-27 23:51:46 +02:00
Erez Zukerman
80eefb09ac Merge pull request #188 from DidierLoiseau/issue-156
Fix #156: clear weak mods on every key press
2016-03-27 21:09:15 +03:00
IBNobody
10491ba21f Fixed LED Function Calls
Fixed LED indicator function calls to match how the matrix init function
calls are formatted.
2016-03-22 20:58:44 -05:00
IBNobody
ec62d9e85c Merge remote-tracking branch 'refs/remotes/jackhumbert/master'
# Conflicts:
#	quantum/template/template.c
#	quantum/template/template.h
2016-03-22 20:39:05 -05:00
IBNobody
eba9a7d74d Adding LED function pointers 2016-03-15 23:52:51 -05:00
Wojciech Siewierski
a5cdc3aab1 Expose the pressed_actions_cache global variable 2016-03-15 16:51:50 +01:00
Wojciech Siewierski
73cb87740b Always provide an implementation of process_action_nocache 2016-03-15 16:03:30 +01:00
Wojciech Siewierski
20dd9c0326 process_action may be called either with key cache or without it
If one wants to temporarily disable the key cache (for example because
it interferes with a macro), `disable_action_cache` must be set to
`true`. `process_action_nocache` is a simple wrapper doing just that for
a single call.
2016-03-13 00:18:20 +01:00
yoyoerx
641859df84 Addressed void* return warning in all keymaps 2016-03-10 11:28:34 -05:00
Didier Loiseau
b7a81f0419 Fix #156: clear weak mods on every key press
- new macro_mods bit field for mods applied by macros
- weak_mods now only used for ACT_{L,R}MODS (i.e. LSFT, RSFT, LCTL etc.)
- clear the _weak_ mods on every key *pressed* such that LSFT etc.
  can no more interfere with the next key
2016-03-08 23:14:15 +01:00
Wojciech Siewierski
8d55a12a95 Document the issue of stuck modifiers 2016-03-08 08:48:43 +01:00
Wojciech Siewierski
c2480884aa Fix the layer-dependent modifiers handling
Closes #181.
2016-03-05 14:42:17 +01:00
dragon788
34a8ad506c Added note about using avr_setup.sh
On most Linux distributions the avr_setup.sh script can be sourced ```. avr_setup.sh``` or under Bash ```source avr_setup.sh```. This will try and detect the appropriate package manager and install the required packages.
2016-02-07 17:16:28 -06:00
Peter Eichinger
78192791bc Merge branch 'master' into flicker-fix 2016-01-25 17:46:50 +01:00
Peter Eichinger
c5f90eb99b Remove led_off() it is not used 2016-01-24 11:13:11 +01:00
Jack Humbert
c753bfcc14 Merge branch 'master' of https://github.com/jackhumbert/tmk_keyboard into audio 2016-01-23 20:32:51 -05:00
Peter Eichinger
b2badef7d0 Backlight fix from reddit
https://www.reddit.com/r/olkb/comments/41ur41/crazy_flashing_when_my_computer_sleeps/
2016-01-22 17:37:22 +01:00
Jack Humbert
eb61700912 better integrations 2016-01-20 00:06:52 -05:00
Jack Humbert
0f867796de timer 3 2016-01-11 17:52:35 -05:00
Jack Humbert
29de37d5c0 pwm audio 2016-01-11 16:53:33 -05:00
dragon788
c760a273fb Added note about avr-libc also being required at least for arch 2015-12-30 23:22:29 -06:00
Erez Zukerman
f024a462cd Fixes rolling combos for mod-tap keys 2015-10-28 04:19:13 +02:00
Jack Humbert
547da78335 merging tmk 2015-10-27 12:42:30 -04:00
Jun Wako
5ce9bf8353 Merge commit 'fdc38ef3f92af7adeeb4de49550d8838c8a39b5c' 2015-09-24 12:29:11 +09:00
Jun Wako
77afc5a76f core: Fix NKRO ifdef 2015-09-24 01:35:10 +09:00
tmk
ed9766a7d4 core: Fix for disabling NKRO in Boot protocol 2015-09-20 14:34:13 +09:00
tmk
e8a4a63ec4 core: Fix message print of debug command 2015-09-20 10:51:30 +09:00
tmk
bf3d4b3c06 lufa: Fix endpoint bank mode for ATMega32u2 2015-09-20 10:48:47 +09:00
tmk
9b99f8f864 next_usb: Fix next_kbd_set_leds() 2015-09-20 10:33:25 +09:00
tmk
498654fc4c Change to KC_BOOTLOADER(KC_BTLD) 2015-09-16 13:01:06 +09:00
skullY
bb8c1d29fa Add an assignable RESET key 2015-09-16 12:35:21 +09:00
tmk
a8d4daa761 Fix parenthesis 2015-09-12 11:26:37 +09:00
tmk
0c21b263f9 Fix weak modifier clear in action macro 2015-09-12 11:25:41 +09:00
tmk
35203cad6a core: Fix lufa suspend callback(#234)
With matrix_power_down() in suspend event HHKB JP doesn't start up for some reason.
It is unneeded in actual and removed.
2015-07-23 12:05:51 +09:00
tmk
1efdd867c8 usb_usb: Ignore error usage(0x01-03) report 2015-07-15 16:02:20 +09:00
tmk
6f5e8ce17e usb_usb: Support locking key indicator LED 2015-07-15 15:13:15 +09:00
tmk
8746ad98cc core: Add keymap section ldscript for ATMega32U2 2015-07-12 05:44:10 +09:00
tmk
070a6be638 Add description for non-US keys on keycode.h 2015-06-26 08:34:10 +09:00
tmk
fdce0c9cc0 lufa: Fix console flush #223
Old console sent unneeded empty data every one milli sencond.
After this fix console flushes endpoint data bank every 50ms only when needed.
2015-05-22 18:11:42 +09:00
tmk
5b46031658 Revert "Make action_for_key a weak symbol"
This reverts commit c17b8a599e.

The commit made compile error and its intention is unclear.
2015-05-21 20:30:10 +09:00
Dan McGregor
c17b8a599e Make action_for_key a weak symbol 2015-05-19 11:29:28 -07:00
tmk
80fd3b0b24 ibm4704_usb: Fix protocol handling 2015-05-19 00:39:44 +09:00
tmk
6b588eb7f7 Add keyboard_setup() and matrix_setup() 2015-05-19 00:39:43 +09:00
tmk
9a2282157f ibm4704_usb: Fix interrupt of clock(rising edge) 2015-05-19 00:39:43 +09:00
tmk
b8fba54a20 usb_usb: Change debug LED pin config 2015-05-13 15:59:49 +09:00
tmk
67137a908a Reduce code size of magic commands 2015-05-13 15:29:30 +09:00
tmk
192024124b Add description of AVR bootloader and boot section 2015-05-13 15:01:49 +09:00
tmk
f1f2066657 Merge commit 'f6d56675f9f981c5464f0ca7a1fbb0162154e8c5' 2015-05-13 11:13:10 +09:00
Jun Wako
1c73e574f1 Add compile options '-fdata-sections' 2015-05-10 10:01:16 +09:00
tmk
d9fee5571d Merge commit '4d116a04e94cf0d19317d5b44e4fa9f34a3e5594' 2015-04-28 11:27:10 +09:00
Jun Wako
a3d96d3aa9 Merge commit '1fe4406f374291ab2e86e95a97341fd9c475fcb8' 2015-04-24 16:26:14 +09:00
Jun Wako
1f4a22ee81 Remove unneeded tap delays #201 2015-04-23 20:18:01 +09:00
Jun Wako
3f32b22478 Fix URL of HID Usage Tables pdf 2015-04-23 17:30:45 +09:00
Jun Wako
f9045bea6e Fix typo of doc/keycode.txt 2015-04-23 17:20:59 +09:00
Jun Wako
7c3f14b7bb Fix handling of consumer usage #199 2015-04-23 17:02:28 +09:00
Michael Tharp
b52e29582a Improve anti-ghosting behavior for fast typing
Keypresses would be forgotten if they began while ghosting, even if they
were still pressed after ghosting ended.
2015-04-23 16:32:38 +09:00
Jun Wako
bd24de44b7 Fix dfu-programmer parameters 2015-04-23 16:07:24 +09:00
Jun Wako
e98b800723 Move ring_buffer.h file 2015-04-22 14:35:20 +09:00
tmk
d5482f29f4 Fix debug print 2015-04-22 14:18:13 +09:00
tmk
d42aa47809 Fix ibm4704 protocol with using interrupt 2015-04-22 14:18:13 +09:00
Jun Wako
79cfa894af Merge commit 'a20ef7052c6e937d2f7672dd59456e55a5c08296' into master_ng 2015-04-22 13:29:13 +09:00
tmk
1a02ebcc61 Merge commit 'a074364c3731d66b56d988c8a6c960a83ea0e0a1' as 'tmk_core' 2015-04-10 01:32:04 +09:00