Things used in this project

Hardware components:
MikroElektronika Flip & Click
×1
Ard due
Arduino Due
×1
Photon new
Particle Photon
×1
Nodemcu
NodeMCU ESP8266 Breakout Board
×1
13321 01b
SparkFun Photon RedBoard
×1
MikroElektronika Temp&Hum Click
×1
MikroElektronika WiFi Plus Click
×1
D1 mini
Everything ESP Wemos D1 Mini
×1
Abx00003 iso both
Arduino Zero & Genuino Zero
×1
Software apps and online services:
Zpm toolbar 1
Zerynth Studio
Zerynth lamp app
Zerynth App

Schematics

Flip&Click + Wifi Plus Click + Temp&Hum Click
Zerynth app iot thermometer n24c4fmtmx

Code

IoT ThermometerPython
################################################################################
# Zerynth App Oscilloscope
################################################################################
 
from wireless import wifi
from microchip.mcw1001a import mcw1001a as wifi_driver
import streams
import adc
 
streams.serial()
 
# Import the Zerynth APP library
from zerynthapp import zerynthapp
 
# Import the HTS221 library
from stm.hts221 import hts221
 
temp_hum = hts221.HTS221(I2C0, D21) # slot A
 
sleep(1000)
print("STARTING...")
 
try:
    # Device UID and TOKEN can be created in the ADM panel
    zapp = zerynthapp.ZerynthApp("DEVICE UID", "DEVICE TOKEN",ip = "178.22.65.123", log=True)
 
    # connect to the wifi network (Set your SSID and password below)
    wifi_driver.init(SERIAL2,D24) # slot B
    for i in range(0,5):
        try:
            wifi.link("SSID",wifi.WIFI_WPA2,"PASSWORD")
            break
        except Exception as e:
            print("Can't link",e)
    else:
        print("Impossible to link!")
        while True:
            sleep(1000)
 
    # Start the Zerynth app instance!
    # Remember to create a template with the files under the "template" folder you just cloned
    # upload it to the ADM and associate it with the connected device
    zapp.run()
    
    # Read the sensor and send values to the ADM
    while True:
        sleep(1000)
        tmp, hum = temp_hum.get_temp_humidity() # Read tmp and hum
        print("Temp is:", tmp, "Humidity is:", hum)
        try:
            zapp.event({"data":tmp})
        except Exception as e:
            print(e)
        if tmp>30:
            # send mobile notification
            # (there is a limit of one notification per minute per device on the ADM sandbox)
            try:
                zapp.notify("ALARM!","High Temperature!")
            except Exception as e:
                print(e)
        
except Exception as e:
    print(e)

Credits

Lfcerf resume pic hd gewutzum3d
Luigi Francesco Cerfeda
0 projects • 48 followers
Yet another Tony Stark wannabe
Contact

Replications

Did you replicate this project? Share it!

I made one

Love this project? Think it could be improved? Tell us what you think!

Give feedback

Comments

Add projectSign up / Login