Exemple #1
0
def publish_thingsboard(red, clave, token, UNIQUE_ID, data):
    # from umqtt.simple import MQTTClient
    # import gc
    # import json
    # import machine
    # import utime

    contador = 0
    condicion = True
    while condicion:
        try:
            client = MQTTClient(UNIQUE_ID,
                                "iot.ier.unam.mx",
                                port=1883,
                                user=token,
                                password='')
            client.settimeout = settimeout
            client.connect()
            print(json.dumps(data))
            client.publish('v1/devices/me/telemetry', json.dumps(data))
            client.disconnect()
            condicion = False
        except Exception as inst:
            do_connect(red, clave)
            time.sleep(10)
            contador += 1
            print("Falla ", contador)
            if contador >= 10:
                machine.reset()
Exemple #2
0
def publish_thingsboard(token, UNIQUE_ID, data, password=''):
    from umqtt.simple import MQTTClient
    import gc
    import json
    import machine
    import utime
    client = MQTTClient(UNIQUE_ID,
                        "iot.ier.unam.mx",
                        port=1883,
                        user=token,
                        password=password)
    client.settimeout = settimeout
    client.connect()
    print(json.dumps(data))
    client.publish('v1/devices/me/telemetry', json.dumps(data))
    client.disconnect()
def settimeout(duration):
    pass


wlan = WLAN(mode=WLAN.STA)
wlan.antenna(WLAN.EXT_ANT)
wlan.connect("NETGEAR18", auth=(WLAN.WPA2, "FamilyJADE"), timeout=5000)

while not wlan.isconnected():
    machine.idle()

print("Connected to Wifi\n")

client = MQTTClient("demo", "mqtt.thingspeak.com", port=1883)
client.settimeout = settimeout
client.connect()

#
# publish temperature and free heap to Thingspeak using MQTT
#
thingspeakChannelId = "128609"  # <--- replace with your Thingspeak Channel ID
thingspeakChannelWriteapi = "R73HJN1DE9YPRD4V"  # <--- replace with your Thingspeak Write API Key
publishPeriodInSec = 30
while True:
    ###
    # collect some data and put code here
    #
    ###

    # note:  string concatenations below follow best practices as described in micropython reference doc