I have followed the instructions for connecting a XBC LTE Cat 1 Verizon to AWS IoT as described here: https://github.com/digidotcom/xbee-micropython/tree/master/samples/cellular/aws
The board I'm using is the Digi XBee Cellular LTE Cat 1 Development Kit, Verizon LTE Cat 1, USA ( https://www.digi.com/products/models/xkc-v1t-u ). Verizon signal strength is 3 bars and I've successfully tested network connectivity with both the Echo server ( https://www.digi.com/resources/documentation/Digidocs/90001541/tasks/t_echo_server.htm?TocPath=Getting%20started%7C_____10 ) and the Daytime server ( https://www.digi.com/resources/documentation/Digidocs/90001541/tasks/t_daytime_server.htm?tocpath=Connection%20examples%7C_____3 )
I created a thing, attached a policy and downloaded / renamed the certificate files ( https://www.digi.com/resources/documentation/digidocs/90002219/default.htm#tasks/t_install_certificates.htm%3FTocPath%3DUse%2520AWS%2520IoT%2520from%2520MicroPython%7C_____4 ) except for the now legacy VeriSign public certificate.
Since my AWS IoT host includes the "-ats" in the hostname, I downloaded the Amazon Root CA1 (2048) from this location https://www.amazontrust.com/repository/AmazonRootCA1.pem and saved it as the aws.ca file.
When testing the certificates on a desktop with Python 3 ( https://www.digi.com/resources/documentation/digidocs/90002219/default.htm#tasks/t_test_connection.htm%3FTocPath%3DUse%2520AWS%2520IoT%2520from%2520MicroPython%7C_____5 ), it connects successfully. I receive the expected output and it works great.
However, after I upload the three files (/flash/cert/aws.key, /flash/cert/aws.crt, /flash/cert/aws.ca) with the File system Manger tool, copy and paste the Micropython version of the "test connection" code with my parameters ( https://www.digi.com/resources/documentation/digidocs/90002219/default.htm#tasks/t_test_connection.htm%3FTocPath%3DUse%2520AWS%2520IoT%2520from%2520MicroPython%7C_____5 ) and run with CTRL+D, I receive the following error:
Traceback (most recent call last):
File "<stdin>", line 37, in <module>
File "<stdin>", line 24, in https_test
OSError: [Errno 7111] ECONNREFUSED
I've tested different file paths (relative "cert/aws.key" vs absolute "/flash/cert/aws.key") without success. Uploading the key file through XCTU (securely as well as insecurely) didn't change the error message received. The three files (aws.key, aws.crt, aws.ca) are the exact same ones that work successfully in Python3 using a Juypter Notebook.
The AWS IoT policy attached to the certificate is the most permissive.
Any help is greatly appreciated!