Showing results for 
Search instead for 
Did you mean: 

How to migrate from STM32WL55 to STM32WLE5?

Associate III

I am building LoRaWan code using STM32CubeWL Firmware Package, which is set up for the STM32WL55. My own hardware uses the Seeed LoRa-E5 module, which uses the STM32WLE5. Code built for the STM32WL55 runs on the STM32WLE5, but I thought I should migrate properly. So far I have:

(a)   Changed the compiler flag from STM32WL55xx to STM32WLE5xx in Properties > C/C++ General > Paths and Symbols

(b) Deleted STM32WL55JCIX_FLASH.ld and replaced it with STM32WLE5XX_FLASH.ld

(c) Deleted startup_stm32wl55jcix.s and replaced it with startup_stm32wle5xx.s

The compiler raised a problem in usart.c, which I fixed by adding conditional compilation macros:

#if defined(DMA_CCR_SECM) && defined(DMA_CCR_PRIV)

// CGP these are defined for the STM32WL55 but not the STM32WLE5

   if (HAL_DMA_ConfigChannelAttributes(&hdma_usart2_tx, DMA_CHANNEL_NPRIV) != HAL_OK)




#endif   // #if defined(DMA_CCR_SECM) && defined(DMA_CCR_PRIV)

The resulting code builds and runs.

What else do I need to do? Search shows entries for "STM32WL55JCIx" in the .ioc and .cproject files. I have not tried to edit these. Do I need to?



I think this should be ok as did!