[go: up one dir, main page]

File: turnon_teledongle

package info (click to toggle)
altos 1.9-3
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 67,272 kB
  • sloc: ansic: 90,607; java: 39,048; makefile: 6,591; sh: 3,008; xml: 1,972; pascal: 1,597
file content (106 lines) | stat: -rwxr-xr-x 1,935 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
#!/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

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

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

CALFILE=cal-$SERIAL.txt

../ao-tools/ao-cal-freq/ao-cal-freq --verbose --nosave --output=$CALFILE --tty=$dev

case $? in
    0)
	;;
    *)
	echo "Frequency calibration failed"
	exit 1
	;;
esac

CAL_VALUE=`cat $CALFILE`

case "$CAL_VALUE" in
    [1-9]*)
    ;;
    *)
	echo "Invalid calibration value: $CAL_VALUE"
	exit 1
	;;
esac

echo $SERIAL","$CAL_VALUE >> cal_values

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 $?