qmk_firmware/keyboards/system76/launch_1
Nick Brassel 2b00b846dc
Non-volatile memory data repository pattern (#24356)
* First batch of eeconfig conversions.

* Offset and length for datablocks.

* `via`, `dynamic_keymap`.

* Fix filename.

* Commentary.

* wilba leds

* satisfaction75

* satisfaction75

* more keyboard whack-a-mole

* satisfaction75

* omnikeyish

* more whack-a-mole

* `generic_features.mk` to automatically pick up nvm repositories

* thievery

* deferred variable resolve

* whitespace

* convert api to structs/unions

* convert api to structs/unions

* convert api to structs/unions

* fixups

* code-side docs

* code size fix

* rollback

* nvm_xxxxx_erase

* Updated location of eeconfig magic numbers so non-EEPROM nvm drivers can use them too.

* Fixup build.

* Fixup compilation error with encoders.

* Build fixes.

* Add `via_ci` keymap to onekey to exercise VIA bindings (and thus dynamic keymap et.al.), fixup compilation errors based on preprocessor+sizeof.

* Build failure rectification.
2025-03-21 23:38:34 +11:00
..
keymaps/default Separate RGBLight/RGB Matrix keycode handling (#23679) 2024-10-12 18:43:50 +02:00
config.h Separate RGBLight/RGB Matrix keycode handling (#23679) 2024-10-12 18:43:50 +02:00
keyboard.json Migrate LOCKING_*_ENABLE to Data-Driven: S, Part 2 (#23784) 2024-05-23 20:34:56 +01:00
launch_1.c Non-volatile memory data repository pattern (#24356) 2025-03-21 23:38:34 +11:00
post_rules.mk
readme.md RESET -> QK_BOOT keyboard readme (#18110) 2022-08-20 11:34:17 +01:00
rgb_matrix_kb.inc Rename RGB/HSV structs: keyboard-level code (#24476) 2024-10-12 19:00:56 +01:00
rules.mk Migrate build target markers to keyboard.json - S (#23532) 2024-04-17 03:15:02 +01:00
usb_mux.c Update I2C API usage in keyboard code (#23360) 2024-03-27 12:41:53 +00:00
usb_mux.h

System76 Launch Configurable Keyboard (launch_1)

System76 Launch Configurable Keyboard

The Launch Configurable Keyboard is engineered to be comfortable, fully customizable, and make your workflow more efficient.

  • High-speed USB Hub
  • Works on Linux, Windows and macOS
  • 100% Open Source
  • Made in Colorado

Additional Launch Keyboard resources:

Building Firmware

To build the firmware using make (after setting up the build environment), e.g.:

make -r system76/launch_1:default

Equivalently, using the QMK CLI:

qmk compile -kb system76/launch_1 -km default

Flashing Firmware (DFU)

To build and flash the firmware on the keyboard, e.g.:

make -r system76/launch_1:default:flash

Equivalently, using the QMK CLI:

qmk flash -kb system76/launch_1 -km default

Flashing Firmware (ISP)

To flash the firmware (and/or bootloader) using ISP refer to the ISP Flashing Guide.

Factory fuse values => Low: 0x5E, High: 0x99, Extended: 0xF3, Lock Bits: 0xFF

Environment Setup

See the build environment setup and the make instructions for more information. If new to QMK, start with the Complete Newbs Guide.

Bootloader

Enter the bootloader in 3 ways:

  • Bootmagic reset: Hold down the key at (0,0) in the matrix (Escape) and plug in the keyboard.
  • Keycode in layout: Press the key mapped to QK_BOOT in the second layer (Escape).
  • Electrical reset: Briefly short AVR ISP's GND (6) and RST (5) pads on the back of the PCB.