hi, chris5:
I suggest that you first use the MQTT.fx tool to test the correctness of the relevant CA certificates and the connectivity of the MQTT server.
Second, you should refer to our MQTT instruction manual for implementation procedures and read the instructions carefully.
Hi Herbert.pan-Q,
The certificates works using WiFi on raspberry pi, incl. subscribing to topics.
I checked internet connectivity using ntp sync on the BC66. So seems fine.
My main question on certificate upload is, can I simply copy and paste the content of the pem file. Including \n\r line breaks and intro statements like -----begin certificate? Or do linebreaks need to be stripped away.
Is there anyway to download the certificates to see if they are properly uploaded?
I connected to BC66 via UART over USB - minicom. After AT commands there is still no SSL connection established. Neither the original PEM, nor removing line breaks etc. showed any effect.
hi,
If you still have not successfully connected to Google MQTT server, I suggest you perform relevant operations on the Win10 system through the reference manual.
I connected successfully via MQTT.fx on my Win10 system. I added the exact certificates (PEM) format to BC66. No change.
I now built a dummy mosquitto server on GCP to test, if BC66 is actually sending anything to the cloud.
Looking at the wireshark output on the GCP:
a) QSSLOpen with “seclevel” = 0 leads to BC66 sending at least a TLS - Hello to the server
b) QSSLOpen with “seclevel” = 1,2 leads to BC66 sending no data at all to the server. It seems it gets stuck already before sending/requesting anything. Not sure how to debug this. Any hints?
hi, chris5:
I suggest you use Azure platform for debugging according to our manual. According to the current feedback, there are many exceptions in the CA certificate process when connecting to other MQTT servers.
for GOOGLE MQTT … google use “long ca” … look google documentation https://cloud.google.com/iot/docs/how-tos/mqtt-bridge
ECDHE-ECDSA-AES128-GCM-SHA256 work for google
you need “your” google URL and for password you need private key + JWT token
NB-IoT - SSL handshake is about 8 … 15 seconds
BC66 kernel use lwIP - mbedTLS and this “combination” work for ALL clouds
I have no idea if ATCommands kernel can handle full SSL/TLS
Thank you for this suggestion. I downloaded the respective certificates and tested the connection to the different broker with MQTT.fx. All works fine.
Still, I receive
AT+QSSLOPEN=1,5,“mqtt.2030.ltsapis.goog”,8883,0
OK
+QSSLOPEN: 1,5,-9
Accordingly AT+QMTOPEN (after setting up according to BC66 manual) gives.
+QMTOPEN: 1,-1
So I can’t even send the client_id and use private key + JWT as the SSL connection can not be established.
Interestingly the message does not change, when I change the url to “xyz.com” and port to 3388. Once I switch back to seclevel,0 at least QSSLOPEN works, but connection is closed after some seconds.
If I change the “cacert” to random content or anything, than I receive the same error.
Is there any way to debug this? “debug”,4 also does not give any output.