[go: up one dir, main page]

File: fix-telebt

package info (click to toggle)
altos 1.9.21-1
  • links: PTS, VCS
  • area: main
  • in suites: trixie
  • size: 83,636 kB
  • sloc: ansic: 119,717; java: 42,907; makefile: 8,459; sh: 4,995; xml: 2,154; pascal: 2,008
file content (52 lines) | stat: -rwxr-xr-x 969 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
#!/bin/sh

VERSION=4.0
REPO=~/altusmetrumllc/Binaries
PRODUCT=TeleBT

ALTOS_FILE=$REPO/telebt-v$VERSION-*.elf

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

dev_serial=`ao-list | awk '/'"$PRODUCT"'-v'"$VERSION"'/ { printf("%s %s\n", $3, $2); exit(0); }'`
dev=`echo $dev_serial | awk '{print $1;}'`
serial=`echo $dev_serial | awk '{print $2;}'`

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

rfcal=`wget -O - -q 'http://altusmetrum.org/cgi-bin/unitinfo.cgi?sn='$serial | jq '.unitinfo.rfcal | tonumber'`

case $? in
0)
	;;
*)
	echo "Fetch rfcal for $serial failed"
	exit 1
	;;
esac

case "$rfcal" in
[0-9]*)
	;;
*)
	echo "Serial $serial: invalid rfcal $rfcal"
	;;
esac

echo "$PRODUCT"'-v'"$VERSION $serial $dev rfcal $rfcal"

$USBLOAD --cal=$rfcal --tty=$dev $ALTOS_FILE || exit 1

echo "$PRODUCT"'-v'"$VERSION $serial $dev is ready to ship"