Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implements subprojects and updates projects for this #459

Merged
merged 76 commits into from
Jun 29, 2016
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
76 commits
Select commit Hold shift + click to select a range
6d3b8c5
non-working commit
jackhumbert Jun 12, 2016
819a448
working
jackhumbert Jun 12, 2016
2ebdeff
Merge branch 'master' into subprojects
jackhumbert Jun 13, 2016
e8645ac
subprojects implemented for planck
jackhumbert Jun 13, 2016
ccdb60d
pass a subproject variable through to c
jackhumbert Jun 13, 2016
305d3c7
consolidates clueboard revisions
jackhumbert Jun 13, 2016
7547fb3
Merge branch 'master' into subprojects
jackhumbert Jun 18, 2016
dbfa563
thanks for letting me know about conflicts..
jackhumbert Jun 18, 2016
ebc4c40
turn off audio for yang's
jackhumbert Jun 18, 2016
f5ea5c1
corrects starting paths for subprojects
jackhumbert Jun 18, 2016
49310b2
messing around with travis
jackhumbert Jun 18, 2016
c296a46
semicolon
jackhumbert Jun 18, 2016
4eb7c7b
travis script
jackhumbert Jun 18, 2016
dffa7af
travis script
jackhumbert Jun 18, 2016
41bfd58
script for travis
jackhumbert Jun 19, 2016
46ed5d5
correct directory (probably), amend files to commit
Jun 19, 2016
1d9c2c5
remove origin before adding
jackhumbert Jun 19, 2016
0a27c36
git pull, correct syntax
jackhumbert Jun 19, 2016
efc298c
git checkout
jackhumbert Jun 19, 2016
a2053bf
git pull origin branch
jackhumbert Jun 19, 2016
7f6bd83
where are we?
jackhumbert Jun 19, 2016
93ae041
where are we?
jackhumbert Jun 19, 2016
82335e4
Merge branch 'subprojects' of https://github.com/jackhumbert/qmk_firm…
jackhumbert Jun 19, 2016
f985bc4
merging
jackhumbert Jun 19, 2016
f43c640
force things to happen
jackhumbert Jun 19, 2016
193a88c
adds commit message, adds add
jackhumbert Jun 19, 2016
6b43b75
rebase, no commit message
jackhumbert Jun 19, 2016
7d0b93d
rebase branch
jackhumbert Jun 19, 2016
dc3c408
idk!
jackhumbert Jun 19, 2016
8446f33
try just pull
jackhumbert Jun 19, 2016
f67ad15
fetch - merge
jackhumbert Jun 19, 2016
983df60
specify repo branch
jackhumbert Jun 19, 2016
f9c444e
checkout
jackhumbert Jun 19, 2016
8ee6d21
goddammit
jackhumbert Jun 19, 2016
60eeba6
merge? idk
jackhumbert Jun 19, 2016
289062f
pls
jackhumbert Jun 19, 2016
a0f304f
after all
jackhumbert Jun 19, 2016
5108de7
don't split up keyboards
jackhumbert Jun 19, 2016
f11b0a6
syntax
jackhumbert Jun 19, 2016
6967a92
Merge branch 'master' into subprojects
jackhumbert Jun 19, 2016
da4b601
adds quick for all-keyboards
jackhumbert Jun 19, 2016
2f64142
trying out new script
jackhumbert Jun 19, 2016
4111800
script update
jackhumbert Jun 19, 2016
63a0830
lowercase
jackhumbert Jun 19, 2016
0dc5297
all keyboards
jackhumbert Jun 19, 2016
f07209d
stop replacing compiled.hex automatically
jackhumbert Jun 19, 2016
a3721f4
adds if statement
jackhumbert Jun 19, 2016
9a29c05
skip automated build branches
jackhumbert Jun 19, 2016
4f05f28
forces push to automated build branch
jackhumbert Jun 19, 2016
b970f88
throw an add in there
jackhumbert Jun 19, 2016
d0bcfe5
upstream?
jackhumbert Jun 19, 2016
b9a30b0
adds AUTOGEN
jackhumbert Jun 19, 2016
5f45d48
ignore all .hex files again
jackhumbert Jun 21, 2016
ac4e73a
testing out new repo
jackhumbert Jun 22, 2016
25a3f7e
global ident
jackhumbert Jun 22, 2016
7e2585b
generate script, keyboard_keymap.hex
jackhumbert Jun 22, 2016
7177b26
skip generation for now, print pandoc info, submodule update
jackhumbert Jun 23, 2016
354bd13
try trusty
jackhumbert Jun 23, 2016
720531e
and sudo
jackhumbert Jun 23, 2016
0480576
try generate
jackhumbert Jun 23, 2016
7c76295
merging master
jackhumbert Jun 23, 2016
dde8870
updates subprojects to keyboards
jackhumbert Jun 23, 2016
bb99887
no idea
jackhumbert Jun 23, 2016
6d264f8
updates to keyboards
jackhumbert Jun 23, 2016
76e182e
merge in backlight stuff
jackhumbert Jun 24, 2016
426f3fe
cleans up clueboard stuff
jackhumbert Jun 24, 2016
8e23578
setup to use local readme
jackhumbert Jun 24, 2016
c50a1b8
updates cluepad, planck experimental
jackhumbert Jun 24, 2016
86c037a
remove extra led.c [ci skip]
jackhumbert Jun 24, 2016
e382e6f
Merge branch 'master' into subprojects
jackhumbert Jun 24, 2016
bfc751a
disable power up for now
jackhumbert Jun 29, 2016
bb9395f
Merge branch 'master' into subprojects
jackhumbert Jun 29, 2016
c9c680a
config files updates
jackhumbert Jun 29, 2016
422198c
makefile updates
jackhumbert Jun 29, 2016
351f0db
.h file updates, config tuning
jackhumbert Jun 29, 2016
f646f22
disable audio for yang
jackhumbert Jun 29, 2016
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
50 changes: 16 additions & 34 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,39 +1,21 @@
os:
- linux

