From ec832af9442a9a76003d79d643f35ac38d2e0f9a Mon Sep 17 00:00:00 2001 From: jayfan0 <> Date: Sun, 2 Apr 2023 21:57:35 +0100 Subject: [PATCH] add light command --- general/overlay/usr/sbin/light | 90 ++++++++++++++++++++++++++++++++++ 1 file changed, 90 insertions(+) create mode 100644 general/overlay/usr/sbin/light diff --git a/general/overlay/usr/sbin/light b/general/overlay/usr/sbin/light new file mode 100644 index 00000000..fabc29f2 --- /dev/null +++ b/general/overlay/usr/sbin/light @@ -0,0 +1,90 @@ +#!/bin/sh + +GPIO_RED=78 +GPIO_GREEN=75 +GPIO_BLUE= + +help() { + echo -e "\n================= LIGHT usage =================\n" + echo -e "Set the colour of the status light\n" + echo -e "light \n" +} + +setRed() { + if [ -n "$GPIO_RED" ]; then + [ $1 -eq 1 ] && gpio set "$GPIO_RED" + [ $1 -eq 0 ] && gpio clear "$GPIO_RED" + else + echo "Red GPIO undefined" + fi +} + +setGreen() { + if [ -n "$GPIO_GREEN" ]; then + [ $1 -eq 1 ] && gpio set "$GPIO_GREEN" + [ $1 -eq 0 ] && gpio clear "$GPIO_GREEN" + else + echo "Green GPIO undefined" + fi +} + +setBlue() { + if [ -n "$GPIO_BLUE" ]; then + [ $1 -eq 1 ] && gpio set "$GPIO_BLUE" + [ $1 -eq 0 ] && gpio clear "$GPIO_BLUE" + else + echo "Blue GPIO undefined" + fi +} + +if [ -n $1 ]; then + case $1 in + red) + setRed 1 + setGreen 0 + setBlue 0 + ;; + + green) + setRed 0 + setGreen 1 + setBlue 0 + ;; + + blue) + setRed 0 + setGreen 0 + setBlue 1 + ;; + + yellow) + setRed 1 + setGreen 1 + setBlue 0 + ;; + + magenta|purple) + setRed 1 + setGreen 0 + setBlue 1 + ;; + + cyan) + setRed 0 + setGreen 1 + setBlue 1 + ;; + + white) + setRed 1 + setGreen 1 + setBlue 1 + ;; + + *) + help + ;; + esac +else + help +fi