fixing Head and adding AHT10 Sensor

This commit is contained in:
LoPromise
2021-12-10 19:16:05 +00:00
parent 2ebcc4fcda
commit e551edeed1
3 changed files with 43 additions and 2 deletions

View File

@@ -0,0 +1,40 @@
#!/usr/bin/python3
#i2cdetect -y 0
import smbus
import time
import sys
if len(sys.argv) == 3:
DEVICE = int(sys.argv[1],16)
bus = smbus.SMBus(int(sys.argv[2],16))
else:
print('-1 | -1')
sys.exit(1)
def getAll(bus,addr=DEVICE):
#Set config
config = [0x08, 0x00]
bus.write_i2c_block_data(addr, 0xE1, config)
#time.sleep(0.1)
byt = bus.read_byte(addr)
#Send MeasureCMD and read data
MeasureCmd = [0x33, 0x00]
bus.write_i2c_block_data(addr, 0xAC, MeasureCmd)
#time.sleep(0.1)
data = bus.read_i2c_block_data(addr,0x00)
temp = ((data[3] & 0x0F) << 16) | (data[4] << 8) | data[5]
ctemp = ((temp*200) / 1048576) - 50
hum = ((data[1] << 16) | (data[2] << 8) | data[3]) >> 4
chum = int(hum * 100 / 1048576)
return ctemp,chum
def main():
try:
temperature,humidity=getAll(bus)
print('{0:0.1f} | {1:0.1f}'.format(temperature, humidity))
except:
print('-1 | -1')
if __name__=="__main__":
main()

View File

@@ -56,7 +56,7 @@ $(function () {
self.notifications = ko.observableArray([]);
self.humidityCapableSensor = function(sensor){
if (['11', '22', '2302', 'bme280', 'am2320', 'si7021', 'hum_raw_i2c', 'temp_raw_i2c'].indexOf(sensor) >= 0){
if (['11', '22', '2302', 'bme280', 'am2320', 'aht10' , 'si7021', 'hum_raw_i2c', 'temp_raw_i2c'].indexOf(sensor) >= 0){
return true;
}
return false;

View File

@@ -611,6 +611,7 @@
<option value="bme280">BME280</option>
<option value="bme680">BME680</option>
<option value="am2320">AM2320</option>
<option value="aht10">AHT10</option>
<option value="tmp102">TMP102</option>
<option value="max31855">MAX31855</option>
<option value="rpi">Raspberry Pi CPU</option>
@@ -680,7 +681,7 @@
</div>
</div>
<!-- /ko -->
<!-- ko if: ($data.temp_sensor_type() == "si7021") || ($data.temp_sensor_type() == "bme280") || ($data.temp_sensor_type() == "am2320") || ($data.temp_sensor_type() == "tmp102") || ($data.temp_sensor_type() == "mcp9808") -->
<!-- ko if: ($data.temp_sensor_type() == "si7021") || ($data.temp_sensor_type() == "bme280") || ($data.temp_sensor_type() == "am2320") || ($data.temp_sensor_type() == "aht10") || ($data.temp_sensor_type() == "tmp102") || ($data.temp_sensor_type() == "mcp9808") -->
<div class="control-group">
<label class="control-label" for="settings-enclosure-dhtPin">{{ _('Sensor Pin') }}</label>
<div class="controls">