Skip to content

Instantly share code, notes, and snippets.

@jessebraham
Last active February 2, 2023 17:30
Show Gist options
  • Save jessebraham/9d0fc3d399b4de522694f341833c9de4 to your computer and use it in GitHub Desktop.
Save jessebraham/9d0fc3d399b4de522694f341833c9de4 to your computer and use it in GitHub Desktop.

Bare-Metal RUWM

Can we use RUWM as an ongoing litmus test for our bare-metal portfolio readiness?

Stuff that RUWM core would need to run on bare-metal:

  • An executor - can be either embassy-executor or edge-executor (as ESP bare-metal has a generic allocator now) and we can make it configurable
  • Blocking or async drivers for SPI, I2C, one-shot calibrated ADC and pin peripherals (pin peripherals need interrupt support)
    • Blocking drivers
      • ADC
        • Need to implement calibration
      • GPIO
      • I2C
      • SPI
    • Async drivers
      • ADC
      • GPIO
      • I2C
      • SPI
  • Support for WIFI in STA and AP mode, as well as async IP on top
    • STA
    • AP
      • DHCP
    • async
      • Let's wait until we have AFIT for the Xtensa toolchain
  • (Easy?) NVS storage abstraction for reading/writing small binary BLOBs. Do we have it? Pointers appreciated.
    • esp-storage exists but is quite low-level
    • We can build a higher-level solution on top of esp-storage
    • While not strictly necessary, maybe we want compatibility with ESP-IDF NVS?
  • (Easy?) OTA (with ESP IDF bootloader initially). Do we have it? Pointers appreciated.
  • (Medium/Easy) Support for async HTTP client; perhaps we can work on bug-fixing the one in edge-net?
  • (Medium) Support for async HTTP server with WS support; perhaps we can work on bug-fixing the one in edge-net?
  • (Hard?) Support for async MQTT client V3.1. Ideas?
  • (Hard?) Support for TLS. Ideas?
  • (Optional) ULP co-processor support, deep sleep mode support
@jessebraham
Copy link
Author

Thanks for the notes @bjoernQ, I've updated the document.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment