from machine import Pin,RTC
from time import sleep
import time
import dht
import network
import urequests
import os as MOD_OS
import ufirebase as firebase
import ntptime
print("Connecting to WiFi", end="")
sta_if = network.WLAN(network.STA_IF)
sta_if.active(True)
sta_if.connect('Wokwi-GUEST', '')
while not sta_if.isconnected():
sleep(5)
print(".", end="")
sleep(0.1)
print(" Connected!")
firebase.setURL("https://ai2wokwidht22-default-rtdb.firebaseio.com/")
#Put Tag1
# firebase.put("dht22", "1234", bg=0)
#Put Tag2
# firebase.put("lolval/testval", {"somenumbers": [1,2,3], "something": "lol"}, bg=0)
#Get Tag1
# firebase.get("testtag", "var1", bg=0)
# print("testtag: "+str(firebase.var1))
#Get Tag2
# def callbackfunc():
# print("\nlolval_1: "+str(firebase.lolwhat["testval"]["somenumbers"])+
# "\nlolval_2: "+str(firebase.lolwhat["testval"]["something"])+
# "\nlolall: "+str(firebase.lolwhat))
# firebase.get("lolval", "lolwhat", bg=1, cb=(callbackfunc, ()))
# print(end="Im getting lolval now")
sensor = dht.DHT22(Pin(14))
#sensor = dht.DHT11(Pin(14))
def pre0(n):
if n<10:
return '0' + str(n)
else:
return str(n)
def now():
ntptime.settime()
utc_epoch=time.mktime(time.localtime())
Y,M,D,H,m,S,ms,W=time.localtime(utc_epoch + 28800)
t='%s_%s_%s %s:%s:%s' % (str(Y),pre0(M),pre0(D),pre0(H),pre0(m),pre0(S))
return t
while True:
#try:
sleep(2)
sensor.measure()
temp = sensor.temperature()
hum = sensor.humidity()
#temp_f = temp * (9/5) + 32
sleep(5)
firebase.put("wokwi_dht22", {now():[temp,hum]}, bg=0)
#firebase.lolwhat
print(f'Temperature: {temp} Humidity:{hum}')
# except:
# print('Failed to read sensor.')