language:
- c

compiler:
- avr-gcc

os: linux
dist: trusty
sudo: required
language: c
compiler: avr-gcc
branches:
except:
- /^.*-automated-build$/
env:
- KEYBOARD=alps64
- KEYBOARD=arrow_pad
- KEYBOARD=atomic
- KEYBOARD=atreus
- KEYBOARD=bantam44
- KEYBOARD=clueboard1
- KEYBOARD=clueboard2
- KEYBOARD=cluepad
- KEYBOARD=ergodox_ez
- KEYBOARD=gh60
- KEYBOARD=hhkb
- KEYBOARD=jd45
- KEYBOARD=kc60
- KEYBOARD=phantom
- KEYBOARD=planck
- KEYBOARD=preonic
- KEYBOARD=retro_refit
- KEYBOARD=satan
- KEYBOARD=sixkeyboard

global:
- secure: vBTSL34BDPxDilKUuTXqU4CJ26Pv5hogD2nghatkxSQkI1/jbdnLj/DQdPUrMJFDIY6TK3AltsBx72MaMsLQ1JO/Ou24IeHINHXzUC1FlS9yQa48cpxnhX5kzXNyGs3oa0qaFbvnr7RgYRWtmD52n4bIZuSuW+xpBv05x2OCizdT2ZonH33nATaHGFasxROm4qYZ241VfzcUv766V6RVHgL4x9V08warugs+RENVkfzxxwhk3NmkrISabze0gSVJLHBPHxroZC6EUcf/ocobcuDrCwFqtEt90i7pNIAFUE7gZsN2uE75LmpzAWin21G7lLPcPL2k4FJVd8an1HiP2WmscJU6U89fOfMb2viObnKcCzebozBCmKGtHEuXZo9FcReOx49AnQSpmESJGs+q2dL/FApkTjQiyT4J6O5dJpoww0/r57Wx0cmmqjETKBb5rSgXM51Etk3wO09mvcPHsEwrT7qH8r9XWdyCDoEn7FCLX3/LYnf/D4SmZ633YPl5gv3v9XEwxR5+04akjgnvWDSNIaDbWBdxHNb7l4pMc+WR1bwCyMyA7KXj0RrftEGOrm9ZRLe6BkbT4cycA+j77nbPOMcyZChliV9pPQos+4TOJoTzcK2L8yWVoY409aDNVuAjdP6Yum0R2maBGl/etLmIMpJC35C5/lZ+dUNjJAM=
script:
- cd keyboards/$KEYBOARD && make all-keymaps

