CFLAGS += -funsigned-char
CFLAGS += -funsigned-bitfields
CFLAGS += -ffunction-sections
+CFLAGS += -fdata-sections
CFLAGS += -fno-inline-small-functions
CFLAGS += -fpack-struct
CFLAGS += -fshort-enums
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
+
+ifneq (, $(findstring 0.7, $(shell dfu-programmer 2>/dev/null && dfu-programmer --version 2>&1)))
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
$(REMOVE) $(TARGET)eep.hex
dfu-ee: $(TARGET).hex $(TARGET).eep
- dfu-programmer $(MCU) eeprom-flash $(TARGET).eep
+ifneq (, $(findstring 0.7, $(shell dfu-programmer 2>/dev/null && 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