Bash the Lights

From Technologia Incognita
Revision as of 04:10, 22 November 2014 by The JinX (talk | contribs)
Jump to: navigation, search
Projects
Powerbutton.jpg
Participants Brainsmoke, Realitygaps, The JinX, Wizzup
Skills Basic electronics, Programming, Bash, Powerbar
Status Finished
Niche Electronics
Purpose World domination

A simple light switch that turns on all the lights and off everything hooked up to the Powerbar system.

It's a simple GL-Inet device running some curl and bash magic

#!/bin/ash

echo 20 > /sys/class/gpio/export
echo in > /sys/class/gpio/gpio20/direction

state=`cat /sys/class/gpio/gpio20/value`

while true
do
        if [[ `cat /sys/class/gpio/gpio20/value` -eq 0 && $state -ne 0 ]]
        then
                curl -d state=Off http://powerbar.ti:5000/preset/alloff
                state=0
        fi
        if [[ `cat /sys/class/gpio/gpio20/value` -eq 1 && $state -ne 1 ]]
        then
                curl -d state=Off http://powerbar.ti:5000/preset/lightson
                state=1
        fi
        sleep 1
done
The PowerButton

It runs from the /etc/rc.local

Currently it only polls once every second so please be patient . .

As you cold see from the code the safest way to boot the thing is with the button in the OFF state and after it is booted switch the lights ON.

This is not meant to replace the Lightswitch project, but just a quickly built addition to switch on the lights when you enter, and switch off everything when you leave without the need to go to powerbar.ti