- make all-keyboards quick AUTOGEN=true
addons:
apt:
packages:
- avr-libc
- gcc-avr
- dfu-programmer
- avr-libc
- gcc-avr
- dfu-programmer
- pandoc
after_success: bash util/travis_compiled_push.sh
68 changes: 63 additions & 5 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -10,19 +10,32 @@ abs_tmk_root := $(patsubst %/,%,$(dir $(mkfile_path)))
ifneq (,$(findstring /keyboards/,$(starting_makefile)))
possible_keyboard:=$(patsubst %/,%,$(dir $(patsubst $(abs_tmk_root)/keyboards/%,%,$(starting_makefile))))
ifneq (,$(findstring /keymaps/,$(possible_keyboard)))
KEYBOARD_DIR:=$(firstword $(subst /keymaps/, ,$(possible_keyboard)))
KEYMAP_DIR:=$(lastword $(subst /keymaps/, ,$(possible_keyboard)))
tmk_root = ../../../..
KEYBOARD_DIR:=$(firstword $(subst /keymaps/, ,$(possible_keyboard)))
ifneq (,$(findstring /,$(KEYBOARD_DIR)))
# SUBPROJECT_DIR:=$(lastword $(subst /, ,$(KEYBOARD_DIR)))
# KEYBOARD_DIR:=$(firstword $(subst /, ,$(KEYBOARD_DIR)))
tmk_root = ../../..
else
tmk_root = ../../../..
endif
else
KEYBOARD_DIR:=$(possible_keyboard)
KEYMAP_DIR:=default
tmk_root = ../..
KEYBOARD_DIR:=$(possible_keyboard)
ifneq (,$(findstring /,$(KEYBOARD_DIR)))
# SUBPROJECT_DIR:=$(lastword $(subst /, ,$(KEYBOARD_DIR)))
# KEYBOARD_DIR:=$(firstword $(subst /, ,$(KEYBOARD_DIR)))
tmk_root = ../../..
else
tmk_root = ../..
endif
endif
else
tmk_root = .
endif
# $(info $(KEYBOARD_DIR))
# $(info $(KEYMAP_DIR))
# $(info $(SUBPROJECT_DIR))

# Directory common source filess exist
TOP_DIR = $(tmk_root)
Expand All @@ -32,6 +45,7 @@ TMK_PATH = $(TOP_DIR)/$(TMK_DIR)
QUANTUM_DIR = quantum
QUANTUM_PATH = $(TOP_DIR)/$(QUANTUM_DIR)


ifdef keyboard
KEYBOARD ?= $(keyboard)
endif
Expand All @@ -41,7 +55,16 @@ endif
ifndef KEYBOARD
KEYBOARD=planck
endif

# converts things to keyboards/subproject
ifneq (,$(findstring /,$(KEYBOARD)))
TEMP:=$(KEYBOARD)
KEYBOARD:=$(firstword $(subst /, ,$(TEMP)))
SUBPROJECT:=$(lastword $(subst /, ,$(TEMP)))
endif

KEYBOARD_PATH = $(TOP_DIR)/keyboards/$(KEYBOARD)

ifneq ("$(wildcard $(KEYBOARD_PATH)/$(KEYBOARD).c)","")
KEYBOARD_FILE = keyboards/$(KEYBOARD)/$(KEYBOARD).c
ifndef ARCH
Expand All @@ -51,6 +74,28 @@ else
$(error "$(KEYBOARD_PATH)/$(KEYBOARD).c" does not exist)
endif

ifdef sub
SUBPROJECT=$(sub)
endif
ifdef subproject
SUBPROJECT=$(subproject)
endif

ifdef SUBPROJECT_DEFAULT
SUBPROJECT?=$(SUBPROJECT_DEFAULT)
endif

ifdef SUBPROJECT
SUBPROJECT_PATH = $(TOP_DIR)/keyboards/$(KEYBOARD)/$(SUBPROJECT)
ifneq ("$(wildcard $(SUBPROJECT_PATH)/$(SUBPROJECT).c)","")
OPT_DEFS += -DSUBPROJECT_$(SUBPROJECT)
SUBPROJECT_FILE = keyboards/$(KEYBOARD)/$(SUBPROJECT)/$(SUBPROJECT).c
-include $(SUBPROJECT_PATH)/Makefile
else
$(error "$(SUBPROJECT_PATH)/$(SUBPROJECT).c" does not exist)
endif
endif

