Dear Quectel Technical Support,
We are using the EC200U-CN (firmware revision AAR03) for an HTTPS firmware-download (OTA) feature and are blocked by a TLS handshake failure we cannot resolve from the AT documentation we have. We would appreciate your guidance.
Summary: AT+QHTTPGET always returns +QHTTPGET: 732 (SSL handshake failed) against our HTTPS host, despite the full SSL configuration sequence being accepted by the module.
Host: https://ota.connect-links.com (served via Cloudflare). By default it presents an ECDSA leaf certificate (chain: leaf → Google Trust Services WE1 → GTS Root R4). When a client offers only RSA ciphersuites, the same host instead presents an RSA chain (leaf → WR1 → GTS Root R1) and accepts classic RSA suites such as ECDHE-RSA-AES128-GCM-SHA256. (Confirmed with openssl s_client.)
What works: Over plain HTTP the same host serves the file perfectly — +QHTTPGET: 0,200,<len> — so the bearer/PDP, the host, and the file are all fine. The failure is purely the TLS handshake.
Exact AT sequence we run on the OTA SSL context (id 2), with the module’s reply:
AT+QHTTPCFG="contextid",1 -> OK
AT+QHTTPCFG="sslctxid",2 -> OK
AT+QSSLCFG="sslversion",2,3 -> OK (TLS 1.2)
AT+QSSLCFG="ciphersuite",2,0xC02F -> OK (intend ECDHE-RSA-AES128-GCM-SHA256)
AT+QSSLCFG="seclevel",2,1 -> OK (verify server certificate)
AT+QSSLCFG="cacert",2,"UFS:otacacert.pem" -> OK (RSA chain WR1 + GTS Root R1 uploaded; QFLST shows 3974 bytes)
AT+QHTTPURL=<len>,80 -> CONNECT -> <url> -> OK
AT+QHTTPGET=80 -> OK
-> +QHTTPGET: 732
Every configuration command returns OK, and the CA file uploads and is accepted — yet the GET handshake fails with 732.
Our questions:
-
Ciphersuite value encoding: For
AT+QSSLCFG="ciphersuite",<ctx>,<value>, what is the exact accepted value set on EC200U-CN AAR03? Is<value>the IANA cipher code (e.g.0xC02F= ECDHE-RSA-AES128-GCM-SHA256), or a Quectel-specific code? Could you provide the full ciphersuite value table? We suspect0xC02Fmay not select the suite we intend (the module returns OK but the handshake still fails), so the ClientHello may still be offering ECDSA suites, causing the server to send an ECDSA certificate the module cannot verify/handshake. -
ECDSA certificate support: Does the EC200U-CN AAR03 TLS stack support ECDSA server certificates (e.g. ECDHE-ECDSA suites, P-256/P-384)? If not, what is the correct ciphersuite value to restrict the ClientHello to RSA-only so the server presents its RSA certificate?
-
Recommended configuration: For a public-CA host that prefers ECDSA/TLS 1.3 but also offers an RSA/TLS 1.2 path (typical Cloudflare config), what
QSSLCFGsettings do you recommend on EC200U-CN AAR03 to complete the handshake? -
Is there an AT command to query the negotiated ciphersuite / TLS error detail beyond the
732code, to help us diagnose?
We can provide a full AT trace log and the server certificate chains on request. Thank you very much for your help.
Best regards,
Sanjay M. Dalvi
ConnectLinks