Skip to content

Commit

Permalink
Add Chew keyboard (#23628)
Browse files Browse the repository at this point in the history
  • Loading branch information
flinguenheld authored Apr 30, 2024
1 parent fd32861 commit cc35aaa
Show file tree
Hide file tree
Showing 5 changed files with 161 additions and 0 deletions.
11 changes: 11 additions & 0 deletions keyboards/chew/config.h
Original file line number Diff line number Diff line change
@@ -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 changes: 84 additions & 0 deletions keyboards/chew/info.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,84 @@
{
"manufacturer": "[email protected]",
"keyboard_name": "chew",
"maintainer": "[email protected]",
"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}
]
}
}
}
27 changes: 27 additions & 0 deletions keyboards/chew/keymaps/default/keymap.c
Original file line number Diff line number Diff line change
@@ -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 changes: 38 additions & 0 deletions keyboards/chew/readme.md
Original file line number Diff line number Diff line change
@@ -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 change: 1 addition & 0 deletions keyboards/chew/rules.mk
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
SERIAL_DRIVER = vendor

0 comments on commit cc35aaa

Please sign in to comment.