parent
							
								
									7ff96877d2
								
							
						
					
					
						commit
						b669d115c2
					
				@ -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
 | 
				
			||||
@ -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
 | 
				
			||||
@ -0,0 +1,7 @@
 | 
				
			||||
{
 | 
				
			||||
  "keyboard_name": "Planck Light",
 | 
				
			||||
  "keyboard_folder": "planck/light",
 | 
				
			||||
  "identifier": "FEED:6065:0001",
 | 
				
			||||
  "processor": "at90usb1286",
 | 
				
			||||
  "bootloader": "qmk-dfu",
 | 
				
			||||
}
 | 
				
			||||
@ -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();
 | 
				
			||||
}
 | 
				
			||||
@ -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
 | 
				
			||||
@ -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
 | 
				
			||||
@ -1 +1,10 @@
 | 
				
			||||
AUDIO_ENABLE = no           # Audio output on port C6
 | 
				
			||||
 | 
				
			||||
# 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
 | 
				
			||||
 | 
				
			||||
@ -1 +1,9 @@
 | 
				
			||||
AUDIO_ENABLE = yes           # Audio output on port C6
 | 
				
			||||
# 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
 | 
				
			||||
 | 
				
			||||
@ -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
 | 
				
			||||
@ -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
 | 
				
			||||
 | 
				
			||||
					Loading…
					
					
				
		Reference in new issue