BC660K-GL HTTPS request supported firmware

Hello
I’m using a BC660K-GL module with NB-IOT sim card. I have managed to connect to the network. Here’s my configuration and module software version info:

ATI<\r><\n>
Quectel_Ltd<\r><\n>
Quectel_BC660K-GL<\r><\n>
Revision: BC660KGLAAR01A05<\r><\n>
OK<\r><\n>
AT+QCGDEFCONT?<\r><\n>
+QCGDEFCONT: "IP","INTERNET",,,,1<\r><\n>
OK<\r><\n>
AT+CGDCONT?<\r><\n>
+CGDCONT: 0,"IP","NBIOT","10.172.2.163"<\r><\n>
+CGDCONT: 1,"IP","INTERNET"<\r><\n>
OK<\r><\n>
+QNBIOTEVENT: "ENTER PSM"<\r><\n>

Is this revision up to date? I need to know this because I’m having an issue with HTTPS requests. However, I can make HTTP request just fine which is supported by the device:

at+qhttpurl=71>> <\r><\n>
OK<\r><\n>
+QNBIOTEVENT: "EXIT PSM"<\r><\n>
+CSCON: 1<\r><\n>
at+qhttpurl?<\r><\r><\n>
+QHTTPURL: http://web.simmons.edu/~grovesd/comm244/notes/week3/html-test-page.html<\r><\n>
OK<\r><\n>
+CSCON: 0<\r><\n>
at+qhttpget=60,60<\r><\n>
OK<\r><\n>
+CSCON: 1<\r><\n>
<\r><\n>
+QHTTPGET: 0,200,4507<\r><\n>

This works as intended. But, whenever I make a get request to google or any other website with HTTPS, I end up with an error:

at+qhttpurl=23>> <\r><\n>
OK<\r><\n>
at+qhttpget=60,60<\r><\n>
OK<\r><\n>
+QHTTPGET: 716<\r><\n>
at+qhttpurl?<\r><\n>
+QHTTPURL: https://www.google.com<\r><\n>

Does this device not support HTTPS requests? What should I do with my current configuration? Is there a revision that supports HTTPS requests? I cannot change the http content type configuration (default value is 0).

Here’s additional info for my current configuration just in case:

at+qcfg?<\r><\r><\n>
+QCFG: "EPCO",1<\r><\n>
+QCFG: "DataInactTimer",60<\r><\n>
+QCFG: "OOSScheme",4<\r><\n>
+QCFG: "logbaudrate",6000000<\r><\n>
+QCFG: "slplocktimes",10<\r><\n>
+QCFG: "dsevent",1<\r><\n>
+QCFG: "statisr",0<\r><\n>
+QCFG: "MacRAI",0<\r><\n>
+QCFG: "relversion",13<\r><\n>
+QCFG: "NBcategory",1<\r><\n>
+QCFG: "wakeupRXD",1<\r><\n>
+QCFG: "faultaction",4<\r><\n>
+QCFG: "GPIO",1,1,1,0<\r><\n>
+QCFG: "NcellMeas",1<\r><\n>
+QCFG: "SimBip",1<\r><\n>
+QCFG: "activetimer",1<\r><\n>
+QCFG: "simpsm",0<\r><\n>
<\r><\n>
OK<\r><\n>
AT+QHTTPCFG?<\r><\r><\n>
+QHTTPCFG: "contextid",0<\r><\n>
+QHTTPCFG: "requestheader",0<\r><\n>
+QHTTPCFG: "responseheader",0<\r><\n>
+QHTTPCFG: "contenttype",0<\r><\n>
+QHTTPCFG: "ssl",0,0<\r><\n>
+QHTTPCFG: "readformat",0<\r><\n>

We’re planning to buy BC660K-GL in bulk, so your help would be much appreciated. Please let me know what’s missing as soon as possible.

1 Like

Here’s what happens when I follow the instructions:

AT+QSSLCFG=0,0,"seclevel",1<\r><\r><\n>
OK<\r><\n>
AT+QHTTPCFG="ssl",0,0<\r><\r><\n>
OK<\r><\n>
at+qhttpurl=23<\r><\r><\n>><\r><\n>
OK<\r><\n>
at+qhttpget=60,60<\r><\r><\n>
OK<\r><\n>
+QNBIOTEVENT: "EXIT PSM"<\r><\n>
<\r><\n>
+CSCON: 1<\r><\n>
<\r><\n>
+QHTTPGET: 716<\r><\n>
at+qhttpread=60,60<\r><\r><\n>
ERROR<\r><\n>

