diff options
author | Takeshi ISHII <2170248+mtei@users.noreply.github.com> | 2018-09-28 11:02:12 +0900 |
---|---|---|
committer | Jack Humbert <jack.humb@gmail.com> | 2018-09-27 22:02:12 -0400 |
commit | baebbc096702c3ecc0ee89b4fbf5749e79f02375 (patch) | |
tree | e71f7f0843e959976e2de76a45033c2810cc91a1 | |
parent | edeace279b1cdc5a5450cc5b41d49b341a3a121f (diff) |
add 'mavrdude' target into tmk_core/avr.mk (#3986)
* add 'mavrdude' target into tmk_core/avr.mk
I made it a little convenient when writing the same binary to multiple Pro Micro.
* rename target name 'mavrdude' to 'avrdude-loop'
* modify docs/flashing.md about avrdude-loop
* mdify docs/flashing.md again
* modifi docs/flashing.md 3rd
-rw-r--r-- | docs/flashing.md | 6 | ||||
-rw-r--r-- | tmk_core/avr.mk | 12 |
2 files changed, 17 insertions, 1 deletions
diff --git a/docs/flashing.md b/docs/flashing.md index e5fe59f8f0..66c08a3610 100644 --- a/docs/flashing.md +++ b/docs/flashing.md @@ -78,6 +78,12 @@ or make <keyboard>:<keymap>:avrdude +or if you want to flash multiple boards, use the following command + + make <keyboard>:<keymap>:avrdude-loop + +When you're done flashing boards, you'll need to hit Ctrl + C or whatever the correct keystroke is for your operating system to break the loop. + ## Halfkay Halfkay is a super-slim protocol developed by PJRC that uses HID, and come on all Teensys (namely the 2.0). diff --git a/tmk_core/avr.mk b/tmk_core/avr.mk index 2f955b18fe..add904c9c5 100644 --- a/tmk_core/avr.mk +++ b/tmk_core/avr.mk @@ -169,7 +169,8 @@ dfu-ee: $(BUILD_DIR)/$(TARGET).hex $(BUILD_DIR)/$(TARGET).eep fi $(DFU_PROGRAMMER) $(MCU) reset -avrdude: $(BUILD_DIR)/$(TARGET).hex check-size cpfirmware +define EXEC_AVRDUDE + USB= ;\ if $(GREP) -q -s Microsoft /proc/version; then \ echo 'ERROR: AVR flashing cannot be automated within the Windows Subsystem for Linux (WSL) currently. Instead, take the .hex file generated and flash it using AVRDUDE, AVRDUDESS, or XLoader.'; \ else \ @@ -191,6 +192,15 @@ avrdude: $(BUILD_DIR)/$(TARGET).hex check-size cpfirmware sleep 1; \ avrdude -p $(MCU) -c avr109 -P $$USB -U flash:w:$(BUILD_DIR)/$(TARGET).hex; \ fi +endef + +avrdude: $(BUILD_DIR)/$(TARGET).hex check-size cpfirmware + $(call EXEC_AVRDUDE) + +avrdude-loop: $(BUILD_DIR)/$(TARGET).hex check-size cpfirmware + while true; do \ + $(call EXEC_AVRDUDE) ; \ + done # Convert hex to bin. bin: $(BUILD_DIR)/$(TARGET).hex |