ifdef keymap
KEYMAP ?= $(keymap)
endif
Expand All @@ -68,7 +113,13 @@ else
$(error "$(KEYMAP_PATH)/keymap.c" does not exist)
endif

TARGET ?= $(KEYBOARD)_$(KEYMAP)
ifdef SUBPROJECT
TARGET ?= $(KEYBOARD)_$(SUBPROJECT)_$(KEYMAP)
else
TARGET ?= $(KEYBOARD)_$(KEYMAP)
endif



ifneq ("$(wildcard $(KEYMAP_PATH)/config.h)","")
CONFIG_H = $(KEYMAP_PATH)/config.h
Expand All @@ -83,6 +134,10 @@ SRC += $(KEYBOARD_FILE) \
$(QUANTUM_DIR)/keymap.c \
$(QUANTUM_DIR)/keycode_config.c

ifdef SUBPROJECT
SRC += $(SUBPROJECT_FILE)
endif

ifndef CUSTOM_MATRIX
SRC += $(QUANTUM_DIR)/matrix.c
endif
Expand All @@ -104,6 +159,9 @@ endif

# Search Path
VPATH += $(KEYMAP_PATH)
ifdef SUBPROJECT
VPATH += $(SUBPROJECT_PATH)
endif
VPATH += $(KEYBOARD_PATH)
VPATH += $(TOP_DIR)
VPATH += $(TMK_PATH)
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@

SUBPROJECT_DEFAULT = rev2

# MCU name
MCU = atmega32u4
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,9 @@
#include "clueboard1.h"
#include "clueboard.h"

void led_init_ports() {
// * Set our LED pins as output
DDRB |= (1<<4);
}

void led_set_kb(uint8_t usb_led) {
DDRF |= (1<<0);
Expand Down
13 changes: 13 additions & 0 deletions keyboards/clueboard/clueboard.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
#ifndef CLUEBOARD_H
#define CLUEBOARD_H

#ifdef SUBPROJECT_rev1
#include "rev1.h"
#endif
#ifdef SUBPROJECT_rev2
#include "rev2.h"
#endif

#include "quantum.h"

#endif
37 changes: 8 additions & 29 deletions keyboards/clueboard1/config.h → keyboards/clueboard/config.h
Original file line number Diff line number Diff line change
Expand Up @@ -22,29 +22,10 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.

/* USB Device descriptor parameter */
#define VENDOR_ID 0xC1ED
#define PRODUCT_ID 0x2301
#define DEVICE_VER 0x0003
#define MANUFACTURER Clueboard
#define PRODUCT Clueboard
#define DESCRIPTION QMK keyboard firmware for Clueboard

/* key matrix size */
#define MATRIX_ROWS 5
#define MATRIX_COLS 16

// ROWS: Top to bottom, COLS: Left to right
/* Column pin configuration
* col: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
* pin: B3 F1 F4 F5 F6 C7 C6 B6 B5 B4 D7 D6 D4 F7 B0 B1
*/
#define MATRIX_COL_PINS { B3, F1, F4, F5, F6, C7, C6, B6, B5, B4, D7, D6, D4, F7, B0, B1 }
/* Row pin configuration
* row: 0 1 2 3 4
* pin: D1 D0 D2 D5 D3
*/
#define MATRIX_ROW_PINS { D1, D0, D2, D5, D3 }
#define UNUSED_PINS

/* COL2ROW or ROW2COL */
#define DIODE_DIRECTION COL2ROW

Expand All @@ -64,16 +45,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \
)

/* Underlight configuration
*/
#define ws2812_PORTREG PORTB
#define ws2812_DDRREG DDRB
#define ws2812_pin 2
#define RGBLED_NUM 14 // Number of LEDs
#define RGBLIGHT_HUE_STEP 10
#define RGBLIGHT_SAT_STEP 17
#define RGBLIGHT_VAL_STEP 17

