mirror of https://github.com/aredn/aredn.git
94 lines
2.2 KiB
Bash
Executable File
94 lines
2.2 KiB
Bash
Executable File
#!/bin/sh
|
|
<<'LICENSE'
|
|
Part of AREDN® -- Used for creating Amateur Radio Emergency Data Networks
|
|
Copyright (C) 2015 Conrad Lara
|
|
See Contributors file for additional contributors
|
|
|
|
This program is free software: you can redistribute it and/or modify
|
|
it under the terms of the GNU General Public License as published by
|
|
the Free Software Foundation version 3 of the License.
|
|
|
|
This program is distributed in the hope that it will be useful,
|
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
GNU General Public License for more details.
|
|
|
|
You should have received a copy of the GNU General Public License
|
|
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
|
|
LICENSE
|
|
|
|
BOARD_TYPE=$(/usr/local/bin/get_hardwaretype)
|
|
|
|
case "$BOARD_TYPE" in
|
|
airrouter)
|
|
LINK1LED=$(readlink -f '/sys/class/leds/ubnt:green:globe')
|
|
;;
|
|
gl-ar150)
|
|
LINK1LED=$(readlink -f '/sys/class/leds/gl-ar150:orange:wlan')
|
|
;;
|
|
gl-ar300m)
|
|
LINK1LED=$(readlink -f '/sys/class/leds/gl-ar300m:green:wlan')
|
|
;;
|
|
gl-usb150)
|
|
LINK1LED=$(readlink -f '/sys/class/leds/gl-usb150:green:wlan')
|
|
;;
|
|
gl-ar750)
|
|
LINK1LED=$(readlink -f '/sys/class/leds/gl-ar750:white:wlan5g')
|
|
;;
|
|
rb-912uag-5hpnd|rb-911g-5hpnd)
|
|
LINK1LED=$(readlink -f '/sys/class/leds/rb:green:led1')
|
|
;;
|
|
rb-lhg-5nd|rb-lhg-5hpnd|rb-lhg-5hpnd-xl|rb-ldf-5nd)
|
|
LINK1LED=$(readlink -f '/sys/class/leds/rb:green:rssi0')
|
|
;;
|
|
*)
|
|
LINK1LED=$(readlink -f /sys/class/leds/*link1)
|
|
;;
|
|
esac
|
|
|
|
|
|
firmware_upgrade_mode() {
|
|
# Put the LED in "upgrade" mode
|
|
echo timer > "$LINK1LED/trigger"
|
|
echo 100 > "$LINK1LED/delay_on"
|
|
echo 100 > "$LINK1LED/delay_off"
|
|
echo 1 > "$LINK1LED/brightness"
|
|
|
|
}
|
|
|
|
|
|
reset_led() {
|
|
# Reset the LED to a blank state
|
|
echo none > "$LINK1LED/trigger"
|
|
echo 0 > "$LINK1LED/brightness"
|
|
}
|
|
|
|
|
|
link_state() {
|
|
{
|
|
reset_led
|
|
|
|
while true; do
|
|
sleep 11;
|
|
if echo /nei | nc 127.0.0.1 2006 2>/dev/null | grep -q YES; then
|
|
echo 1 > "$LINK1LED/brightness"
|
|
else
|
|
echo 0 > "$LINK1LED/brightness"
|
|
fi
|
|
done;
|
|
} & # Push into the background
|
|
}
|
|
|
|
case $1 in
|
|
"upgrade" )
|
|
firmware_upgrade_mode
|
|
;;
|
|
"restore" )
|
|
reset_led
|
|
;;
|
|
*)
|
|
link_state
|
|
;;
|
|
esac
|