cancel
Showing results for 
Search instead for 
Did you mean: 

How do you install X-CUBE-AWS pack in STM32CubeMX?

Curtis.Allen
Associate II
  • I downloaded en.x-cube-aws_v2-0-0.zip
  • open STM32CumeMX
  • goto "Manage Embedded Software packages
  • select "From Local..."

The message says that the ZIP does not contain information it needs to install.

8 REPLIES 8
Guillaume K
ST Employee

X-CUBE-AWS is not a "CMSIS pack".

Just unzip the X-CUBE-AWS .zip file at root of c:\ and use STM32CubeIDE's "import" function to develop with it.

Curtis.Allen
Associate II

What if you don't use STM32CubeIDE for development?

I would like to pick this as a package to be included in a STMCubeMX generated "Makefile" project. Are any of the components like the Amazon FreeRTOS available as a package?

That package seems for STM32L4, I now use STM32F217+FreeRTOS and a developing project created by CubeIDE.

I am wandering the right way to integrate x-cube-aws into my project, any suggestion?

Are you talking of X-CUBE-AWS 2.0 ?

X-CUBE-AWS 2.0 is based on Amazon FreeRTOS. It is ported only on B-L4S5I-IOT01. It uses several features of B-L4S5I-IOT01 that will be difficult to have on STM32F217: STSAFE, WiFi, ... I don't think it's feasible.

Guillaume K
ST Employee

in X-CUBE-AWS 2.0 .zip file there are STM32CubeIDE and IAR EWARM project files.

Currently Amazon FreeRTOS is not available as a CMSIS package for STM32.

Thank you, Guillaume

Yes, I downloaded X-CUBE-AWS 2.0 first, and found the problems you mentioned. Then I also downloaded 1.4.1, but it seems ported to boards of 32L496GDISCOVERY, B-L475E-IOT01A, STM32F413H-Discovery, and STM32F769I-Discovery.

My project is already created by CubeIDE (STM32F217 proprietary board+FreeRTOS+LWIP+my application), and now to add AWS connectivity.

What I learned recently is both X-Cube-AWS 2.0 and 1.4.1 are zipped projects (they are ported to different ST demo boards), not install-able CMSIS component package to CubeMX.

So my understanding by now is I should port "aws-iot-device-sdk-embedded-C" to my own STM32F2 (or perhaps using STM32F4xx) project, is this correct?

Are you using ethernet as network device on your STM32F217 proprietary board ? In that case, you should have a look at the STM32F769I-Discovery project in X-CUBE-AWS 1.4.1. It uses Ethernet and LwIP.

The ethernet/LwIP initialization is in Projects\STM32F769I-Discovery\Applications\Cloud\AWS\Src\net_conf.c.

Also there is an adaptation layer in the ST generic network library : Middlewares\ST\STM32_Connect_Library\netif\ethernet_if\net_ethernet_driver.c.

And the network adaptation for AWS IoT C SDK is in Middlewares\Third_Party\AWS\platform\STM32Cube\aws_network_st_wrapper.c

check the functions iot_tls_init(), iot_tls_connect(), iot_tls_write(), etc. There are calls to net_socket(), net_recv(), net_send() ( ST generic network library API).

Thanks, Guillaume

Yes, ethernet

Let me check and follow up