Skip to content

Commit ffe897b

Browse files
thompson-eledrashnafauxpark
authored andcommitted
[Keyboard] Add F.Me Macropad (qmk#12658)
Co-authored-by: Drashna Jaelre <[email protected]> Co-authored-by: Ryan <[email protected]>
1 parent af590b7 commit ffe897b

File tree

8 files changed

+208
-0
lines changed

8 files changed

+208
-0
lines changed

keyboards/keebzdotnet/fme/config.h

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
/*
2+
Copyright 2021 keebnewb
3+
4+
This program is free software: you can redistribute it and/or modify
5+
it under the terms of the GNU General Public License as published by
6+
the Free Software Foundation, either version 2 of the License, or
7+
(at your option) any later version.
8+
9+
This program is distributed in the hope that it will be useful,
10+
but WITHOUT ANY WARRANTY; without even the implied warranty of
11+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12+
GNU General Public License for more details.
13+
14+
You should have received a copy of the GNU General Public License
15+
along with this program. If not, see <http://www.gnu.org/licenses/>.
16+
*/
17+
18+
#pragma once
19+
20+
#include "config_common.h"
21+
22+
/* USB Device descriptor parameter */
23+
#define VENDOR_ID 0x4B5A
24+
#define PRODUCT_ID 0x8008
25+
#define DEVICE_VER 0x0001
26+
#define MANUFACTURER keebzdotnet
27+
#define PRODUCT FMe
28+
29+
/* key matrix size */
30+
#define MATRIX_ROWS 4
31+
#define MATRIX_COLS 5
32+
33+
/* key matrix pins */
34+
#define MATRIX_ROW_PINS { B6, B5, B7, D2 }
35+
#define MATRIX_COL_PINS { B0, B4, B1, B3, B2 }
36+
#define UNUSED_PINS
37+
38+
/* COL2ROW or ROW2COL */
39+
#define DIODE_DIRECTION COL2ROW
40+
41+
/* number of backlight levels */
42+
43+
#ifdef BACKLIGHT_PIN
44+
#define BACKLIGHT_LEVELS 0
45+
#endif
46+
47+
/* Set 0 if debouncing isn't needed */
48+
#define DEBOUNCE 5
49+
50+
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
51+
#define LOCKING_SUPPORT_ENABLE
52+
53+
/* Locking resynchronize hack */
54+
#define LOCKING_RESYNC_ENABLE

keyboards/keebzdotnet/fme/fme.c

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
/* Copyright 2021 keebnewb
2+
*
3+
* This program is free software: you can redistribute it and/or modify
4+
* it under the terms of the GNU General Public License as published by
5+
* the Free Software Foundation, either version 2 of the License, or
6+
* (at your option) any later version.
7+
*
8+
* This program is distributed in the hope that it will be useful,
9+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
10+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11+
* GNU General Public License for more details.
12+
*
13+
* You should have received a copy of the GNU General Public License
14+
* along with this program. If not, see <http://www.gnu.org/licenses/>.
15+
*/
16+
17+
#include "fme.h"

keyboards/keebzdotnet/fme/fme.h

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
/*
2+
Copyright 2021 keebnewb
3+
4+
This program is free software: you can redistribute it and/or modify
5+
it under the terms of the GNU General Public License as published by
6+
the Free Software Foundation, either version 2 of the License, or
7+
(at your option) any later version.
8+
9+
This program is distributed in the hope that it will be useful,
10+
but WITHOUT ANY WARRANTY; without even the implied warranty of
11+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12+
GNU General Public License for more details.
13+
14+
You should have received a copy of the GNU General Public License
15+
along with this program. If not, see <http://www.gnu.org/licenses/>.
16+
*/
17+
#pragma once
18+
19+
#include "quantum.h"
20+
21+
#define ___ KC_NO
22+
23+
#define LAYOUT( \
24+
k00, k13, k14, k12, k10, \
25+
k11, k04, k02, k03, \
26+
k22, k32, k21, k01 \
27+
){ \
28+
{ k00, k01, k02, k03, k04 }, \
29+
{ k10, k11, k12, k13, k14 }, \
30+
{ ___, k21, k22, ___, ___ }, \
31+
{ ___, ___, k32, ___, ___ } \
32+
}
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
/*
2+
Copyright 2021 keebnewb
3+
4+
This program is free software: you can redistribute it and/or modify
5+
it under the terms of the GNU General Public License as published by
6+
the Free Software Foundation, either version 2 of the License, or
7+
(at your option) any later version.
8+
9+
This program is distributed in the hope that it will be useful,
10+
but WITHOUT ANY WARRANTY; without even the implied warranty of
11+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12+
GNU General Public License for more details.
13+
14+
You should have received a copy of the GNU General Public License
15+
along with this program. If not, see <http://www.gnu.org/licenses/>.
16+
*/
17+
#include QMK_KEYBOARD_H
18+
19+
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
20+
[0] = LAYOUT(
21+
KC_F, KC_U, KC_C, KC_K, KC_BSPC,
22+
KC_Y, KC_O, KC_U, MO(1),
23+
KC_SPC, KC_SPC, KC_SPC, KC_SPC
24+
),
25+
26+
[1] = LAYOUT(
27+
RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_DEL,
28+
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
29+
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
30+
),
31+
};
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
/*
2+
Copyright 2021 keebnewb
3+
4+
This program is free software: you can redistribute it and/or modify
5+
it under the terms of the GNU General Public License as published by
6+
the Free Software Foundation, either version 2 of the License, or
7+
(at your option) any later version.
8+
9+
This program is distributed in the hope that it will be useful,
10+
but WITHOUT ANY WARRANTY; without even the implied warranty of
11+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12+
GNU General Public License for more details.
13+
14+
You should have received a copy of the GNU General Public License
15+
along with this program. If not, see <http://www.gnu.org/licenses/>.
16+
*/
17+
#include QMK_KEYBOARD_H
18+
19+
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
20+
[0] = LAYOUT(
21+
KC_F, KC_U, KC_C, KC_K, KC_BSPC,
22+
KC_Y, KC_O, KC_U, MO(1),
23+
KC_SPC, KC_SPC, KC_SPC, KC_SPC
24+
),
25+
26+
[1] = LAYOUT(
27+
RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_DEL,
28+
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
29+
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
30+
),
31+
};
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
VIA_ENABLE = yes
2+
LTO_ENABLE = yes

