Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 22 additions & 0 deletions hackpads/hackpadtrollface/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
# TrollPad
### 4 key macropad with trollface extruded design.
Made using KiCad and Fusion

### Images
Overall case:
![alt text](image-1.png)

Schematic:
![alt text](image.png)

PCB:
![alt text](image-2.png)

# BOM
- 4 Cherry MX style switches
- 4 MX-stem keycaps
- 2 SK6812 MINI Leds
- 1 XIAO RP2040 DIM
- 4 M3x16 Bolt and Heatset OR some tape :D
- KMK Firmware (provided)
- top and bottom case (provided)
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file added hackpads/hackpadtrollface/cad/backup/top case.stl
Binary file not shown.
Binary file not shown.
38 changes: 38 additions & 0 deletions hackpads/hackpadtrollface/firmware/main.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
# You import all the IOs of your board
import board

# These are imports from the kmk library
from kmk.kmk_keyboard import KMKKeyboard
from kmk.scanners.keypad import KeysScanner
from kmk.keys import KC
from kmk.modules.macros import Press, Release, Tap, Macros

# This is the main instance of your keyboard
keyboard = KMKKeyboard()

# Add the macro extension
macros = Macros()
keyboard.modules.append(macros)

# Define your pins here!
PINS = [board.D3, board.D4, board.D2, board.D1]

# Tell kmk we are not using a key matrix
keyboard.matrix = KeysScanner(
pins=PINS,
value_when_pressed=False,
)

# Here you define the buttons corresponding to the pins
# Look here for keycodes: https://github.com/KMKfw/kmk_firmware/blob/main/docs/en/keycodes.md
# And here for macros: https://github.com/KMKfw/kmk_firmware/blob/main/docs/en/macros.md
keyboard.keymap = [
[KC.COPY,
KC.CUT,
KC.PASTE,
KC.Macro('❤️‍☀️‍💚'),]
]

# Start kmk!
if __name__ == '__main__':
keyboard.go()
Binary file added hackpads/hackpadtrollface/image-1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added hackpads/hackpadtrollface/image-2.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added hackpads/hackpadtrollface/image.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1 change: 1 addition & 0 deletions hackpads/hackpadtrollface/pcb/fp-info-cache
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
0
Binary file not shown.
Loading