Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import machine
- import time
- from umqtt import MQTTClient
- from network import WLAN
- main()
- def main():
- setup_wifi()
- username = "your Adafruit IO username"
- mqtt = MQTTClient(client_id=str(machine.rng()), server="io.adafruit.com", port=8883,
- user=username, password="your Adafruit IO password", ssl=True)
- mqtt.connect()
- adc = machine.ADC()
- pin = adc.channel(pin="P20")
- samples = 100
- while True:
- temperature = measure_temperature(samples, pin)
- print(temperature)
- mqtt.publish("{}/feeds/office-temperature".format(username), str(temperature))
- time.sleep(30)
- def setup_wifi():
- wlan = WLAN(mode=WLAN.STA)
- wlan.antenna(WLAN.EXT_ANT)
- wlan.connect("your WiFi SSID", auth=(WLAN.WPA2, "your WiFi password"), timeout=5000)
- while not wlan.isconnected():
- machine.idle()
- def measure_temperature(samples, pin):
- temperature = 0
- for _ in range(samples):
- temperature += analog_to_temperature(pin())
- temperature /= samples
- return temperature
- def analog_to_temperature(adc_value):
- temp = 100 * (adc_value / 4095) - 50
- return temp
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement