program: $(TARGET).hex $(TARGET).eep
$(PROGRAM_CMD)
+dude: $(TARGET).hex
+ avrdude -p$(MCU) -cavr109 -b57600 -Uflash:w:$(TARGET).hex -P$(DEV)
+
teensy: $(TARGET).hex
teensy_loader_cli -mmcu=$(MCU) -w -v $(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
$(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