From 1e0dc6dd5924c72cec0332f76724122d6b9728ab Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sergio=20=C3=81lvarez?= Date: Sun, 14 Feb 2016 20:58:41 +0100 Subject: [PATCH] daemon e influxdb --- arduino-daemon.py | 41 +++++++++++++++++++++++++++++++++++++++-- 1 file changed, 39 insertions(+), 2 deletions(-) diff --git a/arduino-daemon.py b/arduino-daemon.py index f5dd041..1a2c3c0 100755 --- a/arduino-daemon.py +++ b/arduino-daemon.py @@ -4,6 +4,43 @@ # aquí iré metiendo la lectura de datos y guardado en algún sitio import serial -ser = serial.Serial("/dev/ttyACM0", 9600) # 9600 bauds +import influxdb +import time + while True: - print(ser.readline()) + try: + influx = influxdb.InfluxDBClient("localhost", 8086, "root", "root", "hometv") + + ser = serial.Serial("/dev/ttyACM0", 9600) # 9600 bauds + while True: + line = ser.readline() + parts = line.decode('ascii').strip().split(" ") + + if parts[0] != "D": + continue + + influx.write_points([ + { + "measurement": "humedad", + "tags": { + "location": "home" + }, + "fields": { + "v": float(parts[1][2:]) + } + }, + { + "measurement": "temperatura", + "tags": { + "location": "home" + }, + "fields": { + "real": float(parts[2][2:]), + "sensacion": float(parts[3][2:]) + } + } + ]) + + except Exception as e: + print(e) + time.sleep(60)