Skip to content

Commit

Permalink
Merge branch 'master' of git://github.com/qmk/qmk_firmware
Browse files Browse the repository at this point in the history
* 'master' of git://github.com/qmk/qmk_firmware: (29 commits)
  Add readme for "major" keyboards to eliminate more QMK Configurator errors (qmk#2718)
  Add JJ40 Cockpit personal keymap (qmk#2713)
  hhkb jp personal keymap (qmk#2698)
  Normacos keymap for let's split keyboard (qmk#2691)
  More Configurator Warning Fixes (qmk#2716)
  Clean up some long-standing errors when populating the API (qmk#2715)
  Remove obsolete info.json entries (qmk#2712)
  Pull information from config.h and rules.mk (qmk#2711)
  Improve state/chord handling and clean up namespace
  Fix some Configurator Warnings regarding LAYOUT vs KEYMAP (qmk#2708)
  Small fixes to TKC1800
  Fix KC60 info.json file (qmk#2707)
  Add the Speedo keyboard
  Clueboard 60 info.json
  Add TKC1800 info.json
  Add 2 missing F-Row keys
  Adds Phantom TKL support (qmk#2696)
  Add Nyquist keymap (qmk#2692)
  Add support for rev3 of the Atom47 (qmk#2672)
  change KEYMAP to LAYOUT for all new keyboards made using this script
  ...
  • Loading branch information
akatrevorjay committed Apr 9, 2018
2 parents e87cf9b + 885f06c commit 18c3c8f
Show file tree
Hide file tree
Showing 299 changed files with 7,859 additions and 1,158 deletions.
2 changes: 2 additions & 0 deletions build_keyboard.mk
Original file line number Diff line number Diff line change
Expand Up @@ -143,6 +143,8 @@ ifeq ($(PLATFORM),CHIBIOS)
OPT_DEFS += -include $(KEYBOARD_PATH_1)/bootloader_defs.h
else ifneq ("$(wildcard $(KEYBOARD_PATH_1)/boards/$(BOARD)/bootloader_defs.h)","")
OPT_DEFS += -include $(KEYBOARD_PATH_1)/boards/$(BOARD)/bootloader_defs.h
else ifneq ("$(wildcard $(TOP_DIR)/drivers/boards/$(BOARD)/bootloader_defs.h)","")
OPT_DEFS += -include $(TOP_DIR)/drivers/boards/$(BOARD)/bootloader_defs.h
endif
endif

Expand Down
24 changes: 24 additions & 0 deletions docs/feature_stenography.md
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,29 @@ On the display tab click 'Open stroke display'. With Plover disabled you should
* [Steno Jig](https://joshuagrams.github.io/steno-jig/)
* More resources at the Plover [Learning Stenography](https://github.com/openstenoproject/plover/wiki/Learning-Stenography) wiki

## Interfacing with the code

The steno code has three interceptible hooks. If you define these functions, they will be called at certain points in processing; if they return true, processing continues, otherwise it's assumed you handled things.

```C
bool send_steno_chord_user(steno_mode_t mode, uint8_t chord[6]);
```
This function is called when a chord is about to be sent. Mode will be one of `STENO_MODE_BOLT` or `STENO_MODE_GEMINI`. This represents the actual chord that would be sent via whichever protocol. You can modify the chord provided to alter what gets sent. Remember to return true if you want the regular sending process to happen.
```C
bool process_steno_user(uint16_t keycode, keyrecord_t *record) { return true; }
```

This function is called when a keypress has come in, before it is processed. The keycode should be one of `QK_STENO_BOLT`, `QK_STENO_GEMINI`, or one of the `STN_*` key values.

```C
bool postprocess_steno_user(uint16_t keycode, keyrecord_t *record, steno_mode_t mode, uint8_t chord[6], int8_t pressed);
```
This function is called after a key has been processed, but before any decision about whether or not to send a chord. If `IS_PRESSED(record->event)` is false, and `pressed` is 0 or 1, the chord will be sent shortly, but has not yet been sent. This is where to put hooks for things like, say, live displays of steno chords or keys.
## Keycode Reference
As defined in `keymap_steno.h`.
Expand Down Expand Up @@ -106,3 +129,4 @@ As defined in `keymap_steno.h`.
|`STN_RES1`||(GeminiPR only)|
|`STN_RES2`||(GeminiPR only)|
|`STN_PWR`||(GeminiPR only)|
9 changes: 0 additions & 9 deletions docs/hardware_keyboard_guidelines.md
Original file line number Diff line number Diff line change
Expand Up @@ -45,17 +45,8 @@ The `info.json` file is a JSON formatted dictionary with the following keys avai
* `keyboard_name`
* A free-form text string describing the keyboard.
* Example: `Clueboard 66%`
* `manufacturer`
* A free-form text string naming the manufacturer.
* Example: `Clueboard`
* `identifier`
* The Vendor, Product, and Revision ID's joined by a :
* Example: `c1ed:2370:0001`
* `url`
* A URL to the keyboard's product page, [QMK.fm/keyboards](https://qmk.fm/keyboards) page, or other page describing information about the keyboard.
* `processor`
* The MCU or CPU this keyboard uses.
* Example: `atmega32u4` or `stm32f303`
* `bootloader`
* What bootloader this keyboard uses. Available options:
* `atmel-dfu`
Expand Down
File renamed without changes.
File renamed without changes.
5 changes: 5 additions & 0 deletions drivers/boards/IC_TEENSY_3_1/board.mk
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
# List of all the board related files.
BOARDSRC = $(BOARD_PATH)/boards/IC_TEENSY_3_1/board.c

# Required include directories
BOARDINC = $(BOARD_PATH)/boards/IC_TEENSY_3_1
3 changes: 0 additions & 3 deletions keyboards/1up60rgb/info.json
Original file line number Diff line number Diff line change
@@ -1,10 +1,7 @@
{
"keyboard_name": "1up60rgb",
"manufacturer": "1UP Keyboards",
"identifier": "",
"url": "",
"maintainer": "qmk",
"processor": "atmega32u4",
"bootloader": "atmel-dfu",
"width": 15,
"height": 5,
Expand Down
3 changes: 0 additions & 3 deletions keyboards/amj96/info.json
Original file line number Diff line number Diff line change
@@ -1,10 +1,7 @@
{
"keyboard_name": "AMJ96",
"manufacturer": "AMJ",
"identifier": "",
"url": "",
"maintainer": "qmk",
"processor": "atmega32u4",
"bootloader": "atmel-dfu",
"width": 19,
"height": 6,
Expand Down
11 changes: 2 additions & 9 deletions keyboards/atom47/atom47.c
Original file line number Diff line number Diff line change
Expand Up @@ -16,16 +16,9 @@ void matrix_scan_kb(void) {

void led_init_ports(void) {
// * Set our LED pins as output
DDRB &= ~(1<<5);
DDRE |= (1 << 6);
}

void led_set_kb(uint8_t usb_led) {
if (usb_led & (1<<USB_LED_CAPS_LOCK)) {
// Turn capslock on
PORTF |= (1<<5);
} else {
// Turn capslock off
PORTF &= ~(1<<5);
}
led_set_user(usb_led);
led_set_user(usb_led);
}
8 changes: 4 additions & 4 deletions keyboards/atom47/atom47.h
Original file line number Diff line number Diff line change
Expand Up @@ -9,14 +9,14 @@
#define KEYMAP_ANSI( \
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, \
k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1c, \
k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2c, \
k30, k31, k32, k33, k34, k36, k38, k39, k3a, k3c \
k20, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, \
k30, k31, k32, k33, k35, k37, k39, k3a, k3b, k3c \
) \
{ \
{k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c}, \
{k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, XXX, k1c}, \
{k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, XXX, k2c}, \
{k30, k31, k32, k33, k34, XXX, k36, XXX, k38, k39, k3a, XXX, k3c} \
{k20, XXX, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c}, \
{k30, k31, k32, k33, XXX, k35, XXX, k37, XXX, k39, k3a, k3b, k3c} \
}

void matrix_init_user(void);
Expand Down
20 changes: 8 additions & 12 deletions keyboards/atom47/config.h
Original file line number Diff line number Diff line change
Expand Up @@ -34,8 +34,8 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.

// ROWS: Top to bottom, COLS: Left to right

#define MATRIX_ROW_PINS {B1,B2,B3,B7}
#define MATRIX_COL_PINS {D7,D5,F0,F1,F4,F6,F7,D4,C7,C6,D6,B5,B4}
#define MATRIX_ROW_PINS {B3,B2,B1,B0}
#define MATRIX_COL_PINS {B7,F0,F1,F4,F6,D4,D6,D7,B4,B5,C6,C7,F7}
#define UNUSED_PINS

#define BACKLIGHT_PIN B6
Expand All @@ -49,10 +49,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* Set 0 if debouncing isn't needed */
#define DEBOUNCING_DELAY 5

/* 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() ( \
Expand All @@ -63,11 +59,11 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#define BACKLIGHT_LEVELS 4

#endif
#define RGB_DI_PIN F5 // The pin the LED strip is connected to
#define RGBLED_NUM 6 // Number of LEDs in your strip

#define RGB_DI_PIN D0 // The pin the LED strip is connected to
#define RGBLED_NUM 1 // Number of LEDs in your strip
#define QMK_ESC_OUTPUT B7 // usually COL
#define QMK_ESC_INPUT B3 // usually ROW
#define QMK_LED E6

#define QMK_ESC_OUTPUT D7 // usually COL
#define QMK_ESC_INPUT B1 // usually ROW
#define QMK_LED B6
#endif
35 changes: 24 additions & 11 deletions keyboards/atom47/keymaps/default/keymap.c
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
#include QMK_KEYBOARD_H
#include "atom47.h"

// 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.
Expand All @@ -16,24 +16,37 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_MA] = KEYMAP_ANSI(
KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_DEL, KC_BSPC, \
KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_ENT, \
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_RSFT, MO(_FN1), \
KC_LCTL, KC_LGUI, KC_LALT, MO(_PN), KC_SPC, KC_SPC, MO(_FN), KC_RALT, KC_APP, KC_RCTRL), \
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_RSFT, MO(_FN1), \
KC_LCTL, KC_LGUI, KC_LALT, MO(_PN), KC_SPC, KC_SPC, MO(_FN), KC_RALT, KC_APP, KC_RCTRL), \

[_FN] = KEYMAP_ANSI(
_______, KC_VOLD, KC_VOLU, KC_MUTE, RESET, _______, KC_CALC, KC_PGUP, KC_UP, KC_PGDN, KC_PSCR, KC_SLCK, KC_PAUS, \
KC_CAPS, KC_MPRV, KC_MPLY, KC_MNXT, _______, _______, KC_HOME, KC_LEFT, KC_DOWN, KC_RIGHT, KC_INS, _______, \
_______, _______, _______, _______, _______, _______, _______, BL_TOGG, BL_DEC, BL_INC, _______, _______, \
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______), \
_______, _______, _______, _______, _______, _______, _______, BL_TOGG, BL_DEC, BL_INC, _______, _______, \
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______), \

[_FN1] = KEYMAP_ANSI(
KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, \
KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, \
_______, _______, _______, _______, _______, KC_QUOT, KC_SLSH, KC_LBRC, KC_RBRC, KC_BSLS, KC_RSFT, _______, \
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______), \
_______, _______, _______, _______, _______, KC_QUOT, KC_SLSH, KC_LBRC, KC_RBRC, KC_BSLS, KC_RSFT, _______, \
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______), \

[_PN] = KEYMAP_ANSI(
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
_______, _______, _______, _______, _______, _______, _______, _______, _______, RESET),
};
RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, \
RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, \
_______, _______, _______, _______, _______, _______, _______, _______, _______, RESET),
};

void led_set_user(uint8_t usb_led) {
if (usb_led & (1<<USB_LED_CAPS_LOCK)) {
// Turn capslock on
PORTE &= ~(1 << 6);


} else {
// Turn capslock off
PORTE |= (1 << 6);
}
}

11 changes: 1 addition & 10 deletions keyboards/atom47/keymaps/default/readme.md
Original file line number Diff line number Diff line change
@@ -1,10 +1 @@
To be updated...


// This layer is just a blank template to be copied for easy layer creation. please don not edit it.

[_LX] = KEYMAP_ANSI(
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
_______, _______, _______, _______, _______, _______, _______, _______, _______, RESET),
This is the default keymap as found on the Vortex Core, with some added buttons for RGB and backlight control.
46 changes: 46 additions & 0 deletions keyboards/atom47/keymaps/maartenwut/keymap.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
#include "atom47.h"

// 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 _MA 0 //Main layer
#define _LO 1 //FN1
#define _RA 2 //FN

#define _______ KC_TRNS

const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_MA] = KEYMAP_ANSI(
KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_DEL, KC_BSPC, \
KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_ENT, \
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, \
KC_LCTL, KC_LGUI, KC_LALT, MO(_LO), KC_SPC, KC_SPC, MO(_RA), KC_RALT, KC_APP, KC_RCTRL), \

[_RA] = KEYMAP_ANSI(
_______, _______, _______, _______, _______, _______, _______, KC_PGUP, KC_UP, KC_PGDN, _______, _______, _______, \
KC_CAPS, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RIGHT, _______, _______, \
_______, _______, _______, _______, _______, _______, _______, _______, KC_VOLD, KC_VOLU, KC_MPLY, KC_PSCR, \
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______), \

[_LO] = KEYMAP_ANSI(
KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, \
KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, \
_______, _______, _______, _______, _______, _______, _______, KC_QUOT, KC_LBRC, KC_RBRC, KC_BSLS, _______, \
_______, _______, _______, _______, _______, _______, _______, _______, _______, RESET), \

};

void led_set_user(uint8_t usb_led) {
if (usb_led & (1<<USB_LED_CAPS_LOCK)) {
// Turn capslock on
PORTE &= ~(1 << 6);


} else {
// Turn capslock off
PORTE |= (1 << 6);
}
}

1 change: 1 addition & 0 deletions keyboards/atom47/keymaps/maartenwut/readme.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
This is the default keymap as found on the Vortex Core, with some added buttons for RGB and backlight control.
28 changes: 13 additions & 15 deletions keyboards/atom47/readme.md
Original file line number Diff line number Diff line change
@@ -1,28 +1,26 @@
# ATOM47
# Atom47

![ATOM47](https://i.imgur.com/rjrFTKT.png)
![Atom47](https://i.imgur.com/Wwflqvt.png)

## Support
Keyboard Maintainer: [Matthew Kerfoot(https://github.com/mkerfoot)
Hardware Supported: ATOM47
Keyboard Maintainer: [Maarten Dekkers(https://github.com/maartenwut)
Hardware Supported: Atom47 rev3
Hardware Availability: [GeekHack.com Group Buy](https://geekhack.org/index.php?topic=93447.msg2545221)


## Features
QMK Firmware
6 Underglow RGB leds
In-switch leds
Through-hole micro usb connector (less likely to break off!)
South facing leds for the QMX/Zealencio users
Multiple layouts
Easily reachable reset button under the spacebar
CapsLock indicator
- QMK Firmware
- 6 Underglow RGB leds
- In-switch leds
- Through-hole micro usb connector (less likely to break off!)
- South facing leds for the QMX/Zealencio users
- Multiple layouts
- Easily reachable reset button under the spacebar
- CapsLock indicator

## Build
To build the default keymap, simply run `make atom47:default`.

For an alternative, heavily modified layout you would just need to run `make atom47:LEdiodes`.

See [build environment setup](https://docs.qmk.fm/build_environment_setup.html) then the [make instructions](https://docs.qmk.fm/make_instructions.html) for more information.

![ATOM47](https://i.imgur.com/WebeUOF.png)
![Atom47](https://i.imgur.com/JfYnOba.jpg)
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -63,11 +63,11 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#define BACKLIGHT_LEVELS 4

#endif

#define RGB_DI_PIN D0 // The pin the LED strip is connected to
#define RGBLED_NUM 1 // Number of LEDs in your strip

#define QMK_ESC_OUTPUT D7 // usually COL
#define QMK_ESC_INPUT B1 // usually ROW
#define QMK_LED B6
#define QMK_LED B6

#endif
31 changes: 31 additions & 0 deletions keyboards/atom47/rev2/keymaps/LEdiodes/atom47.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
#include "atom47.h"
#include "led.h"

void matrix_init_kb(void) {
// put your keyboard start-up code here
// runs once when the firmware starts up
matrix_init_user();
led_init_ports();
};

void matrix_scan_kb(void) {
// put your looping keyboard code here
// runs every cycle (a lot)
matrix_scan_user();
};

void led_init_ports(void) {
// * Set our LED pins as output
DDRB &= ~(1<<5);
}

void led_set_kb(uint8_t usb_led) {
if (usb_led & (1<<USB_LED_CAPS_LOCK)) {
// Turn capslock on
PORTF |= (1<<5);
} else {
// Turn capslock off
PORTF &= ~(1<<5);
}
led_set_user(usb_led);
}
Loading

0 comments on commit 18c3c8f

Please sign in to comment.