2020-09-28 16:07:19 -07:00
|
|
|
import board
|
|
|
|
|
|
|
|
from kmk.kmk_keyboard import KMKKeyboard as _KMKKeyboard
|
2022-04-09 00:09:24 +00:00
|
|
|
from kmk.scanners import DiodeOrientation
|
|
|
|
from kmk.scanners import intify_coordinate as ic
|
2020-09-28 16:07:19 -07:00
|
|
|
|
2020-10-09 18:32:20 -07:00
|
|
|
|
2020-09-28 16:07:19 -07:00
|
|
|
class KMKKeyboard(_KMKKeyboard):
|
2020-10-09 18:32:20 -07:00
|
|
|
col_pins = (
|
2020-10-21 12:19:42 -07:00
|
|
|
board.P0_22,
|
|
|
|
board.P0_24,
|
|
|
|
board.P1_00,
|
|
|
|
board.P0_11,
|
|
|
|
board.P1_04,
|
|
|
|
board.P1_06,
|
|
|
|
)
|
|
|
|
row_pins = (
|
2020-10-09 18:32:20 -07:00
|
|
|
board.P0_31,
|
|
|
|
board.P0_29,
|
|
|
|
board.P0_02,
|
|
|
|
board.P1_15,
|
|
|
|
board.P1_13,
|
|
|
|
board.P1_11,
|
2020-10-21 12:19:42 -07:00
|
|
|
board.P0_10,
|
2020-10-09 18:32:20 -07:00
|
|
|
)
|
2020-09-28 16:07:19 -07:00
|
|
|
diode_orientation = DiodeOrientation.COLUMNS
|
|
|
|
rgb_pixel_pin = board.P0_06
|
2020-10-21 12:19:42 -07:00
|
|
|
rgb_num_pixels = 11
|
|
|
|
i2c = board.I2C
|
|
|
|
powersave_pin = board.P0_13
|
2020-09-28 16:07:19 -07:00
|
|
|
|
|
|
|
coord_mapping = []
|
2022-02-04 21:21:46 +00:00
|
|
|
coord_mapping.extend(ic(0, x, 12) for x in range(12))
|
|
|
|
coord_mapping.extend(ic(1, x, 12) for x in range(12))
|
|
|
|
coord_mapping.extend(ic(2, x, 12) for x in range(12))
|
2020-09-28 16:07:19 -07:00
|
|
|
|
2020-10-21 12:19:42 -07:00
|
|
|
# And now, to handle R3, which at this point is down to just five keys
|
2022-02-04 21:21:46 +00:00
|
|
|
coord_mapping.extend(ic(3, x, 12) for x in range(5))
|