Skip to content

Commit 25ae4d5

Browse files
committed
2 parents 78a4532 + 570d2e9 commit 25ae4d5

18 files changed

+44147
-0
lines changed
1.45 MB
Binary file not shown.

hackpads/osu-keyboard/CAD/entire-case v2.step

+19,109
Large diffs are not rendered by default.
8.4 MB
Binary file not shown.

hackpads/osu-keyboard/README.md

+13
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
very simple osu keypad made by yours truly
2+
3+
![alt text](image.png)
4+
![alt text](image-1.png)
5+
![alt text](image-2.png)
6+
![alt text](entire-case_2025-Apr-12_07-51-38AM-000_CustomizedView19309613076.png)
7+
8+
BOM:
9+
3 keyswitches
10+
1x XIAO RP2040
11+
3x Cherry mx yellow switches
12+
4x M3x16 Bolt
13+
4x M3 Heatset
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
# You import all the IOs of your board
2+
import board
3+
4+
# These are imports from the kmk library
5+
from kmk.kmk_keyboard import KMKKeyboard
6+
from kmk.scanners.keypad import KeysScanner
7+
from kmk.keys import KC
8+
from kmk.modules.macros import Press, Release, Tap, Macros
9+
10+
# This is the main instance of your keyboard
11+
keyboard = KMKKeyboard()
12+
13+
14+
# Define your pins here!
15+
PINS = [board.D8, board.D9, board.D10, board.D5]
16+
17+
# Tell kmk we are not using a key matrix
18+
keyboard.matrix = KeysScanner(
19+
pins=PINS,
20+
value_when_pressed=False,
21+
)
22+
23+
# Here you define the buttons corresponding to the pins
24+
# Look here for keycodes: https://github.com/KMKfw/kmk_firmware/blob/main/docs/en/keycodes.md
25+
# And here for macros: https://github.com/KMKfw/kmk_firmware/blob/main/docs/en/macros.md
26+
keyboard.keymap = [
27+
[KC.A, KC.S, KC.D]
28+
]
29+
30+
# Start kmk!
31+
if __name__ == '__main__':
32+
keyboard.go()

hackpads/osu-keyboard/image-1.png

97 KB
Loading

hackpads/osu-keyboard/image-2.png

121 KB
Loading

hackpads/osu-keyboard/image.png

54.6 KB
Loading

0 commit comments

Comments
 (0)