44 lines
831 B
Bash
Executable File
44 lines
831 B
Bash
Executable File
#!/bin/sh
|
|
#
|
|
# This script loops doing the following:
|
|
# - wait for DFU device
|
|
# - flash DFU device
|
|
# - wait for DFU to exit
|
|
# - wait for serial port to appear
|
|
# - run a terminal
|
|
|
|
SERIAL=/dev/ttyACM0
|
|
|
|
while true; do
|
|
echo "waiting for DFU device..."
|
|
while true; do
|
|
if lsusb | grep -q DFU; then
|
|
break
|
|
fi
|
|
sleep 1s
|
|
done
|
|
|
|
echo "found DFU device, flashing"
|
|
dfu-util -a 0 -D build/flash.dfu
|
|
|
|
echo "waiting for DFU to exit..."
|
|
while true; do
|
|
if lsusb | grep -q DFU; then
|
|
sleep 1s
|
|
continue
|
|
fi
|
|
break
|
|
done
|
|
|
|
echo "waiting for $SERIAL..."
|
|
while true; do
|
|
if ls /dev/tty* | grep -q $SERIAL; then
|
|
break
|
|
fi
|
|
sleep 1s
|
|
continue
|
|
done
|
|
sleep 1s
|
|
picocom $SERIAL
|
|
done
|