convert pm based boards to quickpin

This commit is contained in:
Kyle Brown 2022-10-09 08:44:45 -07:00 committed by xs5871
parent 17f2961c0b
commit 9842035834
32 changed files with 369 additions and 277 deletions

View File

@ -11,3 +11,11 @@ Retailers (USA)
Extensions enabled by default
- [Layers](/docs/layers.md) Need more keys than switches? Use layers.
## Microcontroller support
Update this line in `kb.py` to any supported microcontroller in `kmk/quickpin/pro_micro`
```python
from kmk.quickpin.pro_micro.boardsource_blok import pinout as pins
```

View File

@ -3,9 +3,9 @@
![Boardsource4x12](https://boardsource.imgix.net/164c3388-5057-46c8-8fcd-82c58c7870ce.jpg?raw=true)
![Boardsource4x12LP](https://boardsource.imgix.net/c2108ea4-7d70-4327-b4b4-88c8191b1369.jpg?raw=true)
The 4x12 ortholinear keyboard is an extremely common and beloved layout within the keyboard community. Made popular by Jack's Planck from OLKB, the 4x12 ortholinear layout is possibly the most popular non-stagger layout available.
kb.py is designed to work with the nice!nano
The 4x12 ortholinear keyboard is an extremely common and beloved layout within
the keyboard community. Made popular by Jack's Planck from OLKB, the 4x12
ortholinear layout is possibly the most popular non-stagger layout available.
Retailers (USA)
4x12
@ -19,3 +19,10 @@ Extensions enabled by default
Common Extensions
- [Power](/docs/power.md) Powersaving features for battery life
## Microcontroller support
Update this line in `kb.py` to any supported microcontroller in `kmk/quickpin/pro_micro`
```python
from kmk.quickpin.pro_micro.boardsource_blok import pinout as pins

View File

@ -1,25 +1,25 @@
import board
from kmk.kmk_keyboard import KMKKeyboard as _KMKKeyboard
from kmk.quickpin.pro_micro.boardsource_blok import pinout as pins
from kmk.scanners import DiodeOrientation
class KMKKeyboard(_KMKKeyboard):
row_pins = (board.P0_08, board.P0_06, board.P0_17, board.P0_20)
row_pins = (board.pins[1], pins[0], board.pins[4], board.pins[5])
col_pins = (
board.P0_31,
board.P0_29,
board.P0_02,
board.P1_15,
board.P1_13,
board.P1_11,
board.P0_10,
board.P0_09,
board.P1_06,
board.P1_04,
board.P0_11,
board.P1_00,
board.pins[19],
board.pins[18],
board.pins[17],
board.pins[16],
board.pins[15],
board.pins[14],
board.pins[13],
board.pins[12],
board.pins[11],
board.pins[10],
board.pins[9],
board.pins[8],
)
diode_orientation = DiodeOrientation.COLUMNS
i2c = board.I2C
powersave_pin = board.P0_13

View File

@ -3,9 +3,12 @@
![Boardsource5x12](https://boardsource.imgix.net/74abb511-792e-42d9-9f6e-8100c521b2e0.jpg?raw=true)
![Boardsource5x12LP](https://boardsource.imgix.net/57ad3f69-3c88-4ae8-9592-6e4d2f45a58e.jpg?raw=true)
5x12 ortholinear -- for when just really don't want to give up your number row. The 5x12 ortholinear keyboard is a common ortholinear layout that many people prefer because it includes a number row. Made popular by Jack's Preonic from OLKB, the 5x12 ortholinear layout is a great option for those who want to try ortholinear but feel they aren't ready to make the jump to a 40%. The 5x12 Ortho is an approachable keyboard with hotswap compatibility.
kb.py is designed to work with the nice!nano
5x12 ortholinear -- for when just really don't want to give up your number row.
The 5x12 ortholinear keyboard is a common ortholinear layout that many people
prefer because it includes a number row. Made popular by Jack's Preonic from
OLKB, the 5x12 ortholinear layout is a great option for those who want to try
ortholinear but feel they aren't ready to make the jump to a 40%. The 5x12 Ortho
is an approachable keyboard with hotswap compatibility.
Retailers (USA)
5x12
@ -19,3 +22,10 @@ Extensions enabled by default
Common Extensions
- [Power](/docs/power.md) Powersaving features for battery life
## Microcontroller support
Update this line in `kb.py` to any supported microcontroller in `kmk/quickpin/pro_micro`
```python
from kmk.quickpin.pro_micro.boardsource_blok import pinout as pins

View File

@ -1,25 +1,25 @@
import board
from kmk.kmk_keyboard import KMKKeyboard as _KMKKeyboard
from kmk.quickpin.pro_micro.boardsource_blok import pinout as pins
from kmk.scanners import DiodeOrientation
class KMKKeyboard(_KMKKeyboard):
row_pins = (board.P0_08, board.P0_06, board.P0_17, board.P0_20, board.P0_22)
row_pins = (board.pins[1], pins[0], board.pins[4], board.pins[5], board.pins[6])
col_pins = (
board.P0_31,
board.P0_29,
board.P0_02,
board.P1_15,
board.P1_13,
board.P1_11,
board.P0_10,
board.P0_09,
board.P1_06,
board.P1_04,
board.P0_11,
board.P1_00,
board.pins[19],
board.pins[18],
board.pins[17],
board.pins[16],
board.pins[15],
board.pins[14],
board.pins[13],
board.pins[12],
board.pins[11],
board.pins[10],
board.pins[9],
board.pins[8],
)
diode_orientation = DiodeOrientation.COLUMNS
i2c = board.I2C
powersave_pin = board.P0_13

View File

@ -2,9 +2,9 @@
![microdox](https://boardsource.imgix.net/337ae65a-d061-46a4-b119-9916b043c58f.jpg?raw=true)
The Microdox is is a feature-packed 30% split columnar staggered keyboard. Even though the Microdox is an extremely small keyboard it offers tons of features from larger boards while maintaining a tiny footprint.
kb.py is designed to work with the nice!nano
The Microdox is is a feature-packed 30% split columnar staggered keyboard. Even
though the Microdox is an extremely small keyboard it offers tons of features
from larger boards while maintaining a tiny footprint.
Retailers (USA)
[Boardsource](https://boardsource.xyz/store/5f2e7e4a2902de7151494f92)
@ -17,3 +17,11 @@ Extensions enabled by default
Common Extensions
- [Split](/docs/split_keyboards.md) Connects halves using a wire
- [Power](/docs/power.md) Powersaving features for battery life
## Microcontroller support
Update this line in `kb.py` to any supported microcontroller in `kmk/quickpin/pro_micro`
```python
from kmk.quickpin.pro_micro.boardsource_blok import pinout as pins
```

View File

@ -1,21 +1,28 @@
import board
from kmk.kmk_keyboard import KMKKeyboard as _KMKKeyboard
from kmk.quickpin.pro_micro.boardsource_blok import pinout as pins
from kmk.scanners import DiodeOrientation
class KMKKeyboard(_KMKKeyboard):
col_pins = (board.P0_31, board.P0_29, board.P0_02, board.P1_15, board.P1_13)
row_pins = (board.P0_10, board.P0_09, board.P1_04, board.P1_06)
col_pins = (
board.pins[19],
board.pins[18],
board.pins[17],
board.pins[16],
board.pins[15],
)
row_pins = (board.pins[13], board.pins[12], board.pins[10], board.pins[11])
diode_orientation = DiodeOrientation.COLUMNS
data_pin = board.P0_08
rgb_pixel_pin = board.P0_06
data_pin = board.pins[1]
rgb_pixel_pin = pins[0]
rgb_num_pixels = 12
i2c = board.I2C
powersave_pin = board.P0_13
# NOQA
# flake8: noqa
# fmt: off
coord_mapping = [
0, 1, 2, 3, 4, 20, 21, 22, 23, 24,
5, 6, 7, 8, 9, 25, 26, 27, 28, 29,

View File

@ -6,8 +6,6 @@
A split keyboard with a 3x6 columnar stagger and 3 thumb keys.
kb.py is designed to work with the nice!nano
Hardware Availability: [PCB & Case Source](https://github.com/foostan/crkbd)
Retailers (USA)
@ -25,3 +23,11 @@ Extensions enabled by default
Common Extensions
- [Split](/docs/split_keyboards.md) Connects halves using a wire
- [Power](/docs/power.md) Powersaving features for battery life
## Microcontroller support
Update this line in `kb.py` to any supported microcontroller in `kmk/quickpin/pro_micro`
```python
from kmk.quickpin.pro_micro.boardsource_blok import pinout as pins
```

View File

@ -2,9 +2,15 @@
![ergo_travel](https://boardsource.imgix.net/fa53de62-fd37-4c75-8c5b-b4bec37927c1.jpg?raw=true)
As the name implies, the Ergo Travel was originally designed as a travel keyboard, but it works just as well on your desk as a main daily use keyboard. The Ergo Travel is a popular choice by many because it offers a few more keys than other keyboards in similar sizes, and that is why we chose to stock it. Additionally, the Ergo Travel has nice customization options in the thumb cluster because you can configure the main thumb key to use a single larger 2u key, or two smaller 1u keys depending on your preference. The clean and simple aesthetic of the Ergo Travel and the few extra keys make it an awesome option for people wanting a 40%-ish split keyboard.
kb.py is designed to work with the nice!nano
As the name implies, the Ergo Travel was originally designed as a travel
keyboard, but it works just as well on your desk as a main daily use keyboard.
The Ergo Travel is a popular choice by many because it offers a few more keys
than other keyboards in similar sizes, and that is why we chose to stock it.
Additionally, the Ergo Travel has nice customization options in the thumb
cluster because you can configure the main thumb key to use a single larger 2u
key, or two smaller 1u keys depending on your preference. The clean and simple
aesthetic of the Ergo Travel and the few extra keys make it an awesome option
for people wanting a 40%-ish split keyboard.
Hardware Availability: [PCB & Case Source](https://github.com/jpconstantineau/ErgoTravel/blob/master/OrderingInstructions.md)
@ -22,3 +28,12 @@ Extensions enabled by default
Common Extensions
- [Split](/docs/split_keyboards.md) Connects halves using a wire
- [Power](/docs/power.md) Powersaving features for battery life
## Microcontroller support
Update this line in `kb.py` to any supported microcontroller in `kmk/quickpin/pro_micro`
```python
from kmk.quickpin.pro_micro.boardsource_blok import pinout as pins
```

View File

@ -1,30 +1,31 @@
import board
from kmk.kmk_keyboard import KMKKeyboard as _KMKKeyboard
from kmk.quickpin.pro_micro.boardsource_blok import pinout as pins
from kmk.scanners import DiodeOrientation
class KMKKeyboard(_KMKKeyboard):
row_pins = (board.P0_24, board.P1_00, board.P0_11, board.P1_04)
row_pins = (pins[7], pins[8], pins[9], pins[10])
col_pins = (
board.P0_29,
board.P0_02,
board.P1_15,
board.P1_13,
board.P1_11,
board.P0_10,
board.P0_09,
pins[17],
pins[16],
pins[15],
pins[14],
pins[13],
pins[12],
pins[10],
)
diode_orientation = DiodeOrientation.COLUMNS
led_pin = board.P1_06
rgb_pixel_pin = board.P0_06
led_pin = pins[9]
rgb_pixel_pin = pins[0]
rgb_num_pixels = 12
data_pin = board.P0_08
data_pin = pins[1]
i2c = board.I2C
powersave_pin = board.P0_13
# NOQA
# flake8: noqa
# fmt: off
coord_mapping = [
0, 1, 2, 3, 4, 5, 6, 34, 33, 32, 31, 30, 29, 28,
7, 8, 9, 10, 11, 12, 13, 41, 40, 39, 38, 37, 36, 35,

View File

@ -4,8 +4,6 @@
A keyboard with only 30 keys.
kb.py is designed to work with the nice!nano
Hardware Availability: [Gherkin project on 40% Keyboards](http://www.40percent.club/2016/11/gherkin.html)
Extensions enabled by default
@ -15,3 +13,11 @@ Extensions enabled by default
Common Extensions
- [Power](/docs/power.md) Powersaving features for battery life
## Microcontroller support
Update this line in `kb.py` to any supported microcontroller in `kmk/quickpin/pro_micro`
```python
from kmk.quickpin.pro_micro.boardsource_blok import pinout as pins
```

View File

@ -1,21 +1,21 @@
import board
from kmk.kmk_keyboard import KMKKeyboard as _KMKKeyboard
from kmk.quickpin.pro_micro.boardsource_blok import pinout as pins
from kmk.scanners import DiodeOrientation
class KMKKeyboard(_KMKKeyboard):
row_pins = (board.P1_15, board.P1_13, board.P1_11, board.P0_10, board.P0_09)
row_pins = (pins[16], pins[15], pins[14], pins[13], pins[12])
col_pins = (
board.P1_04,
board.P0_11,
board.P1_00,
board.P0_24,
board.P0_22,
board.P0_20,
board.pins[10],
board.pins[9],
board.pins[8],
board.pins[7],
board.pins[6],
board.pins[5],
)
diode_orientation = DiodeOrientation.COLUMNS
led_pin = board.P1_06
led_pin = board.pins[11]
rgb_num_pixels = 0
i2c = board.I2C
powersave_pin = board.P0_13

View File

@ -4,9 +4,6 @@
Luddite 60% keyboard with backlight and RGB underglow.
kb.py is designed to work with the nice!nano
kb_converter.py is designed to work with an itsybitsy with converter board found [here](/hardware)
Hardware Availability: [Luddite project on 40% Keyboards](http://www.40percent.club/search/label/luddite)
Extensions enabled by default
@ -16,3 +13,11 @@ Extensions enabled by default
Common Extensions
- [Power](/docs/power.md) Powersaving features for battery life
## Microcontroller support
Update this line in `kb.py` to any supported microcontroller in `kmk/quickpin/pro_micro`
```python
from kmk.quickpin.pro_micro.boardsource_blok import pinout as pins
```

View File

@ -1,30 +0,0 @@
import board
from kmk.kmk_keyboard import KMKKeyboard as _KMKKeyboard
from kmk.scanners import DiodeOrientation
class KMKKeyboard(_KMKKeyboard):
col_pins = (
board.A0,
board.A1,
board.A2,
board.A3,
board.A4,
board.A5,
board.SCK,
board.MOSI,
)
row_pins = (
board.TX,
board.RX,
board.SDA,
board.SCL,
board.D13,
board.D12,
board.D11,
board.D10,
)
diode_orientation = DiodeOrientation.COLUMNS
rgb_pixel_pin = board.D9
rgb_num_pixels = 12

View File

@ -1,33 +1,33 @@
import board
from kmk.kmk_keyboard import KMKKeyboard as _KMKKeyboard
from kmk.quickpin.pro_micro.boardsource_blok import pinout as pins
from kmk.scanners import DiodeOrientation
class KMKKeyboard(_KMKKeyboard):
row_pins = (
board.P0_06,
board.P0_08,
board.P0_17,
board.P0_20,
board.P0_22,
board.P0_24,
board.P1_00,
board.P0_11,
pins[0],
board.pins[1],
board.pins[4],
board.pins[5],
board.pins[6],
board.pins[7],
board.pins[8],
board.pins[9],
)
col_pins = (
board.P0_31,
board.P0_29,
board.P0_02,
board.P1_15,
board.P1_13,
board.P1_11,
board.P0_10,
board.P0_09,
board.pins[19],
board.pins[18],
board.pins[17],
board.pins[16],
board.pins[15],
board.pins[14],
board.pins[13],
board.pins[12],
)
diode_orientation = DiodeOrientation.COLUMNS
led_pin = board.P1_06
rgb_pixel_pin = board.P1_04
led_pin = board.pins[11]
rgb_pixel_pin = board.pins[10]
rgb_num_pixels = 8
i2c = board.I2C
powersave_pin = board.P0_13

View File

@ -2,7 +2,6 @@
A split keyboard with a 4x6 layout with additional 4 thumb buttons
kb.py is designed to work with the nice!nano
kb_converter.py is designed to work with an itsybitsy with converter board found [here](/hardware)
Extensions enabled by default
@ -13,3 +12,10 @@ Extensions enabled by default
Common Extensions
- [Split](/docs/split_keyboards.md) Connects halves using a wire
- [Power](/docs/power.md) Powersaving features for battery life
## Microcontroller support
Update this line in `kb.py` to any supported microcontroller in `kmk/quickpin/pro_micro`
```python
from kmk.quickpin.pro_micro.boardsource_blok import pinout as pins

View File

@ -1,28 +1,35 @@
import board
from kmk.kmk_keyboard import KMKKeyboard as _KMKKeyboard
from kmk.quickpin.pro_micro.boardsource_blok import pinout as pins
from kmk.scanners import DiodeOrientation
class KMKKeyboard(_KMKKeyboard):
row_pins = (board.P1_00, board.P0_11, board.P1_04, board.P0_08, board.P0_22)
row_pins = (
board.pins[8],
board.pins[9],
board.pins[10],
board.pins[1],
board.pins[6],
)
col_pins = (
board.P0_02,
board.P1_15,
board.P1_13,
board.P1_11,
board.P0_10,
board.P0_09,
board.pins[17],
board.pins[16],
board.pins[15],
board.pins[14],
board.pins[13],
board.pins[12],
)
diode_orientation = DiodeOrientation.COLUMNS
led_pin = board.P1_06
rgb_pixel_pin = board.P0_06
led_pin = board.pins[11]
rgb_pixel_pin = pins[0]
rgb_num_pixels = 12
i2c = board.I2C
data_pin = board.P0_20
powersave_pin = board.P0_13
data_pin = board.pins[5]
# flake8: noqa
# fmt: off
coord_mapping = [
0, 1, 2, 3, 4, 5, 35, 34, 33, 32, 31, 30,
6, 7, 8, 9, 10, 11, 41, 40, 39, 38, 37, 36,

View File

@ -2,7 +2,6 @@
A split keyboard with a 4x6 layout
kb.py is designed to work with the nice!nano
kb_converter.py is designed to work with an itsybitsy with converter board found [here](/hardware)
Extensions enabled by default
@ -13,3 +12,11 @@ Extensions enabled by default
Common Extensions
- [Split](/docs/split_keyboards.md) Connects halves using a wire
- [Power](/docs/power.md) Powersaving features for battery life
## Microcontroller support
Update this line in `kb.py` to any supported microcontroller in `kmk/quickpin/pro_micro`
```python
from kmk.quickpin.pro_micro.boardsource_blok import pinout as pins
```

View File

@ -1,23 +1,24 @@
import board
from kmk.kmk_keyboard import KMKKeyboard as _KMKKeyboard
from kmk.quickpin.pro_micro.boardsource_blok import pinout as pins
from kmk.scanners import DiodeOrientation
class KMKKeyboard(_KMKKeyboard):
row_pins = (board.P0_22, board.P1_00, board.P0_11, board.P1_04)
row_pins = (board.pins[6], board.pins[8], board.pins[9], board.pins[10])
col_pins = (
board.P0_02,
board.P1_15,
board.P1_13,
board.P1_11,
board.P0_10,
board.P0_09,
board.pins[17],
board.pins[16],
board.pins[15],
board.pins[14],
board.pins[13],
board.pins[12],
)
diode_orientation = DiodeOrientation.COLUMNS
rgb_pixel_pin = board.P0_06
rgb_pixel_pin = pins[0]
rgb_num_pixels = 12
led_pin = board.P1_06
data_pin = board.P0_08
led_pin = board.pins[11]
data_pin = board.pins[1]
i2c = board.I2C
powersave_pin = board.P0_13

View File

@ -2,7 +2,6 @@
A split keyboard with a 5x6 layout
kb.py is designed to work with the nice!nano
kb_converter.py is designed to work with an itsybitsy with converter board found [here](/hardware)
@ -14,3 +13,10 @@ Extensions enabled by default
Common Extensions
- [Split](/docs/split_keyboards.md) Connects halves using a wire
- [Power](/docs/power.md) Powersaving features for battery life
## Microcontroller support
Update this line in `kb.py` to any supported microcontroller in `kmk/quickpin/pro_micro`
```python
from kmk.quickpin.pro_micro.boardsource_blok import pinout as pins

View File

@ -1,23 +1,29 @@
import board
from kmk.kmk_keyboard import KMKKeyboard as _KMKKeyboard
from kmk.quickpin.pro_micro.boardsource_blok import pinout as pins
from kmk.scanners import DiodeOrientation
class KMKKeyboard(_KMKKeyboard):
row_pins = (board.P0_22, board.P1_00, board.P0_11, board.P1_04, board.P1_06)
row_pins = (
board.pins[6],
board.pins[8],
board.pins[9],
board.pins[10],
board.pins[11],
)
col_pins = (
board.P0_08,
board.P0_29,
board.P0_02,
board.P1_15,
board.P1_13,
board.P1_11,
board.pins[1],
board.pins[18],
board.pins[17],
board.pins[16],
board.pins[15],
board.pins[14],
)
diode_orientation = DiodeOrientation.COLUMNS
rgb_pixel_pin = board.P0_06
rgb_pixel_pin = pins[0]
rgb_num_pixels = 12
data_pin = board.P0_08
led_pin = board.P0_09
data_pin = board.pins[1]
led_pin = board.pins[12]
i2c = board.I2C
powersave_pin = board.P0_13

View File

@ -1,46 +0,0 @@
import board
from kmk.kmk_keyboard import KMKKeyboard as _KMKKeyboard
from kmk.modules.layers import Layers
from kmk.scanners import DiodeOrientation
from kmk.scanners import intify_coordinate as ic
# Implements what used to be handled by KMKKeyboard.swap_indicies for this
# board, by flipping various row3 (bottom physical row) keys so their
# coord_mapping matches what the user pressed (even if the wiring
# underneath is sending different coordinates)
_r3_swap_conversions = {3: 9, 4: 10, 5: 11, 9: 3, 10: 4, 11: 5}
def r3_swap(col):
try:
return _r3_swap_conversions[col]
except KeyError:
return col
class KMKKeyboard(_KMKKeyboard):
# physical, visible cols (SCK, MO, MI, RX, TX, D4)
# physical, visible rows (10, 11, 12, 13) (9, 6, 5, SCL)
col_pins = (board.SCK, board.MOSI, board.MISO, board.RX, board.TX, board.D4)
row_pins = (
board.D10,
board.D11,
board.D12,
board.D13,
board.D9,
board.D6,
board.D5,
board.SCL,
)
rollover_cols_every_rows = 4
diode_orientation = DiodeOrientation.COLUMNS
coord_mapping = []
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))
coord_mapping.extend(ic(3, r3_swap(x), 12) for x in range(12))
layers_ext = Layers()
modules = [layers_ext]

View File

@ -2,10 +2,12 @@
![Lily58](https://boardsource.imgix.net/af3d8d6d-5fbe-4578-a2ba-d09d7686fb29.jpg?raw=true)
The Lily58 is a 58 key split keyboard design by kata0510, featuring a 6x4 columnar stagger and 4 thumb cluster keys on each hand. The Lily58 is a perfect choice for people who want to be on a split keyboard but still want to have a fairly standard amount of keys.
The Lily58 is a 58 key split keyboard design by kata0510, featuring a 6x4
columnar stagger and 4 thumb cluster keys on each hand. The Lily58 is a perfect
choice for people who want to be on a split keyboard but still want to have a
fairly standard amount of keys.
Hardware Availability: [PCB & Case Source](https://github.com/kata0510/Lily58)
kb.py is designed to work with the nice!nano
Retailers (USA)
[Boardsource](https://boardsource.xyz/store/5ec9df84c6b834480de6c3d0)
@ -18,3 +20,11 @@ Extensions enabled by default
Common Extensions
- [Split](/docs/split.md) Connects halves using a wire
- [Power](/docs/power.md) Powersaving features for battery life
## Microcontroller support
Update this line in `kb.py` to any supported microcontroller in `kmk/quickpin/pro_micro`
```python
from kmk.quickpin.pro_micro.boardsource_blok import pinout as pins
```

View File

@ -6,22 +6,28 @@ from kmk.scanners import DiodeOrientation
class KMKKeyboard(_KMKKeyboard):
col_pins = (
board.P0_02,
board.P1_15,
board.P1_13,
board.P1_11,
board.P0_10,
board.P0_09,
board.pins[17],
board.pins[16],
board.pins[15],
board.pins[14],
board.pins[13],
board.pins[12],
)
row_pins = (
board.pins[7],
board.pins[8],
board.pins[9],
board.pins[10],
board.pins[11],
)
row_pins = (board.P0_24, board.P1_00, board.P0_11, board.P1_04, board.P1_06)
diode_orientation = DiodeOrientation.COLUMNS
uart_pin = board.P0_08
rgb_pixel_pin = board.P0_06
data_pin = board.P0_08
uart_pin = board.pins[1]
rgb_pixel_pin = pins[0]
data_pin = board.pins[1]
i2c = board.I2C
powersave_pin = board.P0_13
# flake8: noqa
# fmt: off
coord_mapping = [
0, 1, 2, 3, 4, 5, 36, 35, 34, 33, 32, 31,
6, 7, 8, 9, 10, 11, 42, 41, 40, 39, 38, 37,

View File

@ -2,7 +2,10 @@
![Reviung39](https://boardsource.imgix.net/d6215164-6100-4b72-b355-1a67b7704463.jpg?raw=true)
Reviung39 is a 39 key keyboard designed by gtips. The Reviung39 sits somewhere between an Atreus and a Corne, you get some nice ergonomic benefits based on its quasi-split design and since a true split keyboard isn't for everyone, this is an awesome middle ground. I find this keyboard extremely comfortable to use.
Reviung39 is a 39 key keyboard designed by gtips. The Reviung39 sits somewhere
between an Atreus and a Corne, you get some nice ergonomic benefits based on its
quasi-split design and since a true split keyboard isn't for everyone, this is
an awesome middle ground. I find this keyboard extremely comfortable to use.
kb.py is designed to work with the nice!nano
@ -18,3 +21,11 @@ Extensions enabled by default
Common Extensions
- [Power](/docs/power.md) Powersaving features for battery life
## Microcontroller support
Update this line in `kb.py` to any supported microcontroller in `kmk/quickpin/pro_micro`
```python
from kmk.quickpin.pro_micro.boardsource_blok import pinout as pins
```

View File

@ -1,27 +1,27 @@
import board
from kmk.kmk_keyboard import KMKKeyboard as _KMKKeyboard
from kmk.quickpin.pro_micro.boardsource_blok import pinout as pins
from kmk.scanners import DiodeOrientation
class KMKKeyboard(_KMKKeyboard):
row_pins = (
board.P0_31,
board.P0_29,
board.P0_02,
board.P1_15,
board.P1_13,
board.P1_11,
board.P0_10,
pins[19],
pins[18],
pins[17],
pins[16],
pins[15],
pins[14],
pins[13],
)
col_pins = (
board.P0_22,
board.P0_24,
board.P1_00,
board.P0_11,
board.P1_04,
board.P1_06,
pins[6],
pins[7],
pins[8],
pins[9],
pins[10],
pins[11],
)
diode_orientation = DiodeOrientation.COLUMNS
i2c = board.I2C
powersave_pin = board.P0_13

View File

@ -2,9 +2,13 @@
![Reviung41](https://boardsource.imgix.net/ea77f3f8-6cc4-4cb4-a801-cf58b5af8fcc.jpg?raw=true)
The Reviung41 is a 41 key keyboard designed by gtips, it is a slightly larger version of the popular Reviung 39. These "split non-split" keyboards offer a lot of features split keyboards have in terms of comfort and ergonomics but do so in a single-piece package. Many people consider keyboards in this style easier to travel with since you don't have to manage two halves and there is of course no need for a TRRS cable. This board sits somewhere between and Atreus and Corne, and it is extremely comfortable to use.
kb.py is designed to work with the nice!nano
The Reviung41 is a 41 key keyboard designed by gtips, it is a slightly larger
version of the popular Reviung 39. These "split non-split" keyboards offer a lot
of features split keyboards have in terms of comfort and ergonomics but do so in
a single-piece package. Many people consider keyboards in this style easier to
travel with since you don't have to manage two halves and there is of course no
need for a TRRS cable. This board sits somewhere between and Atreus and Corne,
and it is extremely comfortable to use.
Hardware Availability: [PCB & Case Data](https://github.com/gtips/reviung/tree/master/reviung41)
@ -18,3 +22,10 @@ Extensions enabled by default
Common Extensions
- [Power](/docs/power.md) Powersaving features for battery life
## Microcontroller support
Update this line in `kb.py` to any supported microcontroller in `kmk/quickpin/pro_micro`
```python
from kmk.quickpin.pro_micro.boardsource_blok import pinout as pins

View File

@ -1,33 +1,33 @@
import board
from kmk.kmk_keyboard import KMKKeyboard as _KMKKeyboard
from kmk.quickpin.pro_micro.boardsource_blok import pinout as pins
from kmk.scanners import DiodeOrientation
from kmk.scanners import intify_coordinate as ic
class KMKKeyboard(_KMKKeyboard):
col_pins = (
board.P0_22,
board.P0_24,
board.P1_00,
board.P0_11,
board.P1_04,
board.P1_06,
pins[6],
pins[7],
pins[8],
pins[9],
pins[10],
pins[11],
)
row_pins = (
board.P0_31,
board.P0_29,
board.P0_02,
board.P1_15,
board.P1_13,
board.P1_11,
board.P0_10,
pins[19],
pins[18],
pins[17],
pins[16],
pins[15],
pins[14],
pins[13],
)
diode_orientation = DiodeOrientation.COLUMNS
rgb_pixel_pin = board.P0_06
rgb_pixel_pin = pins[0]
rgb_num_pixels = 11
i2c = board.I2C
powersave_pin = board.P0_13
coord_mapping = []
coord_mapping.extend(ic(0, x, 12) for x in range(12))

View File

@ -2,9 +2,11 @@
![rhymestone](https://boardsource.imgix.net/0968c21e-ed0c-47ec-ae5e-511ec6eb3bd2.jpg?raw=true)
The Rhymestone is 40-key ortholinear split keyboard. Originally the Rhymestone was created to be sold alongside the Treadstone and used as either a Macro pad or a 10-key numpad, hence the similar naming conventions. However; the Rhymestone is also often used as a standalone split keyboard by people who prefer a 5 column ortholinear layout.
kb.py is designed to work with the nice!nano
The Rhymestone is 40-key ortholinear split keyboard. Originally the Rhymestone
was created to be sold alongside the Treadstone and used as either a Macro pad
or a 10-key numpad, hence the similar naming conventions. However; the
Rhymestone is also often used as a standalone split keyboard by people who
prefer a 5 column ortholinear layout.
Retailers (USA)
[Boardsource](https://boardsource.xyz/store/5ecb6aee86879c9a0c22da89)
@ -17,3 +19,11 @@ Extensions enabled by default
Common Extensions
- [Split](/docs/split_keyboards.md) Connects halves using a wire
- [Power](/docs/power.md) Powersaving features for battery life
## Microcontroller support
Update this line in `kb.py` to any supported microcontroller in `kmk/quickpin/pro_micro`
```python
from kmk.quickpin.pro_micro.boardsource_blok import pinout as pins
```

View File

@ -1,15 +1,21 @@
import board
from kmk.kmk_keyboard import KMKKeyboard as _KMKKeyboard
from kmk.quickpin.pro_micro.boardsource_blok import pinout as pins
from kmk.scanners import DiodeOrientation
class KMKKeyboard(_KMKKeyboard):
row_pins = (board.P0_31, board.P0_29, board.P0_02, board.P1_15)
col_pins = (board.P0_22, board.P0_24, board.P1_00, board.P0_11, board.P1_04)
row_pins = (board.pins[19], board.pins[18], board.pins[17], board.pins[16])
col_pins = (
board.pins[6],
board.pins[7],
board.pins[8],
board.pins[9],
board.pins[10],
)
diode_orientation = DiodeOrientation.COLUMNS
rgb_pixel_pin = board.P0_06
rgb_pixel_pin = pins[0]
rgb_num_pixels = 40
data_pin = board.P0_08
data_pin = board.pins[1]
i2c = board.I2C
powersave_pin = board.P0_13

View File

@ -2,9 +2,9 @@
![TG4X](https://boardsource.imgix.net/d50e1163-06dd-4c18-826e-caacd0a4a33d.jpg?raw=true)
TG4X is a 45% staggered keyboard, compared to a standard 40% stagger it has one additional column which makes it an approachable and highly use-able 40%-ish stagger.
kb.py is designed to work with the nice!nano
TG4X is a 45% staggered keyboard, compared to a standard 40% stagger it has one
additional column which makes it an approachable and highly use-able 40%-ish
stagger.
Retailers (USA)
[Boardsource](https://boardsource.xyz/store/5eff7ead037395179221b90c)
@ -15,3 +15,11 @@ Extensions enabled by default
Common Extensions
- [Power](/docs/power.md) Powersaving features for battery life
## Microcontroller support
Update this line in `kb.py` to any supported microcontroller in `kmk/quickpin/pro_micro`
```python
from kmk.quickpin.pro_micro.boardsource_blok import pinout as pins
```

View File

@ -1,31 +1,31 @@
import board
from kmk.kmk_keyboard import KMKKeyboard as _KMKKeyboard
from kmk.quickpin.pro_micro.boardsource_blok import pinout as pins
from kmk.scanners import DiodeOrientation
class KMKKeyboard(_KMKKeyboard):
row_pins = (
board.P1_06,
board.P1_04,
board.P0_11,
board.P1_00,
board.P0_24,
board.P0_22,
board.P0_20,
board.P0_17,
board.pins[11],
board.pins[10],
board.pins[9],
board.pins[8],
board.pins[7],
board.pins[6],
board.pins[5],
board.pins[4],
)
col_pins = [
board.P0_06,
board.P1_11,
board.P1_13,
board.P1_15,
board.P0_02,
board.P0_29,
board.P0_31,
pins[0],
board.pins[14],
board.pins[15],
board.pins[16],
board.pins[17],
board.pins[18],
board.pins[19],
]
diode_orientation = DiodeOrientation.COLUMNS
rgb_pixel_pin = board.P0_08
rgb_pixel_pin = board.pins[1]
rgb_num_pixels = 6
i2c = board.I2C
powersave_pin = board.P0_13