Any one else having issues connecting to AWS from LTE-M/NB-IOT modem

I’m wondering if anyone is having similar issues as what I am having connecting to AWS. I’m following the micropython guide https://www.digi.com/resources/documentation/digidocs/PDFs/90002219.pdf

I’m in the AWS IOT section that shows an example of connection to AWS IOT core.

I’m using a HOLOGRAM SIM card. I’m having 100% failure connecting to AWS IOT core following the example to a T - It works fine in a local python windows install. I’ve tried all combinations of the host names with/without the -ATS, used the Starfield Services Root CA, the outdated Verisign one and every combination I can think of - I even followed the guide to make my own CA and certs with no luck. I only ever get the error:

traceback (most recent call last):
File “”, line 1, in
OSError: [Errno 7110] ETIMEDOUT

Is there any method to get more debug information - like a TCPDUMP log that I might be able to use to get some understanding about why this is failing?

I did some other investigation with the socket example that connects to micropython.org in the guide and seem to notice a pattern that anything hosted in AWS fails when using SSL. Some excerpt is below of that experiment. It’s starting to feel like Hologram is blocking AWS addresses.

See below some samples I have tried and what URLs have failed.
Note: www.aqualoam.com is hosted on AWS and also fails - I have left the setup code off here, but it is as pasted from the guide as mentioned above execpt I added the SSL configuration.

Examples (yahoo, google, stackoverflow all work OK - no timeout error):

>>> socketObject = usocket.socket(usocket.AF_INET, usocket.SOCK_STREAM, usocket.IPPROTO_SEC)
>>> socketObject.connect((“loadbalancer-439276361.us-east-1.elb.amazonaws.com”, 443))
Traceback (most recent call last):
File “”, line 1, in
OSError: [Errno 7110] ETIMEDOUT
>>> socketObject = usocket.socket(usocket.AF_INET, usocket.SOCK_STREAM, usocket.IPPROTO_SEC)
>>> socketObject.connect((“www.google.com”, 443))
>>> socketObject.close()
>>> socketObject = usocket.socket(usocket.AF_INET, usocket.SOCK_STREAM, usocket.IPPROTO_SEC)
>>> socketObject.connect((“aws.amazon.com”, 443))
Traceback (most recent call last):
File “”, line 1, in
OSError: [Errno 7110] ETIMEDOUT
>>> socketObject = usocket.socket(usocket.AF_INET, usocket.SOCK_STREAM, usocket.IPPROTO_SEC)
>>> socketObject.connect((“www.yahoo.com”, 443))
>>> socketObject.close()
>>> socketObject = usocket.socket(usocket.AF_INET, usocket.SOCK_STREAM, usocket.IPPROTO_SEC)
>>> socketObject.connect((“www.aqualoam.com”, 443))
Traceback (most recent call last):
File “”, line 1, in
OSError: [Errno 7110] ETIMEDOUT
>>> socketObject = usocket.socket(usocket.AF_INET, usocket.SOCK_STREAM, usocket.IPPROTO_SEC)
>>> socketObject.connect((“www.google.com”, 443))
>>> socketObject.close()
>>> socketObject = usocket.socket(usocket.AF_INET, usocket.SOCK_STREAM, usocket.IPPROTO_SEC)
>>> socketObject.connect((“aws.amazon.com”, 443))
Traceback (most recent call last):
File “”, line 1, in
OSError: [Errno 7110] ETIMEDOUT
>>> socketObject.close()
>>> socketObject = usocket.socket(usocket.AF_INET, usocket.SOCK_STREAM, usocket.IPPROTO_SEC)
>>> socketObject.connect((“www.stackoverflow.com”, 443))
>>> socketObject.close()
>>>

1 Like

Cdsteinf,

That is the wrong certs to use. You need to use the other ones. AWS keep changing things on a regulator basis.

Eric
Digi Support

Any one else having issues connecting to AWS from LTE-M/NB-IOT modem great article.It’s really nice and meaningful. It’s really cool blog. Linking is very useful thing.The Web Design Company in Saudi Arabia provide good service from https://www.adwebstudio.com/web-design-company-riyadh-jeddah-saudi-arabia

Did you manage to resolve this? I am running into the exact same issue. If it is the certs, which ones did you use to resolve it?

Hello,

I made the same request to Hologram about this, and its a known network issue, but it can be avoided by upgrading the modem firmware. They advised me to use version L0.0.00.00.05.08.

After I flashed this version, I was able to make the python examples work when followed exactly.

Thanks,
Craig