ESP32 + Microdot + uPy-uasyncio

2022-11-12 作者:


This ESP32 and micropython-uasyncio based indoor ambient sensors are basically working as expected, with web-controlled OLED display, and a quite simple http api for other services like home assistant to query the realtime data. The multitasking runs on non-preempt Python coroutine, which is theoretically incompetent against those C + RTOS stuff, but it wins on simplicity from my point of view, so far at least.

Hardware components:

  • NodeMCU (ESP32-WROOM-32E)
  • 1.3 inch OLED (SH1106, SPI/I2C, 128×64)
  • BME280 sensor (ambient temperature, relative humidity, barometric pressure)

Software libs:

  • Micropython 1.19.1 (for ESP32)
  • Microdot (minimalistic Python web framework which supports uasyncio)
  • Driver libs of all hardware components.