Skip to content

Commit

Permalink
Add firmware directory
Browse files Browse the repository at this point in the history
  • Loading branch information
alg0002 committed Jan 15, 2023
1 parent 3af126d commit c9e6aa6
Show file tree
Hide file tree
Showing 9 changed files with 307 additions and 0 deletions.
64 changes: 64 additions & 0 deletions firmware/PRK Firmware/default/keymap.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
puts(" Name: Let's Swamp")
puts(" Board: RP2040-Zero")
puts(" Designed by alg")

kbd = Keyboard.new
kbd.split = true
kbd.uart_pin = 1
kbd.set_anchor(:left)

# キーマトリクス初期化
kbd.init_pins(
[ 26, 15, 14, 13 ], # row
[ 2, 5, 6, 7, 8, 9 ] # col
)

# デフォルトレイヤーは最初に追加する必要がある
# L-col0 L-col1 L-col2 L-col3 L-col4 L-col5 R-col0 R-col1 R-col2 R-col3 R-col4 R-col5
kbd.add_layer :default, %i[
KC_ESC KC_Q KC_W KC_E KC_R KC_T KC_Y KC_U KC_I KC_O KC_P KC_LBRC
KC_MINUS KC_A KC_S KC_D KC_F KC_G KC_H KC_J KC_K KC_L KC_SCLN KC_QUOT
KC_TAB KC_Z KC_X KC_C KC_V KC_B KC_N KC_M KC_COMM KC_DOT KC_SLSH KC_INT1
L2_ZKHK KC_LGUI KC_LALT MU_LSFT ET_LCTL L1_SPC L1_SPC ET_RCTL HE_RSFT KC_RALT KC_RGUI L2_APP
]
# L-col0 L-col1 L-col2 L-col3 L-col4 L-col5 R-col0 R-col1 R-col2 R-col3 R-col4 R-col5
kbd.add_layer :layer1, %i[
KC_ESC KC_COLON KC_MINUS KC_DQUO KC_SLSH KC_UNDS KC_HOME KC_PGUP KC_PGDN KC_END KC_INS KC_PSCREEN
KC_TAB KC_1 KC_2 KC_3 KC_4 KC_5 KC_LEFT KC_DOWN KC_UP KC_RIGHT KC_EQL KC_INT3
KC_CAPS KC_6 KC_7 KC_8 KC_9 KC_0 KC_N KC_M KC_COMM KC_DOT KC_SLSH KC_INT1
L2_ZKHK KC_LGUI KC_LALT MU_LSFT KC_BSPC L1_SPC L1_SPC KC_DEL HE_RSFT KC_RALT KC_RGUI L2_APP
]
# L-col0 L-col1 L-col2 L-col3 L-col4 L-col5 R-col0 R-col1 R-col2 R-col3 R-col4 R-col5
kbd.add_layer :layer2, %i[
KC_ESC KC_Q KC_W KC_E KC_R KC_T KC_Y KC_RCBR KC_PIPE KC_AMPR KC_P KC_LBRC
KC_MINUS KC_F1 KC_F2 KC_F3 KC_F4 KC_F5 KC_F11 KC_RBRC KC_BSLS KC_AT KC_SCLN KC_QUOT
KC_TAB KC_F6 KC_F7 KC_F8 KC_F9 KC_F10 KC_F12 KC_ASTER KC_LPRN KC_LCBR KC_SLSH KC_INT1
L2_ZKHK KC_LGUI KC_LALT MU_LSFT ET_LCTL L1_SPC L1_SPC ET_RCTL HE_RSFT KC_RALT KC_RGUI L2_APP
]

# レイヤー用モードキー
kbd.define_mode_key :L1_SPC, [ :KC_SPC, :layer1, 200, 200 ]
kbd.define_mode_key :L2_ZKHK,[ :KC_ZKHK, :layer2, 200, 200 ]
kbd.define_mode_key :L2_APP, [ :KC_APPLICATION, :layer2, 200, 200 ]
# それ以外のモードキー
kbd.define_mode_key :MU_LSFT,[ :KC_MHEN, :KC_LSFT, 200, 200 ]
kbd.define_mode_key :ET_LCTL,[ :KC_ENTER, :KC_LCTL, 200, 200 ]
kbd.define_mode_key :ET_RCTL,[ :KC_ENTER, :KC_RCTL, 200, 200 ]
kbd.define_mode_key :HE_RSFT,[ :KC_HENK, :KC_RSFT, 200, 200 ]

