Add Chew keyboard (#23628)

This commit is contained in:
Florent Linguenheld 2024-04-30 03:40:01 +02:00 committed by GitHub
parent fd32861c9f
commit cc35aaadbf
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
5 changed files with 161 additions and 0 deletions

11
keyboards/chew/config.h Normal file
View file

@ -0,0 +1,11 @@
// Copyright 2024 Florent (@FLinguenheld)
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
/* Flash */
#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET // Activates the double-tap behavior
#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 200U // In ms in which the double tap can occur
#define EE_HANDS
#define SERIAL_USART_TX_PIN GP11

84
keyboards/chew/info.json Normal file
View file

@ -0,0 +1,84 @@
{
"manufacturer": "florent@linguenheld.fr",
"keyboard_name": "chew",
"maintainer": "florent@linguenheld.fr",
"bootloader": "rp2040",
"features": {
"bootmagic": true,
"command": false,
"console": false,
"extrakey": true,
"mousekey": true,
"nkro": true
},
"matrix_pins": {
"direct": [
["GP4", "GP3", "GP2", "GP1", "GP0"],
["GP15", "GP26", "GP27", "GP28", "GP29"],
["GP14", "GP13", "GP9", "GP8", "NO_PIN"],
["GP7", "GP6", "GP5", "NO_PIN", "NO_PIN"]
]
},
"processor": "RP2040",
"split": {
"enabled": true,
"matrix_pins": {
"right": {
"direct": [
["GP0", "GP1", "GP2", "GP3", "GP4"],
["GP29", "GP28", "GP27", "GP26", "GP15"],
["GP8", "GP9", "GP13", "GP14", "NO_PIN"],
["GP5", "GP6", "GP7", "NO_PIN", "NO_PIN"]
]
}
},
"transport": {
"watchdog": true
}
},
"usb": {
"device_version": "1.0.0",
"pid": "0x0000",
"vid": "0xFEED"
},
"layouts": {
"LAYOUT": {
"layout": [
{"matrix": [0, 0], "x": 0, "y": 0.25},
{"matrix": [0, 1], "x": 1, "y": 0.125},
{"matrix": [0, 2], "x": 2, "y": 0},
{"matrix": [0, 3], "x": 3, "y": 0.125},
{"matrix": [0, 4], "x": 4, "y": 0.25},
{"matrix": [4, 0], "x": 7, "y": 0.25},
{"matrix": [4, 1], "x": 8, "y": 0.125},
{"matrix": [4, 2], "x": 9, "y": 0},
{"matrix": [4, 3], "x": 10, "y": 0.125},
{"matrix": [4, 4], "x": 11, "y": 0.25},
{"matrix": [1, 0], "x": 0, "y": 1.25},
{"matrix": [1, 1], "x": 1, "y": 1.125},
{"matrix": [1, 2], "x": 2, "y": 1},
{"matrix": [1, 3], "x": 3, "y": 1.125},
{"matrix": [1, 4], "x": 4, "y": 1.25},
{"matrix": [5, 0], "x": 7, "y": 1.25},
{"matrix": [5, 1], "x": 8, "y": 1.125},
{"matrix": [5, 2], "x": 9, "y": 1},
{"matrix": [5, 3], "x": 10, "y": 1.125},
{"matrix": [5, 4], "x": 11, "y": 1.25},
{"matrix": [2, 0], "x": 0, "y": 2.25},
{"matrix": [2, 1], "x": 1, "y": 2.125},
{"matrix": [2, 2], "x": 2, "y": 2},
{"matrix": [2, 3], "x": 3, "y": 2.125},
{"matrix": [6, 0], "x": 8, "y": 2.125},
{"matrix": [6, 1], "x": 9, "y": 2},
{"matrix": [6, 2], "x": 10, "y": 2.125},
{"matrix": [6, 3], "x": 11, "y": 2.25},
{"matrix": [3, 0], "x": 2.5, "y": 3.25},
{"matrix": [3, 1], "x": 3.5, "y": 3.5},
{"matrix": [3, 2], "x": 4.5, "y": 3.75},
{"matrix": [7, 0], "x": 6.5, "y": 3.75},
{"matrix": [7, 1], "x": 7.5, "y": 3.5},
{"matrix": [7, 2], "x": 8.5, "y": 3.25}
]
}
}
}

View file

@ -0,0 +1,27 @@
// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
#include QMK_KEYBOARD_H
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/*
*
* Q W E R T Y U I O P
*
* A S D F G H J K L ;
*
* Z X C V M , . /
*
*
* B N
* Bsp Ent
* Alt
*
*/
[0] = LAYOUT(
KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P,
KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN,
KC_Z, KC_X, KC_C, KC_V, KC_M, KC_COMM, KC_DOT, KC_SLSH,
KC_B, KC_BSPC, KC_RALT, KC_SPC, KC_ENT, KC_N
)
};

38
keyboards/chew/readme.md Normal file
View file

@ -0,0 +1,38 @@
## Chew
![Chew front photo](https://live.staticflickr.com/65535/53681212617_90e4eebaf9_o.jpg)
![Chew front photo](https://live.staticflickr.com/65535/53682442119_1fcea26fef_o.jpg)
A humble 34 key choc-spaced keyboard.
- Keyboard Maintainer: [Florent Linguenheld](https://github.com/flinguenheld/)
- Visit the repository to get the last release: [Chew](https://github.com/flinguenheld/chew)
- Read the wiki to have some help or information: [Chew wiki](https://github.com/flinguenheld/chew/wiki)
![squirrel](https://github.com/flinguenheld/chew/blob/main/images/squirrel_brown.png?raw=true)
### Requirements
- 2x PCB
- 2x MCU board [RP2040-Zero](https://www.waveshare.com/wiki/RP2040-Zero)
- 2x TRRS jack
- 34 switches Choc V1 **only**
- 34 keycaps Choc V1
Optional:
- 23 [Mill Max sockets](https://splitkb.com/collections/keyboard-parts/products/mill-max-low-profile-sockets)
- 34 [kailh hotswap sockets](https://cdn.shopify.com/s/files/1/0588/1108/9090/files/5118-Choc-Socket.pdf?v=1686715063)
- 2x Back PCB + screws and bolts
- 2x [Tenting pucks](https://splitkb.com/collections/keyboard-parts/products/tenting-puck)
- 2x [Tripods](https://www.manfrotto.com/us-en/pocket-support-large-black-mp3-bk/)
### Bootloader
The controller has two buttons, so you can enter the bootloader in 2 ways:
- Maintain the **boot** button and plug the usb cable in.
- Press twice the **reset** button.
![hazelnuts](https://github.com/flinguenheld/chew/blob/main/images/hazelnuts.png?raw=true)
![Chew back photo](https://live.staticflickr.com/65535/53682442124_677ffa6cb5_o.jpg)

1
keyboards/chew/rules.mk Normal file
View file

@ -0,0 +1 @@
SERIAL_DRIVER = vendor