diff --git a/keyboards/lotus/config.h b/keyboards/lotus/config.h index 6777c964ef..8a70e7bb0a 100644 --- a/keyboards/lotus/config.h +++ b/keyboards/lotus/config.h @@ -9,10 +9,10 @@ // Prints every second how many matrix scans were done (Frequency in Hz) #define DEBUG_MATRIX_SCAN_RATE -// Prototype for Lotus with Raspberry Pi Pico +// Prototype for Framework Laptop 16 with Raspberry Pi Pico // It'll disable column drive because we need to remap some pins to there // SDB is mapped to GP22 -//#define PICO_LOTUS +//#define PICO_FL16 // Enable serial number. Calls into lotus_serial_number_string* functions #define SERIAL_NUMBER diff --git a/keyboards/lotus/lotus.h b/keyboards/lotus/lotus.h index 213e68672e..22a551d8b3 100644 --- a/keyboards/lotus/lotus.h +++ b/keyboards/lotus/lotus.h @@ -26,7 +26,7 @@ enum lotus_keycodes { #define MUX_ENABLE_GPIO GP4 #define BOOT_DONE_GPIO GP5 // Pin SDB to enable the RGB controller -#ifdef PICO_LOTUS +#ifdef PICO_FL16 // 22 only on RPi Pico because it doesn't have GP29 #define IS31FL3743A_ENABLE_GPIO GP22 #else diff --git a/keyboards/lotus/matrix.c b/keyboards/lotus/matrix.c index f07eea96cc..38d517c61b 100644 --- a/keyboards/lotus/matrix.c +++ b/keyboards/lotus/matrix.c @@ -143,7 +143,7 @@ static bool interpret_adc_row(matrix_row_t cur_matrix[], adc10ksample_t voltage, // Don't update matrix on Pico to avoid messing with the debug system // Can't attach the matrix anyways -//#ifdef PICO_LOTUS +//#ifdef PICO_FL16 //(void)key_state; //return false; //#endif @@ -226,7 +226,7 @@ void drive_col(int col, bool high) { } // Don't drive columns on pico because we're using these GPIOs for other purposes -//#ifdef PICO_LOTUS +//#ifdef PICO_FL16 // (void)gpio; // return; //#endif @@ -330,7 +330,6 @@ static void adc_mux_init(void) { * Overriding behavior of matrix_init from quantum/matrix.c */ void matrix_init_custom(void) { - print("Initializing Lotus\n"); backlight_enable(); // To signal "live-ness" adc_mux_init(); diff --git a/keyboards/lotus/readme.md b/keyboards/lotus/readme.md index 55979e0458..1261a1f812 100644 --- a/keyboards/lotus/readme.md +++ b/keyboards/lotus/readme.md @@ -1,10 +1,23 @@ -# Lotus Keyboard +# Framework Laptop 16 Keyboard -Keyboard input module for Lotus. +Keyboard input modules for the Framework Laptop 16. * Keyboard Maintainer: [Daniel Schaefer](https://github.com/JohnAZoidberg) -* Hardware Supported: Framework Lotus Keyboard, Raspberry Pi Pico MCU. -* Hardware Availability: Use Raspberry Pi Pico for now +* Hardware Supported: Framework Laptop 16 Keyboard, Numpad and Gridpad +* Hardware Availability: Soon available at https://frame.work/marketplace + +## Variants + +There are 5 different hardware variants with different number of keys and +backlight options. + +| Name | Size | Backlight | Keys | +| ------- | -------- | ---------- | ---- | +| ansi | Keyboard | RGB/White | 78 | +| iso | Keyboard | White | 79 | +| jis | Keyboard | White | 83 | +| numpad | Numpad | White | 21 | +| gridpad | Numpad | RGB | 24 | Make example for this keyboard (after setting up your build environment): @@ -14,7 +27,7 @@ Make example for this keyboard (after setting up your build environment): qmk compile -kb lotus/numpad -km default qmk compile -kb lotus/gridpad -km default -Flashing example for this keyboard: +Flashing example for the ANSI keyboard: qmk compile -kb lotus/ansi -km default @@ -24,53 +37,8 @@ See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_to Enter the bootloader in 3 ways: +* **On Framework Laptop 16 Keyboard**: Hold down left ALT and right ALT while installing the module +* **On Framework Laptop 16 Numpad**: Hold down keys for 2 and 6 while installing the module * **On Raspberry Pi Pico**: Hold down bootsel button when plugging in * **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard -* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead -* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available - -## Features - -- Variant with per-key RGB and variant with 1-zone white backlight -- NKRO - -## TODO - -- [ ] Enable backlight with IS31FL3745 (see `docs/feature_rgb_matrix.md`) -- [ ] Split variants - - [ ] Keyboard with 1-zone backlight - - [x] ANSI (78 keys) - - [x] ISO (79 keys) - - [x] JIS (84 keys) - - [ ] Keyboard with per-key RGB - - [ ] Numpad with 1-zone backlight - - [ ] Numpad with per-key RGB - -# Notes - -- GPIO - - Keyboard Column driver pins - - GPIO8 (Column 0) - - GPIO9 (Column 1) - - GPIO10 (Column 2) - - GPIO11 (Column 3) - - GPIO12 (Column 4) - - GPIO13 (Column 5) - - GPIO14 (Column 6) - - GPIO15 (Column 7) - - GPIO16 (Column 13) - - GPIO17 (Column 12) - - GPIO18 (Column 11) - - GPIO19 (Column 10) - - GPIO20 (Column 9) - - GPIO21 (Column 8) - - GPIO22 (Column 15) - - GPIO23 (Column 14) - - SGM48751 - - GPIO1 - Analog Mux Control - - GPIO2 - Analog Mux Control - - GPIO3 - Analog Mux Control - - GPIO4 - Enable - - RGB Backlight - - GPIO26 - I2C SDA - - GPIO27 - I2C SCL +* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available \ No newline at end of file