# RGBLED
rgb = RGB.new(
0, # ピン番号
12, # アンダーグロウのLED数
0, # バックライトのLED数
false # true:32bit false:24bit
)
rgb.effect = :static
rgb.speed = 31 # 1 - 31 / デフォルト:22
rgb.hue = 36 # 0 - 100 / デフォルト:0
rgb.saturation = 83 # 0 - 100 / デフォルト:100
rgb.value = 1 # 1 - 31 / デフォルト:13
#kbd.append rgb

# キーボード起動!
kbd.start!
20 changes: 20 additions & 0 deletions firmware/QMK Firmware/lets_swamp/config.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
// Copyright 2022 alglabnet (@alg0002)
// SPDX-License-Identifier: GPL-2.0-or-later

#pragma once

/*
* Feature disable options
* These options are also useful to firmware size reduction.
*/

/* disable debug print */
//#define NO_DEBUG

/* disable print */
//#define NO_PRINT

/* disable action features */
//#define NO_ACTION_LAYER
//#define NO_ACTION_TAPPING
//#define NO_ACTION_ONESHOT
108 changes: 108 additions & 0 deletions firmware/QMK Firmware/lets_swamp/info.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,108 @@
{
"manufacturer": "alglabnet",
"keyboard_name": "Lets Swamp",
"maintainer": "alg0002",
"bootloader": "rp2040",
"diode_direction": "COL2ROW",
"features": {
"bootmagic": true,
"command": false,
"console": false,
"extrakey": true,
"mousekey": true,
"nkro": true
},
"matrix_pins": {
"cols": ["GP9", "GP8", "GP7", "GP6", "GP5", "GP2"],
"rows": ["GP26", "GP15", "GP14", "GP13"]
},
"debounce": 5,
"processor": "RP2040",
"url": "",
"usb": {
"device_version": "1.0.0",
"pid": "0xA165",
"vid": "0x1209"
},
"rgblight": {
"led_count": 12,
"pin": "GP0",
"animations": {
"alternating": true,
"breathing": true,
"christmas": true,
"knight": true,
"rainbow_mood": true,
"rainbow_swirl": true,
"rgb_test": true,
"snake": true,
"static_gradient": true,
"twinkle": true
},
"sleep": true,
"max_brightness": 255,
"split": true,
"split_count": [ 6, 6 ]
},
"split": {
"enabled": true,
"transport": {
"protocol": "serial"
},
"soft_serial_pin": "GP1"
},
"layouts": {
"LAYOUT": {
"layout": [
{ "matrix": [0, 5], "x": 0, "y": 0 },
{ "matrix": [0, 4], "x": 1, "y": 0 },
{ "matrix": [0, 3], "x": 2, "y": 0 },
{ "matrix": [0, 2], "x": 3, "y": 0 },
{ "matrix": [0, 1], "x": 4, "y": 0 },
{ "matrix": [0, 0], "x": 5, "y": 0 },
{ "matrix": [4, 0], "x": 8, "y": 0 },
{ "matrix": [4, 1], "x": 9, "y": 0 },
{ "matrix": [4, 2], "x": 10, "y": 0 },
{ "matrix": [4, 3], "x": 11, "y": 0 },
{ "matrix": [4, 4], "x": 12, "y": 0 },
{ "matrix": [4, 5], "x": 13, "y": 0 },
{ "matrix": [1, 5], "x": 0, "y": 1 },
{ "matrix": [1, 4], "x": 1, "y": 1 },
{ "matrix": [1, 3], "x": 2, "y": 1 },
{ "matrix": [1, 2], "x": 3, "y": 1 },
{ "matrix": [1, 1], "x": 4, "y": 1 },
{ "matrix": [1, 0], "x": 5, "y": 1 },
{ "matrix": [5, 0], "x": 8, "y": 1 },
{ "matrix": [5, 1], "x": 9, "y": 1 },
{ "matrix": [5, 2], "x": 10, "y": 1 },
{ "matrix": [5, 3], "x": 11, "y": 1 },
{ "matrix": [5, 4], "x": 12, "y": 1 },
{ "matrix": [5, 5], "x": 13, "y": 1 },
{ "matrix": [2, 5], "x": 0, "y": 2 },
{ "matrix": [2, 4], "x": 1, "y": 2 },
{ "matrix": [2, 3], "x": 2, "y": 2 },
{ "matrix": [2, 2], "x": 3, "y": 2 },
{ "matrix": [2, 1], "x": 4, "y": 2 },
{ "matrix": [2, 0], "x": 5, "y": 2 },
{ "matrix": [6, 0], "x": 8, "y": 2 },
{ "matrix": [6, 1], "x": 9, "y": 2 },
{ "matrix": [6, 2], "x": 10, "y": 2 },
{ "matrix": [6, 3], "x": 11, "y": 2 },
{ "matrix": [6, 4], "x": 12, "y": 2 },
{ "matrix": [6, 5], "x": 13, "y": 2 },
{ "matrix": [3, 5], "x": 0, "y": 2 },
{ "matrix": [3, 4], "x": 1, "y": 2 },
{ "matrix": [3, 3], "x": 2, "y": 2 },
{ "matrix": [3, 2], "x": 3, "y": 2 },
{ "matrix": [3, 1], "x": 4, "y": 2 },
{ "matrix": [3, 0], "x": 5, "y": 2 },
{ "matrix": [7, 0], "x": 8, "y": 2 },
{ "matrix": [7, 1], "x": 9, "y": 2 },
{ "matrix": [7, 2], "x": 10, "y": 2 },
{ "matrix": [7, 3], "x": 11, "y": 2 },
{ "matrix": [7, 4], "x": 12, "y": 2 },
{ "matrix": [7, 5], "x": 13, "y": 2 }
]
}
}
}
21 changes: 21 additions & 0 deletions firmware/QMK Firmware/lets_swamp/keymaps/default/keymap.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
#include QMK_KEYBOARD_H

