#!/bin/sh

if [ -x ../ao-tools/ao-flash/ao-flash-lpc ]; then
        FLASH_LPC=../ao-tools/ao-flash/ao-flash-lpc
elif [ -x /usr/bin/ao-flash-lpc ]; then
        FLASH_LPC=/usr/bin/ao-flash-lpc
else
        echo "Can't find ao-flash-lpc!  Aborting."
        exit 1
fi

if [ -x /usr/bin/ao-usbload ]; then
	USBLOAD=/usr/bin/ao-usbload
else
	echo "Can't find ao-usbload!  Aborting."
	exit 1
fi

PRODUCT=TeleGPS
VERSION=1.0
BASE=`echo $PRODUCT | tr 'A-Z' 'a-z'`
echo $FILE

echo "$PRODUCT v$VERSION Turn-On and Calibration Program"
echo "Copyright 2014 by Bdale Garbee.  Released under GPL v2"
echo
echo "Expectations:"
echo "\t$PRODUCT v$VERSION powered from USB"
echo "\t\twith ST-Link-V2 cabled to debug header"
echo

case $# in
    1)
	SERIAL="$1"
	echo "$PRODUCT-$VERSION serial number: $SERIAL" 
	;;
    0)
	echo -n "$PRODUCT-$VERSION serial number: "
	read SERIAL
	;;
    *)
	echo "Usage: $0 <serial-number>" 1>&2
	exit 1;
	;;
esac

#
# Use released versions of everything
#
FLASH_FILE=~/altusmetrumllc/Binaries/loaders/telegps-v1.0-altos-flash-*.elf
ALTOS_FILE=~/altusmetrumllc/Binaries/telegps-v1.0-*.elf

echo $FLASH_LPC $FLASH_FILE

$FLASH_LPC $FLASH_FILE || exit 1

sleep 2

echo $USBLOAD $ALTOS_FILE

$USBLOAD --serial=$SERIAL $ALTOS_FILE || exit 1

sleep 2

dev=`ao-list | awk '/TeleGPS-v'"$VERSION"'/ { print $3; exit(0); }'`

case "$dev" in
/dev/tty*)
        echo "TeleGPS found on $dev"
        ;;
*)
        echo 'No TeleGPS-v'"$VERSION"' found'
        exit 1
        ;;
esac

SERIAL=$SERIAL ./cal-freq $dev

./test-telegps-v1

exit $?
