Azure HTTPS connections from SIMCOM cellular modem stopped working

Simon Exelby 5 Reputation points
2025-04-01T07:23:01.2233333+00:00

Modem responds with error code 15 - had been working fine for several years until 28 March this year.

Quectel modems still connect OK.

Any ideas?

Azure Internet of Things
{count} votes

1 answer

Sort by: Most helpful
  1. Manas Mohanty 5,700 Reputation points Microsoft External Staff Moderator
    2025-04-01T09:17:53.1666667+00:00

    Hi Simon Exelby

    Could you share the full error description on error 15 along the reference document.

    Error 15 seems to be handshake issue as per SIMCOM manual .

    Here are proposed Steps to Fix Handshake Error with SIMCOM Modems:

    Check SSL/TLS Configuration:

    • Ensure that the SSL/TLS version configured on the modem matches the version supported by Azure. You can use the AT+CSSLCFG="sslversion",<context_id>,<version> command to set the SSL version. For example, to set it to TLS 1.2, you would use AT+CSSLCFG="sslversion",0,3.

    Verify Certificates:

    • Make sure that the correct certificates are downloaded and installed on the modem. Use the AT+CCERTDOWN command to download the certificate and AT+CCERTLIST to list the installed certificates. Ensure that the root CA certificate used by Azure is present on the modem.

    Set Authentication Mode:

    • Configure the authentication mode using the AT+CSSLCFG="authmode",<context_id>,<mode> command. For example, to set it to server authentication only, use AT+CSSLCFG="authmode",0,1.

    Configure SSL Context:

    • Use the AT+CSSLCFG command to configure the SSL context. This includes setting the cipher suite, SSL version, and other parameters. Ensure that the settings match the requirements of the Azure service you are connecting to.

    Establish PDP Context:

    • Before initiating the HTTPS connection, ensure that the PDP context is activated using the AT+CGACT command.

    Date/Time Sync Issue:

    • Ensure that the date and time settings on your modem are correct. Incorrect date and time settings can cause SSL/TLS handshake errors. Use the AT+CCLK command to set the correct date and time.

    Check for Typos in URL:

    • Double-check the URL you are using for the HTTPS connection to ensure there are no typos. Even a small typo can prevent the connection from being established.

    Initiate HTTPS Connection:

    • Use the appropriate AT commands to initiate the HTTPS connection. For example, AT+CHTTPSSTART to start the HTTPS service and AT+CHTTPSOPSE to open the HTTPS session.

    Example AT Command Sequence:

    AT+CSSLCFG="sslversion",0,3
    AT+CSSLCFG="authmode",0,1
    AT+CCERTDOWN="cacert",0,"server_ca.pem"
    AT+CCERTLIST
    AT+CGACT=1,1
    AT+CCLK="yy/MM/dd,hh:mm:ss"
    AT+CHTTPSSTART
    AT+CHTTPSOPSE="https://your-azure-endpoint",443
    
    

    Found relevant thread for reference.

    Update on 18th April 2025

    The issue with Function App arised due to a change with TLS handshake logic to reject requests which do not meet the MinTlsVersion requirement. This change was done to improve telemetry on the portal end and save some CPU cycles for extra processing of the handshake. However, in doing so, inadvertently, there was an exposed bug in the framework we use to parse TLS handshakes related to SSLv3.0 Unified Client Hello. This change has been reverted and added extra regression testing to ensure we do not regress again.

    Thank you.

    0 comments No comments

Your answer

Answers can be marked as Accepted Answers by the question author, which helps users to know the answer solved the author's problem.