Compare commits

...
4 Commits
Author SHA1 Message Date
fauxpark 2df3799e3d Add list-keymaps make target (#5563) 2019-09-21 00:00:58 -07:00
jlquinn ea96c4b787 [Keyboard] Update Stapelberg readme.md (#5557)
Previously suggested parts are hard to find or non-existent.  Update with available part numbers.
2019-09-20 23:59:16 -07:00
Sorixelle 7f65323e10 Add support for Void Linux systems to the qmk_install.sh script (#5526)
* Add support for Void Linux systems to the qmk_install.sh script

* Fix typos + grammatical edits in comments

* Sort distributions by alphabetical order in linux_install.sh

* Revert previous commit and sort Void packages in alphabetical order

* Fix permissions on `util/linux_install.sh`
2019-09-20 23:55:51 -07:00
fauxpark 3642a82d37 Add support for 328P hardware backlight on B1/B2 (#6776) 2019-09-20 22:11:15 -07:00
6 changed files with 71 additions and 12 deletions

No files matched your search

+13
View File
@@ -371,6 +371,9 @@ define PARSE_KEYBOARD
# The same if all was specified # The same if all was specified
else ifeq ($$(call COMPARE_AND_REMOVE_FROM_RULE,all),true) else ifeq ($$(call COMPARE_AND_REMOVE_FROM_RULE,all),true)
$$(eval $$(call PARSE_ALL_KEYMAPS)) $$(eval $$(call PARSE_ALL_KEYMAPS))
# List all keymaps for the given keyboard
else ifeq ($$(call COMPARE_AND_REMOVE_FROM_RULE,list-keymaps),true)
$$(eval $$(call LIST_ALL_KEYMAPS))
# Try to match the specified keyamp with the list of known keymaps # Try to match the specified keyamp with the list of known keymaps
else ifeq ($$(call TRY_TO_MATCH_RULE_FROM_LIST,$$(KEYMAPS)),true) else ifeq ($$(call TRY_TO_MATCH_RULE_FROM_LIST,$$(KEYMAPS)),true)
$$(eval $$(call PARSE_KEYMAP,$$(MATCHED_ITEM))) $$(eval $$(call PARSE_KEYMAP,$$(MATCHED_ITEM)))
@@ -407,6 +410,16 @@ endef
# endif # endif
# endef # endef
# Prints a list of all known keymaps for the given keyboard
define LIST_ALL_KEYMAPS
COMMAND_true_LIST_KEYMAPS := \
printf "$$(KEYMAPS)\n";
COMMAND_false_LIST_KEYMAPS := \
printf "$$(MSG_AVAILABLE_KEYMAPS)\n"; \
printf "$$(KEYMAPS)\n";
COMMANDS += LIST_KEYMAPS
endef
# $1 Keymap # $1 Keymap
# This is the meat of compiling a keyboard, when entering this, everything is known # This is the meat of compiling a keyboard, when entering this, everything is known
# keyboard, subproject, and keymap # keyboard, subproject, and keymap
+12 -10
View File
@@ -32,16 +32,18 @@ This feature is distinct from both the [RGB underglow](feature_rgblight.md) and
Hardware PWM is supported according to the following table: Hardware PWM is supported according to the following table:
|Backlight Pin|AT90USB64/128|ATmega16/32U4|ATmega16/32U2|ATmega32A| |Backlight Pin|AT90USB64/128|ATmega16/32U4|ATmega16/32U2|ATmega32A|ATmega328P|
|-------------|-------------|-------------|-------------|---------| |-------------|-------------|-------------|-------------|---------|----------|
|`B5` |Timer 1 |Timer 1 | | | |`B1` | | | | |Timer 1 |
|`B6` |Timer 1 |Timer 1 | | | |`B2` | | | | |Timer 1 |
|`B7` |Timer 1 |Timer 1 |Timer 1 | | |`B5` |Timer 1 |Timer 1 | | | |
|`C4` |Timer 3 | | | | |`B6` |Timer 1 |Timer 1 | | | |
|`C5` |Timer 3 | |Timer 1 | | |`B7` |Timer 1 |Timer 1 |Timer 1 | | |
|`C6` |Timer 3 |Timer 3 |Timer 1 | | |`C4` |Timer 3 | | | | |
|`D4` | | | |Timer 1 | |`C5` |Timer 3 | |Timer 1 | | |
|`D5` | | | |Timer 1 | |`C6` |Timer 3 |Timer 3 |Timer 1 | | |
|`D4` | | | |Timer 1 | |
|`D5` | | | |Timer 1 | |
All other pins will use software PWM. If the [Audio](feature_audio.md) feature is disabled or only using one timer, the backlight PWM can be triggered by a hardware timer: All other pins will use software PWM. If the [Audio](feature_audio.md) feature is disabled or only using one timer, the backlight PWM can be triggered by a hardware timer:
+2 -2
View File
@@ -22,8 +22,8 @@ If you want to perform this customization, these parts may be helpful.
| 10 pin headers for thumb clusters | 4 | Digi-Key | 609-3250-ND | | 10 pin headers for thumb clusters | 4 | Digi-Key | 609-3250-ND |
| 8 pin cable for thumb clusters | 2 | Digi-Key | SAM8928-ND | | 8 pin cable for thumb clusters | 2 | Digi-Key | SAM8928-ND |
| Teensy++ 2.0 | 1 | Digi-Key | 1528-1056-ND | | Teensy++ 2.0 | 1 | Digi-Key | 1528-1056-ND |
| 2 pin right angle header for reset | 1 | Digi-Key | 3M9467-ND | | 2 pin right angle header for reset | 1 | Digi-Key | 952-2244-ND |
| Reset cables | 2 | Sparkfun | PRT-09140 | | Reset cables | 1 | Digi-Key | PRT-08672-ND |
The board and connections are shown here The board and connections are shown here
![controller board](https://i.imgur.com/2ZPMwvZ.jpg) ![controller board](https://i.imgur.com/2ZPMwvZ.jpg)
+5
View File
@@ -76,6 +76,11 @@ define GENERATE_MSG_MAKE_TEST
endef endef
MSG_MAKE_TEST = $(eval $(call GENERATE_MSG_MAKE_TEST))$(MSG_MAKE_TEST_ACTUAL) MSG_MAKE_TEST = $(eval $(call GENERATE_MSG_MAKE_TEST))$(MSG_MAKE_TEST_ACTUAL)
MSG_TEST = Testing $(BOLD)$(TEST_NAME)$(NO_COLOR) MSG_TEST = Testing $(BOLD)$(TEST_NAME)$(NO_COLOR)
define GENERATE_MSG_AVAILABLE_KEYMAPS
MSG_AVAILABLE_KEYMAPS_ACTUAL := Available keymaps for $(BOLD)$$(CURRENT_KB)$(NO_COLOR):
endef
MSG_AVAILABLE_KEYMAPS = $(eval $(call GENERATE_MSG_AVAILABLE_KEYMAPS))$(MSG_AVAILABLE_KEYMAPS_ACTUAL)
MSG_CHECK_FILESIZE = Checking file size of $(TARGET).hex MSG_CHECK_FILESIZE = Checking file size of $(TARGET).hex
MSG_FILE_TOO_BIG = $(ERROR_COLOR)The firmware is too large!$(NO_COLOR) $(CURRENT_SIZE)/$(MAX_SIZE) ($(OVER_SIZE) bytes over)\n MSG_FILE_TOO_BIG = $(ERROR_COLOR)The firmware is too large!$(NO_COLOR) $(CURRENT_SIZE)/$(MAX_SIZE) ($(OVER_SIZE) bytes over)\n
MSG_FILE_TOO_SMALL = The firmware is too small! $(CURRENT_SIZE)/$(MAX_SIZE)\n MSG_FILE_TOO_SMALL = The firmware is too small! $(CURRENT_SIZE)/$(MAX_SIZE)\n
+16
View File
@@ -1104,6 +1104,22 @@ void matrix_scan_quantum() {
# define COMxx1 COM1A1 # define COMxx1 COM1A1
# define OCRxx OCR1A # define OCRxx OCR1A
# endif # endif
# elif defined(__AVR_ATmega328P__) && (BACKLIGHT_PIN == B1 || BACKLIGHT_PIN == B2)
# define HARDWARE_PWM
# define ICRx ICR1
# define TCCRxA TCCR1A
# define TCCRxB TCCR1B
# define TIMERx_OVF_vect TIMER1_OVF_vect
# define TIMSKx TIMSK1
# define TOIEx TOIE1
# if BACKLIGHT_PIN == B1
# define COMxx1 COM1A1
# define OCRxx OCR1A
# elif BACKLIGHT_PIN == B2
# define COMxx1 COM1B1
# define OCRxx OCR1B
# endif
# else # else
# if !defined(BACKLIGHT_CUSTOM_DRIVER) # if !defined(BACKLIGHT_CUSTOM_DRIVER)
# if !defined(B5_AUDIO) && !defined(B6_AUDIO) && !defined(B7_AUDIO) # if !defined(B5_AUDIO) && !defined(B6_AUDIO) && !defined(B7_AUDIO)
+23
View File
@@ -183,6 +183,29 @@ elif grep ID /etc/os-release | grep -q solus; then
unzip unzip
printf "\n$SOLUS_INFO\n" printf "\n$SOLUS_INFO\n"
elif grep ID /etc/os-release | grep -q void; then
# musl Void systems don't have glibc cross compilers avaliable in their repos.
# glibc Void systems do have musl cross compilers though, for some reason.
# So, default to musl, and switch to glibc if it is installed.
CROSS_ARM=cross-arm-linux-musleabi
if xbps-query glibc > /dev/null; then # Check is glibc if installed
CROSS_ARM=cross-arm-linux-gnueabi
fi
sudo xbps-install \
avr-binutils \
avr-gcc \
avr-libc \
$CROSS_ARM \
dfu-programmer \
dfu-util \
gcc \
git \
make \
wget \
unzip \
zip
else else
echo "Sorry, we don't recognize your OS. Help us by contributing support!" echo "Sorry, we don't recognize your OS. Help us by contributing support!"
echo echo