summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Crute <mike@crute.us>2018-02-14 04:28:36 +0000
committerMike Crute <mike@crute.us>2018-02-14 04:28:36 +0000
commit328c016c4d31ae444dbc3d72932d1183d4744b77 (patch)
treecc196b19c5ed9bb11bcc3aaf4ac6b12cd156686a
parent032e0f88c87788f5b25558a8c8a0cd6fe5d11b35 (diff)
downloadmfi_homekit-328c016c4d31ae444dbc3d72932d1183d4744b77.tar.bz2
mfi_homekit-328c016c4d31ae444dbc3d72932d1183d4744b77.tar.xz
mfi_homekit-328c016c4d31ae444dbc3d72932d1183d4744b77.zip
Use /dev/power
-rwxr-xr-xpower_control.sh27
1 files changed, 11 insertions, 16 deletions
diff --git a/power_control.sh b/power_control.sh
index 8e995bd..c64a235 100755
--- a/power_control.sh
+++ b/power_control.sh
@@ -32,27 +32,22 @@ clear_all() {
32report() { 32report() {
33 echo "[" 33 echo "["
34 for i in $(seq 1 $NUM_OUTPUTS); do 34 for i in $(seq 1 $NUM_OUTPUTS); do
35 relay_state=$(cat $POWER_PATH/relay$i) 35 set -- $(cat "/dev/power$i")
36 if [ $relay_state -eq 1 ]; then 36
37 state="true" 37 # Convert to JSON booleans
38 else 38 state="false"; [ "$1" = "on" ] && state="true"
39 state="false"
40 fi
41 39
42 echo -e "\t{" 40 echo -e "\t{"
43 echo -e "\t\t\"output\": $i," 41 echo -e "\t\t\"output\": $i,"
44 echo -e "\t\t\"engaged\": $state," 42 echo -e "\t\t\"engaged\": $state,"
45 echo -e "\t\t\"active_power\": $(cat $POWER_PATH/active_pwr$i)," 43 echo -e "\t\t\"active_power\": $2,"
46 echo -e "\t\t\"energy_sum\": $(cat $POWER_PATH/energy_sum$i)," 44 echo -e "\t\t\"energy_sum\": $6),"
47 echo -e "\t\t\"current_rms\": $(cat $POWER_PATH/i_rms$i)," 45 echo -e "\t\t\"current_rms\": $3,"
48 echo -e "\t\t\"voltage_rms\": $(cat $POWER_PATH/v_rms$i)," 46 echo -e "\t\t\"voltage_rms\": $4,"
49 echo -e "\t\t\"power_factor\": $(cat $POWER_PATH/pf$i)" 47 echo -e "\t\t\"power_factor\": $5"
48 echo -en "\t}"
50 49
51 if [ $i -eq $NUM_OUTPUTS ]; then 50 [ $i -eq $NUM_OUTPUTS ] && echo -e ","
52 echo -e "\t}"
53 else
54 echo -e "\t},"
55 fi
56 done 51 done
57 echo "]" 52 echo "]"
58} 53}