diff options
| -rwxr-xr-x | ao-bringup/cal-freq-file | 54 | ||||
| -rwxr-xr-x | ao-bringup/turnon_teledonglev3 | 89 | 
2 files changed, 143 insertions, 0 deletions
| diff --git a/ao-bringup/cal-freq-file b/ao-bringup/cal-freq-file new file mode 100755 index 00000000..fb48907a --- /dev/null +++ b/ao-bringup/cal-freq-file @@ -0,0 +1,54 @@ +#!/bin/sh + +case $# in +2) +    dev="$1" +    serial="$2" +	;; +*) +	echo "Usage: $0 <device> <serial>" +	exit 1; +	;; +esac + +echo 'E 0' > $dev + +while true; do + +        dd if=$dev iflag=nonblock of=/dev/null > /dev/null 2>&1 + +	echo 'C 1' > $dev + +	echo -n "Generating RF carrier. Please enter measured frequency [enter for done]: " + +	read FREQ + +	echo 'C 0' > $dev + +	calline=`./get-radio-cal $dev` +	CURRENT_CAL=`echo $calline | awk '{print $2}'` +	CURRENT_FREQ=`echo $calline | awk '{print $4}'` +	CAL_VALUE=$CURRENT_CAL + +	case "$FREQ" in +	"") +		echo $serial","$CAL_VALUE >> cal_values +		exit 0 +		;; +	*) +		echo "Current radio calibration "$CURRENT_CAL +		echo "Current radio frequency "$CURRENT_FREQ + +		CAL_VALUE=`nickle -e "floor($CURRENT_FREQ / $FREQ * $CURRENT_CAL + 0.5)"` + +		echo "Setting cal value" $CAL_VALUE + +		dd if=$dev iflag=nonblock of=/dev/null > /dev/null 2>&1 + +		cat << EOF > $dev +c f $CAL_VALUE +EOF +		;; +	esac +done + diff --git a/ao-bringup/turnon_teledonglev3 b/ao-bringup/turnon_teledonglev3 new file mode 100755 index 00000000..e6750c45 --- /dev/null +++ b/ao-bringup/turnon_teledonglev3 @@ -0,0 +1,89 @@ +#!/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=teledongle +PRODUCT_NAME=TeleDongle +VERSION=3.0 + +echo "$PRODUCT_NAME v$VERSION Turn-On and Calibration Program" +echo "Copyright © 2015 by Bdale Garbee.  Released under GPL v2" +echo +echo "Expectations:" +echo "\t$PRODUCT_NAME v$VERSION powered from USB" +echo "\t\twith ST-Link-V2 cabled to debug header" +echo "\t\twith coax from UHF to frequency counter" +echo +echo -n "$PRODUCT_NAME-$VERSION serial number: " +read SERIAL + +BINARIES=$HOME/altusmetrumllc/Binaries + +LOADER="$BINARIES/loaders/$PRODUCT-v$VERSION-"*.elf +ALTOS="$BINARIES/$PRODUCT-v$VERSION"*.elf + +$FLASH_LPC $LOADER || exit 1 + +sleep 2 + +$USBLOAD --serial=$SERIAL $ALTOS || exit 1 + +sleep 5 + +dev=`ao-list | awk '/TeleDongle-v'"$VERSION"'/ { print $3; exit(0); }'` + +case "$dev" in +/dev/tty*) +	echo "TeleDongle found on $dev" +	;; +*) +	echo 'No TeleDongle-v'"$VERSION"' found' +	exit 1 +	;; +esac + +echo 'E 0' > $dev + +./cal-freq-file $dev $SERIAL + +case $? in +    0) +	;; +    *) +	echo "Frequency calibration failed" +	exit 1 +	;; +esac + +CAL_VALUE=`grep "^$SERIAL," cal_values | tail -1 | sed 's/^[^,]*,//'` + +case "$CAL_VALUE" in +    [1-9]*) +    ;; +    *) +	echo "Invalid calibration value: $CAL_VALUE" +	exit 1 +	;; +esac + +echo "Reflashing with calibration: $CAL_VALUE" + +$USBLOAD --cal=$CAL_VALUE --tty=$dev $ALTOS || exit 1 + +echo "$PRODUCT_NAME-v$VERSION $SERIAL is ready to ship" + +exit $? | 
