~ruther/qmk_firmware

b669d115c2969a58f0ae00f6ae5c2290dba44c03 — Jack Humbert 7 years ago 7ff9687
adds planck light keyboard
M keyboards/planck/keymaps/brandon/config.h => keyboards/planck/keymaps/brandon/config.h +21 -84
@@ 1,68 1,30 @@
/*
Copyright 2012 Jun Wako <wakojun@gmail.com>

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/>.
*/

#ifndef CONFIG_H
#define CONFIG_H

#define TAPPING_TERM 200

#include "config_common.h"

/* USB Device descriptor parameter */
#define VENDOR_ID       0xFEED
#define PRODUCT_ID      0x6060
#define MANUFACTURER    Ortholinear Keyboards
#define PRODUCT         The Planck Keyboard
#define DESCRIPTION     A compact ortholinear keyboard

/* key matrix size */
#define MATRIX_ROWS 4
#define MATRIX_COLS 12

/* Planck PCB default pin-out */
#define MATRIX_ROW_PINS { D0, D5, B5, B6 }
#define MATRIX_COL_PINS { F1, F0, B0, C7, F4, F5, F6, F7, D4, D6, B4, D7 }
#define UNUSED_PINS

#define AUDIO_VOICES

#define BACKLIGHT_PIN B7
#ifndef CONFIG_USER_H
#define CONFIG_USER_H

/* COL2ROW or ROW2COL */
#define DIODE_DIRECTION COL2ROW
#include "../../config.h"

/* define if matrix has ghost */
//#define MATRIX_HAS_GHOST
/*
 * MIDI options
 */

/* number of backlight levels */
#define BACKLIGHT_LEVELS 3
/* Prevent use of disabled MIDI features in the keymap */
//#define MIDI_ENABLE_STRICT 1

/* Set 0 if debouncing isn't needed */
#define DEBOUNCING_DELAY 5
/* enable basic MIDI features:
   - MIDI notes can be sent when in Music mode is on
*/
#define MIDI_BASIC

/* 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
/* enable advanced MIDI features:
   - MIDI notes can be added to the keymap
   - Octave shift and transpose
   - Virtual sustain, portamento, and modulation wheel
   - etc.
*/
//#define MIDI_ADVANCED

/* key combination for command */
#define IS_COMMAND() ( \
    keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \
)
/* override number of MIDI tone keycodes (each octave adds 12 keycodes and allocates 12 bytes) */
//#define MIDI_TONE_KEYCODE_OCTAVES 2

#define MOUSEKEY_INTERVAL       20
#define MOUSEKEY_DELAY          0


@@ 70,29 32,4 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
#define MOUSEKEY_MAX_SPEED      7
#define MOUSEKEY_WHEEL_DELAY 0

/*
 * 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

#ifdef SUBPROJECT_rev3
    #include "rev3/config.h"
#endif
#ifdef SUBPROJECT_rev4
    #include "rev4/config.h"
#endif

#endif

M keyboards/planck/keymaps/circuit/config.h => keyboards/planck/keymaps/circuit/config.h +20 -82
@@ 1,91 1,29 @@
/*
Copyright 2012 Jun Wako <wakojun@gmail.com>

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/>.
*/

#ifndef CONFIG_H
#define CONFIG_H

#include "config_common.h"

/* Tap-dance interval definition */
#define TAPPING_TERM 200

/* USB Device descriptor parameter */
#define VENDOR_ID       0xFEED
#define PRODUCT_ID      0x6060
#define MANUFACTURER    Ortholinear Keyboards
#define PRODUCT         The Planck Keyboard
#define DESCRIPTION     A compact ortholinear keyboard

/* key matrix size */
#define MATRIX_ROWS 4
#define MATRIX_COLS 12
#ifndef CONFIG_USER_H
#define CONFIG_USER_H

/* Planck PCB default pin-out */
#define MATRIX_ROW_PINS { D0, D5, B5, B6 }
#define MATRIX_COL_PINS { F1, F0, B0, C7, F4, F5, F6, F7, D4, D6, B4, D7 }
#define UNUSED_PINS

#define BACKLIGHT_PIN B7

/* COL2ROW or ROW2COL */
#define DIODE_DIRECTION COL2ROW

/* define if matrix has ghost */
//#define MATRIX_HAS_GHOST

