import machine, gc, onewire, ds18x20 from umqtt.simple import MQTTClient import ubinascii import micropython import network gc.collect() staif = network.WLAN(network.STA_IF); staif.active(True) staif.isconnected() print(staif.isconnected()) config = {"ip": "46.38.251.137", "nodeId": "Node5"} inputPin = machine.Pin(15, machine.Pin.IN) adc = machine.ADC(0) adcv=2222 p0 = machine.Pin(0, machine.Pin.OUT) # create outpmachine.Pin(15 p0.off() ds_pin = machine.Pin(4) def sub_cb(topic, msg): print(msg, topic) def main(server=config['ip']): c = MQTTClient('umqtt_client', server) c.set_callback(sub_cb) p4val=0 try: c.connect() print(b'{}/msg'.format(config['nodeId'])) c.subscribe(b'{}/msg'.format(config['nodeId'])) except OSError: main() if 1<2: adcv = adc.read() adcstr = str(adcv) c.check_msg() c.publish("Node5/adc", adcstr) try: ds_sensor = ds18x20.DS18X20(onewire.OneWire(ds_pin)) roms = ds_sensor.scan() except NameError: print("no onwire sensor found.") else: ds_sensor.convert_temp() for rom in roms: c.publish("Node5/pin4",str(ds_sensor.read_temp(rom))) c.disconnect()