Jotpad16 (#5212)
* jotix 4x12 keymap * readme corrections * jotix ortho 4x12 keymap * jotix ortho 4x12 keymap * jotix ortho 4x12 keymap * jotix ortho 4x12 keymap * jotix ortho 4x12 keymap * jotix ortho 4x12 keymap * add jotpad keyboard * add jotpad keyboard * backlight pin for arduino pro micro * readme correction * readme correction * jotpad16 * Update keyboards/handwired/jotpad16/jotpad16.h Co-Authored-By: jotix <47826561+jotix@users.noreply.github.com> * Update keyboards/handwired/jotpad16/keymaps/default/keymap.c Co-Authored-By: jotix <47826561+jotix@users.noreply.github.com> * Update keyboards/handwired/jotpad16/readme.md Co-Authored-By: jotix <47826561+jotix@users.noreply.github.com>
This commit is contained in:
		
							
								
								
									
										38
									
								
								keyboards/handwired/jotpad16/config.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										38
									
								
								keyboards/handwired/jotpad16/config.h
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,38 @@ | ||||
| #pragma once | ||||
|  | ||||
| #include "config_common.h" | ||||
|  | ||||
| /* USB Device descriptor parameter */ | ||||
| #define VENDOR_ID       0xFEED | ||||
| #define PRODUCT_ID      0x6060 | ||||
| #define DEVICE_VER      0x0001 | ||||
| #define MANUFACTURER    Jotix | ||||
| #define PRODUCT         JotPad16 | ||||
| #define DESCRIPTION     A Jotantastic compact NumPad | ||||
|  | ||||
| /* key matrix size */ | ||||
| #define MATRIX_ROWS 4 | ||||
| #define MATRIX_COLS 4 | ||||
|  | ||||
| /* pro_micro pin-out */ | ||||
| #define MATRIX_ROW_PINS { B6, B2, D2, D3 } | ||||
| #define MATRIX_COL_PINS { B5, B4, B3, B1 } | ||||
| #define UNUSED_PINS | ||||
|  | ||||
| /* leds */ | ||||
| #define QMK_LED E6 | ||||
| #define BACKLIGHT_LEVELS 3 | ||||
| #define BACKLIGHT_PIN D7 | ||||
|  | ||||
| /* COL2ROW or ROW2COL */ | ||||
| #define DIODE_DIRECTION COL2ROW | ||||
|  | ||||
| /* Set 0 if debouncing isn't needed */ | ||||
| #define DEBOUNCING_DELAY 0 | ||||
|  | ||||
| /* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ | ||||
| #define LOCKING_SUPPORT_ENABLE | ||||
|  | ||||
| /* Locking resynchronize hack */ | ||||
| #define LOCKING_RESYNC_ENABLE | ||||
|  | ||||
							
								
								
									
										6
									
								
								keyboards/handwired/jotpad16/jotpad16.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								keyboards/handwired/jotpad16/jotpad16.c
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,6 @@ | ||||
| #include "jotpad16.h" | ||||
|  | ||||
| void matrix_init_kb(void) { | ||||
|  | ||||
| 	matrix_init_user(); | ||||
| } | ||||
							
								
								
									
										18
									
								
								keyboards/handwired/jotpad16/jotpad16.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										18
									
								
								keyboards/handwired/jotpad16/jotpad16.h
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,18 @@ | ||||
| #pragma once | ||||
|  | ||||
| #include "quantum.h" | ||||
|  | ||||
| // Used to create a keymap using only KC_ prefixed keys | ||||
| #define LAYOUT_ortho_4x4( \ | ||||
| 	k00, k01, k02, k03, \ | ||||
| 	k10, k11, k12, k13, \ | ||||
| 	k20, k21, k22, k23, \ | ||||
| 	k30, k31, k32, k33 \ | ||||
| ) \ | ||||
| { \ | ||||
| 	{ k00, k01, k02, k03 }, \ | ||||
| 	{ k10, k11, k12, k13 }, \ | ||||
| 	{ k20, k21, k22, k23 }, \ | ||||
| 	{ k30, k31, k32, k33 } \ | ||||
| } | ||||
|  | ||||
							
								
								
									
										34
									
								
								keyboards/handwired/jotpad16/keymaps/default/keymap.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										34
									
								
								keyboards/handwired/jotpad16/keymaps/default/keymap.c
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,34 @@ | ||||
| // This is the canonical layout file for the Quantum project. If you want to add another keyboard, | ||||
| // this is the style you want to emulate. | ||||
|  | ||||
| #include QMK_KEYBOARD_H | ||||
|  | ||||
| extern keymap_config_t keymap_config; | ||||
|  | ||||
| // Each layer gets a name for readability, which is then used in the keymap matrix below. | ||||
| // The underscores don't mean anything - you can have a layer called STUFF or any other name. | ||||
| // Layer names don't all need to be of the same length, obviously, and you can also skip them | ||||
| // entirely and just use numbers. | ||||
|  | ||||
| #define _NUMPAD 0 | ||||
|  | ||||
| const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | ||||
|  | ||||
| /* Numpad | ||||
|  * +-------+-------+-------+-------+ | ||||
|  * |   7   |   8   |   9   |   -   | | ||||
|  * +-------+-------+-------+-------+ | ||||
|  * |   4   |   5   |   6   |   +   | | ||||
|  * +-------+-------+-------+-------+ | ||||
|  * |   1   |   2   |   3   | enter | | ||||
|  * +-------+-------+-------+-------+ | ||||
|  * |   0   |   .   |   /   |   *   | | ||||
|  * +-------+-------+-------+-------+ | ||||
|  */ | ||||
| [_NUMPAD] = LAYOUT_ortho_4x4(  | ||||
|     KC_P7,  KC_P8,  KC_P9,  KC_MINS, | ||||
|     KC_P4,  KC_P5,  KC_P6,  KC_PLUS, | ||||
|     KC_P1,  KC_P2,  KC_P3,  KC_PENT, | ||||
|     KC_P0,  KC_PDOT,KC_PSLS,KC_ASTR  | ||||
| ), | ||||
| }; | ||||
							
								
								
									
										39
									
								
								keyboards/handwired/jotpad16/readme.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										39
									
								
								keyboards/handwired/jotpad16/readme.md
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,39 @@ | ||||
| # JotPad16 | ||||
|  | ||||
|  | ||||
|  | ||||
| A ortholinear keypad (4x4) made by jotix. | ||||
|  | ||||
| Keyboard Maintainer: [jotix](https://github.com/jotix)   | ||||
| Hardware Supported: Arduino Pro Micro   | ||||
|  | ||||
| ### Arduino Pro Micro Pinout | ||||
|  | ||||
| | rows        | 0  | 1  | 2   | 3   | | ||||
| |-------------|----|----|-----|-----| | ||||
| | arduino pin | 10 | 16 | RXI | TX0 | | ||||
| | qmk pin     | B6 | B2 | D2  | D3  | | ||||
|  | ||||
| | columns     | 0  | 1  | 2  | 3  | | ||||
| |-------------|----|----|----|----|  | ||||
| | arduino pin | 9  | 8  | 14 | 15 | | ||||
| | qmk pin     | B5 | B4 | B3 | C3 | | ||||
|  | ||||
| |             | QMK led   | Backlight | | ||||
| |-------------|-----------|-----------| | ||||
| | Arduino pin | 7         | 6         | | ||||
| | qmk pin     | E6        | D7        | | ||||
|  | ||||
| ### Compiling the Firmware | ||||
|  | ||||
| Make example for this keyboard (after setting up your build environment): | ||||
|  | ||||
|     make handwired/jotpad16:default | ||||
|  | ||||
| ### The Default Keymap | ||||
|  | ||||
|  | ||||
|  | ||||
| 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). | ||||
|  | ||||
|  | ||||
							
								
								
									
										66
									
								
								keyboards/handwired/jotpad16/rules.mk
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										66
									
								
								keyboards/handwired/jotpad16/rules.mk
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,66 @@ | ||||
| # MCU name | ||||
| MCU = atmega32u4 | ||||
|  | ||||
| # Processor frequency. | ||||
| #     This will define a symbol, F_CPU, in all source code files equal to the | ||||
| #     processor frequency in Hz. You can then use this symbol in your source code to | ||||
| #     calculate timings. Do NOT tack on a 'UL' at the end, this will be done | ||||
| #     automatically to create a 32-bit value in your source code. | ||||
| # | ||||
| #     This will be an integer division of F_USB below, as it is sourced by | ||||
| #     F_USB after it has run through any CPU prescalers. Note that this value | ||||
| #     does not *change* the processor frequency - it should merely be updated to | ||||
| #     reflect the processor speed set externally so that the code can use accurate | ||||
| #     software delays. | ||||
| F_CPU = 16000000 | ||||
|  | ||||
| # | ||||
| # LUFA specific | ||||
| # | ||||
| # Target architecture (see library "Board Types" documentation). | ||||
| ARCH = AVR8 | ||||
|  | ||||
| # Input clock frequency. | ||||
| #     This will define a symbol, F_USB, in all source code files equal to the | ||||
| #     input clock frequency (before any prescaling is performed) in Hz. This value may | ||||
| #     differ from F_CPU if prescaling is used on the latter, and is required as the | ||||
| #     raw input clock is fed directly to the PLL sections of the AVR for high speed | ||||
| #     clock generation for the USB and other AVR subsections. Do NOT tack on a 'UL' | ||||
| #     at the end, this will be done automatically to create a 32-bit value in your | ||||
| #     source code. | ||||
| # | ||||
| #     If no clock division is performed on the input clock inside the AVR (via the | ||||
| #     CPU clock adjust registers or the clock division fuses), this will be equal to F_CPU. | ||||
| F_USB = $(F_CPU) | ||||
|  | ||||
| # Bootloader | ||||
| #     This definition is optional, and if your keyboard supports multiple bootloaders of | ||||
| #     different sizes, comment this out, and the correct address will be loaded  | ||||
| #     automatically (+60). See bootloader.mk for all options. | ||||
| BOOTLOADER = caterina | ||||
|  | ||||
| # Interrupt driven control endpoint task(+60) | ||||
| OPT_DEFS += -DINTERRUPT_CONTROL_ENDPOINT | ||||
|  | ||||
| # Build Options | ||||
| #   change to "no" to disable the options, or define them in the Makefile in | ||||
| #   the appropriate keymap folder that will get included automatically | ||||
| # | ||||
|  | ||||
| BOOTMAGIC_ENABLE = no       # Virtual DIP switch configuration(+1000) | ||||
| MOUSEKEY_ENABLE = no        # Mouse keys(+4700) | ||||
| EXTRAKEY_ENABLE = yes       # Audio control and System control(+450) | ||||
| CONSOLE_ENABLE = yes        # Console for debug(+400) | ||||
| COMMAND_ENABLE = no         # Commands for debug and configuration | ||||
| NKRO_ENABLE = yes           # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work | ||||
| BACKLIGHT_ENABLE = yes      # Enable keyboard backlight functionality | ||||
| MIDI_ENABLE = no            # MIDI controls | ||||
| AUDIO_ENABLE = no           # Audio output on port C6 | ||||
| UNICODE_ENABLE = no         # Unicode | ||||
| BLUETOOTH_ENABLE = no       # Enable Bluetooth with the Adafruit EZ-Key HID | ||||
| RGBLIGHT_ENABLE = no        # Enable WS2812 RGB underlight. | ||||
| API_SYSEX_ENABLE = no | ||||
|  | ||||
| # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE | ||||
| SLEEP_LED_ENABLE = no    # Breathing sleep LED during USB suspend | ||||
| LAYOUTS = ortho_4x4 | ||||
		Reference in New Issue
	
	Block a user