mirror of
https://github.com/System-End/hackpad.git
synced 2026-04-19 22:15:14 +00:00
Firmware update
This commit is contained in:
parent
bc4dbbd980
commit
b15003862c
13 changed files with 176 additions and 0 deletions
|
|
@ -15,6 +15,7 @@
|
|||
Extras:-
|
||||
- Few Jump Wires
|
||||
- Breadboard
|
||||
- A soldering iron and its required materials
|
||||
For testing before placing
|
||||
|
||||
Others:
|
||||
|
|
|
|||
8
hackpads/Bat-Board/Firmware/QMK/config.h
Normal file
8
hackpads/Bat-Board/Firmware/QMK/config.h
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
#define I2C1_SDA_PIN GP6
|
||||
#define I2C1_SCL_PIN GP7 // Define which pins are SDA and SCL on your microcontroller model. Remember to change GP to your pin indicator if you aren't using the RP2040
|
||||
#define OLED_DRIVER_ENABLE
|
||||
|
||||
// You may need to add these if the OLED doesn't work at first.
|
||||
|
||||
#define OLED_I2C_ADDRESS 0x3C // or 0x3D, depending on your OLED
|
||||
#define OLED_DISPLAY_ON 1
|
||||
1
hackpads/Bat-Board/Firmware/QMK/default_keyboard.h
Normal file
1
hackpads/Bat-Board/Firmware/QMK/default_keyboard.h
Normal file
|
|
@ -0,0 +1 @@
|
|||
#define LAYOUT_ortho_5x3(k0A, k1A, k1B, k1C, k2A, k2B, k2C, k3A, k3B, k3C, k4A, k4B, k4C) { \
|
||||
11
hackpads/Bat-Board/Firmware/QMK/info.json
Normal file
11
hackpads/Bat-Board/Firmware/QMK/info.json
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
"layouts": {
|
||||
"LAYOUT_ortho_5x3": {
|
||||
"layout": [
|
||||
{ "x":0, "y":0 }, { "x":1, "y":0 }, { "x":2, "y":0 },
|
||||
{ "x":0, "y":1 }, { "x":1, "y":1 }, { "x":2, "y":1 },
|
||||
{ "x":0, "y":2 }, { "x":1, "y":2 }, { "x":2, "y":2 },
|
||||
{ "x":0, "y":3 }, { "x":1, "y":3 }, { "x":2, "y":3 },
|
||||
{ "x":1, "y":4 }
|
||||
]
|
||||
}
|
||||
}
|
||||
45
hackpads/Bat-Board/Firmware/QMK/keyboard.json
Normal file
45
hackpads/Bat-Board/Firmware/QMK/keyboard.json
Normal file
|
|
@ -0,0 +1,45 @@
|
|||
{
|
||||
"manufacturer": "Bhavya",
|
||||
"keyboard_name": "Bat-Boaad",
|
||||
"maintainer": "Bhavya",
|
||||
"bootloader": "rp2040",
|
||||
"diode_direction": "ROW2COL",
|
||||
"features": {
|
||||
"bootmagic": true,
|
||||
"command": false,
|
||||
"console": false,
|
||||
"extrakey": true,
|
||||
"mousekey": false,
|
||||
"nkro": true
|
||||
},
|
||||
"matrix_pins": {
|
||||
"cols": ["GP4", "GP2", "GP1"],
|
||||
"rows": ["GP0", "GP29","GP27", "GP28","GP26"]
|
||||
},
|
||||
"processor": "RP2040",
|
||||
"url": "(optional, leave blank otherwise)URL to an info page, i.e https://github.com/exampleuser/example, https://example.com.",
|
||||
"usb": {
|
||||
"device_version": "1.0.0",
|
||||
"pid": "0x0000",
|
||||
"vid": "0xFEED"
|
||||
},
|
||||
"layouts": {
|
||||
"LAYOUT_ortho_5x3": {
|
||||
"layout": [
|
||||
{"matrix":[0,0],"x":0,"y":0},
|
||||
{"matrix":[1,0],"x":0,"y":1},
|
||||
{"matrix":[1,1],"x":1,"y":1},
|
||||
{"matrix":[1,2],"x":2,"y":1},
|
||||
{"matrix":[2,0],"x":0,"y":2},
|
||||
{"matrix":[2,1],"x":1,"y":2},
|
||||
{"matrix":[2,2],"x":2,"y":2},
|
||||
{"matrix":[3,0],"x":0,"y":3},
|
||||
{"matrix":[3,1],"x":1,"y":3},
|
||||
{"matrix":[3,2],"x":2,"y":3},
|
||||
{"matrix":[4,0],"x":0,"y":4},
|
||||
{"matrix":[4,1],"x":1,"y":4},
|
||||
{"matrix":[4,2],"x":2,"y":4}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
22
hackpads/Bat-Board/Firmware/QMK/keymaps/default/keymap.c
Normal file
22
hackpads/Bat-Board/Firmware/QMK/keymaps/default/keymap.c
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
#include QMK_KEYBOARD_H
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
[0] = LAYOUT_ortho_5x3(
|
||||
KC_LEFT_CTRL,
|
||||
KC_ESCAPE, KC_LEFT_GUI, KC_BACKSPACE,
|
||||
KC_TAB, KC_NUM_LOCK, KC_RIGHT_ALT,
|
||||
KC_LEFT_CTRL, KC_A, KC_ENTER,
|
||||
KC_B, KC_C, KC_D
|
||||
)
|
||||
};
|
||||
#ifdef OLED_ENABLE
|
||||
|
||||
bool oled_task_user() {
|
||||
oled_clear();
|
||||
oled_write_P(PSTR("Testing OLED!"), false); // Replace THIS line with whatever you'd like the OLED to display.
|
||||
// There are more details in the OLED page!
|
||||
return false;
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
2
hackpads/Bat-Board/Firmware/QMK/keymaps/via/README.md
Normal file
2
hackpads/Bat-Board/Firmware/QMK/keymaps/via/README.md
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
# VIA Support
|
||||
Not complete.
|
||||
56
hackpads/Bat-Board/Firmware/QMK/keymaps/via/keymap.c
Normal file
56
hackpads/Bat-Board/Firmware/QMK/keymaps/via/keymap.c
Normal file
|
|
@ -0,0 +1,56 @@
|
|||
// Copyright 2023 QMK
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
enum layer_names {
|
||||
_BASE,
|
||||
};
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
/*
|
||||
* ┬───┐
|
||||
* │ 2 │
|
||||
* ├───┼───┼───┤
|
||||
* │ 3 │ 5 │ 6 │
|
||||
* └───┴───┴───┘
|
||||
*/
|
||||
|
||||
/*
|
||||
The wiring is a little convoluted - refer to the diagram below:
|
||||
|
||||
*/
|
||||
[_BASE] = LAYOUT(
|
||||
KC_P7, KC_P8, KC_P4,
|
||||
KC_P5, KC_P6
|
||||
)
|
||||
};
|
||||
|
||||
const uint16_t PROGMEM encoder_map[][1][2] = {
|
||||
[0] = { ENCODER_CCW_CW(MS_WHLU, MS_WHLD) },
|
||||
};
|
||||
|
||||
|
||||
#ifdef OLED_ENABLE
|
||||
bool oled_task_user(void) {
|
||||
// Host Keyboard Layer Status
|
||||
oled_write_P(PSTR("Layer: "), false);
|
||||
|
||||
switch (get_highest_layer(layer_state)) {
|
||||
case _BASE:
|
||||
oled_write_P(PSTR("Default\n"), false);
|
||||
break;
|
||||
default:
|
||||
// Or use the write_ln shortcut over adding '\n' to the end of your string
|
||||
oled_write_ln_P(PSTR("Undefined"), false);
|
||||
}
|
||||
|
||||
// Host Keyboard LED Status
|
||||
led_t led_state = host_keyboard_led_state();
|
||||
oled_write_P(led_state.num_lock ? PSTR("NUM ") : PSTR(" "), false);
|
||||
oled_write_P(led_state.caps_lock ? PSTR("CAP ") : PSTR(" "), false);
|
||||
oled_write_P(led_state.scroll_lock ? PSTR("SCR ") : PSTR(" "), false);
|
||||
|
||||
return false;
|
||||
}
|
||||
#endif
|
||||
1
hackpads/Bat-Board/Firmware/QMK/keymaps/via/rules.mk
Normal file
1
hackpads/Bat-Board/Firmware/QMK/keymaps/via/rules.mk
Normal file
|
|
@ -0,0 +1 @@
|
|||
VIA_ENABLE = yes
|
||||
0
hackpads/Bat-Board/Firmware/QMK/readme.md
Normal file
0
hackpads/Bat-Board/Firmware/QMK/readme.md
Normal file
4
hackpads/Bat-Board/Firmware/QMK/rules.mk
Normal file
4
hackpads/Bat-Board/Firmware/QMK/rules.mk
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
OLED_ENABLE = yes
|
||||
LTO_ENABLE = yes
|
||||
CONSOLE_ENABLE = yes
|
||||
DEBUG_MATRIX_SCAN_RATE = yes
|
||||
6
hackpads/Bat-Board/Firmware/README.md
Normal file
6
hackpads/Bat-Board/Firmware/README.md
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
# Firmware
|
||||
|
||||
|
||||
|
||||
|
||||
**QMK:** This is a port of Bat-Board to QMK firmware. Very primitive setup currently, but it works!
|
||||
19
hackpads/Bat-Board/test.json
Normal file
19
hackpads/Bat-Board/test.json
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
{
|
||||
"version": 1,
|
||||
"notes": "",
|
||||
"documentation": "This file is a QMK Configurator export. You can import this at <https://config.qmk.fm>. It can also be used directly with QMK's source code.\n\nTo setup your QMK environment check out the tutorial: <https://docs.qmk.fm/#/newbs>\n\nYou can convert this file to a keymap.c using this command: `qmk json2c {keymap}`\n\nYou can compile this keymap using this command: `qmk compile {keymap}`",
|
||||
"keyboard": "my_custom_keyboard",
|
||||
"keymap": "default",
|
||||
"layout": "LAYOUT_custom",
|
||||
"layers": [
|
||||
[
|
||||
"KC_ESC", // k0: Isolated key
|
||||
"KC_Q", "KC_W", "KC_E", // Row 1
|
||||
"KC_A", "KC_S", "KC_D", // Row 2
|
||||
"KC_Z", "KC_X", "KC_C", // Row 3
|
||||
"KC_1", "KC_2", "KC_3" // Row 4
|
||||
],
|
||||
|
||||
],
|
||||
"author": ""
|
||||
}
|
||||
Loading…
Add table
Reference in a new issue