DEBUG mode identification changed + warning in case of debug-mode
This commit is contained in:
parent
2ffcdf2d59
commit
8efefc4843
39
bmp.py
39
bmp.py
@ -1,3 +1,5 @@
|
|||||||
|
import smbus
|
||||||
|
from . import background_task
|
||||||
import logging
|
import logging
|
||||||
import time
|
import time
|
||||||
|
|
||||||
@ -8,16 +10,6 @@ except ImportError:
|
|||||||
|
|
||||||
logger = logging.getLogger(ROOT_LOGGER_NAME).getChild(__name__)
|
logger = logging.getLogger(ROOT_LOGGER_NAME).getChild(__name__)
|
||||||
|
|
||||||
from . import background_task
|
|
||||||
|
|
||||||
try:
|
|
||||||
import smbus
|
|
||||||
except ImportError:
|
|
||||||
logger.warning("Could not import smbus. DEBUG set to True.")
|
|
||||||
DEBUG = True
|
|
||||||
else:
|
|
||||||
from . import DEBUG
|
|
||||||
|
|
||||||
|
|
||||||
class bmp_180(background_task):
|
class bmp_180(background_task):
|
||||||
RUN_SLEEP_TIME = 2.0
|
RUN_SLEEP_TIME = 2.0
|
||||||
@ -29,6 +21,7 @@ class bmp_180(background_task):
|
|||||||
|
|
||||||
def __init__(self, data_callback=None):
|
def __init__(self, data_callback=None):
|
||||||
self.__data_callback__ = data_callback
|
self.__data_callback__ = data_callback
|
||||||
|
self.DEBUG = False
|
||||||
# Initialise background_task
|
# Initialise background_task
|
||||||
background_task.__init__(self)
|
background_task.__init__(self)
|
||||||
|
|
||||||
@ -42,42 +35,46 @@ class bmp_180(background_task):
|
|||||||
logger.debug('BMP-Communication failed: No data received')
|
logger.debug('BMP-Communication failed: No data received')
|
||||||
|
|
||||||
def __bmp_data_transmission__(self):
|
def __bmp_data_transmission__(self):
|
||||||
if not DEBUG:
|
if not self.DEBUG:
|
||||||
rv = {}
|
rv = {}
|
||||||
# Get I2C bus
|
# Get I2C bus
|
||||||
|
try:
|
||||||
bus = smbus.SMBus(1)
|
bus = smbus.SMBus(1)
|
||||||
|
except PermissionError:
|
||||||
|
logger.warning("Switching to DEBUG mode due to permission error...")
|
||||||
|
self.DEBUG = True
|
||||||
|
else:
|
||||||
# BMP180 address, 0x77(119)
|
# BMP180 address, 0x77(119)
|
||||||
# Read data back from 0xAA(170), 22 bytes
|
# Read data back from 0xAA(170), 22 bytes
|
||||||
data = bus.read_i2c_block_data(0x77, 0xAA, 22)
|
data = bus.read_i2c_block_data(0x77, 0xAA, 22)
|
||||||
|
|
||||||
# Convert the data
|
# Convert the data
|
||||||
AC1 = data[0] * 256 + data[1]
|
AC1 = data[0] * 256 + data[1]
|
||||||
if AC1 > 32767 :
|
if AC1 > 32767:
|
||||||
AC1 -= 65535
|
AC1 -= 65535
|
||||||
AC2 = data[2] * 256 + data[3]
|
AC2 = data[2] * 256 + data[3]
|
||||||
if AC2 > 32767 :
|
if AC2 > 32767:
|
||||||
AC2 -= 65535
|
AC2 -= 65535
|
||||||
AC3 = data[4] * 256 + data[5]
|
AC3 = data[4] * 256 + data[5]
|
||||||
if AC3 > 32767 :
|
if AC3 > 32767:
|
||||||
AC3 -= 65535
|
AC3 -= 65535
|
||||||
AC4 = data[6] * 256 + data[7]
|
AC4 = data[6] * 256 + data[7]
|
||||||
AC5 = data[8] * 256 + data[9]
|
AC5 = data[8] * 256 + data[9]
|
||||||
AC6 = data[10] * 256 + data[11]
|
AC6 = data[10] * 256 + data[11]
|
||||||
B1 = data[12] * 256 + data[13]
|
B1 = data[12] * 256 + data[13]
|
||||||
if B1 > 32767 :
|
if B1 > 32767:
|
||||||
B1 -= 65535
|
B1 -= 65535
|
||||||
B2 = data[14] * 256 + data[15]
|
B2 = data[14] * 256 + data[15]
|
||||||
if B2 > 32767 :
|
if B2 > 32767:
|
||||||
B2 -= 65535
|
B2 -= 65535
|
||||||
MB = data[16] * 256 + data[17]
|
MB = data[16] * 256 + data[17]
|
||||||
if MB > 32767 :
|
if MB > 32767:
|
||||||
MB -= 65535
|
MB -= 65535
|
||||||
MC = data[18] * 256 + data[19]
|
MC = data[18] * 256 + data[19]
|
||||||
if MC > 32767 :
|
if MC > 32767:
|
||||||
MC -= 65535
|
MC -= 65535
|
||||||
MD = data[20] * 256 + data[21]
|
MD = data[20] * 256 + data[21]
|
||||||
if MD > 32767 :
|
if MD > 32767:
|
||||||
MD -= 65535
|
MD -= 65535
|
||||||
|
|
||||||
time.sleep(self.SMBUS_DELAY)
|
time.sleep(self.SMBUS_DELAY)
|
||||||
@ -133,7 +130,7 @@ class bmp_180(background_task):
|
|||||||
pressure = 0.0
|
pressure = 0.0
|
||||||
if B7 < 2147483648:
|
if B7 < 2147483648:
|
||||||
pressure = (B7 * 2) / B4
|
pressure = (B7 * 2) / B4
|
||||||
else :
|
else:
|
||||||
pressure = (B7 / B4) * 2
|
pressure = (B7 / B4) * 2
|
||||||
X1 = (pressure / 256.0) * (pressure / 256.0)
|
X1 = (pressure / 256.0) * (pressure / 256.0)
|
||||||
X1 = (X1 * 3038.0) / 65536.0
|
X1 = (X1 * 3038.0) / 65536.0
|
||||||
|
20
dht.py
20
dht.py
@ -1,3 +1,5 @@
|
|||||||
|
import adafruit_dht
|
||||||
|
from . import background_task
|
||||||
import logging
|
import logging
|
||||||
import time
|
import time
|
||||||
|
|
||||||
@ -8,16 +10,6 @@ except ImportError:
|
|||||||
|
|
||||||
logger = logging.getLogger(ROOT_LOGGER_NAME).getChild(__name__)
|
logger = logging.getLogger(ROOT_LOGGER_NAME).getChild(__name__)
|
||||||
|
|
||||||
from . import background_task
|
|
||||||
|
|
||||||
try:
|
|
||||||
import adafruit_dht
|
|
||||||
except ImportError:
|
|
||||||
logger.warning("Could not import adafruit_dht. DEBUG set to True")
|
|
||||||
DEBUG = True
|
|
||||||
else:
|
|
||||||
from . import DEBUG
|
|
||||||
|
|
||||||
|
|
||||||
class dht_22(background_task):
|
class dht_22(background_task):
|
||||||
RUN_SLEEP_TIME = 4.0
|
RUN_SLEEP_TIME = 4.0
|
||||||
@ -32,8 +24,12 @@ class dht_22(background_task):
|
|||||||
self.__temp_monitor__ = gradient_monitor(.5)
|
self.__temp_monitor__ = gradient_monitor(.5)
|
||||||
self.__hum_monitor__ = gradient_monitor(5)
|
self.__hum_monitor__ = gradient_monitor(5)
|
||||||
self.__monitor__ = dht_22_monitor(300)
|
self.__monitor__ = dht_22_monitor(300)
|
||||||
|
self.DEBUG = gpio is None
|
||||||
|
if self.DEBUG:
|
||||||
|
logger.warning("Switching to DEBUG mode due to gpio is None...")
|
||||||
|
|
||||||
# Initial the dht device, with data pin connected to:
|
# Initial the dht device, with data pin connected to:
|
||||||
if not DEBUG:
|
if not self.DEBUG:
|
||||||
self.__dht_device__ = adafruit_dht.DHT22(gpio, use_pulseio=False)
|
self.__dht_device__ = adafruit_dht.DHT22(gpio, use_pulseio=False)
|
||||||
# Initialise background_task
|
# Initialise background_task
|
||||||
background_task.__init__(self)
|
background_task.__init__(self)
|
||||||
@ -55,7 +51,7 @@ class dht_22(background_task):
|
|||||||
logger.debug("DHT-Communication failed: Gradient to high. Ignoring data %s!", repr(data))
|
logger.debug("DHT-Communication failed: Gradient to high. Ignoring data %s!", repr(data))
|
||||||
|
|
||||||
def __dht_data_transmission__(self):
|
def __dht_data_transmission__(self):
|
||||||
if not DEBUG:
|
if not self.DEBUG:
|
||||||
while self.__active__:
|
while self.__active__:
|
||||||
try:
|
try:
|
||||||
# Store the values
|
# Store the values
|
||||||
|
Loading…
x
Reference in New Issue
Block a user