#!/bin/bash
cd /home/thomas/happyfarming

# Read data from sensors
airtempread=`cat /home/thomas/owfs2/10.4F7494010800/temperature`
soiltempread=`cat /home/thomas/owfs2/10.06A394010800/temperature`
soilmoistread=`cat /home/thomas/owfs2/30.6A1E62120000/current`

# Format reading
airtemp=`echo $airtempread | cut -c -4`
soiltemp=`echo $soiltempread | cut -c -4`
soilmoist1=`echo $soilmoistread | cut -c -7`

#Calculate soil moisture
drylimit=0.2368
wetlimit=1.400
range=`echo "$wetlimit-$drylimit" | bc`
a=`echo "(-1)*$soilmoist1" | bc`
b=`echo "$a-$drylimit" | bc`
c=`echo "scale=3; $b/$range" | bc`
d=`echo "100*$c" | bc`
soilmoist=`echo $d | cut -c -5`

# Update database
rrdtool update database.rrd N:$airtemp:$soiltemp:$soilmoist

# Create graphs
#0000FF = blue trace color
#CC6600 = brown trace color
rrdtool graph log_h.png -y 2:1 --vertical-label "[deg C]" --start -1h DEF:airtemp=database.rrd:airtemp:AVERAGE DEF:soiltemp=database.rrd:soiltemp:AVERAGE LINE1:airtemp#0000FF:"Air temperature [deg C]" LINE1:soiltemp#CC6600:"Soil temperature [deg C]"
rrdtool graph log_d.png -y 2:1 --vertical-label "[deg C]" --start -1d DEF:airtemp=database.rrd:airtemp:AVERAGE DEF:soiltemp=database.rrd:soiltemp:AVERAGE LINE1:airtemp#0000FF:"Air temperature [deg C]" LINE1:soiltemp#CC6600:"Soil temperature [deg C]"
rrdtool graph log_w.png -y 2:1 --vertical-label "[dec C]" --start -1w DEF:airtemp=database.rrd:airtemp:AVERAGE DEF:soiltemp=database.rrd:soiltemp:AVERAGE LINE1:airtemp#0000FF:"Air temperature [deg C]" LINE1:soiltemp#CC6600:"Soil temperature [deg C]"
rrdtool graph log_m.png -y 2:1 --vertical-label "[deg C]" --start -1m DEF:airtemp=database.rrd:airtemp:AVERAGE DEF:soiltemp=database.rrd:soiltemp:AVERAGE LINE1:airtemp#0000FF:"Air temperature [deg C]" LINE1:soiltemp#CC6600:"Soil temperature [deg C]"
rrdtool graph log_y.png -y 2:1 --vertical-label "[deg C]" --start -1y DEF:airtemp=database.rrd:airtemp:AVERAGE DEF:soiltemp=database.rrd:soiltemp:AVERAGE LINE1:airtemp#0000FF:"Air temperature [deg C]" LINE1:soiltemp#CC6600:"Soil temperature [deg C]"

rrdtool graph log_soil_moisture_h.png --vertical-label "[%]" --start -1h DEF:soilmoist=database.rrd:soilmoist:AVERAGE LINE1:soilmoist#CC6600:"Soil moisture [%]"
rrdtool graph log_soil_moisture_d.png --vertical-label "[%]" --start -1d DEF:soilmoist=database.rrd:soilmoist:AVERAGE LINE1:soilmoist#CC6600:"Soil moisture [%]"
rrdtool graph log_soil_moisture_w.png --vertical-label "[%]" --start -1w DEF:soilmoist=database.rrd:soilmoist:AVERAGE LINE1:soilmoist#CC6600:"Soil moisture [%]"
rrdtool graph log_soil_moisture_m.png --vertical-label "[%]" --start -1m DEF:soilmoist=database.rrd:soilmoist:AVERAGE LINE1:soilmoist#CC6600:"Soil moisture [%]"
rrdtool graph log_soil_moisture_y.png --vertical-label "[%]" --start -1y DEF:soilmoist=database.rrd:soilmoist:AVERAGE LINE1:soilmoist#CC6600:"Soil moisture [%]"
