Help Needed: Connecting OpenMV Cam to AWS IoT - SSL/MQTT Issues

I’m trying to connect my OpenMV camera to AWS IoT Core but running into some SSL/MQTT connectivity issues.

Current Setup:

  • OpenMV Cam with firmware v4.5.3
  • AWS IoT Core endpoint configured
  • Certificates converted from PEM to DER format
  • Basic MQTT works (tested with test.mosquitto.org)
  • Basic SSL works (tested with www.google.com)

Issues Encountered:

  1. SSL Connection to AWS IoT fails

  2. SSL wrap_socket doesn’t accept certificate parameters (gets “extra keyword arguments given” error)

  3. Direct MQTT connection to AWS times out

  4. What’s the correct way to use client certificates with OpenMV’s SSL implementation?

  5. Is there a working example of OpenMV connecting to AWS IoT?

  6. Are there any specific firmware requirements for AWS IoT connectivity?

  7. Should I be using a different approach altogether (HTTP/HTTPS instead)?

Any guidance would be greatly appreciated. I’m open to alternative approaches or workarounds if the direct SSL/MQTT connection isn’t possible with the current firmware. Is there any code you have to directly connect with iot core?

Hi, please update to firmware 4.7.0. We cannot provide help support for older firmware versions as we integrate lots of MicroPython core fixes each time we update things.

My firmware is upgraded, can you please assist me through this issue?

Hi Arjunlak,

Thank you for updating your firmware. Ibrahim is more experienced with using SSL with MicroPython than me. This type of code is generic though for all MicroPython boards. You do not need to explicitly look at OpenMV docs for this. There are some forum threads around in which folks have used SSL: WebServer with HTTPS connection - #4 by iabdalkader

Regarding AWS IoT. I don’t have direct experience with this. Are you following this guide? Using MicroPython to get started with AWS IoT Core | The Internet of Things on AWS – Official Blog

Also, which board are you using?

I am following the guide but it is unclear on the implementation on the OpenMV Cam RT1062.

The WiFi sockets are exactly the same as it’s a MicroPython board (not circuit Python). What part is giving issues with the RT1062?