import argparse
import logging
import datetime
+import time
import re
import sys
import csv
import warnings
import MySQLdb.cursors
+logging.basicConfig(format='%(levelname)s: %(message)s', level=logging.INFO)
+
#May 27 21:32 /sys/bus/w1/devices/28-0416a1bab9ff
#May 27 21:33 /sys/bus/w1/devices/28-0416a1ac66ff
#May 27 21:35 /sys/bus/w1/devices/28-0516a207a4ff
return jetzt, temp_raw, temp
+def read_buggy_sensor(sensor_id):
+ for i in range(120):
+ jetzt, temp_raw, temp = readsensor(sensor_id)
+ if temp < 30:
+ return jetzt, temp_raw, temp
+ time.sleep(1)
+ raise ReadsensorError('Zu hoch')
def writesensordatacsv(config, sensor_id, sensor_name, timestamp, value_type, value_raw, value):
# Schreiben des csv-files
return
for sensor_id, sensor_name in sensors:
- timestamp, value_raw, value = readsensor(sensor_id)
+ timestamp, value_raw, value = read_buggy_sensor(sensor_id)
writesensordatacsv(config, sensor_id, sensor_name, timestamp, value_type, value_raw, value)
writesensordatadb(config, sensor_id, sensor_name, timestamp, value_type, value_raw, value)
- logging.info('Sensor {}: {:.1f}°C'.format(sensor_id, value))
+ if args.verbose:
+ logging.info('Sensor {}: {:.1f}°C'.format(sensor_id, value))
if __name__ == '__main__':