mirror of
https://github.com/JDM170/orangepi_coolfan
synced 2025-12-10 05:57:21 +07:00
44 lines
773 B
Bash
44 lines
773 B
Bash
#!/bin/sh
|
|
|
|
# Physical | V | Mode | Name | wPi | GPIO
|
|
# 8 | 0 | OUT | TXD.3 | 3 | 13
|
|
readonly FAN_PIN="13"
|
|
readonly FAN_PATH=/sys/class/gpio/gpio${FAN_PIN}
|
|
|
|
readonly MSG_ON="Fan ON!"
|
|
readonly MSG_OFF="Fan OFF!"
|
|
old_state=$(cat $FAN_PATH/value)
|
|
|
|
setup()
|
|
{
|
|
echo $FAN_PIN > /sys/class/gpio/export
|
|
echo "out" > $FAN_PATH/direction
|
|
echo 0 > $FAN_PATH/value
|
|
}
|
|
cleanup()
|
|
{
|
|
echo 0 > $FAN_PATH/value
|
|
echo $FAN_PIN > /sys/class/gpio/unexport
|
|
}
|
|
|
|
on()
|
|
{
|
|
echo 1 > $FAN_PATH/value
|
|
}
|
|
off()
|
|
{
|
|
echo 0 > $FAN_PATH/value
|
|
}
|
|
case $1 in
|
|
on|off ) "$1";;
|
|
esac
|
|
|
|
cur_state=$(cat $FAN_PATH/value)
|
|
if [ "$old_state" != "$cur_state" ] && [ -z "$2" ]; then
|
|
if [ "$cur_state" = 0 ]; then
|
|
echo $MSG_OFF
|
|
else
|
|
echo $MSG_ON
|
|
fi
|
|
fi
|