Age | Commit message (Collapse) | Author |
|
* Extensible split data sync capability through transactions.
- Split common transport has been split up between the transport layer
and data layer.
- Split "transactions" model used, with convergence between I2C and
serial data definitions.
- Slave matrix "generation count" is used to determine if the full slave
matrix needs to be retrieved.
- Encoders get the same "generation count" treatment.
- All other blocks of data are synchronised when a change is detected.
- All transmissions have a globally-configurable deadline before a
transmission is forced (`FORCED_SYNC_THROTTLE_MS`, default 100ms).
- Added atomicity for all core-synced data, preventing partial updates
- Added retries to AVR i2c_master's i2c_start, to minimise the number of
failed transactions when interrupts are disabled on the slave due to
atomicity checks.
- Some keyboards have had slight modifications made in order to ensure
that they still build due to firmware size restrictions.
* Fixup LED_MATRIX compile.
* Parameterise ERROR_DISCONNECT_COUNT.
|
|
|
|
* Add command example
* Remove c tag
Co-authored-by: filterpaper <filterpaper@localhost>
|
|
Co-authored-by: David Grundberg <david@quartz>
|
|
|
|
* Split transport mirror support
* Updated RGB Matrix to respond to electrical events instead of key events
* split matrix slave fix
|
|
* Add modifier state to the split transport
This adds modifier state to the i2c and serial transport for split
keyboards. The purpose of this is to allow e.g. displaying modifier
state on the slave side of a split keyboard on an oled. This adds one
byte to the data transferred between halves.
This also fixes a missing ifdef guard for BLACKLIGHT_ENABLE.
Break modifiers into real/weak/oneshot
Fix incorrect slave serial mod setting
Fix typo in serial weal mod setter
Fix build errors for the I2C code that I introduced
Code cleanup and formatting per project preferences
Correctly get oneshot mods
Fix missing braces
Remove unneeded ifdef guard
Make the added state transport optional
Add documentation for the new define to enable this feature
Fix stray grave mark
* Fix error introduced in conflict resolution
|
|
|
|
* Replace figures in feature_split_keyboard.md
* fig update
* Update docs/feature_split_keyboard.md
Co-authored-by: Ryan <fauxpark@gmail.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
|
|
Co-authored-by: Danny <nooges@users.noreply.github.com>
|
|
* Update ARM split keyboard docs
* Update docs/serial_driver.md
Co-authored-by: Nick Brassel <nick@tzarc.org>
Co-authored-by: Nick Brassel <nick@tzarc.org>
|
|
* Update SPLIT_USB_TIMEOUT -500ms
* Align keyboard level SPLIT_USB_TIMEOUT defaults
* Align keyboard level SPLIT_USB_TIMEOUT_POLL
* Review fixes
|
|
|
|
* Initial split refactor to allow usb master detection
* Add split USB detect docs
* Add SPLIT_USB_DETECT demo mode limitation
* fix rebase issues
* clang-format
|
|
* Initial stab at some fake dfu-util-split-left behaviour
* Apply suggestions from code review
Co-Authored-By: fauxpark <fauxpark@gmail.com>
* Clang format fixes
* Fake eeprom init for both left and right hand
|
|
(#6521)
* Add support for different encoder pinouts for split keyboard
* Update documentation for new encoder pinout feature
|
|
Adds support for different direct pin mappings on the halves of a split keyboard.
|
|
* [Docs] Add dedicated page for Split Keyboard information
* Apply suggestions from code review
Co-Authored-By: drashna <drashna@live.com>
* Fix Typos
Co-Authored-By: drashna <drashna@live.com>
* Fix some formatting issues
* Add Additional RGB info
* Fix Bulletted formatting
* Apply suggestions from code review
Co-Authored-By: drashna <drashna@live.com>
* Fix line wrapping
* Additional fixes and expansion
* Reword warning/note
Co-Authored-By: drashna <drashna@live.com>
* add i2c/serial coexistance info
* i2c markdown
* Change i2c wiring text
Co-Authored-By: drashna <drashna@live.com>
|