# HG changeset patch # User Michiel Broek # Date 1428006198 -7200 # Node ID 8b7ef338bf49cb4482d384036a76b306289b6fce # Parent 64cd9865bd118bc293c7eebf0586831571aad814 Plot room temperature on the dashboard. diff -r 64cd9865bd11 -r 8b7ef338bf49 thermferm/server.c --- a/thermferm/server.c Thu Apr 02 22:08:15 2015 +0200 +++ b/thermferm/server.c Thu Apr 02 22:23:18 2015 +0200 @@ -1057,11 +1057,12 @@ int cmd_list(char *buf) { char *opt, *param, *filename, q[5], buffer[256], outbuf[256]; - char *date_n, *mode_n, *air_n, *beer_n, *target_n, *heater_n, *cooler_n; + char *date_n, *mode_n, *air_n, *beer_n, *target_n, *heater_n, *cooler_n, *room_n; char *heater_u, *cooler_u; int heater_l = 0, cooler_l = 0, h = 0, c = 0, heat_used = 0, cool_used = 0, lines = 0, graphstep = 0; units_list *unit; FILE *fp; + float room_t; opt = strtok(buf, " \0"); opt = strtok(NULL, " \0"); @@ -1143,6 +1144,8 @@ heater_u = strtok(NULL, ",\0"); /* current door state */ heater_u = strtok(NULL, ",\0"); /* heater use counter */ cooler_u = strtok(NULL, ",\0"); /* cooler use counter */ + room_n = strtok(NULL, ",\0"); /* fan use counter */ + room_n = strtok(NULL, ",\0"); /* room temperature */ if (strncmp(mode_n, (char *)"Mode", 4)) { /* @@ -1164,8 +1167,12 @@ cool_used = ((c - cooler_l) * 100) / (GRAPH_INTERVAL[graphstep] * 60); } } - snprintf(outbuf, 255, "%s,%s,%s,%s,%s,%s,%s,%d,%d", - date_n, mode_n, air_n, beer_n, target_n, heater_n, cooler_n, heat_used, cool_used); + if (room_n) + sscanf(room_n, "%f", &room_t); + else + room_t = 0.0; + snprintf(outbuf, 255, "%s,%s,%s,%s,%s,%s,%s,%d,%d,%.1f", + date_n, mode_n, air_n, beer_n, target_n, heater_n, cooler_n, heat_used, cool_used, room_t); srv_send(outbuf); if (h && strcmp(heater_u, "NA")) heater_l = h; diff -r 64cd9865bd11 -r 8b7ef338bf49 www-thermferm/getlog.php --- a/www-thermferm/getlog.php Thu Apr 02 22:08:15 2015 +0200 +++ b/www-thermferm/getlog.php Thu Apr 02 22:23:18 2015 +0200 @@ -43,7 +43,7 @@ $heater = $f[5] / 100; $cooler = $f[6] / 100; $row .= '{"Date":"'.$f[0].'","Mode":"'.$f[1].'","Air":"'.$f[2].'","Beer":"'.$f[3].'","Target":"'.$f[4].'",'; - $row .= '"Heater":'.$heater.',"Cooler":'.$cooler.',"HeatUse":'.$f[7].',"CoolUse":"'.$f[8].'"}'; + $row .= '"Heater":'.$heater.',"Cooler":'.$cooler.',"HeatUse":'.$f[7].',"CoolUse":"'.$f[8].'","Room":"'.$f[9].'"}'; $j++; } } diff -r 64cd9865bd11 -r 8b7ef338bf49 www-thermferm/liveview.php --- a/www-thermferm/liveview.php Thu Apr 02 22:08:15 2015 +0200 +++ b/www-thermferm/liveview.php Thu Apr 02 22:23:18 2015 +0200 @@ -118,7 +118,8 @@ $outstr .= ' { name: "Heater", type: "int" },'.PHP_EOL; $outstr .= ' { name: "Cooler", type: "int" },'.PHP_EOL; $outstr .= ' { name: "HeatUse", type: "int" },'.PHP_EOL; - $outstr .= ' { name: "CoolUse", type: "int" }'.PHP_EOL; + $outstr .= ' { name: "CoolUse", type: "int" },'.PHP_EOL; + $outstr .= ' { name: "Room", type: "float" }'.PHP_EOL; $outstr .= ' ],'.PHP_EOL; $outstr .= ' url: \'getlog.php?unit='.$unit.'\''.PHP_EOL; $outstr .= ' };'.PHP_EOL; @@ -170,7 +171,8 @@ $outstr .= ' series: ['.PHP_EOL; $outstr .= ' { dataField: "Air", lineWidth: 1, displayText: "Air" },'.PHP_EOL; $outstr .= ' { dataField: "Beer", lineWidth: 2, displayText: "Beer" },'.PHP_EOL; - $outstr .= ' { dataField: "Target", lineWidth: 1, displayText: "Target", opacity: 0.7 }'.PHP_EOL; + $outstr .= ' { dataField: "Target", lineWidth: 1, displayText: "Target", opacity: 0.7 },'.PHP_EOL; + $outstr .= ' { dataField: "Room", lineWidth: 1, displayText: "Room", opacity: 0.5 }'.PHP_EOL; $outstr .= ' ]'.PHP_EOL; $outstr .= ' }]'.PHP_EOL; $outstr .= ' };'.PHP_EOL;