~ruther/qmk_firmware

58600146a9d7290c6cc36e026d0d535826c495a6 — Fernando Rodrigues 3 years ago 235c666
Added BareDev keyboard (#15518)

* Added BareDev keyboard

* Updated readme.md to reflect handwired directory

* Simplified keycodes for basic GUI + [KEY]
A keyboards/handwired/baredev/rev1/config.h => keyboards/handwired/baredev/rev1/config.h +25 -0
@@ 0,0 1,25 @@
/*
Copyright 2021 Fernando "ManoShu" Rodrigues

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 2 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program.  If not, see <http://www.gnu.org/licenses/>.
*/

#pragma once

#include "config_common.h"

/* disable these deprecated features by default */
#define NO_ACTION_MACRO
#define NO_ACTION_FUNCTION


A keyboards/handwired/baredev/rev1/info.json => keyboards/handwired/baredev/rev1/info.json +706 -0
@@ 0,0 1,706 @@
{
    "manufacturer": "Fernando \"ManoShu\" Rodrigues",
    "keyboard_name": "BareDev (rev1)",
    "url": "https://github.com/ManoShu/BareDev",
    "maintainer": "ManoShu",
    "debounce": 5,
    "diode_direction": "COL2ROW",
    "tapping": {
        "term": 175
    },
    "matrix_pins": {
        "unused": [
            "F1",
            "F4",
            "F5",
            "F6",
            "F7"
        ],
        "cols": [
            "B6",
            "B7",
            "C6",
            "C7",
            "D0",
            "D1",
            "D2",
            "D3",
            "D4",
            "D5",
            "D6",
            "D7",
            "E6",
            "F0"
        ],
        "rows": [
            "B0",
            "B1",
            "B2",
            "B3",
            "B4",
            "B5"
        ]
    },
    "usb": {
        "vid": "0xFEED",
        "pid": "0x4126",
        "device_ver": "0x0001",
        "polling_interval": 1,
        "shared_endpoint": {
            "keyboard": true
        }
    },
    "processor": "atmega32u4",
    "bootloader": "atmel-dfu",
    "features": {
        "audio": false,
        "bootmagic": true,
        "command": false,
        "console": false,
        "extrakey": true,
        "midi": false,
        "mousekey": true,
        "nkro": true,
        "rgblight": false,
        "unicode": false,
        "bluetooth": false,
        "backlight": false,
        "sleep_led": false
    },
    "layout_aliases": {
        "LAYOUT": "LAYOUT_abnt2"
    },
    "layouts": {
        "LAYOUT_abnt2": {
            "layout": [
                {
                    "matrix": [
                        0,
                        0
                    ],
                    "x": 0,
                    "y": 0
                },
                {
                    "matrix": [
                        0,
                        2
                    ],
                    "x": 2,
                    "y": 0
                },
                {
                    "matrix": [
                        0,
                        3
                    ],
                    "x": 3,
                    "y": 0
                },
                {
                    "matrix": [
                        0,
                        4
                    ],
                    "x": 4,
                    "y": 0
                },
                {
                    "matrix": [
                        0,
                        5
                    ],
                    "x": 5,
                    "y": 0
                },
                {
                    "matrix": [
                        0,
                        6
                    ],
                    "x": 6.5,
                    "y": 0
                },
                {
                    "matrix": [
                        0,
                        7
                    ],
                    "x": 7.5,
                    "y": 0
                },
                {
                    "matrix": [
                        0,
                        8
                    ],
                    "x": 8.5,
                    "y": 0
                },
                {
                    "matrix": [
                        0,
                        9
                    ],
                    "x": 9.5,
                    "y": 0
                },
                {
                    "matrix": [
                        0,
                        10
                    ],
                    "x": 11,
                    "y": 0
                },
                {
                    "matrix": [
                        0,
                        11
                    ],
                    "x": 12,
                    "y": 0
                },
                {
                    "matrix": [
                        0,
                        12
                    ],
                    "x": 13,
                    "y": 0
                },
                {
                    "matrix": [
                        0,
                        13
                    ],
                    "x": 14,
                    "y": 0
                },
                {
                    "matrix": [
                        1,
                        0
                    ],
                    "x": 0,
                    "y": 1.25
                },
                {
                    "matrix": [
                        1,
                        1
                    ],
                    "x": 1,
                    "y": 1.25
                },
                {
                    "matrix": [
                        1,
                        2
                    ],
                    "x": 2,
                    "y": 1.25
                },
                {
                    "matrix": [
                        1,
                        3
                    ],
                    "x": 3,
                    "y": 1.25
                },
                {
                    "matrix": [
                        1,
                        4
                    ],
                    "x": 4,
                    "y": 1.25
                },
                {
                    "matrix": [
                        1,
                        5
                    ],
                    "x": 5,
                    "y": 1.25
                },
                {
                    "matrix": [
                        1,
                        6
                    ],
                    "x": 6,
                    "y": 1.25
                },
                {
                    "matrix": [
                        1,
                        7
                    ],
                    "x": 7,
                    "y": 1.25
                },
                {
                    "matrix": [
                        1,
                        8
                    ],
                    "x": 8,
                    "y": 1.25
                },
                {
                    "matrix": [
                        1,
                        9
                    ],
                    "x": 9,
                    "y": 1.25
                },
                {
                    "matrix": [
                        1,
                        10
                    ],
                    "x": 10,
                    "y": 1.25
                },
                {
                    "matrix": [
                        1,
                        11
                    ],
                    "x": 11,
                    "y": 1.25
                },
                {
                    "matrix": [
                        1,
                        12
                    ],
                    "x": 12,
                    "y": 1.25
                },
                {
                    "matrix": [
                        1,
                        13
                    ],
                    "x": 13,
                    "y": 1.25,
                    "w": 2
                },
                {
                    "matrix": [
                        2,
                        0
                    ],
                    "x": 0,
                    "y": 2.25,
                    "w": 1.5
                },
                {
                    "matrix": [
                        2,
                        1
                    ],
                    "x": 1.5,
                    "y": 2.25
                },
                {
                    "matrix": [
                        2,
                        2
                    ],
                    "x": 2.5,
                    "y": 2.25
                },
                {
                    "matrix": [
                        2,
                        3
                    ],
                    "x": 3.5,
                    "y": 2.25
                },
                {
                    "matrix": [
                        2,
                        4
                    ],
                    "x": 4.5,
                    "y": 2.25
                },
                {
                    "matrix": [
                        2,
                        5
                    ],
                    "x": 5.5,
                    "y": 2.25
                },
                {
                    "matrix": [
                        2,
                        6
                    ],
                    "x": 6.5,
                    "y": 2.25
                },
                {
                    "matrix": [
                        2,
                        7
                    ],
                    "x": 7.5,
                    "y": 2.25
                },
                {
                    "matrix": [
                        2,
                        8
                    ],
                    "x": 8.5,
                    "y": 2.25
                },
                {
                    "matrix": [
                        2,
                        9
                    ],
                    "x": 9.5,
                    "y": 2.25
                },
                {
                    "matrix": [
                        2,
                        10
                    ],
                    "x": 10.5,
                    "y": 2.25
                },
                {
                    "matrix": [
                        2,
                        11
                    ],
                    "x": 11.5,
                    "y": 2.25
                },
                {
                    "matrix": [
                        2,
                        12
                    ],
                    "x": 12.5,
                    "y": 2.25
                },
                {
                    "matrix": [
                        2,
                        13
                    ],
                    "x": 13.75,
                    "y": 2.25,
                    "w": 1.25,
                    "h": 2
                },
                {
                    "matrix": [
                        3,
                        0
                    ],
                    "x": 0,
                    "y": 3.25,
                    "w": 1.75
                },
                {
                    "matrix": [
                        3,
                        1
                    ],
                    "x": 1.75,
                    "y": 3.25
                },
                {
                    "matrix": [
                        3,
                        2
                    ],
                    "x": 2.75,
                    "y": 3.25
                },
                {
                    "matrix": [
                        3,
                        3
                    ],
                    "x": 3.75,
                    "y": 3.25
                },
                {
                    "matrix": [
                        3,
                        4
                    ],
                    "x": 4.75,
                    "y": 3.25
                },
                {
                    "matrix": [
                        3,
                        5
                    ],
                    "x": 5.75,
                    "y": 3.25
                },
                {
                    "matrix": [
                        3,
                        6
                    ],
                    "x": 6.75,
                    "y": 3.25
                },
                {
                    "matrix": [
                        3,
                        7
                    ],
                    "x": 7.75,
                    "y": 3.25
                },
                {
                    "matrix": [
                        3,
                        8
                    ],
                    "x": 8.75,
                    "y": 3.25
                },
                {
                    "matrix": [
                        3,
                        9
                    ],
                    "x": 9.75,
                    "y": 3.25
                },
                {
                    "matrix": [
                        3,
                        10
                    ],
                    "x": 10.75,
                    "y": 3.25
                },
                {
                    "matrix": [
                        3,
                        11
                    ],
                    "x": 11.75,
                    "y": 3.25
                },
                {
                    "matrix": [
                        3,
                        12
                    ],
                    "x": 12.75,
                    "y": 3.25
                },
                {
                    "matrix": [
                        4,
                        0
                    ],
                    "x": 0,
                    "y": 4.25,
                    "w": 1.25
                },
                {
                    "matrix": [
                        4,
                        1
                    ],
                    "x": 1.25,
                    "y": 4.25
                },
                {
                    "matrix": [
                        4,
                        2
                    ],
                    "x": 2.25,
                    "y": 4.25
                },
                {
                    "matrix": [
                        4,
                        3
                    ],
                    "x": 3.25,
                    "y": 4.25
                },
                {
                    "matrix": [
                        4,
                        4
                    ],
                    "x": 4.25,
                    "y": 4.25
                },
                {
                    "matrix": [
                        4,
                        5
                    ],
                    "x": 5.25,
                    "y": 4.25
                },
                {
                    "matrix": [
                        4,
                        6
                    ],
                    "x": 6.25,
                    "y": 4.25
                },
                {
                    "matrix": [
                        4,
                        7
                    ],
                    "x": 7.25,
                    "y": 4.25
                },
                {
                    "matrix": [
                        4,
                        8
                    ],
                    "x": 8.25,
                    "y": 4.25
                },
                {
                    "matrix": [
                        4,
                        9
                    ],
                    "x": 9.25,
                    "y": 4.25
                },
                {
                    "matrix": [
                        4,
                        10
                    ],
                    "x": 10.25,
                    "y": 4.25
                },
                {
                    "matrix": [
                        4,
                        11
                    ],
                    "x": 11.25,
                    "y": 4.25
                },
                {
                    "matrix": [
                        4,
                        12
                    ],
                    "x": 12.25,
                    "y": 4.25
                },
                {
                    "matrix": [
                        4,
                        13
                    ],
                    "x": 13.25,
                    "y": 4.25
                },
                {
                    "matrix": [
                        5,
                        0
                    ],
                    "x": 0,
                    "y": 5.25,
                    "w": 1.25
                },
                {
                    "matrix": [
                        5,
                        1
                    ],
                    "x": 1.25,
                    "y": 5.25,
                    "w": 1.25
                },
                {
                    "matrix": [
                        5,
                        2
                    ],
                    "x": 2.5,
                    "y": 5.25,
                    "w": 1.25
                },
                {
                    "matrix": [
                        5,
                        6
                    ],
                    "x": 3.75,
                    "y": 5.25,
                    "w": 6.25
                },
                {
                    "matrix": [
                        5,
                        9
                    ],
                    "x": 10,
                    "y": 5.25,
                    "w": 1.25
                },
                {
                    "matrix": [
                        5,
                        10
                    ],
                    "x": 11.25,
                    "y": 5.25
                },
                {
                    "matrix": [
                        5,
                        11
                    ],
                    "x": 12.25,
                    "y": 5.25
                },
                {
                    "matrix": [
                        5,
                        12
                    ],
                    "x": 13.25,
                    "y": 5.25
                },
                {
                    "matrix": [
                        5,
                        13
                    ],
                    "x": 14.25,
                    "y": 5.25
                }
            ]
        }
    }
}
\ No newline at end of file

A keyboards/handwired/baredev/rev1/keymaps/default/keymap.c => keyboards/handwired/baredev/rev1/keymaps/default/keymap.c +56 -0
@@ 0,0 1,56 @@
/* Copyright 2021 Fernando "ManoShu" Rodrigues
 *
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 2 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */
#include QMK_KEYBOARD_H

#include "keymap_br_abnt2.h"

enum { 
    LAYER_BASE, 
    LAYER_FUNCTIONS 
};

const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
    [LAYER_BASE] = LAYOUT(
        /* ┌─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┐ */
              KC_ESC,             KC_F1,    KC_F2,    KC_F3,    KC_F4,    KC_F5,    KC_F6,    KC_F7,    KC_F8,              KC_F9,    KC_F10,  KC_F11,   KC_F12,
        /* ├─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┴─────────┤ */
             BR_QUOT,   BR_1,     BR_2,     BR_3,      BR_4,    BR_5,     BR_6,      BR_7,    BR_8,     BR_9,     BR_0,    BR_MINS,  BR_EQL,        KC_BSPC,
        /* ├─────────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬──────────────┤ */
                KC_TAB,      BR_Q,     BR_W,     BR_E,     BR_R,     BR_T,     BR_Y,     BR_U,     BR_I,     BR_O,     BR_P,    BR_ACUT,  BR_LBRC,      KC_ENT,
        /* ├──────────────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬           ┤ */
                  KC_CAPS,      BR_A,     BR_S,      BR_D,    BR_F,     BR_G,     BR_H,     BR_J,     BR_K,     BR_L,    BR_CCED,  BR_TILD,  BR_RBRC,
        /* ├───────────┬─────┴───┬─────┴───┬─────┴───┬─────┴───┬─────┴───┬─────┴───┬─────┴───┬─────┴───┬─────┴───┬─────┴───┬─────┴───┬─────┴─────────┴─┬─────────┤ */
              KC_LSFT,   BR_BSLS,   BR_Z,     BR_X,     BR_C,     BR_V,     BR_B,     BR_N,     BR_M,    BR_COMM,  BR_DOT,   BR_SCLN,      BR_SLSH,       KC_UP,
        /* ├───────────┼─────────┴─┬───────┴───┬─────┴─────────┴─────────┴─────────┴─────────┴─────────┴───────┬─┴───────┬─┴───────┬─┴───────┬─────────┼─────────┤ */
              KC_LCTL,   KC_LGUI,     KC_LALT,                                KC_SPC,                            KC_APP,    KC_DEL,  KC_LEFT,  KC_DOWN,  KC_RGHT
        /* └───────────┴───────────┴───────────┴───────────────────────────────────────────────────────────────┴─────────┴─────────┴─────────┴─────────┴─────────┘ */
    ),
    [LAYER_FUNCTIONS] = LAYOUT(
        /* ┌─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┐ */
              RESET,             _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,            _______,  KC_PSCR,  KC_SLCK,  KC_PAUS, 
        /* ├─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┴─────────┤ */
             _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,       _______,
        /* ├─────────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬──────────────┤ */
               _______,     KC_MPLY,  KC_MUTE,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,      _______,
        /* ├──────────────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬           ┤ */
                 _______,      KC_MPRV,  KC_MNXT,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,    
        /* ├───────────┬─────┴───┬─────┴───┬─────┴───┬─────┴───┬─────┴───┬─────┴───┬─────┴───┬─────┴───┬─────┴───┬─────┴───┬─────┴───┬─────┴─────────┴─┬─────────┤ */
              _______,   _______,  KC_VOLU,  KC_VOLD,  KC_CALC,  _______,  _______,  _______,  _______,  _______,  _______,  _______,      _______,      KC_PGUP, 
        /* ├───────────┼─────────┴─┬───────┴───┬─────┴─────────┴─────────┴─────────┴─────────┴─────────┴───────┬─┴───────┬─┴───────┬─┴───────┬─────────┼─────────┤ */
              _______,    _______,    _______,                                _______,                           _______,   KC_INS,  KC_HOME,  KC_PGDN,  KC_END
        /* └───────────┴───────────┴───────────┴───────────────────────────────────────────────────────────────┴─────────┴─────────┴─────────┴─────────┴─────────┘ */
    )
};
\ No newline at end of file

