* Don't make EEPROM size assumptions with dynamic keymaps.
* Add support for checking against emulated flash, error out if someone attempts to build a board without specifying EEPROM size.
* Reorder defines so that MCU is considered last.
* Refactor EEPROM definitions for simplicity.
* Fix max sizing of kabedon/kabedon980.
* Fix max sizing of mechlovin/olly/jf.
* Fix unit tests.
* Review comments, add messages with values during build failures.
* move layout macro alias to info.json
* info.json: fix layout macro reference
* info.json: fix layout data
Original layout data was generated with rotation, which breaks the rendering.
* info.json: remove layout macro alias
It's not used anywhere, so no need to keep it.
* rules.mk: enable Community Layout support
* move ISO Enter argument to home row
Moves the ISO Enter key's argument to the home row to conform to QMK's standard for traditionally-staggered boards.
* update info.json data
* fix keymap alignment
Both the `default` and `via` keymaps had misalignments on the top 3 layers, which was misleading as to which keycode was on which switch on those layers.
* fix layout macro reference in info.json
* friendly-format info.json, phase 1
Adds line breaks between keyboard rows.
* correct info.json key sequence
* bb.h: use XXX for KC_NO
* bb.h: add matrix diagram
* add LAYOUT_ansi_split_bs
Includes reference keymap.
* add LAYOUT_iso_split_bs
Includes reference keymap.
* info.json: remove meta key
Co-authored-by: Joel Challis <git@zvecr.com>
Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: Wolf Van Herreweghe <wolfvh@getupgamesofficial.com>
Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
Co-authored-by: Wolf Van Herreweghe <wolfvh@getupgamesofficial.com>
Co-authored-by: Joel Challis <git@zvecr.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
Co-authored-by: Wolf Van Herreweghe <wolfvh@getupgamesofficial.com>
* info.json: apply/polish friendly formatting
* refactor LAYOUT_all macro
- move the argument/keycode for the right half of split Backspace next to the left half
- update QMK Configurator layout data
* update QMK Configurator layout data for the other macros
Moves the EncoderClick objects up, and offsets the arrow keys down 0.25u.
* rename LAYOUT_all to LAYOUT_75_ansi_rwkl
The only supported layout is 75% ANSI, with two modifier keys on the right of the Spacebar instead of three.
* info.json: use maintainer's GitHub username
* info.json: apply friendly formatting
* ck65.h: use QMK 3-character notation
* move Enter keycode/argument to home row
This commit makes the `LAYOUT` macro conformant to `LAYOUT_65_iso` in QMK.
* rename LAYOUT to LAYOUT_65_iso
* use QMK-native KC_TRNS alias in keymaps
Replaces instances of `KC_TRNS` with `_______` in keymaps.
* info.json: update maintainer field
Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com>
Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
* Initial M75H support
* Remove BSLS key
* Add M75S initial support
* Define DYNAMIC_KEYMAP_EEPROM_MAX_ADDR to allow VIA
* Add layer 1 for M75H
* Add layer 1 for M75H
* Fix layouts
* Add BOOTLOADER and remove BOOTLOADER address from rules.mk
Co-authored-by: Ryan <fauxpark@gmail.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
* fixed ledmap: missing key, missing/wrong flags
* Update keyboards/kprepublic/bm65hsrgb_iso/bm65hsrgb_iso.c
Co-authored-by: Albert Y <76888457+filterpaper@users.noreply.github.com>
* corrected c&p error user name in GPL header
Co-authored-by: Albert Y <76888457+filterpaper@users.noreply.github.com>
* solder.h: add matrix diagram
* solder.h: remove unnecessary comments
* rework LAYOUT_60_iso to LAYOUT_60_isoenter_split_bs
True ISO layouts are not supported on this keyboard because the PCB lacks support for split Left Shift. Renames the `iso` to `isoenter` to specify this.
- denotes use of Split Backspace
- move Backslash keycode to home row
* info.json: remove trailing whitespace
* info.json: clean up
Sort the layout trees into the same order as `solder.h`, and remove the `LAYOUT_60_all` tree (doesn't exist in source).
* solder.h: align positional arguments
Helps me proof-read the layouts at a glance. No logic change.
* fix syntax errors in keymaps
* remove ISO layouts
As previously noted, ISO layouts are not supported due to the PCB's lack of support for split Left Shift.
* rename LAYOUT_60_ansi_tsangan_split_bs to LAYOUT_60_tsangan_hhkb
Also renames `60_tsangan_splt_bs` keymap to `60_tsangan_hhkb`.
* rename LAYOUT_60_ansi_tsangan to LAYOUT_60_ansi_tsangan_split_rshift
Also renames `60_tsangan` keymap to `60_ansi_tsangan_split_rshift`.
* rename LAYOUT_60_ansi_arrow_split_bs_7u_spc to LAYOUT_60_ansi_arrow_tsangan_split_bs
Also rename `60_ansi_arrow_splt_bs_7u` to `60_ansi_arrow_tsangan_split_bs`.
* rename LAYOUT_60_ansi_arrow_7u_spc to LAYOUT_60_ansi_arrow_tsangan
Also renames `60_ansi_arrow_7u` keymap to `60_ansi_arrow_tsangan`.
* rename keymaps based on layout macro used
Making this easier to track in my head while I work on it.
* info.json: fix syntax errors
* rename LAYOUT_60_ansi_split_bs_7u_spc to LAYOUT_60_ansi_tsangan_split_bs
- renames `60_ansi_split_bs_7u_spc` keymap to `60_ansi_tsangan_split_bs`
- removes `layout_aliases` entry from `info.json` (creates incompatible data conflict)
* rename LAYOUT_60_ansi_7u_spc to LAYOUT_60_ansi_tsangan
- renames `60_ansi_7u_spc` keymap to `60_ansi_tsangan`
* info.json: remove LAYOUT_60_ansi_tsangan layout_aliases entry
Causes an incompatible data conflict.
* add second layer to 60_ansi keymap
* update via keymap
Now matches the behaviour of the default keymap.
* fix syntax errors in keymaps, take 2
* add RGB and Navigation keycodes
Adds RGB and Navigation keycodes to the `60_isoenter_split_bs`, `default` and `via` keymaps.
* Add new keyboard keychron_q1_rev_0101 for Keychron.
* Update keymaps of keychron_q1_rev_0100 and keychron_q1_rev_0102.
* Update keyboards/keychron/q1/rev_0101/rev_0101.h
Co-authored-by: Joel Challis <git@zvecr.com>
* Update keymap.c
* Add new info.json.
* Update info.json
* Update keyboards/keychron/q1/rev_0101/keymaps/default/keymap.c
Co-authored-by: Drashna Jaelre <drashna@live.com>
* Update keyboards/keychron/q1/rev_0101/rev_0101.c
Co-authored-by: Drashna Jaelre <drashna@live.com>
* Update keyboards/keychron/q1/rev_0101/keymaps/via/keymap.c
Co-authored-by: Drashna Jaelre <drashna@live.com>
* Update keyboards/keychron/q1/rev_0101/rev_0101.c
Co-authored-by: Drashna Jaelre <drashna@live.com>
* Update keymap.c
* Update info.json
* Update all via keymaps keymaps of q1 series. KC_TASK and KC_FLXP are now defined using the VIA user keycodes range so they can be renamed "TASK" and "TILE" as a shortName in VIA.
* Add keyboards keychron_q2 series.
* Update default keymaps of keychron_q2 series.
* Update rules.mk and MCU_LDSCRIPT specified as STM32L432xB.
* Update keyboards/keychron/q1/rev_0101/rev_0101.c
Co-authored-by: Drashna Jaelre <drashna@live.com>
* Update config.h
* Update config.h
* Update config.h
* removed duplicated ifdef
* Update keyboards/keychron/q1/rev_0101/rules.mk
Co-authored-by: Ryan <fauxpark@gmail.com>
* Update keyboards/keychron/q2/rev_0110/rules.mk
Co-authored-by: Ryan <fauxpark@gmail.com>
* Update keyboards/keychron/q2/rev_0110/rules.mk
Co-authored-by: Ryan <fauxpark@gmail.com>
* Update keyboards/keychron/q2/rev_0113/rules.mk
Co-authored-by: Ryan <fauxpark@gmail.com>
* Update keyboards/keychron/q2/rev_0111/rules.mk
Co-authored-by: Ryan <fauxpark@gmail.com>
* Update keyboards/keychron/q2/rev_0111/rules.mk
Co-authored-by: Ryan <fauxpark@gmail.com>
* Update keyboards/keychron/q2/rev_0112/rules.mk
Co-authored-by: Ryan <fauxpark@gmail.com>
* Update keyboards/keychron/q2/rev_0112/rules.mk
Co-authored-by: Ryan <fauxpark@gmail.com>
* Update keyboards/keychron/q2/rev_0113/rules.mk
Co-authored-by: Ryan <fauxpark@gmail.com>
* Update rev_0101.c
* Update rev_0101.
* Enable support for edit RGB lighting in VIA.
The updated design file at https://git.io/JyE0K includes only the
enabled RGB_MATRIX modes.
* Update q1.
* Add rgb matrix support for q2 of keychron.
* Update rule.mk.
* Delete comment block which is unwanted.
Co-authored-by: Joel Challis <git@zvecr.com>
Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: Cesar Rojas <cesar.fieoner@gmail.com>
Co-authored-by: lokher <lokher@gmail.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
Co-authored-by: Adam Karim <adam@akarsoft.com>
* keyhive sofle rgb: fix configuration.
* Add Colemak-DH and cycle layer keycode.
* Fix indentation.
* Add PLACEHOLDER for better readability.
* Fix breaking changes.
* Just one colemak.
* PR Cleanup
* Use NO_PIN definition instead of C7
* Define animations individually
* Remove via json file and update documentation
* Reduce LED brightness, one of the animations caused a crash
* More PR feedback.
* Better credit.
* Disable NKRO.
* Cleanup RGB configuration.
* animations defined in keymap.
* Update keyboards/sofle/keyhive/readme.md
* PR Feedback.
* Update phrasing from template.
* Disable RGBLIGHT_ENABLE in keymap for better compatibility with default keymap.
* Set a default animation.
* Use default in keyboard readme.
* Update keyboards/sofle/keyhive/info.json
* Move via specific layout into via keymap.
* WIP: virgo keyboard
* Finish layout
* Enable debugging and format
* Debug keypresses
* Add function layer
* Fix whitespace
* Fix some more whitespace
* Add Jeremy's map
* Add left split ortho 2U board
* Enabled extrakeys for volume & media control
* More work on split ortho 2U...
...but still not complete
* Finish default layout
* Fix many issues by renaming the keyboard
* Add right half as a keyboard
* Update config for right side
* WIP: Add split ortho 2U board
* WIP: Correct rules & config
* More work on split ortho
* More work on split ortho 2u
* Nearing completion on split ortho
* Remove left and right separate keyboards.
Split ortho 2U is complete and they are not needed.
* Add uglydense keyboard
* Rename directory for uglydense
* Swap right Fn and right ctrl keys
* Add jeremy's layout
* Add ian layout
* Add reset key, which is very useful for flashing.
* Add Levi's layout
* Update Levi's layout
* Fix Levi's Layout
* Fix Levi's layout again
* Add a README with some basic information
* Add keymap customization info to uglydense readme
* Make the readme make a little more sense.
* Make John a layout with left fn and left super swapped
* Update John's layout
* Add Carl's layout
* Add Sean's layout
* Add reset keys to all layouts
* Swap LALT & LGUI on default layout
* shpurk keyboard: initial commit
* Add nathaniel & shpurk layouts
* Update instructions to include necesarry dependencies
* Add Lrrr keyboard, ruler of Omicron Persei 8
* Update README for Lrrr
* Update Lrrr it uses Caterina bootloader
Also B1 wasn't working for Row 6, so I changed that to F6
* Swap RCTL & RALT
* Un-swap RCTL and RALT, making RCTL closer to right thumb
* Add printscreen to my layout
* Rename lrrr to Launch, enbiggen L-Shift to 2U
* Add layout files for Launch
* Rename launch to launch_1
* Add levi layout for ortho_split_2u
* Update carl keymap
* Add launch testboard
* Implement keyboard keycode reading using raw hid
* Enable dynamic keymap
* Add config support to launch_1
* Implement probe command, make logical key names match configurator
* Update logical key names again
* Add layout generator for keyboard configurator
* Add board name and version
* Add board name and version to test board
* Fix issues with compiling board and version commands
* Rename uglydense to launch_alpha_1 and launch_1 to launch_alpha_2
* Generate layouts for other launch prototypes
* Fix launch_alpha_1 logical names
* Add launch_beta_1
* Fix building production hex file with atmel-dfu bootloader
* Limit backlight brightness
* USB mux handling
* Allow repeat start
* Do USB MUX init before bootmagic
* Fixes for mux init
* Fix register write size for programmable function control
* Ensure bit shifts are correct
* Improve documentation
* Fix when i2c read ack condition happens
* Fix extra start in i2c_set
* Add ISP instructions
* Add fuse information
* Refactor
* Add RGB matrix support
* Fix RGB matrix
* Update Jeremy layout
* Enable audio controls
* Update Jeremy layout
* Ensure that n-key rollover is used
* Port changes to other launch boards
* Configuration values for starting HSV and speed (#7740)
* Define default HSV and speed for RGB matrix.
* Documentation for configuration values RGB_MATRIX_STARTUP_HUE, RGB_MATRIX_STARTUP_SAT and RGB_MATRIX_STARTUP_VAL.
* Document RGB_MATRIX_STARTUP_SPD.
* Preserve the ordering.
* Set default RGB mode, hue, and saturation
* Reduce AVR clock to 8MHz
* Update launch_beta_1 with new USB ID
* Update default LED mode
* Set default hue
* Disable RGB while suspended
* Add led value and color commands
* Add max value to CMD_LED_GET_VALUE
* Do not save custom mode to eeprom
* Add reset to bootloader command for Launch keyboard
* Rename launch_beta_1 to launch_1
* Enable LTO when compiling for launch_1
* Allow setting individual LED's
* Convert tabs to spaces
* Unlock on RESET keypress:
- Display unlock pattern
- Disable LED get/set functions
- Enable reset to bootloader function
* Reduce brightness of rainbow backdrop in unlock pattern
* Add hid commands for setting led matrix mode
This changes the color setting to not change the mode, and set the hue
and saturation for QMK effects.
* Fix `CMD_LED_GET_MODE`
* Add Levi's Launch layout
* Fix layer mistake in Levi's Launch layout
* Add matrix command
* Define default RGB matrix speed
* Add active_keys effect
* Move definition of RGB modes inside ifdef testing for custom RGB modes
* RGB parameters per layer
* fix: Call `system76_ec_rgb_layer` after setting mode
* Include layer 3 and 4 in default layout for launch_1
I added support for layer 3 and 4 to the Configurator, but it seems to
load bogus values.
`dynamic_keymap_reset()` has a comment saying:
```
// Reset the keymaps in EEPROM to what is in flash.
// All keyboards using dynamic keymaps should define a layout
// for the same number of layers as DYNAMIC_KEYMAP_LAYER_COUNT
```
Other keyboards seem to have default layouts that only list the first
two layers while setting `DYNAMIC_KEYMAP_LAYER_COUNT` to 4, but
whatever. This appears to make the Configurator behave as expected with
layer 3 and 4.
* Use EEPROM to store RGB parameters
* Add layer 2 and 3 to other keymaps
* Add LED_SAVE command
* Use eeprom_update_block to improve performance
* Revert "Configuration values for starting HSV and speed (#7740)"
This reverts commit de1f60fd370b4769336b8a707ee12657aee46412.
* Update launch_1 rules.mk for changes in Qmk
* WIP keycodes matching EC behavior
* Modify default layout to match design
* Apply updates to jeremy layout
* Improvements to RGB keycodes
* system76_ec: Add mode to disable layer backlight
* launch_1: Use `KC_NO` instead of `KC_TRNS` for default layout
* Revert "launch_1: Use `KC_NO` instead of `KC_TRNS` for default layout"
This reverts commit f71c5e7ac3cecbbb1a1f8934db1f329407fef041.
* Fix building bootloader
* Workaround for upstream orientation
* Custom USB IDs for USB hubs, disable USB hub feature controller
* Set USB mux orientation in a loop for one second
* Set mux orientation 100 times with 10 ms delay
* Update Jeremy's keymap
* Update Levi's Launch keymap
* Update flashing instructions and rewrite layout design instructions
* Update README.md
* Add a system76_ec command to disable input events
For testing purposes.
* Enable system76/launch_1 keyboard to work with QMK Firmware 0.15.3
- Migrate system76/launch_1 from 0.7.103:
- Explicitly enable used RGB matrix effects
- Initialize flags field of `rgb_config_t` union/struct
- Account for header and source file location changes
- Update AVR platform makefile with Atmel DFU bootloader option
- Update ATmega32U4 bootloader to latest from Microchip
- Format C sources with ClangFormat
- Format Markdown text with Prettier
* Remove System76 pre-release or test keyboards and keymaps
* Add licensing and replace guards in headers for system76/launch_1
* Remove options impact for system76/launch_1
* Revert AVR platform changes for `atmel-dfu` bootloader
* Update system76/launch_1 README
* Add system76/launch_1 information JSON file
* Replace `util/delay.h` timing abstractions in system76/launch_1
* Use I2C QMK abstractions in system76/launch_1
* Fully revert AVR platform changes for `atmel-dfu` bootloader
* Move `layouts.sh` into `keyboards/system76`
* Implement GitHub PR suggestions for system76/launch_1
* Make additional system76/launch_1 updates
* Implement minor system76/launch_1 change requests
* Add custom version of Bootmagic Lite and document fuse values for system76/launch_1
* Remove the RESET HID command from system76/launch_1
* Reorder `process_record_user` in system76/launch_1
* Add `post_rules.mk` to system76/launch_1
* Fix overlapping key in sytem76/launch_1
Co-authored-by: Ryan <fauxpark@gmail.com>
Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com>
Co-authored-by: yiancar <yiancar@gmail.com>