~ruther/qmk_firmware

041f60f9a9cd88275f46f2ac2140923dcbda1333 — joliverMI 1 year, 29 days ago 2d8902c
[Keyboard] Add recore keyboard (#23320)

Co-authored-by: joliverMI <qmk@Desktop2023>
Co-authored-by: jack <0x6a73@protonmail.com>
Co-authored-by: Joel Challis <git@zvecr.com>
Co-authored-by: Duncan Sutherland <dunk2k_2000@hotmail.com>
A keyboards/pmk/recore/v3/config.h => keyboards/pmk/recore/v3/config.h +18 -0
@@ 0,0 1,18 @@
// Copyright 2023 Javier Oliver (@joliverMI)
// SPDX-License-Identifier: GPL-2.0-or-later

#pragma once

/*Split keyboard configuration*/
// Hardware Settings
#define SERIAL_USART_FULL_DUPLEX
#define SERIAL_USART_TX_PIN GP1
#define SERIAL_USART_RX_PIN GP0

// Communication Settings
#define FORCED_SYNC_THROTTLE_MS 1000
#define SPLIT_MAX_CONNECTION_ERRORS 5
#define SPLIT_CONNECTION_CHECK_TIMEOUT 2000

// RGB Configuration
#define RGBLIGHT_EFFECT_BREATHE_CENTER 2.0 //1.0 to 2.7

A keyboards/pmk/recore/v3/info.json => keyboards/pmk/recore/v3/info.json +141 -0
@@ 0,0 1,141 @@
{
    "manufacturer": "Posey's Mechanical Keyboards",
    "keyboard_name": "recorev3",
    "maintainer": "joliverMI",
    "bootloader": "rp2040",
    "build": {
        "debounce_type": "sym_defer_pk"
    },
    "diode_direction": "COL2ROW",
    "features": {
        "bootmagic": true,
        "rgblight": true,
        "extrakey": true,
        "mousekey": true,
        "nkro": true
    },
    "matrix_pins": {
        "cols": ["GP2", "GP3", "GP4", "GP5", "GP6", "GP7", "GP8", "GP9"],
        "rows": ["GP10", "GP11", "GP12", "GP13", "GP14"]
    },
    "processor": "RP2040",
    "ws2812": {
        "driver": "vendor",
        "pin": "GP17"
    },
    "rgblight": {
        "animations": {
            "breathing": true
        },
        "layers": {
            "enabled": true,
            "max": 4
        },
        "led_count": 2,
        "sleep": true,
        "split": true,
        "split_count": [1, 1]
    },
    "split": {
        "enabled": true,
        "handedness": {
            "pin": "GP18"
        }
    },
    "tags": ["ortho", "split"],
    "url": "poseysmechanicalkeyboards.com",
    "usb": {
        "device_version": "1.0.0",
        "pid": "0x0001",
        "vid": "0x4A4F"
    },
    "layouts": {
        "LAYOUT": {
            "layout": [
                {"matrix": [0,0], "x": 0, "y": 0.75, "w": 1.25},
                {"matrix": [0,1], "x": 1.25, "y": 0.75},
                {"matrix": [0,2], "x": 2.25, "y": 0.2},
                {"matrix": [0,3], "x": 3.25, "y": 0},
                {"matrix": [0,4], "x": 4.25, "y": 0.2},
                {"matrix": [0,5], "x": 5.25, "y": 0.3},
                {"matrix": [0,6], "x": 6.25, "y": 0.55, "h": 1.25},
                {"matrix": [0,7], "x": 7.25, "y": 0.55, "h": 1.25},

                {"matrix": [5,0], "x": 9.25, "y": 0.55, "h": 1.25},
                {"matrix": [5,1], "x": 10.25, "y": 0.55, "h": 1.25},
                {"matrix": [5,2], "x": 11.25, "y": 0.3},
                {"matrix": [5,3], "x": 12.25, "y": 0.2},
                {"matrix": [5,4], "x": 13.25, "y": 0},
                {"matrix": [5,5], "x": 14.25, "y": 0.2},
                {"matrix": [5,6], "x": 15.25, "y": 0.75},
                {"matrix": [5,7], "x": 16.25, "y": 0.75, "w": 1.25},

                {"matrix": [1,0], "x": 0, "y": 1.75, "w": 1.25},
                {"matrix": [1,1], "x": 1.25, "y": 1.75},
                {"matrix": [1,2], "x": 2.25, "y": 1.2},
                {"matrix": [1,3], "x": 3.25, "y": 1},
                {"matrix": [1,4], "x": 4.25, "y": 1.2},
                {"matrix": [1,5], "x": 5.25, "y": 1.3},
                {"matrix": [1,6], "x": 6.25, "y": 1.8, "h": 1.25},
                {"matrix": [1,7], "x": 7.25, "y": 1.8, "h": 1.25},

                {"matrix": [6,0], "x": 9.25, "y": 1.8, "h": 1.25},
                {"matrix": [6,1], "x": 10.25, "y": 1.8, "h": 1.25},
                {"matrix": [6,2], "x": 11.25, "y": 1.3},
                {"matrix": [6,3], "x": 12.25, "y": 1.2},
                {"matrix": [6,4], "x": 13.25, "y": 1},
                {"matrix": [6,5], "x": 14.25, "y": 1.2},
                {"matrix": [6,6], "x": 15.25, "y": 1.75},
                {"matrix": [6,7], "x": 16.25, "y": 1.75, "w": 1.25},

                {"matrix": [2,0], "x": 0, "y": 2.75, "w": 1.25},
                {"matrix": [2,1], "x": 1.25, "y": 2.75},
                {"matrix": [2,2], "x": 2.25, "y": 2.2},
                {"matrix": [2,3], "x": 3.25, "y": 2},
                {"matrix": [2,4], "x": 4.25, "y": 2.2},
                {"matrix": [2,5], "x": 5.25, "y": 2.3},

                {"matrix": [7,2], "x": 11.25, "y": 2.3},
                {"matrix": [7,3], "x": 12.25, "y": 2.2},
                {"matrix": [7,4], "x": 13.25, "y": 2},
                {"matrix": [7,5], "x": 14.25, "y": 2.2},
                {"matrix": [7,6], "x": 15.25, "y": 2.75},
                {"matrix": [7,7], "x": 16.25, "y": 2.75, "w": 1.25},

                {"matrix": [3,0], "x": 0, "y": 3.75, "w": 1.25},
                {"matrix": [3,1], "x": 1.25, "y": 3.75},
                {"matrix": [3,2], "x": 2.25, "y": 3.2},
                {"matrix": [3,3], "x": 3.25, "y": 3},
                {"matrix": [3,4], "x": 4.25, "y": 3.2},
                {"matrix": [3,5], "x": 5.25, "y": 3.3},
                {"matrix": [3,6], "x": 6.25, "y": 3.05, "h": 1.25},
                {"matrix": [3,7], "x": 7.25, "y": 3.05, "h": 1.25},

                {"matrix": [8,0], "x": 9.25, "y": 3.05, "h": 1.25},
                {"matrix": [8,1], "x": 10.25, "y": 3.05, "h": 1.25},
                {"matrix": [8,2], "x": 11.25, "y": 3.3},
                {"matrix": [8,3], "x": 12.25, "y": 3.2},
                {"matrix": [8,4], "x": 13.25, "y": 3},
                {"matrix": [8,5], "x": 14.25, "y": 3.2},
                {"matrix": [8,6], "x": 15.25, "y": 3.75},
                {"matrix": [8,7], "x": 16.25, "y": 3.75, "w": 1.25},

                {"matrix": [4,0], "x": 0, "y": 4.75, "w": 1.25},
                {"matrix": [4,1], "x": 1.25, "y": 4.75},
                {"matrix": [4,2], "x": 2.25, "y": 4.2, "w": 1.25},
                {"matrix": [4,3], "x": 3.5, "y": 4.2, "w": 1.25},
                {"matrix": [4,5], "x": 4.75, "y": 4.3, "w": 1.25},
                {"matrix": [4,6], "x": 6, "y": 4.8, "h": 1.25},
                {"matrix": [4,7], "x": 7, "y": 5, "h": 1.25},

                {"matrix": [9,0], "x": 9.5, "y": 5, "h": 1.25},
                {"matrix": [9,1], "x": 10.5, "y": 4.8, "h": 1.25},
                {"matrix": [9,2], "x": 11.5, "y": 4.3, "w": 1.25},
                {"matrix": [9,4], "x": 12.75, "y": 4.2, "w": 1.25},
                {"matrix": [9,5], "x": 14, "y": 4.2, "w": 1.25},
                {"matrix": [9,6], "x": 15.25, "y": 4.75},
                {"matrix": [9,7], "x": 16.25, "y": 4.75, "w": 1.25}
            ]
        }
    }
}

A keyboards/pmk/recore/v3/keymaps/default/keymap.c => keyboards/pmk/recore/v3/keymaps/default/keymap.c +52 -0
@@ 0,0 1,52 @@
// Copyright 2024 Javier Oliver (@joliverMI)
// SPDX-License-Identifier: GPL-2.0-or-later

#include QMK_KEYBOARD_H

enum my_layers {
    _QWERTY,
    _NAV,
    _SYMB,
};

const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
    [_QWERTY] = LAYOUT(
//┌────────┬────────┬────────┬────────┬────────┬────────┬── L1 ──┬── X1 ──┐┌── X1 ──┬── L1 ──┬────────┬────────┬────────┬────────┬────────┬────────┐
   KC_GRV  ,KC_1    ,KC_2    ,KC_3    ,KC_4    ,KC_5   ,MO(_SYMB),MO(_NAV),MO(_NAV),MO(_SYMB),KC_6    ,KC_7    ,KC_8    ,KC_9    ,KC_0    ,KC_MINS ,
//├────────┼────────┼────────┼────────┼────────┼────────┼── X2 ──┼── X3 ──┤├── X3 ──┼── X2 ──┼────────┼────────┼────────┼────────┼────────┼────────┤
   KC_TAB  ,KC_Q    ,KC_W    ,KC_E    ,KC_R    ,KC_T    ,KC_LBRC ,KC_MPLY, KC_PAUS ,KC_RBRC , KC_Y    ,KC_U    ,KC_I    ,KC_O    ,KC_P    ,KC_EQL  ,
//├────────┼────────┼────────┼────────┼────────┼────────┼────────┴────────┘└────────┴────────┼────────┼────────┼────────┼────────┴────────┴────────┤
   KC_ESC  ,KC_A    ,KC_S    ,KC_D    ,KC_F    ,KC_G    ,                                     KC_H    ,KC_J    ,KC_K    ,KC_L    ,KC_SCLN ,KC_QUOT ,
//├────────┼────────┼────────┼────────┼────────┼────────┼────────┬────────┐┌────────┬────────┼────────┼────────┼────────┼────────┼────────┼────────┤
   KC_LSFT ,KC_Z    ,KC_X    ,KC_C    ,KC_V    ,KC_B    ,KC_PGUP ,KC_PGDN , KC_HOME ,KC_END , KC_N    ,KC_M    ,KC_COMM ,KC_DOT  ,KC_SLSH ,KC_RSFT ,
//├────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┘└────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┤
   KC_LGUI ,KC_PMNS ,MO(_NAV) ,KC_LALT ,KC_LCTL ,KC_BSPC ,KC_DEL  ,                   KC_ENT, KC_SPC  ,MO(_NAV),KC_RALT ,KC_RCTL ,KC_LEFT ,KC_RGHT 
//└────────┴────────┴── T1 ──┴── T2 ──┴── T3 ──┴── T4 ──┴── T5 ──┘                  └── T5 ──┴── T4 ──┴── T3 ──┴── T2 ──┴── T1 ──┴────────┴────────┘
    ),
    [_SYMB] = LAYOUT(
//┌────────┬────────┬────────┬────────┬────────┬────────┬── L1 ──┬── X1 ──┐┌── X1 ──┬── L1 ──┬────────┬────────┬────────┬────────┬────────┬────────┐
   _______ ,KC_F1   ,KC_F2   ,KC_F3   ,KC_F4   ,KC_F5   ,_______ ,_______,  _______ ,_______ ,KC_F6   ,KC_F7   ,KC_F8   ,KC_F9   ,KC_F10  ,_______ ,
//├────────┼────────┼────────┼────────┼────────┼────────┼── X2 ──┼── X3 ──┤├── X3 ──┼── X2 ──┼────────┼────────┼────────┼────────┼────────┼────────┤
   _______ ,KC_EXLM ,KC_AT   ,KC_LCBR ,KC_RCBR ,KC_PIPE ,_______ ,_______,  _______ ,KC_RCBR ,KC_PSLS ,KC_P7   ,KC_P8   ,KC_P9   ,KC_PMNS ,_______ ,
//├────────┼────────┼────────┼────────┼────────┼────────┼────────┴────────┘└────────┴────────┼────────┼────────┼────────┼────────┴────────┴────────┤
   _______ ,KC_HASH ,KC_DLR  ,KC_LBRC ,KC_RBRC ,KC_GRV  ,                                     KC_PAST ,KC_P4   ,KC_P5   ,KC_P6   ,KC_PPLS ,_______ ,
//├────────┼────────┼────────┼────────┼────────┼────────┼────────┬────────┐┌────────┬────────┼────────┼────────┼────────┼────────┼────────┼────────┤
   _______ ,KC_PERC ,KC_CIRC ,KC_LPRN ,KC_RPRN ,KC_TILD ,_______ ,_______ , _______ ,_______ ,KC_P0   ,KC_P1   ,KC_P2   ,KC_P3   ,KC_PENT ,_______ ,
//├────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┘└────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┤
   _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ ,                   KC_ENT  ,_______ ,_______ ,_______ ,KC_PDOT ,KC_PENT ,_______ 
//└────────┴────────┴── T1 ──┴── T2 ──┴── T3 ──┴── T4 ──┴── T5 ──┘                  └── T5 ──┴── T4 ──┴── T3 ──┴── T2 ──┴── T1 ──┴────────┴────────┘
    ),
    [_NAV] = LAYOUT(
//┌────────┬────────┬────────┬────────┬────────┬────────┬── L1 ──┬── X1 ──┐┌── X1 ──┬── L1 ──┬────────┬────────┬────────┬────────┬────────┬────────┐
   _______ ,XXXXXXX ,XXXXXXX ,KC_UP   ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,KC_UP   ,XXXXXXX ,XXXXXXX ,QK_BOOT ,
//├────────┼────────┼────────┼────────┼────────┼────────┼── X2 ──┼── X3 ──┤├── X3 ──┼── X2 ──┼────────┼────────┼────────┼────────┼────────┼────────┤
   _______ ,XXXXXXX ,XXXXXXX ,KC_UP   ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,KC_UP   ,XXXXXXX ,XXXXXXX ,XXXXXXX ,
//├────────┼────────┼────────┼────────┼────────┼────────┼────────┴────────┘└────────┴────────┼────────┼────────┼────────┼────────┴────────┴────────┤
   _______ ,KC_LEFT ,KC_LEFT ,KC_DOWN ,KC_RGHT ,KC_RGHT ,                                     KC_LEFT ,KC_LEFT ,KC_DOWN ,KC_RGHT ,KC_RGHT ,XXXXXXX ,
//├────────┼────────┼────────┼────────┼────────┼────────┼────────┬────────┐┌────────┬────────┼────────┼────────┼────────┼────────┼────────┼────────┤
   _______ ,XXXXXXX ,XXXXXXX ,KC_DOWN ,XXXXXXX ,XXXXXXX ,_______ ,_______ , _______ ,_______ ,XXXXXXX ,XXXXXXX ,KC_DOWN ,XXXXXXX ,XXXXXXX ,XXXXXXX ,
//├────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┘└────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┤
   _______ ,XXXXXXX ,XXXXXXX ,_______ ,_______ ,XXXXXXX ,XXXXXXX ,                   XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,_______ ,XXXXXXX ,EE_CLR
//└────────┴────────┴── T1 ──┴── T2 ──┴── T3 ──┴── T4 ──┴── T5 ──┘                  └── T5 ──┴── T4 ──┴── T3 ──┴── T2 ──┴── T1 ──┴────────┴────────┘
    )
};