const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/*
* ┌───┬───┬───┬───┬───┬───┐ ┌───┬───┬───┬───┬───┬───┐
* │Esc│ Q │ W │ E │ R │ T │ │ Y │ U │ I │ O │ P │ @ │
* ├───┼───┼───┼───┼───┼───┤ ├───┼───┼───┼───┼───┼───┤
* │ - │ A │ S │ D │ F │ G │ │ H │ J │ K │ L │ ; │ : │
* ├───┼───┼───┼───┼───┼───┤ ├───┼───┼───┼───┼───┼───┤
* │Tab│ Z │ X │ C │ V │ B │ │ N │ M │ , │ . │ / │ \ │
* ├───┼───┼───┼───┼───┼───┤ ├───┼───┼───┼───┼───┼───┤
* │E/J│GUI│Alt│Sft│Ctl│Spc│ │Spc│Ctl│Sft│Alt│GUI│App│
* └───┴───┴───┴───┴───┴───┘ └───┴───┴───┴───┴───┴───┘
*/
[0] = LAYOUT(
RGB_TOG, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_AT,
KC_MINS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
KC_TAB, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1,
KC_GRV, KC_LGUI, KC_LALT, KC_LSFT, KC_LCTL, KC_SPC, KC_SPC, KC_RCTL, KC_RSFT, KC_RALT, KC_RGUI, KC_APP
)
};
50 changes: 50 additions & 0 deletions firmware/QMK Firmware/lets_swamp/keymaps/via/keymap.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
#include QMK_KEYBOARD_H

#define L1_SPC LT(1,KC_SPC)
#define L2_ZKHK LT(2,KC_GRV)
#define L2_APP LT(2,KC_APP)
#define MU_LSFT LSFT_T(KC_MHEN)
#define ET_LCTL LCTL_T(KC_ENT)
#define ET_RCTL RCTL_T(KC_ENT)
#define HE_RSFT RSFT_T(KC_HENK)

