Add files via upload

This commit is contained in:
Ben Park 2024-10-22 18:35:40 -04:00 committed by GitHub
parent c89bf289ee
commit 8468502d0a
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
5 changed files with 186 additions and 0 deletions

View file

@ -0,0 +1,49 @@
#pragma once
#include "config_common.h"
/* USB Device descriptor parameter */
#define VENDOR_ID 0x03A8
#define PRODUCT_ID 0xA701
#define DEVICE_VER 0x0001
#define MANUFACTURER YourName
#define PRODUCT 4x4 Macropad RP2040
#define DESCRIPTION A simple 4x4 macropad using RP2040
/* Key matrix size */
#define MATRIX_ROWS 4
#define MATRIX_COLS 4
/* Pin definitions */
#define MATRIX_ROW_PINS { D3, D4, D5, D6 } // Define your row pins (GPIO0 to GPIO3 for example)
#define MATRIX_COL_PINS { D0, D1, D2, D10 } // Define your column pins (GPIO4 to GPIO7 for example)
#define UNUSED_PINS
/* Diode direction */
#define DIODE_DIRECTION COL2ROW
/* Debounce configuration */
#define DEBOUNCE 5
/* RGB LEDS */
#define WS2812_DI_PIN 10
#define RGBLIGHT_LED_COUNT 10
/* Encoder */
#define ENCODER_A_PINS { D8 }
#define ENCODER_B_PINS { D7 }
#define ENCODER_RESOLUTION 4
/* Mechanical locking support. Use KC_LCAP, KC_LNUM, or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
#define LOCKING_RESYNC_ENABLE
/* Encoder support (if needed, set in rules.mk) */
// #define ENCODERS_PAD_A { GP14 }
// #define ENCODERS_PAD_B { GP15 }
// #define ENCODER_RESOLUTION 4
/* Bootmagic Lite keycode (optional, allows resetting keymap) */
#define BOOTMAGIC_LITE_ROW 0
#define BOOTMAGIC_LITE_COLUMN 0

View file

@ -0,0 +1,48 @@
{
"manufacturer": "Ben Park",
"keyboard_name": "nummacropad",
"maintainer": "benPark20",
"bootloader": "rp2040",
"diode_direction": "COL2ROW",
"features": {
"bootmagic": true,
"command": false,
"console": false,
"extrakey": true,
"mousekey": true,
"nkro": true
},
"matrix_pins": {
"cols": ["D3", "D4", "D5", "D6"],
"rows": ["D0", "D1", "D2", "D10"]
},
"processor": "RP2040",
"url": "",
"usb": {
"device_version": "1.0.0",
"pid": "0x0000",
"vid": "0xFEED"
},
"layouts": {
"LAYOUT_ortho_4x4": {
"layout": [
{"matrix": [0, 0], "x": 0, "y": 0},
{"matrix": [0, 1], "x": 1, "y": 0},
{"matrix": [0, 2], "x": 2, "y": 0},
{"matrix": [0, 3], "x": 3, "y": 0},
{"matrix": [1, 0], "x": 0, "y": 1},
{"matrix": [1, 1], "x": 1, "y": 1},
{"matrix": [1, 2], "x": 2, "y": 1},
{"matrix": [1, 3], "x": 3, "y": 1},
{"matrix": [2, 0], "x": 0, "y": 2},
{"matrix": [2, 1], "x": 1, "y": 2},
{"matrix": [2, 2], "x": 2, "y": 2},
{"matrix": [2, 3], "x": 3, "y": 2},
{"matrix": [3, 0], "x": 0, "y": 3},
{"matrix": [3, 1], "x": 1, "y": 3},
{"matrix": [3, 2], "x": 2, "y": 3},
{"matrix": [3, 3], "x": 3, "y": 3}
]
}
}
}

View file

@ -0,0 +1,30 @@
// Copyright 2023 QMK
// SPDX-License-Identifier: GPL-2.0-or-later
#include QMK_KEYBOARD_H
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/*
*
* 7 8 9 /
*
* 4 5 6 *
*
* 1 2 3 -
*
* 0 . Ent +
*
*/
[0] = LAYOUT_ortho_4x4(
KC_P7, KC_P8, KC_P9, KC_PSLS,
KC_P4, KC_P5, KC_P6, KC_PAST,
KC_P1, KC_P2, KC_P3, KC_PMNS,
KC_P0, KC_PDOT, KC_PENT, KC_PPLS
)
};
#if defined(ENCODER_MAP_ENABLE)
const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
[0] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU) },
};
#endif

View file

@ -0,0 +1,27 @@
# nummacropad
![nummacropad](imgur.com image replace me!)
*A short description of the keyboard/project*
* Keyboard Maintainer: [Ben Park](https://github.com/benPark20)
* 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 nummacropad:default
Flashing example for this keyboard:
make nummacropad: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

View file

@ -0,0 +1,32 @@
# MCU Settings
MCU = rp2040
# Bootloader Selection (usually rp2040)
BOOTLOADER = rp2040
# Build options
# You can enable or disable features here
RGBLIGHT_ENABLE = yes # Disable RGB lighting by default
RGBLIGHT_DRIVER = ws2812
MOUSEKEY_ENABLE = no # Disable mouse keys
EXTRAKEY_ENABLE = yes # Enable extra keys (media control, etc.)
CONSOLE_ENABLE = no # Disable console output
COMMAND_ENABLE = no # Disable command feature
# Define matrix size (rows x columns)
MATRIX_ROWS = 4
MATRIX_COLS = 4
# Enable USB Features
VUSB_ENABLE = no # Disable virtual USB for this project
USB_VID = 0x03A8 # Vendor ID
USB_PID = 0xA701 # Product ID for the macropad
# Set processor frequency
F_CPU = 12000000
# Enable bootmagic lite for keymap reset
BOOTMAGIC_ENABLE = lite # Allows for holding a key during boot to reset QMK
# Enable encoder support if needed
ENCODER_ENABLE = yes # Disable by default