/* number of backlight levels */
#define BACKLIGHT_LEVELS 3

/* 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() ( \
    keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \
)
#include "../../config.h"

/*
 * Feature disable options
 *  These options are also useful to firmware size reduction.
 * MIDI options
 */

/* disable debug print */
//#define NO_DEBUG
/* Prevent use of disabled MIDI features in the keymap */
//#define MIDI_ENABLE_STRICT 1

/* disable print */
//#define NO_PRINT
/* enable basic MIDI features:
   - MIDI notes can be sent when in Music mode is on
*/
#define MIDI_BASIC

/* disable action features */
//#define NO_ACTION_LAYER
//#define NO_ACTION_TAPPING
//#define NO_ACTION_ONESHOT
//#define NO_ACTION_MACRO
//#define NO_ACTION_FUNCTION
/* enable advanced MIDI features:
   - MIDI notes can be added to the keymap
   - Octave shift and transpose
   - Virtual sustain, portamento, and modulation wheel
   - etc.
*/
//#define MIDI_ADVANCED

#ifdef SUBPROJECT_rev3
    #include "rev3/config.h"
#endif
#ifdef SUBPROJECT_rev4
    #include "rev4/config.h"
#endif
/* override number of MIDI tone keycodes (each octave adds 12 keycodes and allocates 12 bytes) */
//#define MIDI_TONE_KEYCODE_OCTAVES 2

#endif
#endif
\ No newline at end of file

