forked from qmk/qmk_firmware
-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request qmk#16 from yymm/nrf52
Add nomu30 BLE
- Loading branch information
Showing
21 changed files
with
1,436 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,89 @@ | ||
/** | ||
* Copyright (c) 2014 - 2017, Nordic Semiconductor ASA | ||
* Copyright (c) 2018, Sekigon | ||
* | ||
* All rights reserved. | ||
* | ||
* Redistribution and use in source and binary forms, with or without modification, | ||
* are permitted provided that the following conditions are met: | ||
* | ||
* 1. Redistributions of source code must retain the above copyright notice, this | ||
* list of conditions and the following disclaimer. | ||
* | ||
* 2. Redistributions in binary form, except as embedded into a Nordic | ||
* Semiconductor ASA integrated circuit in a product or a software update for | ||
* such product, must reproduce the above copyright notice, this list of | ||
* conditions and the following disclaimer in the documentation and/or other | ||
* materials provided with the distribution. | ||
* | ||
* 3. Neither the name of Nordic Semiconductor ASA nor the names of its | ||
* contributors may be used to endorse or promote products derived from this | ||
* software without specific prior written permission. | ||
* | ||
* 4. This software, with or without modification, must only be used with a | ||
* Nordic Semiconductor ASA integrated circuit. | ||
* | ||
* 5. Any software provided in binary form under this license must not be reverse | ||
* engineered, decompiled, modified and/or disassembled. | ||
* | ||
* THIS SOFTWARE IS PROVIDED BY NORDIC SEMICONDUCTOR ASA "AS IS" AND ANY EXPRESS | ||
* OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES | ||
* OF MERCHANTABILITY, NONINFRINGEMENT, AND FITNESS FOR A PARTICULAR PURPOSE ARE | ||
* DISCLAIMED. IN NO EVENT SHALL NORDIC SEMICONDUCTOR ASA OR CONTRIBUTORS BE | ||
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR | ||
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE | ||
* GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) | ||
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT | ||
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT | ||
* OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||
* | ||
*/ | ||
#ifndef CUSTOM_BOARD_H | ||
#define CUSTOM_BOARD_H | ||
|
||
#ifdef __cplusplus | ||
extern "C" { | ||
#endif | ||
|
||
//#include "nrf_gpio.h" | ||
|
||
#define GPIO(port, pin) ((port << 5) | pin) | ||
#define PIN1 GPIO(0,8) | ||
#define PIN2 GPIO(0,11) | ||
#define PIN5 GPIO(0,18) | ||
#define PIN6 GPIO(0,16) | ||
#define PIN7 GPIO(0,19) | ||
#define PIN8 GPIO(0,20) | ||
#define PIN9 GPIO(0,22) | ||
#define PIN10 GPIO(0,23) | ||
#define PIN11 GPIO(1,0) | ||
#define PIN12 GPIO(1,3) | ||
|
||
#define PIN13 GPIO(0,9) | ||
#define PIN14 GPIO(0,10) | ||
#define PIN15 GPIO(1,15) | ||
#define PIN16 GPIO(1,14) | ||
#define PIN17 GPIO(0,3) | ||
#define PIN18 GPIO(0,30) | ||
#define PIN19 GPIO(0,0) | ||
#define PIN20 GPIO(0,5) | ||
//#define NRF_LOG_ENABLED 0 | ||
//#define NRF_LOG_BACKEND_SERIAL_USES_UART 0 | ||
//#define NRF_LOG_BACKEND_SERIAL_UART_TX_PIN 5 | ||
#define NRF_LOG_BACKEND_UART_TX_PIN 8 | ||
//#define DEBUG | ||
// Low frequency clock source to be used by the SoftDevice | ||
#ifdef S210 | ||
// #define NRF_CLOCK_LFCLKSRC NRF_CLOCK_LFCLKSRC_XTAL_20_PPM | ||
#else | ||
#define NRF_CLOCK_LFCLKSRC {.source = NRF_CLOCK_LF_SRC_RC, \ | ||
.rc_ctiv = 16, \ | ||
.rc_temp_ctiv = 2, \ | ||
.xtal_accuracy = 0} | ||
#endif | ||
|
||
#ifdef __cplusplus | ||
} | ||
#endif | ||
|
||
#endif // CUSTOM_BOARD_H |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,70 @@ | ||
/* | ||
Copyright 2019 Naoto Takai | ||
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 | ||
|
||
/* USB Device descriptor parameter */ | ||
#define VENDOR_ID 0xC0C0 | ||
#define PRODUCT_ID 0x3000 | ||
#define DEVICE_VER 0x0001 | ||
#define MANUFACTURER Naoto Takai | ||
#define PRODUCT nomu30 | ||
#define DESCRIPTION A 30% keyboard with ISO enter. | ||
|
||
/* key matrix size */ | ||
#define MATRIX_ROWS 3 | ||
#define MATRIX_COLS 12 | ||
|
||
/* COL2ROW, ROW2COL*/ | ||
#define DIODE_DIRECTION COL2ROW | ||
|
||
/* define if matrix has ghost */ | ||
//#define MATRIX_HAS_GHOST | ||
|
||
/* Set 0 if debouncing isn't needed */ | ||
#define DEBOUNCING_DELAY 5 | ||
|
||
/* Set 0 if debouncing isn't needed */ | ||
#define DEBOUNCE 1 | ||
|
||
/* 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 | ||
|
||
/* key combination for command */ | ||
#define IS_COMMAND() ( \ | ||
keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ | ||
) | ||
|
||
/* | ||
* 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 | ||
//#define NO_ACTION_MACRO | ||
//#define NO_ACTION_FUNCTION |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,172 @@ | ||
{ | ||
"keyboard_name": "Nomu30", | ||
"url": "https://keys.recompile.net/projects/nomu30/", | ||
"maintainer": "takai", | ||
"width": 11.5, | ||
"height": 3, | ||
"layouts": { | ||
"LAYOUT": { | ||
"layout": [ | ||
{ | ||
"label": "Q", | ||
"x": 0.5, | ||
"y": 0 | ||
}, | ||
{ | ||
"label": "W", | ||
"x": 1.5, | ||
"y": 0 | ||
}, | ||
{ | ||
"label": "E", | ||
"x": 2.5, | ||
"y": 0 | ||
}, | ||
{ | ||
"label": "R", | ||
"x": 3.5, | ||
"y": 0 | ||
}, | ||
{ | ||
"label": "T", | ||
"x": 4.5, | ||
"y": 0 | ||
}, | ||
{ | ||
"label": "Y", | ||
"x": 5.5, | ||
"y": 0 | ||
}, | ||
{ | ||
"label": "U", | ||
"x": 6.5, | ||
"y": 0 | ||
}, | ||
{ | ||
"label": "I", | ||
"x": 7.5, | ||
"y": 0 | ||
}, | ||
{ | ||
"label": "O", | ||
"x": 8.5, | ||
"y": 0 | ||
}, | ||
{ | ||
"label": "P", | ||
"x": 9.5, | ||
"y": 0 | ||
}, | ||
{ | ||
"label": "Del", | ||
"x": 10.5, | ||
"y": 0 | ||
}, | ||
{ | ||
"label": "|", | ||
"x": 0, | ||
"y": 1 | ||
}, | ||
{ | ||
"label": "A", | ||
"x": 1, | ||
"y": 1 | ||
}, | ||
{ | ||
"label": "S", | ||
"x": 2, | ||
"y": 1 | ||
}, | ||
{ | ||
"label": "D", | ||
"x": 3, | ||
"y": 1 | ||
}, | ||
{ | ||
"label": "F", | ||
"x": 4, | ||
"y": 1 | ||
}, | ||
{ | ||
"label": "G", | ||
"x": 5, | ||
"y": 1 | ||
}, | ||
{ | ||
"label": "H", | ||
"x": 6, | ||
"y": 1 | ||
}, | ||
{ | ||
"label": "J", | ||
"x": 7, | ||
"y": 1 | ||
}, | ||
{ | ||
"label": "K", | ||
"x": 8, | ||
"y": 1 | ||
}, | ||
{ | ||
"label": "L", | ||
"x": 9, | ||
"y": 1 | ||
}, | ||
{ | ||
"label": "Enter", | ||
"x": 10.25, | ||
"y": 1, | ||
"w": 1.25, | ||
"h": 2 | ||
}, | ||
{ | ||
"label": "Control", | ||
"x": 0, | ||
"y": 2, | ||
"w": 1.5 | ||
}, | ||
{ | ||
"label": "Z", | ||
"x": 1.5, | ||
"y": 2 | ||
}, | ||
{ | ||
"label": "X", | ||
"x": 2.5, | ||
"y": 2 | ||
}, | ||
{ | ||
"label": "C", | ||
"x": 3.5, | ||
"y": 2 | ||
}, | ||
{ | ||
"label": "V", | ||
"x": 4.5, | ||
"y": 2 | ||
}, | ||
{ | ||
"label": "B", | ||
"x": 5.5, | ||
"y": 2 | ||
}, | ||
{ | ||
"label": "N", | ||
"x": 6.5, | ||
"y": 2 | ||
}, | ||
{ | ||
"label": "M", | ||
"x": 7.5, | ||
"y": 2 | ||
}, | ||
{ | ||
"label": "Shift", | ||
"x": 8.5, | ||
"y": 2, | ||
"w": 1.75 | ||
} | ||
] | ||
} | ||
} | ||
} |
Oops, something went wrong.