35 lines
1013 B
Python
35 lines
1013 B
Python
from sensors import Sensors
|
|
from machine import Pin, I2C
|
|
from utime import sleep
|
|
from lib.bh1750 import BH1750
|
|
|
|
|
|
class AmbilightSensor(Sensors):
|
|
|
|
|
|
most_recent_values = []
|
|
|
|
def __init__(self, settings):
|
|
super().__init__(settings)
|
|
print(settings) # TODO remove
|
|
self.sensor_pin_int = settings['pin_int']
|
|
# self.sensor = DHT22(Pin(self.sensor_pin_int, Pin.IN, Pin.PULL_UP))
|
|
self.sensor = BH1750(I2C(0, sda=Pin(settings['pin_int_sda']), scl=Pin(settings['pin_int_scl'])))
|
|
|
|
def read(self):
|
|
try:
|
|
measurement = self.sensor.luminance(BH1750.ONCE_HIRES_1)
|
|
print("ambilight ..")
|
|
print(measurement)
|
|
self.most_recent_values = [
|
|
{
|
|
'type': 'ambilight',
|
|
'value': measurement,
|
|
'unit': '-'
|
|
},
|
|
]
|
|
except OSError:
|
|
print('Ambilight Error reading temperature/humidity. Check wires')
|
|
print()
|
|
|