M keyboards/planck/keymaps/default/keymap.c => keyboards/planck/keymaps/default/keymap.c +3 -3
@@ 163,9 163,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 * `-----------------------------------------------------------------------------------'
 */
[_ADJUST] = {
  {_______, RESET,   DEBUG,   _______, _______, _______, _______, TERM_ON, TERM_OFF,_______, _______, KC_DEL },
  {_______, RESET,   DEBUG,    RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_DEL },
  {_______, _______, MU_MOD,  AU_ON,   AU_OFF,  AG_NORM, AG_SWAP, QWERTY,  COLEMAK, DVORAK,  PLOVER,  _______},
  {_______, MUV_DE,  MUV_IN,  MU_ON,   MU_OFF,  MI_ON,   MI_OFF,  _______, _______, _______, _______, _______},
  {_______, MUV_DE,  MUV_IN,  MU_ON,   MU_OFF,  MI_ON,   MI_OFF,  TERM_ON, TERM_OFF, _______, _______, _______},
  {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______}
}



@@ 261,4 261,4 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
      break;
  }
  return true;
}
\ No newline at end of file
}

M keyboards/planck/keymaps/khord/config.h => keyboards/planck/keymaps/khord/config.h +1 -1
@@ 1,7 1,7 @@
#ifndef CONFIG_USER_H
#define CONFIG_USER_H

#include "../../config.h"
#include "config_common.h"

#ifdef AUDIO_ENABLE
    #define STARTUP_SONG SONG(SONIC_RING)

M keyboards/planck/keymaps/pvc/config.h => keyboards/planck/keymaps/pvc/config.h +19 -22
@@ 29,31 29,28 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
#define MATRIX_COL_PINS { F1, F0, B0, C7, F4, F5, F6, F7, D4, D6, B4, D7 }
#define UNUSED_PINS

/* COL2ROW or ROW2COL */
#define DIODE_DIRECTION COL2ROW

/* define if matrix has ghost */
//#define MATRIX_HAS_GHOST

/* number of backlight levels */
#define BACKLIGHT_LEVELS 3

/* Set 0 if debouncing isn't needed */
#define DEBOUNCING_DELAY 5
/*
 * MIDI options
 */

/* 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
/* Prevent use of disabled MIDI features in the keymap */
//#define MIDI_ENABLE_STRICT 1

/* key combination for command */
#define IS_COMMAND() ( \
    keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \
)
/* enable basic MIDI features:
   - MIDI notes can be sent when in Music mode is on
*/
#define MIDI_BASIC

#define BACKLIGHT_PIN B7
#define BACKLIGHT_BREATHING
/* enable advanced MIDI features:
   - MIDI notes can be added to the keymap
   - Octave shift and transpose
   - Virtual sustain, portamento, and modulation wheel
   - etc.
*/
//#define MIDI_ADVANCED

/* override number of MIDI tone keycodes (each octave adds 12 keycodes and allocates 12 bytes) */
//#define MIDI_TONE_KEYCODE_OCTAVES 2
/*
 * Feature disable options
 *  These options are also useful to firmware size reduction.


@@ 72,6 69,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
/* Only print user print statements */
#define USER_PRINT

#define BACKLIGHT_BREATHING

/* disable action features */
//#define NO_ACTION_LAYER


@@ 79,5 77,4 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
//#define NO_ACTION_ONESHOT
//#define NO_ACTION_MACRO
//#define NO_ACTION_FUNCTION

#endif

M keyboards/planck/keymaps/vifon/config.h => keyboards/planck/keymaps/vifon/config.h +20 -79
@@ 1,82 1,30 @@
/*
Copyright 2012 Jun Wako <wakojun@gmail.com>

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/>.
*/

#ifndef CONFIG_H
#define CONFIG_H

#include "config_common.h"

/* USB Device descriptor parameter */
#define VENDOR_ID       0xFEED
#define PRODUCT_ID      0x6060
#define MANUFACTURER    Ortholinear Keyboards
#define PRODUCT         The Planck Keyboard
#define DESCRIPTION     A compact ortholinear keyboard

/* key matrix size */
#define MATRIX_ROWS 4
#define MATRIX_COLS 12

/* Planck PCB default pin-out */
#define MATRIX_ROW_PINS { D0, D5, B5, B6 }
#define MATRIX_COL_PINS { F1, F0, B0, C7, F4, F5, F6, F7, D4, D6, B4, D7 }
#define UNUSED_PINS

#define BACKLIGHT_PIN B7
#ifndef CONFIG_USER_H
#define CONFIG_USER_H

/* COL2ROW or ROW2COL */
#define DIODE_DIRECTION COL2ROW

/* define if matrix has ghost */
//#define MATRIX_HAS_GHOST

/* number of backlight levels */
#define BACKLIGHT_LEVELS 3

/* 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() ( \
    keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \
)
#include "../../config.h"

/*
 * Feature disable options
 *  These options are also useful to firmware size reduction.
 * MIDI options
 */

/* disable debug print */
//#define NO_DEBUG
/* Prevent use of disabled MIDI features in the keymap */
//#define MIDI_ENABLE_STRICT 1

/* disable print */
//#define NO_PRINT
/* enable basic MIDI features:
   - MIDI notes can be sent when in Music mode is on
*/
#define MIDI_BASIC

/* disable action features */
//#define NO_ACTION_LAYER
//#define NO_ACTION_TAPPING
//#define NO_ACTION_ONESHOT
//#define NO_ACTION_MACRO
//#define NO_ACTION_FUNCTION
/* enable advanced MIDI features:
   - MIDI notes can be added to the keymap
   - Octave shift and transpose
   - Virtual sustain, portamento, and modulation wheel
   - etc.
*/
//#define MIDI_ADVANCED

/* override number of MIDI tone keycodes (each octave adds 12 keycodes and allocates 12 bytes) */
//#define MIDI_TONE_KEYCODE_OCTAVES 2

/* prevent the modifiers from being stuck, sacrificing some memory */
#define PREVENT_STUCK_MODIFIERS


@@ 86,11 34,4 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */
#define DYNAMIC_MACRO_SIZE 256

#ifdef SUBPROJECT_rev3
    #include "rev3/config.h"
#endif
#ifdef SUBPROJECT_rev4
    #include "rev4/config.h"
#endif

#endif

M keyboards/planck/keymaps/zach/config.h => keyboards/planck/keymaps/zach/config.h +21 -53
@@ 1,55 1,30 @@
/*
Copyright 2012 Jun Wako <wakojun@gmail.com>

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/>.
*/

#ifndef CONFIG_H
#define CONFIG_H

#include "config_common.h"

/* USB Device descriptor parameter */
#define VENDOR_ID       0xFEED
#define PRODUCT_ID      0x6060
#define MANUFACTURER    Ortholinear Keyboards
#define PRODUCT         The Planck Keyboard
#define DESCRIPTION     A compact ortholinear keyboard
#ifndef CONFIG_USER_H
#define CONFIG_USER_H

/* key matrix size */
#define MATRIX_ROWS 4
#define MATRIX_COLS 12
#include "../../config.h"

/* Planck PCB default pin-out */
#define MATRIX_ROW_PINS { D0, D5, B5, B6 }
#define MATRIX_COL_PINS { F1, F0, B0, C7, F4, F5, F6, F7, D4, D6, B4, D7 }
#define UNUSED_PINS

#define BACKLIGHT_PIN B7
/*
 * MIDI options
 */

/* COL2ROW or ROW2COL */
#define DIODE_DIRECTION COL2ROW
/* Prevent use of disabled MIDI features in the keymap */
//#define MIDI_ENABLE_STRICT 1

/* define if matrix has ghost */
//#define MATRIX_HAS_GHOST
/* enable basic MIDI features:
   - MIDI notes can be sent when in Music mode is on
*/
#define MIDI_BASIC

//#define BACKLIGHT_BREATHING     // LED breathing
/* number of backlight levels */
#define BACKLIGHT_LEVELS 5
/* enable advanced MIDI features:
   - MIDI notes can be added to the keymap
   - Octave shift and transpose
   - Virtual sustain, portamento, and modulation wheel
   - etc.
*/
//#define MIDI_ADVANCED

/* Set 0 if debouncing isn't needed */
#define DEBOUNCING_DELAY 5
/* override number of MIDI tone keycodes (each octave adds 12 keycodes and allocates 12 bytes) */
//#define MIDI_TONE_KEYCODE_OCTAVES 2

/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
//#define LOCKING_SUPPORT_ENABLE


@@ 84,11 59,4 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
//#define DYNAMIC_MACRO_ENABLE    // Enable if you need to use the macro functionality
//#define SPACE_CADET             // Parenthesis on L/R shift

#ifdef SUBPROJECT_rev3
    #include "rev3/config.h"
#endif
#ifdef SUBPROJECT_rev4
    #include "rev4/config.h"
#endif

#endif

A keyboards/planck/light/config.h => keyboards/planck/light/config.h +28 -0
@@ 0,0 1,28 @@
#ifndef LIGHT_CONFIG_H
#define LIGHT_CONFIG_H

#include "config_common.h"

#undef PRODUCT
#define PRODUCT Planck Light
#undef PRODUCT_ID
#define PRODUCT_ID 0x6065
#define DEVICE_VER 0x0001

#undef MATRIX_ROW_PINS
#undef MATRIX_COL_PINS

#define MATRIX_ROW_PINS { B0, E7, F0, F1 }
#define MATRIX_COL_PINS { E6, E3, E4, D3, D4, D5, C0, A7, A6, E1, E0, D7 }

#define C6_AUDIO
#define B5_AUDIO

#undef BACKLIGHT_PIN

#define BACKLIGHT_PIN A5

#define NO_USB_STARTUP_CHECK


#endif
\ No newline at end of file

A keyboards/planck/light/info.json => keyboards/planck/light/info.json +7 -0
@@ 0,0 1,7 @@
{
  "keyboard_name": "Planck Light",
  "keyboard_folder": "planck/light",
  "identifier": "FEED:6065:0001",
  "processor": "at90usb1286",
  "bootloader": "qmk-dfu",
}
\ No newline at end of file

A keyboards/planck/light/light.c => keyboards/planck/light/light.c +39 -0
@@ 0,0 1,39 @@
/* Copyright 2017 Jason Williams
 * Copyright 2017 Jack Humbert
 *
 * 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 "light.h"

void matrix_init_kb(void) {

    // Turn status LED on
    DDRD |= (1<<6);
    PORTD |= (1<<6);

    matrix_init_user();
}

bool process_record_kb(uint16_t keycode, keyrecord_t *record)
{   
    return process_record_user(keycode, record);
}

uint16_t backlight_task_counter = 0;

void matrix_scan_kb(void)
{
    matrix_scan_user();
}
\ No newline at end of file

A keyboards/planck/light/light.h => keyboards/planck/light/light.h +23 -0
@@ 0,0 1,23 @@
/* Copyright 2017 Jason Williams
 * Copyright 2017 Jack Humbert
 *
 * 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/>.
 */

#ifndef LIGHT_H
#define LIGHT_H

#include "planck.h"

#endif
\ No newline at end of file

A keyboards/planck/light/rules.mk => keyboards/planck/light/rules.mk +9 -0
@@ 0,0 1,9 @@
MIDI_ENABLE = yes
AUDIO_ENABLE = yes           # Audio output on port C6
MOUSEKEY_ENABLE = yes       # Mouse keys(+4700)
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

OPT_DEFS += -DBOOTLOADER_SIZE=8192

MCU = at90usb1286
\ No newline at end of file

M keyboards/planck/planck.c => keyboards/planck/planck.c +1 -0
@@ 10,6 10,7 @@ const keypos_t hand_swap_config[MATRIX_ROWS][MATRIX_COLS] = {
};
#endif

__attribute__ ((weak))
void matrix_init_kb(void) {
	// Turn status LED on
	DDRE |= (1<<6);

M keyboards/planck/rev3/rules.mk => keyboards/planck/rev3/rules.mk +10 -1
@@ 1,1 1,10 @@
AUDIO_ENABLE = no           # Audio output on port C6
\ No newline at end of file

# Boot Section Size in *bytes*
#   Teensy halfKay   512
#   Teensy++ halfKay 1024
#   Atmel DFU loader 4096
#   LUFA bootloader  4096
#   USBaspLoader     2048
OPT_DEFS += -DBOOTLOADER_SIZE=4096

AUDIO_ENABLE = no           # Audio output on port C6

M keyboards/planck/rev4/rules.mk => keyboards/planck/rev4/rules.mk +9 -1
@@ 1,1 1,9 @@
AUDIO_ENABLE = yes           # Audio output on port C6
\ No newline at end of file
# Boot Section Size in *bytes*
#   Teensy halfKay   512
#   Teensy++ halfKay 1024
#   Atmel DFU loader 4096
#   LUFA bootloader  4096
#   USBaspLoader     2048
OPT_DEFS += -DBOOTLOADER_SIZE=4096

AUDIO_ENABLE = yes           # Audio output on port C6

M keyboards/planck/rev5/rules.mk => keyboards/planck/rev5/rules.mk +8 -0
@@ 1,1 1,9 @@
# Boot Section Size in *bytes*
#   Teensy halfKay   512
#   Teensy++ halfKay 1024
#   Atmel DFU loader 4096
#   LUFA bootloader  4096
#   USBaspLoader     2048
OPT_DEFS += -DBOOTLOADER_SIZE=4096

AUDIO_ENABLE = yes           # Audio output on port C6
\ No newline at end of file

M keyboards/planck/rules.mk => keyboards/planck/rules.mk +0 -9
@@ 37,15 37,6 @@ F_USB = $(F_CPU)
# Interrupt driven control endpoint task(+60)
OPT_DEFS += -DINTERRUPT_CONTROL_ENDPOINT


# Boot Section Size in *bytes*
#   Teensy halfKay   512
#   Teensy++ halfKay 1024
#   Atmel DFU loader 4096
#   LUFA bootloader  4096
#   USBaspLoader     2048
OPT_DEFS += -DBOOTLOADER_SIZE=4096

# 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

M quantum/audio/audio.c => quantum/audio/audio.c +4 -1
@@ 184,6 184,9 @@ void audio_init()
        #ifdef B5_AUDIO
            TCCR1A = (0 << COM1A1) | (0 << COM1A0) | (1 << WGM11) | (0 << WGM10);
            TCCR1B = (1 << WGM13)  | (1 << WGM12)  | (0 << CS12)  | (1 << CS11) | (0 << CS10);

            TIMER_1_PERIOD = (uint16_t)(((float)F_CPU) / (440 * CPU_PRESCALER));
            TIMER_1_DUTY_CYCLE = (uint16_t)((((float)F_CPU) / (440 * CPU_PRESCALER)) * note_timbre);
        #endif

        audio_initialized = true;


@@ 192,7 195,7 @@ void audio_init()
    if (audio_config.enable) {
        PLAY_SONG(startup_song);
    }

    
}

void stop_all_notes()

M quantum/quantum.c => quantum/quantum.c +1 -2
@@ 1105,8 1105,6 @@ ISR(TIMER1_COMPA_vect)

}



#endif // breathing

#else // backlight


@@ 1168,6 1166,7 @@ void send_nibble(uint8_t number) {
__attribute__((weak))
uint16_t hex_to_keycode(uint8_t hex)
{
  hex = hex & 0xF;
  if (hex == 0x0) {
    return KC_0;
  } else if (hex < 0xA) {

M util/travis_build.sh => util/travis_build.sh +34 -23
@@ 1,36 1,47 @@
#!/bin/bash

# test force push
#TRAVIS_COMMIT_RANGE="c287f1bfc5c8...81f62atc4c1d"

TRAVIS_COMMIT_MESSAGE="${TRAVIS_COMMIT_MESSAGE:-none}"
TRAVIS_COMMIT_RANGE="${TRAVIS_COMMIT_RANGE:-HEAD~1..HEAD}"
MAKE_ALL="make all:default AUTOGEN=\"true\""

if [[ "$TRAVIS_COMMIT_MESSAGE" != *"[skip build]"* ]] ; then 
	exit_code=0
	NEFM=$(git diff --name-only -n 1 ${TRAVIS_COMMIT_RANGE} | grep -Ev '^(keyboards/)'  | grep -Ev '^(docs/)' | wc -l)
	BRANCH=$(git rev-parse --abbrev-ref HEAD)
	if [ $NEFM -gt 0 -o "$BRANCH" = "master" ]; then
		echo "Making all keymaps for all keyboards"
		make all:default AUTOGEN="true"
	git diff --name-only -n 1 ${TRAVIS_COMMIT_RANGE}
	if [ $? -eq 128 ]; then
		echo "Making default keymaps for all keyboards"
		eval $MAKE_ALL
		: $((exit_code = $exit_code + $?))
	else
		MKB=$(git diff --name-only -n 1 ${TRAVIS_COMMIT_RANGE} | grep -oP '(?<=keyboards\/)([a-zA-Z0-9_\/]+)(?=\/)' | sort -u)
		for KB in $MKB ; do
			if [[ $KB == *keymaps* ]]; then
				continue
			fi
			KEYMAP_ONLY=$(git diff --name-only -n 1 ${TRAVIS_COMMIT_RANGE} | grep -Ev '^(keyboards/'${KB}'/keymaps/)' | wc -l)
			if [[ $KEYMAP_ONLY -gt 0 ]]; then
				echo "Making all keymaps for $KB"
				make ${KB}:all AUTOGEN=true
				: $((exit_code = $exit_code + $?))
			else
				MKM=$(git diff --name-only -n 1 ${TRAVIS_COMMIT_RANGE} | grep -oP '(?<=keyboards/'${KB}'/keymaps/)([a-zA-Z0-9_]+)(?=\/)' | sort -u)
				for KM in $MKM ; do
					echo "Making $KM for $KB"	
					make ${KB}:${KM} AUTOGEN=true
		NEFM=$(git diff --name-only -n 1 ${TRAVIS_COMMIT_RANGE} | grep -Ev '^(keyboards/)'  | grep -Ev '^(docs/)' | wc -l)
		BRANCH=$(git rev-parse --abbrev-ref HEAD)
		if [ $NEFM -gt 0 -o "$BRANCH" = "master" ]; then
			echo "Making default keymaps for all keyboards"
			eval $MAKE_ALL
			: $((exit_code = $exit_code + $?))
		else
			MKB=$(git diff --name-only -n 1 ${TRAVIS_COMMIT_RANGE} | grep -oP '(?<=keyboards\/)([a-zA-Z0-9_\/]+)(?=\/)' | sort -u)
			for KB in $MKB ; do
				if [[ $KB == *keymaps* ]]; then
					continue
				fi
				KEYMAP_ONLY=$(git diff --name-only -n 1 ${TRAVIS_COMMIT_RANGE} | grep -Ev '^(keyboards/'${KB}'/keymaps/)' | wc -l)
				if [[ $KEYMAP_ONLY -gt 0 ]]; then
					echo "Making all keymaps for $KB"
					make ${KB}:all AUTOGEN=true
					: $((exit_code = $exit_code + $?))
				done		
			fi
		done
				else
					MKM=$(git diff --name-only -n 1 ${TRAVIS_COMMIT_RANGE} | grep -oP '(?<=keyboards/'${KB}'/keymaps/)([a-zA-Z0-9_]+)(?=\/)' | sort -u)
					for KM in $MKM ; do
						echo "Making $KM for $KB"	
						make ${KB}:${KM} AUTOGEN=true
						: $((exit_code = $exit_code + $?))
					done		
				fi
			done
		fi
	fi
	exit $exit_code
fi