saeniv
November 19, 2022, 4:57pm
1
Hi,
I try to work my way through the Iot for Beginner Course from Microsoft:
GitHub
12 Weeks, 24 Lessons, IoT for All! Contribute to microsoft/IoT-For-Beginners development by creating an account on GitHub.
In chapter 2.4 Migrate your plant to the cloud, I get stuck. For the tutorial, I use an M5-Stack (ESP32), so I edited the code accordingly. I flashed it to the Microcontroller, but receive the Serial message:
Failure in ssl handshake has the server certificate been added?
The message is coming from the “IoTHubClient_LL_DoWork(_device_ll_handle)” function.
I followed other ESP32 tutorials for the Azure Cloud, but always get stuck at this point. My “Connection String”, is working, tried it with another program.
Inside the certs.c of the AzureIoTHub-library are CA-Certificates provided. So I am clueless.
Did anybody encounter the same problem with the Azure Cloud-tutorial? What could be the issue?
Reminds me of Anybody able to successfully compile Azure SDK ESP32-dev with Arduino in PlatformIO 5 .
Specifically, depending on the Azure instance you’re connecting to, you may need to activate a different certificate (azure-iot-arduino/certs.c at master · Azure/azure-iot-arduino · GitHub ) through the build_flags
of the platformio.ini
(like, -DUSE_BALTIMORE_CERT
or -DUSE_MICROSOFTAZURE_DE_CERT
).
Is the project you’re using this? IoT-For-Beginners/2-farm/lessons/4-migrate-your-plant-to-the-cloud/code/wio-terminal/soil-moisture-sensor at main · microsoft/IoT-For-Beginners · GitHub
Against which Azure server + port are you connecting against?
Increase the debug level to maximum . What’s the full log?
saeniv
November 19, 2022, 7:25pm
3
Thanks for your reply.
I tried all 3 certificate build flags, non is working.
Yes, I used the project from IoT-For-Beginners 2.4 Migrate your plant to the cloud.
If followed the instructions correctly, i just have to add a CONNECTION_STRING = “HostName=------.azure-devices.net;DeviceId=m5stack;SharedAccessKey=------”;
Because “Iothubname”.azure.devices.net should be enough.
Processing m5stack-fire (platform: espressif32; board: m5stack-fire; framework: arduino)
----------------------------------------------------------------------------------------------------
Verbose mode can be enabled via `-v, --verbose` option
CONFIGURATION: https://docs.platformio.org/page/boards/espressif32/m5stack-fire.html
PLATFORM: Espressif 32 (5.2.0) > M5Stack FIRE
HARDWARE: ESP32 240MHz, 4.31MB RAM, 16MB Flash
DEBUG: Current (cmsis-dap) External (cmsis-dap, esp-bridge, esp-prog, iot-bus-jtag, jlink, minimodule, olimex-arm-usb-ocd, olimex-arm-usb-ocd-h, olimex-arm-usb-tiny-h, olimex-jtag-tiny, tumpa)
PACKAGES:
- framework-arduinoespressif32 @ 3.20005.220925 (2.0.5)
- tool-esptoolpy @ 1.40201.0 (4.2.1)
- toolchain-xtensa-esp32 @ 8.4.0+2021r2-patch3
LDF: Library Dependency Finder -> https://bit.ly/configure-pio-ldf
LDF Modes: Finder ~ chain, Compatibility ~ soft
Found 42 compatible libraries
Scanning dependencies...
Dependency Graph
|-- ArduinoJson @ 6.17.3
|-- NTPClient @ 3.2.1
|-- Seeed Arduino RTC @ 2.0.0
|-- AzureIoTHub @ 1.6.1
| |-- AzureIoTUtility @ 1.6.2
| | |-- WiFi @ 2.0.0
| | |-- WiFiClientSecure @ 2.0.0
| | | |-- WiFi @ 2.0.0
|-- AzureIoTUtility @ 1.6.2
| |-- WiFi @ 2.0.0
| |-- WiFiClientSecure @ 2.0.0
| | |-- WiFi @ 2.0.0
|-- AzureIoTProtocol_MQTT @ 1.6.1
| |-- AzureIoTHub @ 1.6.1
| | |-- AzureIoTUtility @ 1.6.2
| | | |-- WiFi @ 2.0.0
| | | |-- WiFiClientSecure @ 2.0.0
| | | | |-- WiFi @ 2.0.0
| |-- AzureIoTUtility @ 1.6.2
| | |-- WiFi @ 2.0.0
| | |-- WiFiClientSecure @ 2.0.0
| | | |-- WiFi @ 2.0.0
|-- AzureIoTProtocol_HTTP @ 1.6.1
| |-- AzureIoTUtility @ 1.6.2
| | |-- WiFi @ 2.0.0
| | |-- WiFiClientSecure @ 2.0.0
| | | |-- WiFi @ 2.0.0
| |-- AzureIoTHub @ 1.6.1
| | |-- AzureIoTUtility @ 1.6.2
| | | |-- WiFi @ 2.0.0
| | | |-- WiFiClientSecure @ 2.0.0
| | | | |-- WiFi @ 2.0.0
|-- AzureIoTSocket_WiFi @ 1.0.3
| |-- WiFi @ 2.0.0
| |-- AzureIoTUtility @ 1.6.2
| | |-- WiFi @ 2.0.0
| | |-- WiFiClientSecure @ 2.0.0
| | | |-- WiFi @ 2.0.0
|-- WiFi @ 2.0.0
|-- WiFiClientSecure @ 2.0.0
| |-- WiFi @ 2.0.0
Building in release mode
Compiling .pio/build/m5stack-fire/src/main.cpp.o
Building .pio/build/m5stack-fire/bootloader.bin
Generating partitions .pio/build/m5stack-fire/partitions.bin
esptool.py v4.2.1
Creating esp32 image...
Merged 1 ELF section
Successfully created esp32 image.
Compiling .pio/build/m5stack-fire/libba1/NTPClient/NTPClient.cpp.o
Compiling .pio/build/m5stack-fire/lib930/Seeed Arduino RTC/DateTime.cpp.o
Compiling .pio/build/m5stack-fire/lib930/Seeed Arduino RTC/RTC_SAMD21.cpp.o
Compiling .pio/build/m5stack-fire/lib930/Seeed Arduino RTC/RTC_SAMD51.cpp.o
Compiling .pio/build/m5stack-fire/libe4c/WiFi/WiFi.cpp.o
Compiling .pio/build/m5stack-fire/libe4c/WiFi/WiFiAP.cpp.o
Compiling .pio/build/m5stack-fire/libe4c/WiFi/WiFiClient.cpp.o
Compiling .pio/build/m5stack-fire/libe4c/WiFi/WiFiGeneric.cpp.o
Compiling .pio/build/m5stack-fire/libe4c/WiFi/WiFiMulti.cpp.o
Archiving .pio/build/m5stack-fire/libba1/libNTPClient.a
Indexing .pio/build/m5stack-fire/libba1/libNTPClient.a
Compiling .pio/build/m5stack-fire/libe4c/WiFi/WiFiSTA.cpp.o
Archiving .pio/build/m5stack-fire/lib930/libSeeed Arduino RTC.a
Indexing .pio/build/m5stack-fire/lib930/libSeeed Arduino RTC.a
Compiling .pio/build/m5stack-fire/libe4c/WiFi/WiFiScan.cpp.o
Compiling .pio/build/m5stack-fire/libe4c/WiFi/WiFiServer.cpp.o
Compiling .pio/build/m5stack-fire/libe4c/WiFi/WiFiUdp.cpp.o
Compiling .pio/build/m5stack-fire/libadd/WiFiClientSecure/WiFiClientSecure.cpp.o
Compiling .pio/build/m5stack-fire/libadd/WiFiClientSecure/esp_crt_bundle.c.o
Compiling .pio/build/m5stack-fire/libadd/WiFiClientSecure/ssl_client.cpp.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/adapters/agenttime.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/adapters/platform_arduino.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/adapters/sslClient_arduino.cpp.o
Archiving .pio/build/m5stack-fire/libe4c/libWiFi.a
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/adapters/threadapi_arduino.c.o
Indexing .pio/build/m5stack-fire/libe4c/libWiFi.a
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/adapters/tickcounter.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/adapters/tlsio_arduino.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/adapters/tlsio_mbedtls.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/adapters/xlogging_dump_bytes.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/azure_c_shared_utility/azure_base32.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/azure_c_shared_utility/azure_base64.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/azure_c_shared_utility/buffer.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/azure_c_shared_utility/connection_string_parser.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/azure_c_shared_utility/consolelogger.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/azure_c_shared_utility/constbuffer.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/azure_c_shared_utility/constbuffer_array.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/azure_c_shared_utility/constbuffer_array_batcher.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/azure_c_shared_utility/constmap.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/azure_c_shared_utility/crt_abstractions.c.o
Archiving .pio/build/m5stack-fire/libadd/libWiFiClientSecure.a
Indexing .pio/build/m5stack-fire/libadd/libWiFiClientSecure.a
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/azure_c_shared_utility/doublylinkedlist.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/azure_c_shared_utility/gb_rand.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/azure_c_shared_utility/gb_stdio.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/azure_c_shared_utility/gb_time.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/azure_c_shared_utility/gballoc.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/azure_c_shared_utility/hmac.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/azure_c_shared_utility/hmacsha256.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/azure_c_shared_utility/http_proxy_stub.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/azure_c_shared_utility/httpapiex.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/azure_c_shared_utility/httpapiexsas.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/azure_c_shared_utility/httpheaders.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/azure_c_shared_utility/map.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/azure_c_shared_utility/memory_data.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/azure_c_shared_utility/optionhandler.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/azure_c_shared_utility/sastoken.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/azure_c_shared_utility/sha1.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/azure_c_shared_utility/sha224.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/azure_c_shared_utility/sha384-512.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/azure_c_shared_utility/singlylinkedlist.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/azure_c_shared_utility/string_token.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/azure_c_shared_utility/string_tokenizer.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/azure_c_shared_utility/strings.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/azure_c_shared_utility/tlsio_options.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/azure_c_shared_utility/urlencode.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/azure_c_shared_utility/usha.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/azure_c_shared_utility/utf8_checker.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/azure_c_shared_utility/uuid.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/azure_c_shared_utility/uws_client.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/azure_c_shared_utility/uws_frame_encoder.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/azure_c_shared_utility/vector.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/azure_c_shared_utility/ws_url.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/azure_c_shared_utility/xio.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/azure_c_shared_utility/xlogging.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/esp32/azcpgmspace.cpp.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/esp32/sample_init.cpp.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/esp8266/azcpgmspace.cpp.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/esp8266/sample_init.cpp.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/samd/NTPClientAz.cpp.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/samd/sample_init.cpp.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/samd/stdio.cpp.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/samd/time.cpp.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/umock_c/umock_c.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/umock_c/umock_c_negative_tests.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/umock_c/umock_log.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/umock_c/umockalloc.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/umock_c/umockautoignoreargs.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/umock_c/umockcall.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/umock_c/umockcallpairs.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/umock_c/umockcallrecorder.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/umock_c/umockstring.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/umock_c/umocktypename.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/umock_c/umocktypes.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/umock_c/umocktypes_bool.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/umock_c/umocktypes_c.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/umock_c/umocktypes_charptr.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/umock_c/umocktypes_stdint.c.o
Compiling .pio/build/m5stack-fire/lib6dc/AzureIoTUtility/umock_c/umocktypes_wcharptr.c.o
Compiling .pio/build/m5stack-fire/libaac/AzureIoTHub/agenttypesystem.c.o
Compiling .pio/build/m5stack-fire/libaac/AzureIoTHub/certs/certs.c.o
Compiling .pio/build/m5stack-fire/libaac/AzureIoTHub/codefirst.c.o
Compiling .pio/build/m5stack-fire/libaac/AzureIoTHub/commanddecoder.c.o
Compiling .pio/build/m5stack-fire/libaac/AzureIoTHub/datamarshaller.c.o
Archiving .pio/build/m5stack-fire/lib6dc/libAzureIoTUtility.a
Compiling .pio/build/m5stack-fire/libaac/AzureIoTHub/datapublisher.c.o
Indexing .pio/build/m5stack-fire/lib6dc/libAzureIoTUtility.a
Compiling .pio/build/m5stack-fire/libaac/AzureIoTHub/dataserializer.c.o
Compiling .pio/build/m5stack-fire/libaac/AzureIoTHub/iotdevice.c.o
Compiling .pio/build/m5stack-fire/libaac/AzureIoTHub/iothub.c.o
Compiling .pio/build/m5stack-fire/libaac/AzureIoTHub/iothub_client.c.o
Compiling .pio/build/m5stack-fire/libaac/AzureIoTHub/iothub_client_authorization.c.o
Compiling .pio/build/m5stack-fire/libaac/AzureIoTHub/iothub_client_core.c.o
Compiling .pio/build/m5stack-fire/libaac/AzureIoTHub/iothub_client_core_ll.c.o
Compiling .pio/build/m5stack-fire/libaac/AzureIoTHub/iothub_client_diagnostic.c.o
Compiling .pio/build/m5stack-fire/libaac/AzureIoTHub/iothub_client_edge.c.o
Compiling .pio/build/m5stack-fire/libaac/AzureIoTHub/iothub_client_ll.c.o
Compiling .pio/build/m5stack-fire/libaac/AzureIoTHub/iothub_client_ll_uploadtoblob.c.o
Compiling .pio/build/m5stack-fire/libaac/AzureIoTHub/iothub_client_retry_control.c.o
Compiling .pio/build/m5stack-fire/libaac/AzureIoTHub/iothub_device_client.c.o
Compiling .pio/build/m5stack-fire/libaac/AzureIoTHub/iothub_device_client_ll.c.o
Compiling .pio/build/m5stack-fire/libaac/AzureIoTHub/iothub_message.c.o
Compiling .pio/build/m5stack-fire/libaac/AzureIoTHub/iothub_module_client.c.o
Compiling .pio/build/m5stack-fire/libaac/AzureIoTHub/iothub_module_client_ll.c.o
Compiling .pio/build/m5stack-fire/libaac/AzureIoTHub/iothub_transport_ll_private.c.o
Compiling .pio/build/m5stack-fire/libaac/AzureIoTHub/iothubtransport.c.o
Compiling .pio/build/m5stack-fire/libaac/AzureIoTHub/iothubtransport_mqtt_common.c.o
Compiling .pio/build/m5stack-fire/libaac/AzureIoTHub/iothubtransporthttp.c.o
Compiling .pio/build/m5stack-fire/libaac/AzureIoTHub/iothubtransportmqtt.c.o
Compiling .pio/build/m5stack-fire/libaac/AzureIoTHub/jsondecoder.c.o
Compiling .pio/build/m5stack-fire/libaac/AzureIoTHub/jsonencoder.c.o
Compiling .pio/build/m5stack-fire/libaac/AzureIoTHub/message_queue.c.o
Compiling .pio/build/m5stack-fire/libaac/AzureIoTHub/methodreturn.c.o
Compiling .pio/build/m5stack-fire/libaac/AzureIoTHub/multitree.c.o
Compiling .pio/build/m5stack-fire/libaac/AzureIoTHub/parson.c.o
Compiling .pio/build/m5stack-fire/libaac/AzureIoTHub/schema.c.o
Compiling .pio/build/m5stack-fire/libaac/AzureIoTHub/schemalib.c.o
Compiling .pio/build/m5stack-fire/libaac/AzureIoTHub/schemaserializer.c.o
Compiling .pio/build/m5stack-fire/libaac/AzureIoTHub/version.c.o
Compiling .pio/build/m5stack-fire/lib9a7/AzureIoTProtocol_MQTT/azure_umqtt_c/mqtt_client.c.o
Compiling .pio/build/m5stack-fire/lib9a7/AzureIoTProtocol_MQTT/azure_umqtt_c/mqtt_codec.c.o
Compiling .pio/build/m5stack-fire/lib9a7/AzureIoTProtocol_MQTT/azure_umqtt_c/mqtt_message.c.o
Compiling .pio/build/m5stack-fire/lib05b/AzureIoTProtocol_HTTP/azure_uhttp_c/httpapi_compact.c.o
Compiling .pio/build/m5stack-fire/lib2e0/AzureIoTSocket_WiFi/socketio_esp32wifi.cpp.o
Compiling .pio/build/m5stack-fire/FrameworkArduino/Esp.cpp.o
Archiving .pio/build/m5stack-fire/lib9a7/libAzureIoTProtocol_MQTT.a
Indexing .pio/build/m5stack-fire/lib9a7/libAzureIoTProtocol_MQTT.a
Compiling .pio/build/m5stack-fire/FrameworkArduino/FirmwareMSC.cpp.o
Compiling .pio/build/m5stack-fire/FrameworkArduino/FunctionalInterrupt.cpp.o
Compiling .pio/build/m5stack-fire/FrameworkArduino/HWCDC.cpp.o
Archiving .pio/build/m5stack-fire/libaac/libAzureIoTHub.a
Archiving .pio/build/m5stack-fire/lib05b/libAzureIoTProtocol_HTTP.a
Indexing .pio/build/m5stack-fire/lib05b/libAzureIoTProtocol_HTTP.a
Indexing .pio/build/m5stack-fire/libaac/libAzureIoTHub.a
Compiling .pio/build/m5stack-fire/FrameworkArduino/HardwareSerial.cpp.o
Compiling .pio/build/m5stack-fire/FrameworkArduino/IPAddress.cpp.o
Compiling .pio/build/m5stack-fire/FrameworkArduino/IPv6Address.cpp.o
Compiling .pio/build/m5stack-fire/FrameworkArduino/MD5Builder.cpp.o
Compiling .pio/build/m5stack-fire/FrameworkArduino/Print.cpp.o
.pio/libdeps/m5stack-fire/AzureIoTSocket_WiFi/src/socketio_esp32wifi.cpp: In function 'int socketio_send(CONCRETE_IO_HANDLE, const void*, size_t, ON_SEND_COMPLETE, void*)':
.pio/libdeps/m5stack-fire/AzureIoTSocket_WiFi/src/socketio_esp32wifi.cpp:444:90: warning: pointer of type 'void *' used in arithmetic [-Wpointer-arith]
if (add_pending_io(socket_io_instance, (const unsigned char*)(buffer + send_result), size - send_result, on_send_complete, callback_context) != 0)
~~~~~~~^~~~~~~~~~~~~
Archiving .pio/build/m5stack-fire/lib2e0/libAzureIoTSocket_WiFi.a
Indexing .pio/build/m5stack-fire/lib2e0/libAzureIoTSocket_WiFi.a
Compiling .pio/build/m5stack-fire/FrameworkArduino/Stream.cpp.o
Compiling .pio/build/m5stack-fire/FrameworkArduino/StreamString.cpp.o
Compiling .pio/build/m5stack-fire/FrameworkArduino/Tone.cpp.o
Compiling .pio/build/m5stack-fire/FrameworkArduino/USB.cpp.o
Compiling .pio/build/m5stack-fire/FrameworkArduino/USBCDC.cpp.o
Compiling .pio/build/m5stack-fire/FrameworkArduino/USBMSC.cpp.o
Compiling .pio/build/m5stack-fire/FrameworkArduino/WMath.cpp.o
Compiling .pio/build/m5stack-fire/FrameworkArduino/WString.cpp.o
Compiling .pio/build/m5stack-fire/FrameworkArduino/base64.cpp.o
Compiling .pio/build/m5stack-fire/FrameworkArduino/cbuf.cpp.o
Compiling .pio/build/m5stack-fire/FrameworkArduino/esp32-hal-adc.c.o
Compiling .pio/build/m5stack-fire/FrameworkArduino/esp32-hal-bt.c.o
Compiling .pio/build/m5stack-fire/FrameworkArduino/esp32-hal-cpu.c.o
Compiling .pio/build/m5stack-fire/FrameworkArduino/esp32-hal-dac.c.o
Compiling .pio/build/m5stack-fire/FrameworkArduino/esp32-hal-gpio.c.o
Compiling .pio/build/m5stack-fire/FrameworkArduino/esp32-hal-i2c-slave.c.o
Compiling .pio/build/m5stack-fire/FrameworkArduino/esp32-hal-i2c.c.o
Compiling .pio/build/m5stack-fire/FrameworkArduino/esp32-hal-ledc.c.o
Compiling .pio/build/m5stack-fire/FrameworkArduino/esp32-hal-matrix.c.o
Compiling .pio/build/m5stack-fire/FrameworkArduino/esp32-hal-misc.c.o
Compiling .pio/build/m5stack-fire/FrameworkArduino/esp32-hal-psram.c.o
Compiling .pio/build/m5stack-fire/FrameworkArduino/esp32-hal-rgb-led.c.o
Compiling .pio/build/m5stack-fire/FrameworkArduino/esp32-hal-rmt.c.o
Compiling .pio/build/m5stack-fire/FrameworkArduino/esp32-hal-sigmadelta.c.o
Compiling .pio/build/m5stack-fire/FrameworkArduino/esp32-hal-spi.c.o
Compiling .pio/build/m5stack-fire/FrameworkArduino/esp32-hal-time.c.o
Compiling .pio/build/m5stack-fire/FrameworkArduino/esp32-hal-timer.c.o
Compiling .pio/build/m5stack-fire/FrameworkArduino/esp32-hal-tinyusb.c.o
Compiling .pio/build/m5stack-fire/FrameworkArduino/esp32-hal-touch.c.o
Compiling .pio/build/m5stack-fire/FrameworkArduino/esp32-hal-uart.c.o
Compiling .pio/build/m5stack-fire/FrameworkArduino/firmware_msc_fat.c.o
Compiling .pio/build/m5stack-fire/FrameworkArduino/libb64/cdecode.c.o
Compiling .pio/build/m5stack-fire/FrameworkArduino/libb64/cencode.c.o
Compiling .pio/build/m5stack-fire/FrameworkArduino/main.cpp.o
Compiling .pio/build/m5stack-fire/FrameworkArduino/stdlib_noniso.c.o
Compiling .pio/build/m5stack-fire/FrameworkArduino/wiring_pulse.c.o
Compiling .pio/build/m5stack-fire/FrameworkArduino/wiring_shift.c.o
Archiving .pio/build/m5stack-fire/libFrameworkArduino.a
Indexing .pio/build/m5stack-fire/libFrameworkArduino.a
Linking .pio/build/m5stack-fire/firmware.elf
Retrieving maximum program size .pio/build/m5stack-fire/firmware.elf
Checking size .pio/build/m5stack-fire/firmware.elf
Advanced Memory Usage is available via "PlatformIO Home > Project Inspect"
RAM: [ ] 0.9% (used 40840 bytes from 4521984 bytes)
Flash: [= ] 14.6% (used 956821 bytes from 6553600 bytes)
Building .pio/build/m5stack-fire/firmware.bin
esptool.py v4.2.1
Creating esp32 image...
Merged 25 ELF sections
Successfully created esp32 image
I also tried this command to find the right certificate. Tried both but did not work either.
openssl s_client -showcerts -connect “Iothubname”.azure-devices.net:443
I mean this in regards to the serial output. The TLS client should at least print to which exact host+port it wants to establish the TLS conenction to.
If you have openssl
installed (also downloadable for windows), you can use
openssl s_client -connect “someserver.com :portnumber” -showcerts
to have a look at what root certificate it sends.
saeniv
November 19, 2022, 8:04pm
6
That is strange, I dont get any information from the TLS Client. Log at the end.
I also tried this command to find the correct certificate. Tried both from the command reply, but non was working.
Connecting to WiFi..
[ 1501][D][WiFiGeneric.cpp:929] _eventCallback(): Arduino Event: 0 - WIFI_READY
[ 1694][V][WiFiGeneric.cpp:97] set_esp_interface_ip(): Configuring Station static IP: 0.0.0.0, MASK: 0.0.0.0, GW: 0.0.0.0
[ 1693][V][WiFiGeneric.cpp:338] _arduino_event_cb(): STA Started
[ 1759][D][WiFiGeneric.cpp:929] _eventCallback(): Arduino Event: 2 - STA_START
[ 1854][V][WiFiGeneric.cpp:360] _arduino_event_cb(): STA Disconnected: SSID: HH40V_5E96, BSSID: 94:27:90:e4:5e:96, Reason: 202
[ 1977][D][WiFiGeneric.cpp:929] _eventCallback(): Arduino Event: 5 - STA_DISCONNECTED
[ 2069][W][WiFiGeneric.cpp:950] _eventCallback(): Reason: 202 - AUTH_FAIL
[ 2148][D][WiFiGeneric.cpp:966] _eventCallback(): WiFi Reconnect Running
[ 2228][V][WiFiGeneric.cpp:97] set_esp_interface_ip(): Configuring Station static IP: 0.0.0.0, MASK: 0.0.0.0, GW: 0.0.0.0
Connecting to WiFi..
[ 2416][V][WiFiGeneric.cpp:353] _arduino_event_cb(): STA Connected: SSID: HH40V_5E96, BSSID: 94:27:90:e4:5e:96, Channel: 1, Auth: WPA2_PSK
[ 2482][V][WiFiGeneric.cpp:97] set_esp_interface_ip(): Configuring Station static IP: 0.0.0.0, MASK: 0.0.0.0, GW: 0.0.0.0
[ 2527][V][WiFiGeneric.cpp:360] _arduino_event_cb(): STA Disconnected: SSID: HH40V_5E96, BSSID: 94:27:90:e4:5e:96, Reason: 8
[ 2525][D][WiFiGeneric.cpp:929] _eventCallback(): Arduino Event: 4 - STA_CONNECTED
[ 2875][D][WiFiGeneric.cpp:929] _eventCallback(): Arduino Event: 5 - STA_DISCONNECTED
[ 2967][W][WiFiGeneric.cpp:950] _eventCallback(): Reason: 8 - ASSOC_LEAVE
[ 3101][V][WiFiGeneric.cpp:353] _arduino_event_cb(): STA Connected: SSID: HH40V_5E96, BSSID: 94:27:90:e4:5e:96, Channel: 1, Auth: WPA2_PSK
[ 3193][D][WiFiGeneric.cpp:929] _eventCallback(): Arduino Event: 4 - STA_CONNECTED
[ 3208][V][WiFiGeneric.cpp:367] _arduino_event_cb(): STA Got New IP:192.168.1.240
[ 3369][D][WiFiGeneric.cpp:929] _eventCallback(): Arduino Event: 7 - STA_GOT_IP
[ 3454][D][WiFiGeneric.cpp:991] _eventCallback(): STA IP: 192.168.1.240, MASK: 255.255.255.0, GW: 192.168.1.1
Connected to Wifi!
1668887928
IoTHubClient_CreateFromConnectionString Ceated
Setup Fertig !
Sending telemetry {"soil_moisture":166}
Senden Fertig !
Error: Time:Sat Nov 19 19:58:57 2022 File:.pio/libdeps/m5stack-fire/AzureIoTUtility/src/adapters/tlsio_mbedtls.c Func:on_underlying_io_open_complete Line:191 Failure in ssl handshake has the server certificate been added?
Error: Time:Sat Nov 19 19:58:57 2022 File:.pio/libdeps/m5stack-fire/AzureIoTProtocol_MQTT/src/azure_umqtt_c/mqtt_client.c Func:onOpenComplete Line:454 Error: failure opening connection to endpoint
Sending telemetry {"soil_moisture":162}
Senden Fertig !
Sending telemetry {"soil_moisture":158}
Senden Fertig !
Can you upload your project, but wihtout the secret parts of the connection string?
Or can you modify the code so that it prints to which server + port it wants to connect so that we can check the root certificate it uses?
saeniv
November 19, 2022, 8:35pm
8
I will upload my project-folder to a shared Dropboxfolder and clear wifi and azure key.
Thank you for your help.
Shared with Dropbox
Thanks, will read about it.
saeniv
November 21, 2022, 11:29pm
9
How would I do that? I searched for he esp-tls library, but i still don’t know how to output tls log, because the used function is inside the Azure Iot Library ( well hidden).
The easiest is to look for the caller, not deep in the library – it’s in the Azure libraries somewhere that decide to what server + port to connect based on your connection string.
I still have to take a look later.
saeniv
November 28, 2022, 11:03am
11
I looked for it on the weekend, but did not find it. I found out that the function ends in the esp32_ssl library, but from there I am blind.
The certificate is inside the certificate variable, I printed it on the serial port to make sure it’s there, but the function that tries to establish the connection can’t find it.
Maybe someone knows what needs to be done, I will try it again on the next weekend.
saeniv
December 1, 2022, 1:12pm
12
So after reading through every failure message. I found a solution for my problem.
opened 11:24AM - 01 Apr 19 UTC
closed 06:25PM - 19 Apr 19 UTC
bug
**STM32F429Zi Embedded hardware with ethernet**
**FreeRTOS mbedTLS**
**SDK Ver… sion (1.2.14)**
Release 2019-01-31
**Protocol**
MQTT
**Describe the Bug**
Hello there....
I was using Azure SDK version with STM32F429Zi Nucleo board since 1-2 month having SDK version 1.2.10. then after suddenly from past 2-3 days I'm getting the error "mqtt_client timed out waiting for CONNACK" in **iothubtransport_mqtt_commom.c** and that's why i'd decided to update the SDK and I'd moved on 1.2.14
After updating the sdk I'm getting same error and board is unable to connect with Azure!!!
I have all default config.
**Console Logs**
Here is the logs of my setup
error ..\..\..\..\..\..\Middlewares\Third_Parties\Azure-IoT-SDK-C\iothub_client\src\iothubtransport_mqtt_common.c: line 2195
error ..\..\..\..\..\..\Middlewares\Third_Parties\Azure-IoT-SDK-C\c-utility\src\optionhandler.c: line 238
error ..\..\..\..\..\..\Middlewares\Third_Parties\Azure-IoT-SDK-C\c-utility\src\xio.c: line 187
error ..\..\..\..\..\..\Middlewares\Third_Parties\Azure-IoT-SDK-C\c-utility\src\optionhandler.c: line 238
error ..\..\..\..\..\..\Middlewares\Third_Parties\Azure-IoT-SDK-C\iothub_client\src\iothubtransport_mqtt_common.c: line 1940
Can any one advise me here
Thanks
All certificates are in the variable certificates, so you can print it on the serial port, but it’s not set.
If you use the function below, it’s set and connects with the Azure Iot Hub
IoTHubDeviceClient_LL_SetOption(whateveryourhandleis, OPTION_TRUSTED_CERT, certificates);
The Iot-For-Beginners does not include this line, just add it and everything works.