/*
* Feature disable options
* These options are also useful to firmware size reduction.
Expand All @@ -92,4 +63,12 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
//#define NO_ACTION_MACRO
//#define NO_ACTION_FUNCTION


#ifdef SUBPROJECT_rev1
#include "rev1/config.h"
#endif
#ifdef SUBPROJECT_rev2
#include "rev2/config.h"
#endif

#endif
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
#include "clueboard2.h"
#include "clueboard.h"

// Used for SHIFT_ESC
#define MODS_CTRL_MASK (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT))
Expand Down Expand Up @@ -138,6 +138,7 @@ void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
if (record->event.pressed) {
rgblight_toggle();
}

break;
case RGBLED_INCREASE_HUE:
if (record->event.pressed) {
Expand Down
49 changes: 49 additions & 0 deletions keyboards/clueboard/keymaps/max/Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
#----------------------------------------------------------------------------
# On command line:
#
# make all = Make software.
#
# make clean = Clean out built project files.
#
# make coff = Convert ELF to AVR COFF.
#
# make extcoff = Convert ELF to AVR Extended COFF.
#
# make program = Download the hex file to the device.
# Please customize your programmer settings(PROGRAM_CMD)
#
# make teensy = Download the hex file to the device, using teensy_loader_cli.
# (must have teensy_loader_cli installed).
#
# make dfu = Download the hex file to the device, using dfu-programmer (must
# have dfu-programmer installed).
#
# make flip = Download the hex file to the device, using Atmel FLIP (must
# have Atmel FLIP installed).
#
# make dfu-ee = Download the eeprom file to the device, using dfu-programmer
# (must have dfu-programmer installed).
#
# make flip-ee = Download the eeprom file to the device, using Atmel FLIP
# (must have Atmel FLIP installed).
#
# make debug = Start either simulavr or avarice as specified for debugging,
# with avr-gdb or avr-insight as the front end for debugging.
#
# make filename.s = Just compile filename.c into the assembler code only.
#
# make filename.i = Create a preprocessed source file for use in submitting
# bug reports to the GCC project.
#
# To rebuild project do "make clean" then "make all".
#----------------------------------------------------------------------------

# Build Options
# change to "no" to disable the options, or define them in the makefile.mk in
# the appropriate keymap folder that will get included automatically
#
RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time.

ifndef QUANTUM_DIR
include ../../../../Makefile
endif
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
#include "clueboard2.h"
#include "clueboard.h"

// Used for SHIFT_ESC
#define MODS_CTRL_MASK (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT))
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
#include "clueboard2.h"
#include "clueboard.h"

// Used for SHIFT_ESC
#define MODS_CTRL_MASK (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT))
Expand Down
5 changes: 5 additions & 0 deletions keyboards/clueboard/rev1/Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
BACKLIGHT_ENABLE = no

ifndef QUANTUM_DIR
include ../../../Makefile
endif
37 changes: 37 additions & 0 deletions keyboards/clueboard/rev1/config.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
#ifndef REV2_CONFIG_H
#define REV2_CONFIG_H

#include "../config.h"

#define PRODUCT_ID 0x2301
#define DEVICE_VER 0x0003

/* key matrix size */
#define MATRIX_ROWS 5
#define MATRIX_COLS 16

// ROWS: Top to bottom, COLS: Left to right
/* Column pin configuration
* col: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
* pin: B3 F1 F4 F5 F6 C7 C6 B6 B5 B4 D7 D6 D4 F7 B0 B1
*/
#define MATRIX_COL_PINS { B3, F1, F4, F5, F6, C7, C6, B6, B5, B4, D7, D6, D4, F7, B0, B1 }
/* Row pin configuration
* row: 0 1 2 3 4
* pin: D1 D0 D2 D5 D3
*/
#define MATRIX_ROW_PINS { D1, D0, D2, D5, D3 }
#define UNUSED_PINS

/* Underlight configuration
*/
#define ws2812_PORTREG PORTB
#define ws2812_DDRREG DDRB
#define ws2812_pin 2
#define RGBLED_NUM 14 // Number of LEDs
#define RGBLIGHT_HUE_STEP 10
#define RGBLIGHT_SAT_STEP 17
#define RGBLIGHT_VAL_STEP 17


#endif
1 change: 1 addition & 0 deletions keyboards/clueboard/rev1/rev1.c
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
#include "rev1.h"
Loading