main.py 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. from machine import Pin, Signal
  2. LED_PIN = Signal(13, Pin.OUT, invert=False)
  3. BUTTON_PIN = Pin(0, Pin.IN)
  4. button_triggered = False
  5. def button_handler(pin):
  6. global button_triggered
  7. button_triggered = True
  8. # Turn off "ready" LED
  9. LED_PIN.off()
  10. # Read configuration from JSON file
  11. with open('config.json') as fd:
  12. import ujson
  13. config = ujson.load(fd)
  14. # Configure wireless networking
  15. import network
  16. wifi_host = network.WLAN(network.AP_IF)
  17. wifi_host.active(False)
  18. wifi_guest = network.WLAN(network.STA_IF)
  19. wifi_guest.active(True)
  20. if not wifi_guest.isconnected():
  21. wifi_guest.connect(config['wifi']['ssid'], config['wifi']['password'])
  22. while not wifi_guest.isconnected():
  23. pass
  24. print(wifi_guest.ifconfig())
  25. # Set up interrupt handler
  26. BUTTON_PIN.irq(button_handler, Pin.IRQ_RISING)
  27. # Turn on "ready" LED
  28. LED_PIN.on()
  29. # Enter main loop
  30. import time
  31. while True:
  32. if button_triggered:
  33. import urequests as requests
  34. LED_PIN.off()
  35. btn_id = config['buttonId']
  36. endpoint = 'http://192.168.0.212:42069/rdp?id={0}'.format(btn_id)
  37. res = requests.get(endpoint)
  38. # print(res.status_code)
  39. time.sleep(5)
  40. button_triggered = False
  41. LED_PIN.on()
  42. else:
  43. time.sleep(1)