Important changes to forums and questions
All forums and questions are now archived. To start a new conversation or read the latest updates go to forums.mbed.com.
6 years, 4 months ago.
STM32L475E-IOT01A1 Heap Size
I am having an app
1) Interfacing UART4 to a board to get some data 2) Publish it to Aws IoT Cloud using MQTT+mbedtls Till this point app works correctly
but I wanted to send onboard (STM32L475 IoT NODE) Sensor data. I tried for only one sensor (part 1)+2) ), I am facing memory problem
/*******/ [DBG ][TLSx]: ssl_cli.c:3240: |1| mbedtls_pk_sign() returned -17168 (-0x4310) [ERR ][TLSx]: mbedtls_ssl_handshake() failed: -0x4310 (-17168): RSA ERROR: rc from TCP connect is -17168 /******/ (which was resolved in the post https://os.mbed.com/questions/81718/Project-Mbed-to-AWS-IoT-on-DISCO_L475VG_/#answer14911)
I tried for "main-stack-size": 3584 but still same problem.If I go below this size I see stack overflow.
Is there any other way to solve this.
1 Answer
6 years, 3 months ago.
Hi, I don't know if this works for you but if you need to reduce memory consumption, you can remove easy_connect from the sample program and directly use ISM43362 Wi-Fi driver. This will reduce 1-2 kB RAM usage. To do this,
- Remove easy_connect library from your project
- Add wifi-ism43362 library (https://github.com/ARMmbed/wifi-ism43362/#e847364be04499dc91d9e99f0df2ba6ecf95cd20)
- In main.cpp, remove
#include "easy-connect.h"
and add#include "ISM43362Interface.h"
- Change the line around L. 83 in main.cpp
network = easy_connect(true); // If true, prints out connection details.
tonetwork = new ISM43362Interface(true);
Then compile your program and see the behavior.