From d28a50e1766abf34c49e277c7d25dd6aea57050f Mon Sep 17 00:00:00 2001 From: Christian Greene <95236755+falsonix@users.noreply.github.com> Date: Sat, 3 Aug 2024 16:11:49 -0600 Subject: [PATCH] FX19 Support (#24220) --- keyboards/falsonix/fx19/keyboard.json | 68 +++++++++++++++++++ .../falsonix/fx19/keymaps/default/keymap.c | 27 ++++++++ keyboards/falsonix/fx19/readme.md | 26 +++++++ 3 files changed, 121 insertions(+) create mode 100644 keyboards/falsonix/fx19/keyboard.json create mode 100644 keyboards/falsonix/fx19/keymaps/default/keymap.c create mode 100644 keyboards/falsonix/fx19/readme.md diff --git a/keyboards/falsonix/fx19/keyboard.json b/keyboards/falsonix/fx19/keyboard.json new file mode 100644 index 0000000000..4ef4730a5d --- /dev/null +++ b/keyboards/falsonix/fx19/keyboard.json @@ -0,0 +1,68 @@ +{ + "manufacturer": "Falsonix", + "keyboard_name": "falsonix/fx19", + "maintainer": "falsonix", + "bootloader": "atmel-dfu", + "diode_direction": "COL2ROW", + "features": { + "bootmagic": true, + "command": false, + "console": false, + "extrakey": true, + "mousekey": true, + "nkro": true, + "rgblight": true + }, + "rgblight": { + "led_count": 5, + "animations": { + "rainbow_mood": true, + "rainbow_swirl": true + }, + "default": { + "animation": "rainbow_swirl" + } + }, + "ws2812": { + "pin": "F7" + }, + "matrix_pins": { + "cols": ["C7", "C6", "B6", "B5"], + "rows": ["F0", "F1", "F4", "F5", "F6"] + }, + "processor": "atmega32u4", + "url": "", + "usb": { + "device_version": "1.0.0", + "pid": "0x0000", + "vid": "0x4658" + }, + "layouts": { + "LAYOUT": { + "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": [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, "h": 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}, + {"matrix": [4, 3], "x":3, "y":4, "h": 2} + ] + } + } +} diff --git a/keyboards/falsonix/fx19/keymaps/default/keymap.c b/keyboards/falsonix/fx19/keymaps/default/keymap.c new file mode 100644 index 0000000000..4404d65a84 --- /dev/null +++ b/keyboards/falsonix/fx19/keymaps/default/keymap.c @@ -0,0 +1,27 @@ +// Copyright 2023 QMK +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* + *┌───┬───┬───┬───┐ + * Num│ / │ * │ - │ + *├───┼───┼───┼───┤ + *│ 7 │ 8 │ 9 │ + │ + *├───┼───┼───┤ │ + *│ 4 │ 5 │ 6 │ │ + *├───┼───┼───┤───┤ + *│ 1 │ 2 │ 3 │ │ + *├───┼───┼───┤Ent│ + *│Win│ 0 │ . │ │ + *┴───┴───┴───┴───┘ + */ + [0] = LAYOUT( + KC_LNUM, KC_PSLS, KC_PAST, KC_PMNS, + KC_P7, KC_P8, KC_P9, + KC_P4, KC_P5, KC_P6, KC_PPLS, + KC_P1, KC_P2, KC_P3, + KC_RWIN, KC_P0, KC_PDOT, KC_PENT + ) +}; diff --git a/keyboards/falsonix/fx19/readme.md b/keyboards/falsonix/fx19/readme.md new file mode 100644 index 0000000000..9c69f7812d --- /dev/null +++ b/keyboards/falsonix/fx19/readme.md @@ -0,0 +1,26 @@ +# falsonix/fx19 + +![falsonix/fx19](https://i.imgur.com/UGExzJl.png) + +A small, 18-key number pad for use with modern computers. (Yes, the name says 19 and this is due to me miscounting the keys and realizing only after I'd named everything in firmware and hardware). Includes RGB for maximum performance. + +* Keyboard Maintainer: [falsonix](https://github.com/falsonix) +* Hardware Supported: *FX19 Numpads* +* Hardware Availability: *DIY by the enduser* + +Make example for this keyboard (after setting up your build environment): + + make falsonix/fx19:default + +Flashing example for this keyboard: + + make falsonix/fx19: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 2 ways: + +* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (the top left key) and plug in the keyboard +* **Physical reset button**: Briefly press the button on the front of the PCB