A keyboards/pmk/recore/v3/keymaps/via/keymap.c => keyboards/pmk/recore/v3/keymaps/via/keymap.c +52 -0
@@ 0,0 1,52 @@
// Copyright 2024 Javier Oliver (@joliverMI)
// SPDX-License-Identifier: GPL-2.0-or-later

#include QMK_KEYBOARD_H

enum my_layers {
    _QWERTY,
    _NAV,
    _SYMB,
};

const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
    [_QWERTY] = LAYOUT(
//┌────────┬────────┬────────┬────────┬────────┬────────┬── L1 ──┬── X1 ──┐┌── X1 ──┬── L1 ──┬────────┬────────┬────────┬────────┬────────┬────────┐
   KC_GRV  ,KC_1    ,KC_2    ,KC_3    ,KC_4    ,KC_5   ,MO(_SYMB),MO(_NAV),MO(_NAV),MO(_SYMB),KC_6    ,KC_7    ,KC_8    ,KC_9    ,KC_0    ,KC_MINS ,
//├────────┼────────┼────────┼────────┼────────┼────────┼── X2 ──┼── X3 ──┤├── X3 ──┼── X2 ──┼────────┼────────┼────────┼────────┼────────┼────────┤
   KC_TAB  ,KC_Q    ,KC_W    ,KC_E    ,KC_R    ,KC_T    ,KC_LBRC ,KC_MPLY, KC_PAUS ,KC_RBRC , KC_Y    ,KC_U    ,KC_I    ,KC_O    ,KC_P    ,KC_EQL  ,
//├────────┼────────┼────────┼────────┼────────┼────────┼────────┴────────┘└────────┴────────┼────────┼────────┼────────┼────────┴────────┴────────┤
   KC_ESC  ,KC_A    ,KC_S    ,KC_D    ,KC_F    ,KC_G    ,                                     KC_H    ,KC_J    ,KC_K    ,KC_L    ,KC_SCLN ,KC_QUOT ,
//├────────┼────────┼────────┼────────┼────────┼────────┼────────┬────────┐┌────────┬────────┼────────┼────────┼────────┼────────┼────────┼────────┤
   KC_LSFT ,KC_Z    ,KC_X    ,KC_C    ,KC_V    ,KC_B    ,KC_PGUP ,KC_PGDN , KC_HOME ,KC_END , KC_N    ,KC_M    ,KC_COMM ,KC_DOT  ,KC_SLSH ,KC_RSFT ,
//├────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┘└────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┤
   KC_LGUI ,KC_PMNS ,MO(_NAV) ,KC_LALT ,KC_LCTL ,KC_BSPC ,KC_DEL  ,                   KC_ENT, KC_SPC  ,MO(_NAV),KC_RALT ,KC_RCTL ,KC_LEFT ,KC_RGHT 
//└────────┴────────┴── T1 ──┴── T2 ──┴── T3 ──┴── T4 ──┴── T5 ──┘                  └── T5 ──┴── T4 ──┴── T3 ──┴── T2 ──┴── T1 ──┴────────┴────────┘
    ),
    [_SYMB] = LAYOUT(
//┌────────┬────────┬────────┬────────┬────────┬────────┬── L1 ──┬── X1 ──┐┌── X1 ──┬── L1 ──┬────────┬────────┬────────┬────────┬────────┬────────┐
   _______ ,KC_F1   ,KC_F2   ,KC_F3   ,KC_F4   ,KC_F5   ,_______ ,_______,  _______ ,_______ ,KC_F6   ,KC_F7   ,KC_F8   ,KC_F9   ,KC_F10  ,_______ ,
//├────────┼────────┼────────┼────────┼────────┼────────┼── X2 ──┼── X3 ──┤├── X3 ──┼── X2 ──┼────────┼────────┼────────┼────────┼────────┼────────┤
   _______ ,KC_EXLM ,KC_AT   ,KC_LCBR ,KC_RCBR ,KC_PIPE ,_______ ,_______,  _______ ,KC_RCBR ,KC_PSLS ,KC_P7   ,KC_P8   ,KC_P9   ,KC_PMNS ,_______ ,
//├────────┼────────┼────────┼────────┼────────┼────────┼────────┴────────┘└────────┴────────┼────────┼────────┼────────┼────────┴────────┴────────┤
   _______ ,KC_HASH ,KC_DLR  ,KC_LBRC ,KC_RBRC ,KC_GRV  ,                                     KC_PAST ,KC_P4   ,KC_P5   ,KC_P6   ,KC_PPLS ,_______ ,
//├────────┼────────┼────────┼────────┼────────┼────────┼────────┬────────┐┌────────┬────────┼────────┼────────┼────────┼────────┼────────┼────────┤
   _______ ,KC_PERC ,KC_CIRC ,KC_LPRN ,KC_RPRN ,KC_TILD ,_______ ,_______ , _______ ,_______ ,KC_P0   ,KC_P1   ,KC_P2   ,KC_P3   ,KC_PENT ,_______ ,
//├────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┘└────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┤
   _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,_______ ,                   KC_ENT  ,_______ ,_______ ,_______ ,KC_PDOT ,KC_PENT ,_______ 
//└────────┴────────┴── T1 ──┴── T2 ──┴── T3 ──┴── T4 ──┴── T5 ──┘                  └── T5 ──┴── T4 ──┴── T3 ──┴── T2 ──┴── T1 ──┴────────┴────────┘
    ),
    [_NAV] = LAYOUT(
//┌────────┬────────┬────────┬────────┬────────┬────────┬── L1 ──┬── X1 ──┐┌── X1 ──┬── L1 ──┬────────┬────────┬────────┬────────┬────────┬────────┐
   _______ ,XXXXXXX ,XXXXXXX ,KC_UP   ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,KC_UP   ,XXXXXXX ,XXXXXXX ,QK_BOOT ,
//├────────┼────────┼────────┼────────┼────────┼────────┼── X2 ──┼── X3 ──┤├── X3 ──┼── X2 ──┼────────┼────────┼────────┼────────┼────────┼────────┤
   _______ ,XXXXXXX ,XXXXXXX ,KC_UP   ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,KC_UP   ,XXXXXXX ,XXXXXXX ,XXXXXXX ,
//├────────┼────────┼────────┼────────┼────────┼────────┼────────┴────────┘└────────┴────────┼────────┼────────┼────────┼────────┴────────┴────────┤
   _______ ,KC_LEFT ,KC_LEFT ,KC_DOWN ,KC_RGHT ,KC_RGHT ,                                     KC_LEFT ,KC_LEFT ,KC_DOWN ,KC_RGHT ,KC_RGHT ,XXXXXXX ,
//├────────┼────────┼────────┼────────┼────────┼────────┼────────┬────────┐┌────────┬────────┼────────┼────────┼────────┼────────┼────────┼────────┤
   _______ ,XXXXXXX ,XXXXXXX ,KC_DOWN ,XXXXXXX ,XXXXXXX ,_______ ,_______ , _______ ,_______ ,XXXXXXX ,XXXXXXX ,KC_DOWN ,XXXXXXX ,XXXXXXX ,XXXXXXX ,
//├────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┘└────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┤
   _______ ,XXXXXXX ,XXXXXXX ,_______ ,_______ ,XXXXXXX ,XXXXXXX ,                   XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,_______ ,XXXXXXX ,EE_CLR
//└────────┴────────┴── T1 ──┴── T2 ──┴── T3 ──┴── T4 ──┴── T5 ──┘                  └── T5 ──┴── T4 ──┴── T3 ──┴── T2 ──┴── T1 ──┴────────┴────────┘
    )
};

