]> git.friedersdorff.com Git - max/tmk_keyboard.git/blobdiff - tmk_core/rules.mk
lufa: usb-usb: Use LUFA startup instead of cusotom
[max/tmk_keyboard.git] / tmk_core / rules.mk
index 860fc1a9310da970ebecba597c150802f522f37e..978f3c06558a24ba65ade19948f6ebef388ce66f 100644 (file)
@@ -420,14 +420,21 @@ flip: $(TARGET).hex
        batchisp -hardware usb -device $(MCU) -operation start reset 0
 
 dfu: $(TARGET).hex
-ifneq (, $(findstring 0.7, $(shell dfu-programmer --version 2>&1)))
+       @echo -n dfu-programmer: waiting
+       @until dfu-programmer $(MCU) get bootloader-version > /dev/null 2>&1; do \
+               echo  -n "."; \
+               sleep 1; \
+       done
+       @echo
+
+ifeq ($(shell dfu-programmer --version 2>&1 | grep -q 0.7; echo $$?),0)
        dfu-programmer $(MCU) erase --force
 else
        dfu-programmer $(MCU) erase
 endif
-       dfu-programmer $(MCU) erase
+
        dfu-programmer $(MCU) flash $(TARGET).hex
-       dfu-programmer $(MCU) reset
+       dfu-programmer $(MCU) reset || true # ignore exit code
        
 dfu-start:
        dfu-programmer $(MCU) reset
@@ -441,11 +448,7 @@ flip-ee: $(TARGET).hex $(TARGET).eep
        $(REMOVE) $(TARGET)eep.hex
 
 dfu-ee: $(TARGET).hex $(TARGET).eep
-ifneq (, $(findstring 0.7, $(shell dfu-programmer --version 2>&1)))
        dfu-programmer $(MCU) flash --eeprom $(TARGET).eep
-else
-       dfu-programmer $(MCU) flash-eeprom $(TARGET).eep
-endif
        dfu-programmer $(MCU) reset