#!/bin/bash set -e COM_PORT=/dev/cu.usbmodem2101 echo -e "bootloader" > $COM_PORT sleep 1s while getopts 'abc:h' opt; do case "$opt" in ?|h) echo "Usage: $(basename $0) crate_name" exit 1 ;; esac done shift "$(($OPTIND -1))" CRATE=$1 cargo build -p $CRATE --release arm-none-eabi-objcopy -O ihex target/thumbv7em-none-eabihf/release/$CRATE target/$CRATE.hex adafruit-nrfutil dfu genpkg --dev-type 0x0052 --sd-req 0x0123 --application target/$CRATE.hex target/$CRATE.zip # Use our custom reboot system to boot the controller into serial-only DFU mode. # echo -e "bootloader" > $COM_PORT # Wait for the reboot. # sleep 1s adafruit-nrfutil --verbose dfu serial -pkg target/$CRATE.zip -p $COM_PORT -b 115200 --singlebank