Skip to content

Commit

Permalink
fl16: Further branding updates
Browse files Browse the repository at this point in the history
Signed-off-by: Daniel Schaefer <dhs@frame.work>
  • Loading branch information
JohnAZoidberg committed Mar 23, 2023
1 parent 36731a4 commit 666109f
Show file tree
Hide file tree
Showing 4 changed files with 26 additions and 59 deletions.
4 changes: 2 additions & 2 deletions keyboards/lotus/config.h
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
2 changes: 1 addition & 1 deletion keyboards/lotus/lotus.h
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
5 changes: 2 additions & 3 deletions keyboards/lotus/matrix.c
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down Expand Up @@ -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
Expand Down Expand Up @@ -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();
Expand Down
74 changes: 21 additions & 53 deletions keyboards/lotus/readme.md
Original file line number Diff line number Diff line change
@@ -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):

Expand All @@ -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

Expand All @@ -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

0 comments on commit 666109f

Please sign in to comment.