Overview

Developed a minimal wrapper layer over ESP-MQTT to simplify AWS IoT Core integration on ESP32-class devices using mutual TLS authentication.

Highlights

  • Supports ESP32 family targets (ESP32, C2/C3/C5/C6, H2, P4, S2, S3)
  • Handles network bring-up with Example Connection component
  • Syncs time via SNTP before TLS handshake
  • Establishes MQTT over TLS with embedded root CA, device cert, and private key
  • Exposes a small API surface for:
    • initialization
    • subscribe
    • unsubscribe
    • publish

Architecture

  • app_main orchestrates networking, time sync, and wrapper usage
  • mqtt_manager encapsulates ESP-MQTT event handling
  • Queues actions until broker connection is established

Outcome

Produced a reusable MQTT client wrapper for secure AWS IoT device communication with reduced application-side boilerplate.