-
-
Notifications
You must be signed in to change notification settings - Fork 39.9k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[Keyboard] ProjectKB Alice rev2 (#8718)
* Add revision 1 and revision 2 to ProjectKB Alice PCB * Swap SLEEP LED to no * Basic root rules.mk * Apply suggestions from code review * Update keyboards/projectkb/alice/rules.mk
- Loading branch information
Andrew Kannan
authored
Apr 15, 2020
1 parent
484c059
commit 17d0f63
Showing
7 changed files
with
150 additions
and
29 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 |
---|---|---|
@@ -1,17 +1,17 @@ | ||
#include "alice.h" | ||
|
||
void matrix_init_board(void){ | ||
setPinOutput(A0); | ||
setPinOutput(A1); | ||
setPinOutput(A2); | ||
setPinOutput(INDICATOR_PIN_0); | ||
setPinOutput(INDICATOR_PIN_1); | ||
setPinOutput(INDICATOR_PIN_2); | ||
} | ||
|
||
bool led_update_kb(led_t led_state) { | ||
bool runDefault = led_update_user(led_state); | ||
if (runDefault) { | ||
writePin(A0, !led_state.num_lock); | ||
writePin(A1, !led_state.caps_lock); | ||
writePin(A2, !led_state.scroll_lock); | ||
writePin(INDICATOR_PIN_0, !led_state.num_lock); | ||
writePin(INDICATOR_PIN_1, !led_state.caps_lock); | ||
writePin(INDICATOR_PIN_2, !led_state.scroll_lock); | ||
} | ||
return runDefault; | ||
} |
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
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
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,27 @@ | ||
# MCU name | ||
MCU = STM32F072 | ||
|
||
# Build Options | ||
# change yes to no to disable | ||
# | ||
BOOTMAGIC_ENABLE = lite # Virtual DIP switch configuration | ||
MOUSEKEY_ENABLE = yes # Mouse keys | ||
EXTRAKEY_ENABLE = yes # Audio control and System control | ||
CONSOLE_ENABLE = yes # Console for debug | ||
COMMAND_ENABLE = yes # Commands for debug and configuration | ||
# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE | ||
SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend | ||
# if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work | ||
NKRO_ENABLE = yes # USB Nkey Rollover | ||
BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality | ||
RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow | ||
MIDI_ENABLE = no # MIDI support | ||
BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID | ||
AUDIO_ENABLE = no # Audio output on port C6 | ||
FAUXCLICKY_ENABLE = no # Use buzzer to emulate clicky switches | ||
HD44780_ENABLE = no # Enable support for HD44780 based LCDs | ||
WS2812_DRIVER = spi | ||
|
||
|
||
# Enter lower-power sleep mode when on the ChibiOS idle thread | ||
OPT_DEFS += -DCORTEX_ENABLE_WFI_IDLE=TRUE |
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,85 @@ | ||
/* | ||
Copyright 2015 Jun Wako <[email protected]> | ||
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 0x0159 | ||
#define PRODUCT_ID 0xA71C | ||
#define DEVICE_VER 0x0001 | ||
#define MANUFACTURER ProjectKB | ||
#define PRODUCT Alice | ||
#define DESCRIPTION ProjectKB Alice | ||
|
||
/* key matrix size */ | ||
#define MATRIX_ROWS 5 | ||
#define MATRIX_COLS 16 | ||
|
||
#define MATRIX_COL_PINS { B1, B0, A7, A1, A5, A4, A3, A10, B9, B8, B7, B6, B5, B4, B3, A15 } | ||
#define MATRIX_ROW_PINS { B2, B10, B11, A2, A0 } | ||
#define DIODE_DIRECTION COL2ROW | ||
|
||
#define BACKLIGHT_PIN A6 | ||
#define BACKLIGHT_PWM_DRIVER PWMD3 | ||
#define BACKLIGHT_PWM_CHANNEL 1 | ||
#define BACKLIGHT_PAL_MODE 1 | ||
#define BACKLIGHT_LEVELS 6 | ||
#define BACKLIGHT_BREATHING | ||
#define BREATHING_PERIOD 6 | ||
|
||
/* define if matrix has ghost */ | ||
//#define MATRIX_HAS_GHOST | ||
|
||
/* Set 0 if debouncing isn't needed */ | ||
#define DEBOUNCE 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 | ||
|
||
#define RGBLIGHT_ANIMATIONS | ||
#define RGB_DI_PIN B15 | ||
#define RGBLED_NUM 14 | ||
#define WS2812_SPI SPID2 | ||
#define WS2812_SPI_MOSI_PAL_MODE 0 | ||
|
||
#define INDICATOR_PIN_0 A9 | ||
#define INDICATOR_PIN_1 A8 | ||
#define INDICATOR_PIN_2 B12 | ||
|
||
|
||
// 2 bits for 4 layout options | ||
#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 | ||
|
||
/* | ||
* 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,27 @@ | ||
# MCU name | ||
MCU = STM32F072 | ||
|
||
# Build Options | ||
# change yes to no to disable | ||
# | ||
BOOTMAGIC_ENABLE = lite # Virtual DIP switch configuration | ||
MOUSEKEY_ENABLE = yes # Mouse keys | ||
EXTRAKEY_ENABLE = yes # Audio control and System control | ||
CONSOLE_ENABLE = yes # Console for debug | ||
COMMAND_ENABLE = yes # Commands for debug and configuration | ||
# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE | ||
SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend | ||
# if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work | ||
NKRO_ENABLE = yes # USB Nkey Rollover | ||
BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality | ||
RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow | ||
MIDI_ENABLE = no # MIDI support | ||
BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID | ||
AUDIO_ENABLE = no # Audio output on port C6 | ||
FAUXCLICKY_ENABLE = no # Use buzzer to emulate clicky switches | ||
HD44780_ENABLE = no # Enable support for HD44780 based LCDs | ||
WS2812_DRIVER = spi | ||
|
||
|
||
# Enter lower-power sleep mode when on the ChibiOS idle thread | ||
OPT_DEFS += -DCORTEX_ENABLE_WFI_IDLE=TRUE |
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 |
---|---|---|
@@ -1,22 +1 @@ | ||
# MCU name | ||
MCU = STM32F072 | ||
|
||
# Build Options | ||
# comment out to disable the options. | ||
# | ||
|
||
BOOTMAGIC_ENABLE = lite # Virtual DIP switch configuration | ||
MOUSEKEY_ENABLE = yes # Mouse keys | ||
EXTRAKEY_ENABLE = yes # Audio control and System control | ||
CONSOLE_ENABLE = yes # Console for debug | ||
COMMAND_ENABLE = yes # Commands for debug and configuration | ||
SLEEP_LED_ENABLE = yes # Breathing sleep LED during USB suspend | ||
NKRO_ENABLE = yes # USB Nkey Rollover | ||
CUSTOM_MATRIX = no # Custom matrix file | ||
BACKLIGHT_ENABLE = yes | ||
RGBLIGHT_ENABLE = yes | ||
WS2812_DRIVER = spi | ||
|
||
|
||
# Enter lower-power sleep mode when on the ChibiOS idle thread | ||
OPT_DEFS += -DCORTEX_ENABLE_WFI_IDLE=TRUE | ||
DEFAULT_FOLDER = projectkb/alice/rev1 |