Check for finite numbers before inserting the data into the database; Link against math library; Updated Readme

This commit is contained in:
2017-09-07 20:41:22 +02:00
parent e6ce8e49a3
commit 05415b98ff
4 changed files with 51 additions and 10 deletions

View File

@@ -8,6 +8,7 @@
#include "restcurl.h"
#include <string.h>
#include "calculate.h" //for comparing the nodes
#include <math.h>
//Temporary include
#include "calculate.h"
@@ -115,8 +116,13 @@ int main(void) {
float avgOutsideHumidity = avhum_in / outCount;
//Insert the results into the database
//insertDataAverages(avgInsideTemperature, avgInsideHumidity, absoluteHumidityFloat(avgInsideTemperature, avgInsideHumidity));
//insertDataAverages(avgOutsideTemperature, avgOutsideHumidity, absoluteHumidityFloat(avgOutsideTemperature, avgOutsideHumidity));
if (isfinite(avgInsideHumidity) && isfinite(avgInsideTemperature)) {
insertDataAverages(avgInsideTemperature, avgInsideHumidity, absoluteHumidityFloat(avgInsideTemperature, avgInsideHumidity), 0);
}
if (isfinite(avgOutsideHumidity) && isfinite(avgOutsideTemperature)) {
insertDataAverages(avgOutsideTemperature, avgOutsideHumidity, absoluteHumidityFloat(avgOutsideTemperature, avgOutsideHumidity), 1);
}
printf("Averages:\n| Inside temperature: %f\n| Inside humidity: %f\n| Outside temperature: %f\n| Outside humidity: %f\n", avgInsideTemperature, avgInsideHumidity, avgOutsideTemperature, avgOutsideHumidity);
//free

View File

@@ -5,7 +5,7 @@ VERSION = 1.0
CC = cc
CFLAGS = -Wall -g -D_GNU_SOURCE -D_REENTRANT -DVERSION=\"$(VERSION)\" `mysql_config --cflags`
#LDFLAGS = -lm -lpthread `gtk-config --cflags` `gtk-config --libs` -lgthread
LDFLAGS = -lwiringPi -lconfig `mysql_config --libs` -lcurl
LDFLAGS = -lwiringPi -lconfig `mysql_config --libs` -lcurl -lm
OBJ = main.o dht22.o sendmysql.o configreader.o cJSON.o restcurl.o calculate.o
@@ -20,6 +20,10 @@ clean:
rm -r *.o
install:
sudo cp humiditypi /usr/local/bin
sudo cp humiditypi /usr/bin
if [ ! -d /etc/humiditypi ]; then sudo mkdir /etc/humiditypi; fi
sudo cp settings.cfg /etc/humiditypi
uninstall:
sudo rm /usr/bin/humiditypi
rm -r /etc/humiditypi

View File

@@ -102,7 +102,7 @@ void insertDataAverages(float temperature, float humidity, float gm3, int isouts
char *pquerystring = NULL;
if (-1 == asprintf(&pquerystring,
"INSERT INTO stats (humidity, temperature, gm3, isoutside) VALUES (%f, %f, %f, %i)", humidity, temperature, absoluteHumidityFloat(temperature, humidity), isoutside)) {
"INSERT INTO average_stats (humidity, temperature, gm3, isoutside) VALUES (%f, %f, %f, %i)", humidity, temperature, absoluteHumidityFloat(temperature, humidity), isoutside)) {
perror("asprintf() failed");
} else {
if (mysql_query(conn, pquerystring)) {