mirror of
https://github.com/Keychron/qmk_firmware.git
synced 2024-12-01 13:16:50 +06:00
43 lines
855 B
Bash
43 lines
855 B
Bash
|
#!/bin/bash
|
||
|
# adjust for cpu
|
||
|
# -j 16 gave best result on a hyperthreaded quad core core i7
|
||
|
|
||
|
LIMIT=10
|
||
|
THREADS="-j 16"
|
||
|
KMAP=iso_split_rshift
|
||
|
|
||
|
echo "We need sudo later"
|
||
|
sudo ls 2>&1 /dev/null
|
||
|
|
||
|
function wait_bootloader {
|
||
|
echo "Waiting for Bootloader..."
|
||
|
local STARTTIME=$(date +"%s")
|
||
|
local REMIND=0
|
||
|
local EXEC=dfu-programmer
|
||
|
local TARGET=atmega32u4
|
||
|
while true
|
||
|
do
|
||
|
sudo $EXEC $TARGET get > /dev/null 2>&1
|
||
|
[ $? -eq 0 ] && break
|
||
|
ENDTIME=$(date +"%s")
|
||
|
DURATION=$(($ENDTIME-$STARTTIME))
|
||
|
if [ $REMIND -eq 0 -a $DURATION -gt $LIMIT ]
|
||
|
then
|
||
|
echo "Did you forget to press the reset button?"
|
||
|
REMIND=1
|
||
|
fi
|
||
|
sleep 1
|
||
|
done
|
||
|
}
|
||
|
make clean
|
||
|
make KEYMAP=${KMAP} ${THREADS}
|
||
|
if [[ $? -eq 0 ]]
|
||
|
then
|
||
|
echo "please trigger flashing!"
|
||
|
wait_bootloader
|
||
|
sudo make KEYMAP=${KMAP} dfu ${THREADS}
|
||
|
else
|
||
|
echo "make failed"
|
||
|
exit 77
|
||
|
fi
|