slight improvement to state handling
This commit is contained in:
parent
e6c79d209f
commit
5930c76223
32
light.sh
32
light.sh
|
@ -10,17 +10,16 @@ sign() {
|
||||||
}
|
}
|
||||||
|
|
||||||
ROOM_COUNT=3
|
ROOM_COUNT=3
|
||||||
DFAULT_LIGHT_STATE=0
|
STATE[0]="a\x00\x03\x00\x00\x00|000000000000000000;\
|
||||||
STATE_0="a\x00\x03\x00\x00\x00|000000000000000000;\
|
|
||||||
a\x00\x03\x00\x00\x00|000000;\
|
a\x00\x03\x00\x00\x00|000000;\
|
||||||
000000000000000000"
|
000000000000000000"
|
||||||
STATE_1="a\x00\x03\xff\xff\xff|255255255255255255;\
|
STATE[1]="a\x00\x03\xff\xff\xff|255255255255255255;\
|
||||||
a\x00\x03\xff\xff\xff|FFFFFF;\
|
a\x00\x03\xff\xff\xff|FFFFFF;\
|
||||||
000000000000000000"
|
000000000000000000"
|
||||||
STATE_2="n\x00\x02\x01\x00|!;\
|
STATE[2]="n\x00\x02\x01\x00|!;\
|
||||||
n\x00\x02\x01\x00|FFCC11;\
|
n\x00\x02\x01\x00|FFCC11;\
|
||||||
000000000000000000"
|
000000000000000000"
|
||||||
STATE_3="!/usr/bin/python3 /home/automation/fensterbogenbeleuchtung_animations/animations.py|!;\
|
STATE[3]="!/usr/bin/python3 /home/automation/fensterbogenbeleuchtung_animations/animations.py|!;\
|
||||||
a\x00\x03\xff\xff\xff|!;\
|
a\x00\x03\xff\xff\xff|!;\
|
||||||
000000000000000000"
|
000000000000000000"
|
||||||
|
|
||||||
|
@ -103,7 +102,6 @@ case "$ROOM_NUMBER" in
|
||||||
R1=$(($R1+$DR1)); G1=$(($G1+$DG1)); B1=$(($B1+$DB1)); R2=$(($R2+$DR2)); G2=$(($G2+$DG2)); B2=$(($B2+$DB2))
|
R1=$(($R1+$DR1)); G1=$(($G1+$DG1)); B1=$(($B1+$DB1)); R2=$(($R2+$DR2)); G2=$(($G2+$DG2)); B2=$(($B2+$DB2))
|
||||||
echo "${GAMMA_LUT[$R1]} ${GAMMA_LUT[$G1]} ${GAMMA_LUT[$B1]} ${GAMMA_LUT[$R2]} ${GAMMA_LUT[$G2]} ${GAMMA_LUT[$B2]}" |\
|
echo "${GAMMA_LUT[$R1]} ${GAMMA_LUT[$G1]} ${GAMMA_LUT[$B1]} ${GAMMA_LUT[$R2]} ${GAMMA_LUT[$G2]} ${GAMMA_LUT[$B2]}" |\
|
||||||
while read code; do printf "%03d" $code; done > /dev/udp/172.23.92.16/31302 &
|
while read code; do printf "%03d" $code; done > /dev/udp/172.23.92.16/31302 &
|
||||||
# echo -en "255204017255204017" > /dev/udp/172.23.92.16/31302 &
|
|
||||||
sleep .2
|
sleep .2
|
||||||
done
|
done
|
||||||
done
|
done
|
||||||
|
@ -180,7 +178,7 @@ fi
|
||||||
|
|
||||||
touch "${TMPFILE_BASE}_$ROOM_NUMBER"
|
touch "${TMPFILE_BASE}_$ROOM_NUMBER"
|
||||||
LIGHT_STATE=$(cat "${TMPFILE_BASE}_$ROOM_NUMBER")
|
LIGHT_STATE=$(cat "${TMPFILE_BASE}_$ROOM_NUMBER")
|
||||||
[ -z "$LIGHT_STATE" ] && LIGHT_STATE=$DFAULT_LIGHT_STATE
|
[ -z "$LIGHT_STATE" ] && LIGHT_STATE=0
|
||||||
|
|
||||||
if [ -z "$COLOR" ]; then
|
if [ -z "$COLOR" ]; then
|
||||||
if ! [ -f "${TMPFILE_CUSTOM_BASE}_$ROOM_NUMBER" ]; then # restore previous colour
|
if ! [ -f "${TMPFILE_CUSTOM_BASE}_$ROOM_NUMBER" ]; then # restore previous colour
|
||||||
|
@ -188,24 +186,8 @@ if [ -z "$COLOR" ]; then
|
||||||
else
|
else
|
||||||
rm -f "${TMPFILE_CUSTOM_BASE}_$ROOM_NUMBER"
|
rm -f "${TMPFILE_CUSTOM_BASE}_$ROOM_NUMBER"
|
||||||
fi
|
fi
|
||||||
case $LIGHT_STATE in
|
[ $LIGHT_STATE -ge ${#STATE[*]} ] && LIGHT_STATE=0
|
||||||
0)
|
STATE=${STATE[$LIGHT_STATE]}
|
||||||
STATE=$STATE_0
|
|
||||||
;;
|
|
||||||
1)
|
|
||||||
STATE=$STATE_1
|
|
||||||
;;
|
|
||||||
2)
|
|
||||||
STATE=$STATE_2
|
|
||||||
;;
|
|
||||||
3)
|
|
||||||
STATE=$STATE_3
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
STATE=$STATE_0
|
|
||||||
LIGHT_STATE=0
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
else
|
else
|
||||||
STATE="$(get_room_color_string)"
|
STATE="$(get_room_color_string)"
|
||||||
touch "${TMPFILE_CUSTOM_BASE}_$ROOM_NUMBER"
|
touch "${TMPFILE_CUSTOM_BASE}_$ROOM_NUMBER"
|
||||||
|
|
Loading…
Reference in New Issue