Commit graph

25 commits

Author SHA1 Message Date
James Laird-Wah
39bd760faf Use a single endpoint for HID reports (#3951)
* Unify multiple HID interfaces into one

This reduces the number of USB endpoints required, which frees them up
for other things.

NKRO and EXTRAKEY always use the shared endpoint.

By default, MOUSEKEY also uses it. This means it won't work as a Boot
Procotol mouse in some BIOSes, etc. If you really think your
keyboard needs to work as a mouse in your BIOS, set
MOUSE_SHARED_EP = no in your rules.mk.

By default, the core keyboard does not use the shared endpoint, as not
all BIOSes are standards compliant and that's one place you don't want
to find out your keyboard doesn't work.. If you are really confident,
you can set KEYBOARD_SHARED_EP = yes to use the shared endpoint here
too.

* unify endpoints: ChibiOS protocol implementation

* fixup: missing #ifdef EXTRAKEY_ENABLEs

broke build on AVR with EXTRAKEY disabled

* endpoints: restore error when too many endpoints required

* lufa: wait up to 10ms to send keyboard input

This avoids packets being dropped when two reports are sent in quick
succession (eg. releasing a dual role key).

* endpoints: fix compile on ARM_ATSAM

* endpoint: ARM_ATSAM fixes

No longer use wrong or unexpected endpoint IDs

* endpoints: accommodate VUSB protocol

V-USB has its own, understandably simple ideas about the report formats.
It already blasts the mouse and extrakeys through one endpoint with
report IDs. We just stay out of its way.

* endpoints: document new endpoint configuration options

* endpoints: respect keyboard_report->mods in NKRO

The caller(s) of host_keyboard_send expect to be able to just drop
modifiers in the mods field and not worry about whether NKRO is in use.
This is a good thing. So we just shift it over if needs be.

* endpoints: report.c: update for new keyboard_report format
2018-11-15 22:22:05 -08:00
Drashna Jaelre
6729265625 Clarify the Mod Tap defines in documentation (#4352)
* Fix up Mod Tap settings keys

* Change link names

* permissive hold wordsmith

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

* ignore mod tap wordsmithing

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

* grammar fix

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

* wordsmithing

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

* word smithing

Co-Authored-By: drashna <drashna@live.com>
2018-11-06 00:35:16 -05:00
Drashna Jaelre
a7d05820a6 Add documentation for Combo feature 2018-10-10 21:36:58 -04:00
chipperdoodles
914d42acd0 Update Bluetooth docs (#4062)
* syncing upstream

* Bluetooth Doc update

More Description in bluetooth section, Addition to Config options rules.mk section.

* merge upstream

chibios

* lib/chibios checkout

* Additional EZ key Section

added back EZ-Key diy link, Cleaned up some errors
2018-10-07 11:23:41 -07:00
Joe Wasson
743449472e Make PREVENT_STUCK_MODIFIERS the default (#3107)
* Remove chording as it is not documented, not used, and needs work.

* Make Leader Key an optional feature.

* Switch from `PREVENT_STUCK_MODIFIERS` to `STRICT_LAYER_RELEASE`

* Remove `#define PREVENT_STUCK_MODIFIERS` from keymaps.
2018-09-17 13:48:02 -04:00
yiancar
73a3399d0e Add the ability to disable the USB startup check for Chibios
- Added support for NO_USB_STARTUP_CHECK. This allows the keyboard do function and not get stuck in a SUSPENDED state loop in case of no USB connection.
- Added support for WAIT_FOR_USB. In LUFA no keyboard has this flag enable therefor no keyboard waits for usb to be active.
- Added documentation for both configuration flags as they were missing.
2018-09-05 09:42:04 -04:00
skullydazed
09759c20ae Document FIRMWARE_FORMAT (#3631) 2018-08-11 23:02:06 -07:00
Drashna Jaelre
4df6b7ba19 Fix for the Split Common I2C code's SCL_CLOCK issue (#3474)
* Fix the SLC_CLOCK setting for the Split Common code

Make the SCL_CLOCK setting configurable per board, since some use different settings
And change the Iris  to use 100000L instead of 400000L

* Add SCL_CLOCK variable to documentation

* Change SCL_CLOCK default to 100000L
2018-07-25 08:26:10 -07:00
That-Canadian
0fab3bbde3 Lets split eh (#3120)
* Line ending stuff again

* Added Let's Split Eh? Files and updated #USE_IC2 checks to also include th EH revision (can only be used in I2C)

* Added personal keymap, updated some of the EH files

* Created new keyboard file for testing "lets_split_eh" will merge into lets_split once fully functional

* Added split code from lets_split, removed pro micro imports and LED code

THIS IS WORKING CODE, WITHOUT RGB AND BACKLIGHT

* Took back original Lets Slit files for the lets_split keyboard, working in the lets_split_eh folder for now

* Updated eh.c

* More rework of the I2C code, added global flags for split boards.

* Introduced RGB over I2C, having weird edge case issues at the moment though

* Fixed weird I2C edgecase with RGB, although still would like to track down route cause..

* Changed RGB keycodes (static ones) to activate on key-up instead of key-down to elimate weird ghosting issue over I2C

* Lots of changes, mainly externalized the Split keyboard code and added logic for only including when needed.

- Added makefile option "SPLIT_KEYBOARD" that when = yes will include the split keyboard files and custom matrix
- Split keyboard files placed into quantum/split_common/
- Added define option for config files "SPLIT_HAND_PIN" FOr using high/low pin to determine handedness, low = right hand, high = left hand
- Cleaned up split logic for RGB and Backlight so it is only exectuted / included when needed

* Updated documentation for the new makefile options and #defines specific to split keyboards

* Added a bit more info to docs, so people aren't confused

* Modifed Let's Split to use externalized code, also added left and right hand eeprom files to the split_common folder

* Removed some debugging from eh.c

* Small changes to keyboard configs. Also added a default keymap (just a copy of my that_canadian keymap).

* Added a README file to the Let's Split Eh?

* Changed it so RGB static updates are done on key-up ONLY for split boards rather than all boards. Also fixed leftover un-used variable in rgblight.c

* Updated default keymap and my keymap for Let's Split Eh? Updated the comments so it reflects RGB control, and removed audio functions.

* Fixed lets_split_eh not having a default version

* Removed "eh" references from lets_split folder for now

* Took lets_split folder from master to fix travis build errors, weird my local was overriding.

* Changed LAYOUT_ortho_4x12_kc -> LAYOUT_kc_ortho_4x12 to match bakingpy and others

* Removed rules.mk from my lets_split keymap, not needed

* Updated the config_options doc to better explain the usage of "#define SPLIT_HAND_PIN"
2018-07-16 22:25:02 -04:00
Drashna Jaelre
8ffeaec3aa Overhaul to keycode related docs
* Adds Audio Keycodes to both the feature page and master list
* Re-orders the keycode list, so it's alphabetical (mostly)
* Add additional (missing) sections to the keycode list
* Add and update links in the keycode page
* Add and reorder links in sidebar's keycode section
2018-07-15 13:40:18 -04:00
Nicolas Schodet
7fef5ca240 Add documentation for TAPPING_FORCE_HOLD (#2957) (#3320)
Also improve documentation for related settings.
2018-07-06 08:12:46 -07:00
Charles Pletcher
9b91789193 Add dilly/pletcher layout (#2880)
* Add pletcher keymap to dilly/keymaps

For the moment, this keymap just removes unneeded RGB keycodes, since
an iPad will cut the keyboard off if LEDs are turned on.

* Drop support for A_RSFT, add media and autoshift

* Lower USB_MAX_POWER_CONSUMPTION for dilly on iPad

* Document USB_MAX_POWER_CONSUMPTION

This config option is useful for limiting the requested power by, e.g.,
an iOS device. While the default value is 500, a much lower value--say,
50--can sufficiently power a small keyboard without LEDs.
2018-05-02 18:35:16 -07:00
Joe Wasson
5226e4c79b Correct documentation for PREVENT_STUCK_MODIFIERS 2018-04-19 01:52:34 -04:00
Michael L. Walker
22215a0e92 Added support for audio using pins C4, C5, B6, B7 2018-04-12 13:14:48 -04:00
Drashna Jaelre
07b90db897 Fixes and updates to docs (#2611)
* Fix advanced keycode headers

* Add caveat for OSM over Remote Desktop

* Hopefully add better anchors to docs

* Add Action code list reference

* Formatting of RGB Underglow doc

* Add brew update issue on macOS

* Revert formatting

* Revert RGB doc formatting

* Make Config Options doc's sections linkable
2018-03-25 16:44:17 -07:00
fauxpark
4764e77121 Clarify that we actually have max 16 total backlight levels 2018-01-12 12:52:35 -05:00
Balz Guenat
4931510ad3 backlight breathing overhaul (#2187)
* add breathing to bananasplit

* backlight breathing overhaul

* fix the backlight_tick thing.

* fix for vision_division backlight

* fix a few keymaps and probably break breathing for some weirdly set-up boards.

* remove BL_x keycodes because they made unreasonable assumptions

* some fixes for BL keycodes

* integer cie lightness scaling

* use cie lightness for non-breathing backlight and make breathing able to reach true max brightness
2018-01-01 17:47:51 -05:00
fauxpark
af37bb2f78 Fix some of the more obvious typos 2017-12-09 10:46:11 -05:00
fauxpark
7b0356d1d4 Convert all headings to Title Case 2017-12-09 10:46:11 -05:00
Jack Humbert
62eed0e4a3
Update config_options.md 2017-11-21 21:26:29 -05:00
Seebs
39d3d92364 Allow multiple process_record() calls per scan
This is particularly relevant for, e.g., the ergodox EZ and
other keyboards with slow scan rates. Without changing the API or
behavior of individual process_record() calls, we allow a
configuration flag to make multiple calls in a single scan.

This will probably have miniscule effects on non-steno users,
and it's not enabled by default for any keyboards. Added note
about it to ergodox README.

Signed-off-by: seebs <seebs@seebs.net>
2017-11-21 00:20:52 -05:00
tsankuanglee
04b9b62bdc RETRO_TAPPING (#1922)
* add RETRO_TAP: tap anyway, even after TAP_TERM, if no interruption

* consistent variable name

* add option doc

* change name for consistency

* make RETRO_TAPPING default to off
2017-10-31 11:15:22 -04:00
skullydazed
67cc5cebc0 Restructure the hardware and feature docs to make things easier to find (#1888)
* fix #1313 by documenting more config.h options

* Clean up and organize documentation
2017-10-24 20:34:28 -07:00
Jack Humbert
800ec55dfc Make arguments redo, subproject elimination (#1784)
* redo make args to use colons, better folder structuring system [skip ci]

* don't put spaces after statements - hard lessons in makefile development

* fix-up some other rules.mk

* give travis a chance

* reset KEYMAPS variable

* start converting keyboards to new system

* try making all with travis

* redo make args to use colons, better folder structuring system [skip ci]

* don't put spaces after statements - hard lessons in makefile development

* fix-up some other rules.mk

* give travis a chance

* reset KEYMAPS variable

* start converting keyboards to new system

* try making all with travis

* start to update readmes and keyboards

* look in keyboard directories for board.mk

* update visualizer rules

* fix up some other keyboards/keymaps

* fix arm board ld includes

* fix board rules

* fix up remaining keyboards

* reset layout variable

* reset keyboard_layouts

* fix remainging keymaps/boards

* update readmes, docs

* add note to makefile error

* update readmes

* remove planck keymap warnings

* update references and docs

* test out tarvis build stages

* don't use stages for now

* don't use stages for now
2017-10-14 11:32:19 -10:00
Jack Humbert
40d82906cb adds config options md 2017-06-28 21:20:23 -04:00