keyboards/keebzdotnet/fme/readme.md

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
# F-Me Macropad
2+
3+
![F Me macropad](https://i.imgur.com/FKD43mB.jpg)
4+
5+
A macropad designed after a meme board seen on Reddit.
6+
7+
* Keyboard Maintainer: [keebzdotnet](https://github.com/keebzdotnet)
8+
* Hardware Supported: F-Me Macropad
9+
* Hardware Availability: https://www.keebz.net/shop/p/f-me
10+
11+
Getting the board into bootloader mode:
12+
13+
To flash firmware onto this board, you'll need to bring the PCB into bootloader mode. To enter bootloader mode, press the reset button on the back of the PCB twice. The reset button is located in the top left corner near the indicator LED.
14+
15+
Make example for this keyboard (after setting up your build environment):
16+
17+
make keebzdotnet/fme:default
18+
19+
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).

keyboards/keebzdotnet/fme/rules.mk

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
# MCU name
2+
MCU = atmega32u4
3+
4+
# Bootloader selection
5+
BOOTLOADER = atmel-dfu
6+
7+
# Build Options
8+
# change yes to no to disable
9+
#
10+
BOOTMAGIC_ENABLE = full # Virtual DIP switch configuration
11+
MOUSEKEY_ENABLE = yes # Mouse keys
12+
EXTRAKEY_ENABLE = yes # Audio control and System control
13+
CONSOLE_ENABLE = no # Console for debug
14+
COMMAND_ENABLE = no # Commands for debug and configuration
15+
# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
16+
SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
17+
# if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
18+
NKRO_ENABLE = yes # USB Nkey Rollover
19+
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
20+
RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
21+
BLUETOOTH_ENABLE = no # Enable Bluetooth
22+
AUDIO_ENABLE = no # Audio output

0 commit comments

Comments
 (0)