dfu: $(TARGET).hex
@echo -n dfu-programmer: waiting
- @until dfu-programmer atmega32u4 get bootloader-version > /dev/null 2>&1; do \
+ @until dfu-programmer $(MCU) get bootloader-version > /dev/null 2>&1; do \
echo -n "."; \
sleep 1; \
done
@echo
-ifneq (, $(findstring 0.7, $(shell dfu-programmer --version 2>&1)))
+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) flash $(TARGET).hex
- dfu-programmer $(MCU) reset
+ dfu-programmer $(MCU) reset || true # ignore exit code
dfu-start:
dfu-programmer $(MCU) reset
$(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