Help with TLS Connection on Arduino Nano ESP32 Using MicroPython

Hi everyone,

I’m using an Arduino Nano ESP32 (based on the ESP32-S3 chip) with MicroPython (MicroPython v1.24.0), and I need help establishing a secure connection to a network that requires TLS with certificate authentication.

  • The network I’m trying to connect to requires a CA certificate (typically provided as .pem or .crt file).
  • I’ve uploaded the CA certificate to the filesystem on the ESP32.
  • However, the MicroPython build currently installed on the board seems to lack the ussl module, which is required for TLS connections. Running import ussl results in a "No module named 'ussl'" error.
  1. Does the MicroPython firmware provided by Arduino officially support TLS? If so, how can I enable or add the ussl module?
  2. Is it safe to flash a generic MicroPython build (e.g., for ESP32-S3) to the Arduino Nano ESP32, or are there specific configurations required for this board?
  3. Are there any other solutions (e.g., using Arduino IDE or CircuitPython) that would allow me to achieve a secure connection with TLS and certificate authentication?

I’d appreciate any guidance or example projects/code snippets that can help me achieve this!

Thanks in advance for your support!

Can the experts respond to this please. I am stuck on the same issue.