A keyboards/handwired/baredev/rev1/keymaps/default/readme.md => keyboards/handwired/baredev/rev1/keymaps/default/readme.md +7 -0
@@ 0,0 1,7 @@
![BareDev Layout Image](https://i.imgur.com/uP8Jzvi.png)

# Default BareDev layout

Has all the functions of a ABNT TKL keyboard, sans right shift.

Basic media functions also included.
\ No newline at end of file

A keyboards/handwired/baredev/rev1/keymaps/manoshu/keymap.c => keyboards/handwired/baredev/rev1/keymaps/manoshu/keymap.c +99 -0
@@ 0,0 1,99 @@
/* Copyright 2021 Fernando "ManoShu" Rodrigues
 *
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 2 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */
#include QMK_KEYBOARD_H

#include "keymap_br_abnt2.h"
#include "sendstring_br_abnt2.h"

enum { 
    LAYER_BASE, 
    LAYER_FUNCTIONS 
};

#define L_FUNCT MO(LAYER_FUNCTIONS)
#define W_CHOLD LGUI_T(KC_CAPS)

//Combination keycodes
#define KC_PSBR C(KC_PAUSE)    // Ctrl+Pause/Break
#define KC_SNIP SGUI(BR_S)     // Screen Snip (GUI + Shift + S)
#define KC_WRUN G(BR_R)        // Run (GUI + R)
#define KC_WLCK G(BR_L)        // Lock (GUI + L)
#define KC_WDSK G(BR_D)        // Desktop (GUI + D)
#define KC_WEXP G(BR_E)        // Explorer (GUI + E)
#define KC_WPSE G(KC_PAUSE)    // System Properties (GUI + Pause)
#define KC_WMGP G(BR_EQL)      // Magnify (+)
#define KC_WMGM G(BR_MINS)     // Magnify (-)

enum custom_keycodes {
    KC_WPRN = SAFE_RANGE,  // Project (P)
    KC_WSPC                // Input Select (Space)
};

layer_state_t layer_state_set_user(layer_state_t state) {
    if (get_highest_layer(state) == LAYER_BASE) {
        unregister_mods(MOD_MASK_GUI);
    }
    return state;
}

bool process_record_user(uint16_t keycode, keyrecord_t *record) {
    if(keycode == KC_WPRN || keycode == KC_WSPC) {
        if (record->event.pressed) {

            register_code(KC_LGUI);

            if(keycode == KC_WPRN) {
                tap_code(KC_P);
            } else if (keycode == KC_WSPC) {
                tap_code(KC_SPACE);
            }
        }
    }
    return true;
};

const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
    [LAYER_BASE] = LAYOUT(
        /* ┌─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┐ */
              KC_ESC,             KC_F1,    KC_F2,    KC_F3,    KC_F4,    KC_F5,    KC_F6,    KC_F7,    KC_F8,              KC_F9,    KC_F10,  KC_F11,   KC_F12,
        /* ├─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┴─────────┤ */
             BR_QUOT,   BR_1,     BR_2,     BR_3,      BR_4,    BR_5,     BR_6,      BR_7,    BR_8,     BR_9,     BR_0,    BR_MINS,  BR_EQL,        KC_BSPC,
        /* ├─────────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬──────────────┤ */
                KC_TAB,      BR_Q,     BR_W,     BR_E,     BR_R,     BR_T,     BR_Y,     BR_U,     BR_I,     BR_O,     BR_P,    BR_ACUT,  BR_LBRC,      KC_ENT,
        /* ├──────────────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬           ┤ */
                  W_CHOLD,      BR_A,     BR_S,      BR_D,    BR_F,     BR_G,     BR_H,     BR_J,     BR_K,     BR_L,    BR_CCED,  BR_TILD,  BR_RBRC,
        /* ├───────────┬─────┴───┬─────┴───┬─────┴───┬─────┴───┬─────┴───┬─────┴───┬─────┴───┬─────┴───┬─────┴───┬─────┴───┬─────┴───┬─────┴─────────┴─┬─────────┤ */
              KC_LSFT,   BR_BSLS,   BR_Z,     BR_X,     BR_C,     BR_V,     BR_B,     BR_N,     BR_M,    BR_COMM,  BR_DOT,   BR_SCLN,      BR_SLSH,       KC_UP,
        /* ├───────────┼─────────┴─┬───────┴───┬─────┴─────────┴─────────┴─────────┴─────────┴─────────┴───────┬─┴───────┬─┴───────┬─┴───────┬─────────┼─────────┤ */
              KC_LCTL,   L_FUNCT,    KC_LALT,                                 KC_SPC,                            KC_APP,    KC_DEL,  KC_LEFT,  KC_DOWN,  KC_RGHT
        /* └───────────┴───────────┴───────────┴───────────────────────────────────────────────────────────────┴─────────┴─────────┴─────────┴─────────┴─────────┘ */
    ),
    [LAYER_FUNCTIONS] = LAYOUT(
        /* ┌─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┐ */
              RESET,             _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,            _______,  _______,  KC_PSBR,  KC_SNIP, 
        /* ├─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┴─────────┤ */
             _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  KC_WMGM,  KC_WMGP,       _______,
        /* ├─────────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬──────────────┤ */
               _______,     KC_MPLY,  KC_MUTE,  KC_WEXP,  KC_WRUN,  _______,  _______,  _______,  _______,  _______,  KC_WPRN,  _______,  _______,      _______,
        /* ├──────────────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬           ┤ */
                 _______,      KC_MPRV,  KC_MNXT,  KC_WDSK,  _______,  _______,  _______,  _______,  _______,  KC_WLCK,  _______,  _______,  _______,    
        /* ├───────────┬─────┴───┬─────┴───┬─────┴───┬─────┴───┬─────┴───┬─────┴───┬─────┴───┬─────┴───┬─────┴───┬─────┴───┬─────┴───┬─────┴─────────┴─┬─────────┤ */
              _______,   _______,  KC_VOLU,  KC_VOLD,  KC_CALC,  _______,  _______,  _______,  _______,  _______,  _______,  _______,      _______,      KC_PGUP, 
        /* ├───────────┼─────────┴─┬───────┴───┬─────┴─────────┴─────────┴─────────┴─────────┴─────────┴───────┬─┴───────┬─┴───────┬─┴───────┬─────────┼─────────┤ */
              _______,    _______,    _______,                                KC_WSPC,                           _______,   KC_INS,  KC_HOME,  KC_PGDN,  KC_END
        /* └───────────┴───────────┴───────────┴───────────────────────────────────────────────────────────────┴─────────┴─────────┴─────────┴─────────┴─────────┘ */
    )
};
\ No newline at end of file