Any ideas why this fails? 716:HTTP socket connect error

try the example url

https://www.example.com/

at+qhttpget=60,60<\r><\n>
OK<\r><\n>
<\r><\n>
+CSCON: 1<\r><\n>
+QHTTPGET: 716<\r><\n>
at+qhttpread=60,60<\r><\n>
ERROR<\r><\n>
+CSCON: 0<\r><\n>
at+qhttpurl?<\r><\n>
+QHTTPURL: https://www.example.com<\r><\n>
OK<\r><\n>

Same result

Is Revision: BC660KGLAAR01A05 up to date?
I’ve worked with Quectel M66 device and it can successfully make requests when https is included. Is there a way to set these parameters on BC660K-GL so that we can make sure the configuration is correct? @herbert.pan-Q
My configuration for M66 was:

AT+QSSLCFG="sslversion",1,2
AT+QSSLCFG="seclevel",1,0
AT+QSSLCFG="https",1
AT+QSSLCFG="httpsctxi",2
AT+QSSLCFG="ciphersuite",1,0X0035
AT+QHTTPCFG="sslctxid",1

According to my validation tests, you need to import google’s public CA certificate, and I recommend that you use other urls for testing

1 Like

I’ve added pem certificate of the url:

at+qsslcfg=0,0,"cacert"<\r><\r><\n>><\r><\n>
-----BEGIN CERTIFICATE-----
<<_.us-central1.firebasedatabase.app PEM certificate>>
-----END CERTIFICATE-----
+QSSLCFG: 0,0,"cacert",1980<\r><\n>
<\r><\n>
OK<\r><\n>
at+qhttpurl=49<\r><\r><\n>><\r><\n>
<\r><\n>
OK<\r><\n>
at+qhttpget=60,60<\r><\r><\n>OK<\r><\n>
<\r><\n>
+QHTTPGET: 716<\r><\n>
<\r><\n>

I have tried other urls such as https://webhook.site/bcaddbe8-41b6-444d-9127-51dcbf896358 , Best String to Hex Converter Online to Convert Text to Hex. and https://www.google.com/ with no avail. Can you send me a link that works to test? Is there a certificate for the example link you’ve provided, too?
Edit: I’ve tried loading up the https://www.example.com/ pem certificate and it did not work as well. Could you direct me to the technical support if possible @herbert.pan-Q ? Why is this not working as intended?

This is from the hardware specifications Quectel_BC660K-GL_Hardware_Design_V1.3-1.pdf:


Maybe my revision is not up to date? Or am I supposed to use a different configuration such as NB category = 2, relversion= 14? @herbert.pan-Q

no,no,If you grab the debug log and look at the data flow, you may be able to understand more about the cause of the failure

1 Like

Could you tell me how to log the device so that I can solve the problem? I’ve connected RX/TX to the uart port and powered up the module using 3V. Do I need a different configuration to log or how can I achieve that?

Is the evaluation kit necessary for that @herbert.pan-Q ? I don’t have the TE-B kit
I need the EPAT.exe file. Could you provide me the file while I arrange debug pins for this device?

I have sent them to you,pls check

1 Like

Thanks for the log application. I think I need a DB file to update but I can’t find it. This is all I see after applying AT+ECPCFG=“logCtrl”,2.

Where can I get DB file from?
EPAT_UUT9c73oif

@herbert.pan-Q my module’s version is BC660KGLAAR01A05

I have sent it to you,It is included in the firmware package

1 Like

Hi @herbert.pan-Q .

My current revision is BC660KGLAAR01A05_01.200.01.200. I could not update my device with the provided latest version/DB file. So I tried logging the device directly by updating DB only.

When I update DB with BC660KGLAAR01A05_01.202.01.202 firmware, I see this error on my logs when applying log control command:


And I cannot see events in the log. So, could you instead send me a compatible DB file with my current revision BC660KGLAAR01A05_01.200.01.200?

(I have tried changing my baudrate to 921600 as configured in the memory)

I make HTTPS request to https://www.google.co.uk/ link. I have the log zip file attachment:
20240506_114002.zip (327.9 KB)

AT LOG:

at+qhttpurl=25

>

OK
at+qhttpget=60

OK

+QHTTPGET: 716


So what does "gQSSLList is null mean?