A keyboards/pmk/recore/v3/keymaps/via/rules.mk => keyboards/pmk/recore/v3/keymaps/via/rules.mk +1 -0
@@ 0,0 1,1 @@
VIA_ENABLE = yes

A keyboards/pmk/recore/v3/readme.md => keyboards/pmk/recore/v3/readme.md +27 -0
@@ 0,0 1,27 @@
# recorev3

![recorev3](https://i.imgur.com/28fVsP3.jpeg)

The Posey Recore keyboard is an ortholinear keyboard designed from the gournd up for gaming. By pushing the left half of your split keyboard out of the way, you'll be able to game with better posture and increase mouse movement. The thumb cluster arc can be remapped to control and shift for use in gaming.

* Keyboard Maintainer: [Javier Oliver](https://github.com/joliverMI)
* Hardware Supported: recore_v3 and logic_module_v1
* Hardware Availability: [poseysmechanicalkeyboards.com](https://poseysmechanicalkeyboards.com/)

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

    make pmk/recore/v3:default
    
Flashing example for this keyboard:

    make pmk/recore/v3: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 Escape and plug in the keyboard
* **Physical reset button**: Hold the button on the bottom of the keyboard while you plug in the USB
* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available

A keyboards/pmk/recore/v3/rules.mk => keyboards/pmk/recore/v3/rules.mk +1 -0
@@ 0,0 1,1 @@
SERIAL_DRIVER = vendor

Do not follow this link