A keyboards/handwired/baredev/rev1/keymaps/manoshu/readme.md => keyboards/handwired/baredev/rev1/keymaps/manoshu/readme.md +16 -0
@@ 0,0 1,16 @@
![BareDev Layout Image](https://i.imgur.com/FXye4Hn.png)

# ManoShu's custom layout

Has all the functions of a ABNT TKL keyboard, sans right shift.

Basic media functions also included.

Trying to emulate where notebooks/smaller OEM keyboard put the function key, for this reason the GUI key was moved and it can be used by holding the Caps Lock key.

To not use the new GUI position very often, commonly used GUI + [X] commands are sent using `SEND_STRING()`, `(un)register_code()` and `tap_code()`.

## Why you didn't used `LT(FUNCTIONS, KC_LGUI)` on the GUI/FN key?
Because I don't want rely on the tapping term to determine I will send either KC_HOME or snap the active window to the left.

If there is a better way to solve this, please let me know.
\ No newline at end of file

A keyboards/handwired/baredev/rev1/readme.md => keyboards/handwired/baredev/rev1/readme.md +29 -0
@@ 0,0 1,29 @@
# BareDev (rev1)

![PCB](https://i.imgur.com/byquO5u.png)
![Prototype Build](https://i.imgur.com/fkizunN.png)

An open-source, ABNT2-based 70% keyboard, focusing in a smaller footprint while retaining all the functions found on a TKL (Del and arrow keys doubling as the navigational cluster)

* Keyboard Maintainer: [Fernando "ManoShu" Rodrigues](https://github.com/ManoShu)
* Hardware Supported: BareDev rev1 PCB
* Hardware Availability: Files available on [GitHub](https://github.com/ManoShu/BareDev)

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

    make handwired/baredev/rev1:default

Flashing example for this keyboard:

    make handwired/baredev/rev1: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 `RESET` if it is available
\ No newline at end of file

A keyboards/handwired/baredev/rev1/rev1.c => keyboards/handwired/baredev/rev1/rev1.c +17 -0
@@ 0,0 1,17 @@
/* Copyright 2021 Fernando "ManoShu" Rodrigues
 *
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 2 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */

#include "rev1.h"

A keyboards/handwired/baredev/rev1/rev1.h => keyboards/handwired/baredev/rev1/rev1.h +19 -0
@@ 0,0 1,19 @@
/* Copyright 2021 Fernando "ManoShu" Rodrigues
 *
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 2 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */

#pragma once

#include "quantum.h"
\ No newline at end of file

A keyboards/handwired/baredev/rev1/rules.mk => keyboards/handwired/baredev/rev1/rules.mk +0 -0