const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* (JP)
* ┌───┬───┬───┬───┬───┬───┐ ┌───┬───┬───┬───┬───┬───┐
* │Esc│ Q │ W │ E │ R │ T │ │ Y │ U │ I │ O │ P │ @ │
* ├───┼───┼───┼───┼───┼───┤ ├───┼───┼───┼───┼───┼───┤
* │ - │ A │ S │ D │ F │ G │ │ H │ J │ K │ L │ ; │ : │
* ├───┼───┼───┼───┼───┼───┤ ├───┼───┼───┼───┼───┼───┤
* │Tab│ Z │ X │ C │ V │ B │ │ N │ M │ , │ . │ / │ \ │
* ├───┼───┼───┼───┼───┼───┤ ├───┼───┼───┼───┼───┼───┤
* │E/J│GUI│Alt│Sft│Ctl│Spc│ │Spc│Ctl│Sft│Alt│GUI│App│
* └───┴───┴───┴───┴───┴───┘ └───┴───┴───┴───┴───┴───┘
*/
[0] = LAYOUT(
KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC,
KC_MINS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
KC_TAB, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1,
L2_ZKHK, KC_LGUI, KC_LALT, MU_LSFT, ET_LCTL, L1_SPC, L1_SPC, ET_RCTL, HE_RSFT, KC_RALT, KC_RGUI, L2_APP
),

[1] = LAYOUT(
KC_TRNS, KC_COLN, KC_MINS, KC_DQUO, KC_SLSH, KC_UNDS, KC_HOME, KC_PGDN, KC_PGUP, KC_END, KC_INS, KC_PSCREEN,
KC_TAB, KC_1, KC_2, KC_3, KC_4, KC_5, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_EQL, KC_INT3,
KC_CAPS, KC_6, KC_7, KC_8, KC_9, KC_0, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_BSPC, KC_TRNS, KC_TRNS, KC_DEL, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
),

[2] = LAYOUT(
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_RCBR, KC_PIPE, KC_AMPR, KC_TRNS, KC_TRNS,
KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F11, KC_RBRC, KC_BSLS, KC_AT, KC_TRNS, KC_TRNS,
KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F12, KC_ASTR, KC_LPRN, KC_LCBR, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
),

[3] = LAYOUT(
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
)
};
1 change: 1 addition & 0 deletions firmware/QMK Firmware/lets_swamp/keymaps/via/rules.mk
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
VIA_ENABLE = yes
27 changes: 27 additions & 0 deletions firmware/QMK Firmware/lets_swamp/readme.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
# alg0002/lets_swamp

![alg0002/lets_swamp](imgur.com image replace me!)

*A short description of the keyboard/project*

* Keyboard Maintainer: [alglabnet](https://github.com/alg0002)
* Hardware Supported: *The PCBs, controllers supported*
* Hardware Availability: *Links to where you can find this hardware*

Make example for this keyboard (after setting up your build environment):

make alg0002/lets_swamp:default

Flashing example for this keyboard:

make alg0002/lets_swamp:default:flash

See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).

## Bootloader

Enter the bootloader in 3 ways:

* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard
* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead
* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available
1 change: 1 addition & 0 deletions firmware/QMK Firmware/lets_swamp/rules.mk
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
SERIAL_DRIVER = vendor
15 changes: 15 additions & 0 deletions firmware/VIA/lets_swamp.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
{
"name": "Let's Swamp",
"vendorId": "0x1209",
"productId": "0xA165",
"lighting": "qmk_rgblight",
"matrix": { "rows": 8, "cols": 6 },
"layouts": {
"keymap": [
["0,5","0,4","0,3","0,2","0,1","0,0",{"x":1},"4,0","4,1","4,2","4,3","4,4","4,5"],
["1,5","1,4","1,3","1,2","1,1","1,0",{"x":1},"5,0","5,1","5,2","5,3","5,4","5,5"],
["2,5","2,4","2,3","2,2","2,1","2,0",{"x":1},"6,0","6,1","6,2","6,3","6,4","6,5"],
["3,5","3,4","3,3","3,2","3,1","3,0",{"x":1},"7,0","7,1","7,2","7,3","7,4","7,5"]
]
}
}

0 comments on commit c9e6aa6

Please sign in to comment.