[Keyboard] Add Idobao Montex RGB (V2) (#16897)
* Add Montex V2 (#10) * Update readme.md * Update rules.mk * Update config.h * Update keyboards/idobao/montex/v2/config.h Co-authored-by: Drashna Jaelre <drashna@live.com> * Update keyboards/idobao/montex/v2/rules.mk Add Layouts Co-authored-by: Drashna Jaelre <drashna@live.com> * Merged code fron work done with @vinorodrigues * Update keyboards/idobao/montex/v2/rules.mk Co-authored-by: Ryan <fauxpark@gmail.com> * Update keyboards/idobao/montex/v2/v2.h Co-authored-by: Ryan <fauxpark@gmail.com> * Update keyboards/idobao/montex/v2/config.h Co-authored-by: Ryan <fauxpark@gmail.com> * Removing via_nug keymap * update to montex code (#11) * remove VIA_QMK_RGBLIGHT_ENABLE * more data driven config, simple copyright headers, some code cleanup Co-authored-by: Drashna Jaelre <drashna@live.com> Co-authored-by: Ryan <fauxpark@gmail.com> Co-authored-by: Vino Rodrigues <366673+vinorodrigues@users.noreply.github.com>
This commit is contained in:
		
							parent
							
								
									d3dfa83b40
								
							
						
					
					
						commit
						8e5f8a5ff9
					
				
					 11 changed files with 478 additions and 0 deletions
				
			
		
							
								
								
									
										93
									
								
								keyboards/idobao/montex/v2/config.h
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										93
									
								
								keyboards/idobao/montex/v2/config.h
									
										
									
									
									
										Executable file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,93 @@
 | 
			
		|||
// Copyright 2022 IBNobody (@IBNobody)
 | 
			
		||||
// SPDX-License-Identifier: GPL-2.0-or-later
 | 
			
		||||
 | 
			
		||||
#pragma once
 | 
			
		||||
 | 
			
		||||
#include "config_common.h"
 | 
			
		||||
 | 
			
		||||
/* LED Matrix & Animations */
 | 
			
		||||
#define RGB_DI_PIN B1
 | 
			
		||||
 | 
			
		||||
#if defined(RGB_DI_PIN) && defined(RGB_MATRIX_ENABLE)
 | 
			
		||||
    #ifndef ID27_DISABLE_UNDERGLOW
 | 
			
		||||
        #define DRIVER_LED_TOTAL 31  // The number of LEDs connected
 | 
			
		||||
    #else
 | 
			
		||||
        #define DRIVER_LED_TOTAL 27  // -4 disabled underglow LEDs
 | 
			
		||||
    #endif
 | 
			
		||||
 | 
			
		||||
    // #define RGBLIGHT_ANIMATIONS  // don't use, please explicitly define
 | 
			
		||||
    // #define RGB_MATRIX_FRAMEBUFFER_EFFECTS  // don't use, too few key to make it look good
 | 
			
		||||
    #define RGB_MATRIX_KEYPRESSES
 | 
			
		||||
 | 
			
		||||
    #define RGB_DISABLE_WHEN_USB_SUSPENDED    // turn off effects when suspended
 | 
			
		||||
    #define RGB_MATRIX_MAXIMUM_BRIGHTNESS 180 // Limit to vendor-recommended value
 | 
			
		||||
 | 
			
		||||
    // RGB Matrix Animation modes. Explicitly enabled
 | 
			
		||||
    // For full list of effects, see:
 | 
			
		||||
    // https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects
 | 
			
		||||
    /* *** Items disabled are visually unappealing in a 5x6 key matrix *** */
 | 
			
		||||
    #define ENABLE_RGB_MATRIX_SOLID_COLOR
 | 
			
		||||
    #define ENABLE_RGB_MATRIX_ALPHAS_MODS
 | 
			
		||||
    #define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN
 | 
			
		||||
    #define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT
 | 
			
		||||
    #define ENABLE_RGB_MATRIX_BREATHING
 | 
			
		||||
    // #define ENABLE_RGB_MATRIX_BAND_SAT
 | 
			
		||||
    // #define ENABLE_RGB_MATRIX_BAND_VAL
 | 
			
		||||
    // #define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT
 | 
			
		||||
    // #define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL
 | 
			
		||||
    // #define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT
 | 
			
		||||
    // #define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL
 | 
			
		||||
    #define ENABLE_RGB_MATRIX_CYCLE_ALL
 | 
			
		||||
    #define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT
 | 
			
		||||
    #define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN
 | 
			
		||||
    // #define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON
 | 
			
		||||
    #define ENABLE_RGB_MATRIX_CYCLE_OUT_IN
 | 
			
		||||
    // #define ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL
 | 
			
		||||
    #define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL
 | 
			
		||||
    #define ENABLE_RGB_MATRIX_CYCLE_SPIRAL
 | 
			
		||||
    // #define ENABLE_RGB_MATRIX_DUAL_BEACON
 | 
			
		||||
    #define ENABLE_RGB_MATRIX_RAINBOW_BEACON
 | 
			
		||||
    // #define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS
 | 
			
		||||
    #define ENABLE_RGB_MATRIX_RAINDROPS
 | 
			
		||||
    #define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS
 | 
			
		||||
    #define ENABLE_RGB_MATRIX_HUE_BREATHING
 | 
			
		||||
    #define ENABLE_RGB_MATRIX_HUE_PENDULUM
 | 
			
		||||
    #define ENABLE_RGB_MATRIX_HUE_WAVE
 | 
			
		||||
    #define ENABLE_RGB_MATRIX_PIXEL_RAIN
 | 
			
		||||
    #define ENABLE_RGB_MATRIX_PIXEL_FLOW
 | 
			
		||||
    // #define ENABLE_RGB_MATRIX_PIXEL_FRACTAL
 | 
			
		||||
 | 
			
		||||
    /* enabled only if RGB_MATRIX_FRAMEBUFFER_EFFECTS is defined */
 | 
			
		||||
    // #define ENABLE_RGB_MATRIX_TYPING_HEATMAP
 | 
			
		||||
    // #define ENABLE_RGB_MATRIX_DIGITAL_RAIN
 | 
			
		||||
 | 
			
		||||
    /* enabled only of RGB_MATRIX_KEYPRESSES or RGB_MATRIX_KEYRELEASES is defined */
 | 
			
		||||
    // #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE
 | 
			
		||||
    #define ENABLE_RGB_MATRIX_SOLID_REACTIVE
 | 
			
		||||
    #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE
 | 
			
		||||
    #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE
 | 
			
		||||
    // define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS
 | 
			
		||||
    // #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS
 | 
			
		||||
    // #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS
 | 
			
		||||
    // #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS
 | 
			
		||||
    #define ENABLE_RGB_MATRIX_SPLASH
 | 
			
		||||
    // #define ENABLE_RGB_MATRIX_MULTISPLASH
 | 
			
		||||
    #define ENABLE_RGB_MATRIX_SOLID_SPLASH
 | 
			
		||||
    // #define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
 | 
			
		||||
#endif  // RGB_MATRIX_ENABLE
 | 
			
		||||
 | 
			
		||||
/* -----------------------
 | 
			
		||||
 * Feature disable options
 | 
			
		||||
 *  These options are also useful to firmware size reduction.
 | 
			
		||||
 * ----------------------- */
 | 
			
		||||
 | 
			
		||||
/* disable debug print */
 | 
			
		||||
// #define NO_DEBUG
 | 
			
		||||
 | 
			
		||||
/* disable print */
 | 
			
		||||
// #define NO_PRINT
 | 
			
		||||
 | 
			
		||||
/* disable action features */
 | 
			
		||||
// #define NO_ACTION_LAYER
 | 
			
		||||
// #define NO_ACTION_TAPPING
 | 
			
		||||
// #define NO_ACTION_ONESHOT
 | 
			
		||||
							
								
								
									
										67
									
								
								keyboards/idobao/montex/v2/info.json
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										67
									
								
								keyboards/idobao/montex/v2/info.json
									
										
									
									
									
										Executable file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,67 @@
 | 
			
		|||
{
 | 
			
		||||
    "manufacturer": "IDOBAO",
 | 
			
		||||
    "keyboard_name": "Montex ID27v2",
 | 
			
		||||
    "maintainer": "IBNobody",
 | 
			
		||||
    "bootloader": "atmel-dfu",
 | 
			
		||||
    "diode_direction": "ROW2COL",
 | 
			
		||||
    "debounce": 5,
 | 
			
		||||
    "features": {
 | 
			
		||||
        "bootmagic": true,
 | 
			
		||||
        "command": false,
 | 
			
		||||
        "console": false,
 | 
			
		||||
        "extrakey": true,
 | 
			
		||||
        "mousekey": true,
 | 
			
		||||
        "nkro": true,
 | 
			
		||||
        "backlight": false,
 | 
			
		||||
        "rgblight": false
 | 
			
		||||
    },
 | 
			
		||||
    "matrix_pins": {
 | 
			
		||||
        "cols": ["D5", "D3", "D2", "D1", "D0"],
 | 
			
		||||
        "rows": ["D4", "D6", "D7", "B4", "B5", "C6"]
 | 
			
		||||
    },
 | 
			
		||||
    "processor": "atmega32u4",
 | 
			
		||||
    "url": "https://idobao.net/search?type=product&q=montex*",
 | 
			
		||||
    "usb": {
 | 
			
		||||
        "device_version": "2.0.0",
 | 
			
		||||
        "pid": "0x0227",
 | 
			
		||||
        "vid": "0x6964"
 | 
			
		||||
    }
 | 
			
		||||
    "layouts": {
 | 
			
		||||
        "LAYOUT_numpad_6x5": {
 | 
			
		||||
            "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": [0, 4], "x": 4, "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": [1, 4], "x": 4, "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": [2, 4], "x": 4, "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": [3, 3], "x": 3, "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 },
 | 
			
		||||
                { "matrix": [5, 3], "x": 4, "y": 4, "h": 2 },
 | 
			
		||||
 | 
			
		||||
                { "matrix": [5, 0], "x": 0, "y": 5 },
 | 
			
		||||
                { "matrix": [5, 1], "x": 1, "y": 5, "w": 2 },
 | 
			
		||||
                { "matrix": [5, 2], "x": 3, "y": 5 }
 | 
			
		||||
            ]
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										54
									
								
								keyboards/idobao/montex/v2/keymaps/default/keymap.c
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										54
									
								
								keyboards/idobao/montex/v2/keymaps/default/keymap.c
									
										
									
									
									
										Executable file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,54 @@
 | 
			
		|||
// Copyright 2022 IBNobody (@IBNobody)
 | 
			
		||||
// SPDX-License-Identifier: GPL-2.0-or-later
 | 
			
		||||
 | 
			
		||||
#include QMK_KEYBOARD_H
 | 
			
		||||
 | 
			
		||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		||||
    /*
 | 
			
		||||
     * ┌───┌───┬───┬───┬───┐
 | 
			
		||||
     * │Esc│Tab│ F1│Cal│Bsp│
 | 
			
		||||
     * ├───┼───┼───┼───┼───┤
 | 
			
		||||
     * │Ctr│Num│ / │ * │ - │
 | 
			
		||||
     * ├───┼───┼───┼───┼───┤
 | 
			
		||||
     * │Gui│ 7 │ 8 │ 9 │   │
 | 
			
		||||
     * ├───┼───┼───┼───┤ + │
 | 
			
		||||
     * │Alt│ 4 │ 5 │ 6 │   │
 | 
			
		||||
     * ├───┼───┼───┼───┼───┤
 | 
			
		||||
     * │Shi│ 1 │ 2 │ 3 │   │
 | 
			
		||||
     * ├───┼───┴───┼───┤Ent│
 | 
			
		||||
     * │MO1│ 0     │ . │   │
 | 
			
		||||
     * └───┴───────┴───┴───┘
 | 
			
		||||
     */
 | 
			
		||||
    [0] = LAYOUT_numpad_6x5(
 | 
			
		||||
        KC_GESC,   KC_TAB,   KC_F1,   KC_CALC, KC_BSPC,
 | 
			
		||||
        KC_LCTRL,  KC_NLCK,  KC_PSLS, KC_PAST, KC_PMNS,
 | 
			
		||||
        KC_LGUI,   KC_P7,    KC_P8,   KC_P9,   KC_PPLS,
 | 
			
		||||
        KC_LALT,   KC_P4,    KC_P5,   KC_P6,
 | 
			
		||||
        KC_LSHIFT, KC_P1,    KC_P2,   KC_P3,   KC_PENT,
 | 
			
		||||
        MO(1),     KC_P0,             KC_PDOT
 | 
			
		||||
    ),
 | 
			
		||||
 | 
			
		||||
    /*
 | 
			
		||||
     * ┌───┌───┐───┬───┬───┐
 | 
			
		||||
     * │Rst│TOG│MOD│PSc│SLk│
 | 
			
		||||
     * ├───┼───┼───┼───┼───┤
 | 
			
		||||
     * │Hu+│   │Sp-│Sp+│Br-│
 | 
			
		||||
     * ├───┼───┼───┼───┼───┤
 | 
			
		||||
     * │Hu-│Hom│ ↑ │PgU│   │
 | 
			
		||||
     * ├───┼───┼───┼───┤Br+│
 | 
			
		||||
     * │St+│ ← │   │ → │   │
 | 
			
		||||
     * ├───┼───┼───┼───┤───┤
 | 
			
		||||
     * │St-│End│ ↓ │PgD│   │
 | 
			
		||||
     * ├───┼───┴───┼───┤Ent│
 | 
			
		||||
     * │mo1│Insert │Del│   │
 | 
			
		||||
     * └───┴───────┴───┘───┘
 | 
			
		||||
     */
 | 
			
		||||
    [1] = LAYOUT_numpad_6x5(
 | 
			
		||||
        QK_BOOT, RGB_TOG, RGB_MOD, KC_PSCR, KC_SLCK,
 | 
			
		||||
        RGB_HUI, XXXXXXX, RGB_SPD, RGB_SPI, RGB_VAD,
 | 
			
		||||
        RGB_HUD, KC_HOME, KC_UP,   KC_PGUP, RGB_VAI,
 | 
			
		||||
        RGB_SAI, KC_LEFT, XXXXXXX, KC_RGHT,
 | 
			
		||||
        RGB_SAD, KC_END,  KC_DOWN, KC_PGDN, KC_ENT,
 | 
			
		||||
        _______, KC_INS,           KC_DEL
 | 
			
		||||
    )
 | 
			
		||||
};
 | 
			
		||||
							
								
								
									
										6
									
								
								keyboards/idobao/montex/v2/keymaps/via/config.h
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										6
									
								
								keyboards/idobao/montex/v2/keymaps/via/config.h
									
										
									
									
									
										Executable file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,6 @@
 | 
			
		|||
// Copyright 2022 IBNobody (@IBNobody)
 | 
			
		||||
// SPDX-License-Identifier: GPL-2.0-or-later
 | 
			
		||||
 | 
			
		||||
#pragma once
 | 
			
		||||
 | 
			
		||||
#define DYNAMIC_KEYMAP_LAYER_COUNT 6
 | 
			
		||||
							
								
								
									
										114
									
								
								keyboards/idobao/montex/v2/keymaps/via/keymap.c
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										114
									
								
								keyboards/idobao/montex/v2/keymaps/via/keymap.c
									
										
									
									
									
										Executable file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,114 @@
 | 
			
		|||
// Copyright 2022 IBNobody (@IBNobody)
 | 
			
		||||
// SPDX-License-Identifier: GPL-2.0-or-later
 | 
			
		||||
 | 
			
		||||
#include QMK_KEYBOARD_H
 | 
			
		||||
 | 
			
		||||
enum montex_layers {
 | 
			
		||||
  _BASE,
 | 
			
		||||
  _FN,
 | 
			
		||||
  _EMPTY2, // Just to initialize dynamic layers in VIA
 | 
			
		||||
  _EMPTY3,
 | 
			
		||||
  _EMPTY4,
 | 
			
		||||
  _EMPTY5
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		||||
    /*
 | 
			
		||||
     * ┌───┬───┬───┬───┬───┐
 | 
			
		||||
     * │Esc│Tab│ F1│Cal│Bsp│
 | 
			
		||||
     * ├───┼───┼───┼───┼───┤
 | 
			
		||||
     * │Ctr│Num│ / │ * │ - │
 | 
			
		||||
     * ├───┼───┼───┼───┼───┤
 | 
			
		||||
     * │Gui│ 7 │ 8 │ 9 │   │
 | 
			
		||||
     * ├───┼───┼───┼───┤ + │
 | 
			
		||||
     * │Alt│ 4 │ 5 │ 6 │   │
 | 
			
		||||
     * ├───┼───┼───┼───┼───┤
 | 
			
		||||
     * │Shi│ 1 │ 2 │ 3 │   │
 | 
			
		||||
     * ├───┼───┴───┼───┤Ent│
 | 
			
		||||
     * │MO1│ 0     │ . │   │
 | 
			
		||||
     * └───┴───────┴───┴───┘
 | 
			
		||||
     */
 | 
			
		||||
    [_BASE] = LAYOUT_numpad_6x5(
 | 
			
		||||
        KC_GESC,   KC_TAB,   KC_F1,   KC_CALC, KC_BSPC,
 | 
			
		||||
        KC_LCTRL,  KC_NLCK,  KC_PSLS, KC_PAST, KC_PMNS,
 | 
			
		||||
        KC_LGUI,   KC_P7,    KC_P8,   KC_P9,   KC_PPLS,
 | 
			
		||||
        KC_LALT,   KC_P4,    KC_P5,   KC_P6,
 | 
			
		||||
        KC_LSHIFT, KC_P1,    KC_P2,   KC_P3,   KC_PENT,
 | 
			
		||||
        MO(1),     KC_P0,             KC_PDOT
 | 
			
		||||
    ),
 | 
			
		||||
 | 
			
		||||
    /*
 | 
			
		||||
     * ┌───┬───┬───┬───┬───┐
 | 
			
		||||
     * │Rst│TOG│MOD│PSs│SLk│
 | 
			
		||||
     * ├───┼───┼───┼───┼───┤
 | 
			
		||||
     * │Hu+│   │Sp-│Sp+│Br-│
 | 
			
		||||
     * ├───┼───┼───┼───┼───┤
 | 
			
		||||
     * │Hu-│Hom│ ↑ │PgU│   │
 | 
			
		||||
     * ├───┼───┼───┼───┤Br+│
 | 
			
		||||
     * │St+│ ← │   │ → │   │
 | 
			
		||||
     * ├───┼───┼───┼───┤───┤
 | 
			
		||||
     * │St-│End│ ↓ │PgD│   │
 | 
			
		||||
     * ├───┼───┴───┼───┤Ent│
 | 
			
		||||
     * │mo1│Insert │Del│   │
 | 
			
		||||
     * └───┴───────┴───┴───┘
 | 
			
		||||
     */
 | 
			
		||||
    [_FN] = LAYOUT_numpad_6x5(
 | 
			
		||||
        QK_BOOT, RGB_TOG, RGB_MOD, KC_PSCR, KC_SLCK,
 | 
			
		||||
        RGB_HUI, XXXXXXX, RGB_SPD, RGB_SPI, RGB_VAD,
 | 
			
		||||
        RGB_HUD, KC_HOME, KC_UP,   KC_PGUP, RGB_VAI,
 | 
			
		||||
        RGB_SAI, KC_LEFT, XXXXXXX, KC_RGHT,
 | 
			
		||||
        RGB_SAD, KC_END,  KC_DOWN, KC_PGDN, KC_ENT,
 | 
			
		||||
        _______, KC_INS,           KC_DEL
 | 
			
		||||
    ),
 | 
			
		||||
 | 
			
		||||
    /*  4 extra layers incase you want to map the top row to layer buttons
 | 
			
		||||
     * ┌───┬───┬───┬───┬───┐
 | 
			
		||||
     * │   │   │   │   │   │
 | 
			
		||||
     * ├───┼───┼───┼───┼───┤
 | 
			
		||||
     * │   │   │   │   │   │
 | 
			
		||||
     * ├───┼───┼───┼───┼───┤
 | 
			
		||||
     * │   │   │   │   │   │
 | 
			
		||||
     * ├───┼───┼───┼───┤   │
 | 
			
		||||
     * │   │   │   │   │   │
 | 
			
		||||
     * ├───┼───┼───┼───┤───┤
 | 
			
		||||
     * │   │   │   │   │   │
 | 
			
		||||
     * ├───┼───┴───┼───┤   │
 | 
			
		||||
     * │   │       │   │   │
 | 
			
		||||
     * └───┴───────┴───┴───┘
 | 
			
		||||
     */
 | 
			
		||||
    [_EMPTY2] = LAYOUT_numpad_6x5(
 | 
			
		||||
        _______, _______, _______, _______, _______,
 | 
			
		||||
        _______, _______, _______, _______, _______,
 | 
			
		||||
        _______, _______, _______, _______, _______,
 | 
			
		||||
        _______, _______, _______, _______,
 | 
			
		||||
        _______, _______, _______, _______, _______,
 | 
			
		||||
        _______, _______,          _______
 | 
			
		||||
    ),
 | 
			
		||||
 | 
			
		||||
    [_EMPTY3] = LAYOUT_numpad_6x5(
 | 
			
		||||
        _______, _______, _______, _______, _______,
 | 
			
		||||
        _______, _______, _______, _______, _______,
 | 
			
		||||
        _______, _______, _______, _______, _______,
 | 
			
		||||
        _______, _______, _______, _______,
 | 
			
		||||
        _______, _______, _______, _______, _______,
 | 
			
		||||
        _______, _______,          _______
 | 
			
		||||
    ),
 | 
			
		||||
 | 
			
		||||
    [_EMPTY4] = LAYOUT_numpad_6x5(
 | 
			
		||||
        _______, _______, _______, _______, _______,
 | 
			
		||||
        _______, _______, _______, _______, _______,
 | 
			
		||||
        _______, _______, _______, _______, _______,
 | 
			
		||||
        _______, _______, _______, _______,
 | 
			
		||||
        _______, _______, _______, _______, _______,
 | 
			
		||||
        _______, _______,          _______
 | 
			
		||||
    ),
 | 
			
		||||
 | 
			
		||||
    [_EMPTY5] = LAYOUT_numpad_6x5(
 | 
			
		||||
        _______, _______, _______, _______, _______,
 | 
			
		||||
        _______, _______, _______, _______, _______,
 | 
			
		||||
        _______, _______, _______, _______, _______,
 | 
			
		||||
        _______, _______, _______, _______,
 | 
			
		||||
        _______, _______, _______, _______, _______,
 | 
			
		||||
        _______, _______,          _______
 | 
			
		||||
    )
 | 
			
		||||
};
 | 
			
		||||
							
								
								
									
										2
									
								
								keyboards/idobao/montex/v2/keymaps/via/rules.mk
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										2
									
								
								keyboards/idobao/montex/v2/keymaps/via/rules.mk
									
										
									
									
									
										Executable file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,2 @@
 | 
			
		|||
VIA_ENABLE = yes
 | 
			
		||||
LTO_ENABLE = yes
 | 
			
		||||
							
								
								
									
										8
									
								
								keyboards/idobao/montex/v2/post_rules.mk
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								keyboards/idobao/montex/v2/post_rules.mk
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,8 @@
 | 
			
		|||
# some (if not most) Montex have a solid back plate,
 | 
			
		||||
#  this enables switching off the bottom facing LEDs
 | 
			
		||||
# Usage:  `make idobao/montex/v2:default UNDERGLOW=off`
 | 
			
		||||
 | 
			
		||||
UNDERGLOW ?= yes
 | 
			
		||||
ifneq ($(strip $(UNDERGLOW)), yes)
 | 
			
		||||
  OPT_DEFS += -DID27_DISABLE_UNDERGLOW
 | 
			
		||||
endif
 | 
			
		||||
							
								
								
									
										41
									
								
								keyboards/idobao/montex/v2/readme.md
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										41
									
								
								keyboards/idobao/montex/v2/readme.md
									
										
									
									
									
										Executable file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,41 @@
 | 
			
		|||
# IDOBAO Montex V2
 | 
			
		||||
 | 
			
		||||

 | 
			
		||||
 | 
			
		||||
A hotswap RGB numpad from IDOBAO.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
## Numeric Keypad
 | 
			
		||||
 | 
			
		||||
* Keyboard Maintainer:
 | 
			
		||||
    - [IBNobody](https://github.com/IBNobody)
 | 
			
		||||
    - [vinorodrigues](https://github.com/vinorodrigues)
 | 
			
		||||
* Hardware Supported: **IDOBAO Montex V2**
 | 
			
		||||
* Hardware Availability: [IDOBAO.net](https://idobao.net/search?type=product&q=montex*)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
## Layout
 | 
			
		||||
 | 
			
		||||

 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
## Compiling and Flashing
 | 
			
		||||
 | 
			
		||||
Make example for this keyboard (after setting up your build environment):
 | 
			
		||||
 | 
			
		||||
    make idobao/montex/v2:default
 | 
			
		||||
 | 
			
		||||
Flashing example for this keyboard:
 | 
			
		||||
 | 
			
		||||
    make idobao/montex/v2: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.<br>
 | 
			
		||||
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
 | 
			
		||||
* **Keycode in layout**: Press the key mapped to `RESET` if it is available
 | 
			
		||||
							
								
								
									
										5
									
								
								keyboards/idobao/montex/v2/rules.mk
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										5
									
								
								keyboards/idobao/montex/v2/rules.mk
									
										
									
									
									
										Executable file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,5 @@
 | 
			
		|||
# This file intentionally mostly left blank
 | 
			
		||||
# ** settings are data driven & stored in `info.json` **
 | 
			
		||||
 | 
			
		||||
RGB_MATRIX_ENABLE = yes
 | 
			
		||||
RGB_MATRIX_DRIVER = WS2812
 | 
			
		||||
							
								
								
									
										82
									
								
								keyboards/idobao/montex/v2/v2.c
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										82
									
								
								keyboards/idobao/montex/v2/v2.c
									
										
									
									
									
										Executable file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,82 @@
 | 
			
		|||
// Copyright 2022 IBNobody (@IBNobody)
 | 
			
		||||
// SPDX-License-Identifier: GPL-2.0-or-later
 | 
			
		||||
 | 
			
		||||
#include "v2.h"
 | 
			
		||||
 | 
			
		||||
#define __ NO_LED
 | 
			
		||||
 | 
			
		||||
#ifdef RGB_MATRIX_ENABLE
 | 
			
		||||
 | 
			
		||||
/* Under-, Per-key
 | 
			
		||||
 * ┌───┬───┬───┬───┬───┐
 | 
			
		||||
 * │ 4 │ 3 │ 2 │ 1 │ 0 │
 | 
			
		||||
 * ├───┼───┼───┼───┼───┤
 | 
			
		||||
 * │ 5 │ 6 │ 7 │ 8 │ 9 │
 | 
			
		||||
 * ├───┼───┼───┼───┼───┤
 | 
			
		||||
 * │14 │13 │12 │11 │   │
 | 
			
		||||
 * ├───┼───┼───┼───┤10 │
 | 
			
		||||
 * │15 │16 │17 │18 │   │
 | 
			
		||||
 * ├───┼───┼───┼───┼───┤
 | 
			
		||||
 * │23 │22 │21 │20 │   │
 | 
			
		||||
 * ├───┼───┴───┼───┤19 │
 | 
			
		||||
 * │24 │  25   │26 │   │
 | 
			
		||||
 * └───┴───────┴───┴───┘
 | 
			
		||||
 *
 | 
			
		||||
 * Underglow (from top / [Esc] = top left)
 | 
			
		||||
 * ┌─────────┬─────────┐
 | 
			
		||||
 * │         │         │
 | 
			
		||||
 * │         │         │
 | 
			
		||||
 * │   29    │   30    │
 | 
			
		||||
 * │         │         │
 | 
			
		||||
 * │         │         │
 | 
			
		||||
 * ├─────────┼─────────┤
 | 
			
		||||
 * │         │         │
 | 
			
		||||
 * │         │         │
 | 
			
		||||
 * │   28    │   27    │
 | 
			
		||||
 * │         │         │
 | 
			
		||||
 * │         │         │
 | 
			
		||||
 * └─────────┴─────────┘
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
led_config_t g_led_config = { {
 | 
			
		||||
    // Key Matrix to LED Index
 | 
			
		||||
    // Montex v2 WS2812 are laid in a Z-shape with index 0 = top-right
 | 
			
		||||
    // Based on: https://xelus.netlify.app/guides/KLE_to_RGB_parser
 | 
			
		||||
    { 4,  3,  2,  1,  0},
 | 
			
		||||
    { 5,  6,  7,  8,  9},
 | 
			
		||||
    { 14, 13, 12, 11, 10},
 | 
			
		||||
    { 15, 16, 17, 18, __},
 | 
			
		||||
    { 23, 22, 21, 20, __},
 | 
			
		||||
    { 24, 25, 26, 19, __}
 | 
			
		||||
}, {
 | 
			
		||||
    // LED Index to Physical Position
 | 
			
		||||
    // per-key
 | 
			
		||||
    // Based on: https://xelus.netlify.app/guides/KLE_to_RGB_parser
 | 
			
		||||
    {224,0  }, {168,0  }, {112,0  }, { 56,0  }, {  0,0  },  // top row
 | 
			
		||||
    {  0,17 }, { 56,17 }, {112,17 }, {168,17 }, {224,17 },  // num-lk & /*- (reversed)
 | 
			
		||||
    {224,35 }, {168,29 }, {112,29 }, { 56,29 }, {  0,29 },  // 789+
 | 
			
		||||
    {  0,41 }, { 56,41 }, {112,41 }, {168,41 },             // 456  (reversed)
 | 
			
		||||
    {224,58 }, {168,52 }, {112,52 }, { 56,52 },             // 123
 | 
			
		||||
    {  0,52 }, {  0,64 }, { 84,64 }, {168,64 }              // 0. & enter (reversed)
 | 
			
		||||
    // underglow LEDs (positions pushed to nearest edge to match edge key colors)
 | 
			
		||||
    #ifndef ID27_DISABLE_UNDERGLOW
 | 
			
		||||
    , {224,64 }, {  0,64  },
 | 
			
		||||
      {  0,0  }, { 224,0  }
 | 
			
		||||
    #endif
 | 
			
		||||
}, {
 | 
			
		||||
    // LED Index to Flag
 | 
			
		||||
    // LED_FLAG_MODIFIER 0x01, LED_FLAG_UNDERGLOW 0x02, LED_FLAG_KEYLIGHT 0x04, LED_FLAG_INDICATOR 0x08
 | 
			
		||||
    // per-key
 | 
			
		||||
    1, 1, 1, 1, 1,
 | 
			
		||||
    4, 4, 4, 4, 4,
 | 
			
		||||
    4, 4, 4, 4, 4,
 | 
			
		||||
    4, 4, 4, 4,
 | 
			
		||||
    4, 4, 4, 4,
 | 
			
		||||
    4, 4, 4, 4
 | 
			
		||||
    // underglow
 | 
			
		||||
    #ifndef ID27_DISABLE_UNDERGLOW
 | 
			
		||||
    , 2, 2, 2, 2
 | 
			
		||||
    #endif
 | 
			
		||||
} };
 | 
			
		||||
 | 
			
		||||
#endif
 | 
			
		||||
							
								
								
									
										6
									
								
								keyboards/idobao/montex/v2/v2.h
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										6
									
								
								keyboards/idobao/montex/v2/v2.h
									
										
									
									
									
										Executable file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,6 @@
 | 
			
		|||
// Copyright 2022 IBNobody (@IBNobody)
 | 
			
		||||
// SPDX-License-Identifier: GPL-2.0-or-later
 | 
			
		||||
 | 
			
		||||
#pragma once
 | 
			
		||||
 | 
			
		||||
#include "quantum.h"
 | 
			
		||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue