Get ready for the STM32 Summit 2026 | Online, November 3
Ask questions and discuss STM32 wireless solutions and their implementation for running Bluetooth LE, Zigbee, LoRaWAN applications.
Most recent activity
Hi Folks, I'm fancy of the STM32WL33. But it is yet not supported in the STM32CubeIDE 1.15.1. Is there an Add-On or when will it be supported? Thanks in advance
Hi,I am using BLE with FreeRTOS on STM32WB (dual core). I noticed that for BLE functionality, hw_timerserver.c is used, which is driven by the RTC timer. I have two questions about this:1) Since I am already running FreeRTOS, wouldn't it be better to replace this timerserver with osTimer - FreeRTOS timers? Or is there a specific reason why this is not a good idea?2) I am not sure how the RTC is connected with the IRQ Handler, but very often my program ends up in an unexpected interrupt area. Later, I found out it is related to the RTC_WKUP_IRQ_Handler. It seems this IRQ handler is not connected to hw_timerserver.c (I couldn't find this handler in the code, I only found HW_TS_RTC_Wakeup_Handler() and HAL_RTCEx_WakeUpTimerIRQHandler, but it seems the code never reaches these.Thank you!
Hello everyone,I am currently new to the STM32 environment. I am working with two b-L072z-LoRaWAN modules and I would like to establish peer-to-peer Lora communication between them. My goal is to configure one of the modules as a transmitter (TX) and the other as a receiver (RX) in order to send and receive messages, thus enabling a ping-pong communication between the two modules.I would like to know how I can modify the LoRa Ping pong program code tomake one module function as a master in transmitter mode and the other moduleas a slave in receiver mode.Any help or advice would be greatly appreciated.
Hi, where can I find the S2-LP chip library and examples on C. Also does STM provides any protocols with open code for frequency hopping and mesh based on sub-1 GHz external radio chip? I've found just sw package with gui to configure radio S2-LP and only for windows. I'm also happy to read any other open source solutions with frequency hopping and mesh support if you can recommend for me. Thanks in advance
Hello, I am using a P-NUCLEO STM32WB Bluetooth 5 and 802.15.4 Nucleo Pack including a USB dongle.While trying to update the FUS of the USB Dongle to set up a Thread network, I encountered several errors.Initially, I was able to connect in DFU mode, but after attempting the update, Windows no longer detected the USB dongle.I then used the ST-Link to try to perform the update, but encountered these errors:You can also find some informations related to the dongle.Is it still possible to recover the USB dongle? Any help would be appreciated,
Good morning,I am a beginner with the STM32 tools. I am working with the STM32WB5MMDK (Discovery Kit).To understand how it works, I decided to use the BSP example, but I can only see the code. I don't have a .ioc file that I could run with STM32CubeMX or STM32CubeIDE. Therefore, I don't understand how it is configured, and how the program can work without the configuration file.Does anyone know ?Thank you in advance for any help you can give me, Nour
Hello, I use a STM32WLE5CCU6 which is waked-up by its embedded radio module when a new LoRa message is received. As the wake-up reset the MCU, is the radio module resetted too ? Is there any way to get this message after the MCU wake-up ? Thanks in advance. MaxB1000ien
I have a "working" demo of the LoRaWAN_End_Node_DualCoreFreeRTOS. I have it connected to a gateway and see a new payload every 10 seconds as expected. However, it stops transmitting after so long (usually 2-3 minutes). All I can tell is I get an IRQ_RX_TX_TIMEOUT and LmHandlerSend() in LmHander_mbwrapper.c returns -2 instead of 0.
Sto usando questo microcontrollore stm32wl5moc e in particolare il core M4. Uso due funzioni in linea per leggere e aggiornare i valori delle mie variabili. Accesso alle variabili tramite puntatori. Quando sono in modalità di debug su Live Expressions, le variabili non aggiornano il loro valore. Potrebbe sembrare un problema di puntatore, ma non lo è. Se inserisco un punto di interruzione prima di chiamare la funzione per aggiornare la variabile sulle espressioni live, vedo i nuovi dati. Se non si imposta il punto di interruzione, i dati rimangono zero. Il sistema utilizza il sequencer.I'm using this stm32wl5moc microcontroller and specifically the M4 core. I use two inline functions to read and update the values of my variables. Accessing variables via pointers. When in debug mode on Live Expressions, variables do not update their value. This might seem like a pointer problem, but it's not. If I insert a breakpoint before calling the function to update the variable on live expressio
I am trying to implement a multicast LoRa Class 'C' network using the STM32WL.using Chirpstack.I have created multicast group in Chirpstack and i am sending messages from chirpstack using/api/multicast-groups/{group_id}/queue.But I am not getting any multicast messages to LoRa node. Is any setup/initializations required to at LoRa Node.I have tried in ABP and OTAA modes. Is there any example to setup LoRaNode for multicast reception with Chirpstack. please let me know if there is any example for multicast. I don't require FOTA. Kind regardsAmarnath
Hi, For my project I need to put a MCU STM32WLE5CCU6 in standby mode and configure several wake-up type : Wake-up pin 1 on PA0RTC wake-upRadio wake-up on a LoRa message received by the embedded Sub-GHz radio module of the MCU with the bit EWRFIRQ (reg: PWR_CR3)I can recognize the wake-up from : the pin PA0 with WUF1 (reg: PWR_SR1)the RTC with WUFI (reg: PWR_SR1) However, I can't find a solution to check that the MCU have been waked-up by the Sub-GHz radio module. Do you have a solution ? Other fact, every time the MCU is waked-up whichever the reason, the bit WUF1 is set when the wake-up on pin 1 is configured. Is it a bug ? Note : I reinitialize the flag of the wake-up pin 1 reason before putting the MCU in standby mode. Thanks in advanceMaxB1000ien
I've try and I think I understood STM32WB HeartRate Exemple and on a Nucleo board it works perfectlyI can go to stop2 and keep active advertising on CM0 and keep being connectable and it wakes CM4 when connection happensbut when I try on my own app it goes direct in stop2 mode and I've no advertising and no connectionI've set my device on HSE to keep it close as possible as the example but I use Server profile with CustomTemplate app (I've also try with CustomP2P with same results)Ive disable all DEBUG and UART option in STM_WPANI've set enable LPMas expected in app_conf.h I found : /** * Select UART interfaces */ #define CFG_DEBUG_TRACE_UART 0 #define CFG_CONSOLE_MENU 0 /****************************************************************************** * USB interface ******************************************************************************/ /** * Enable/Disable USB interface */ #define CFG_USB_INTERFACE_ENABLE 0 /***************************************************
Hi,I have a bluetooth keyboard. Obviously for the keyboard to be detected and used we need a bluetooth dongle and an OS that provides a bluetooth stack. This causes that at boot time the bios (UEFI), not having, bluetooth stack, is unable to detect my keyboard, and I am unable to use it for bios setup.To overcome this problem, HID proxy mode is needed, in which the Bluetooth stack runs directly inside the dongle and the usb announces itself as an HID device.I would like to try to implement this using WB55CG USB dongle as shown in the image above.At this point the questions:Is this goal achievable?Is WB55CG USB dongle upgradable from usb using dfu? Or only from SWD?Is there an example from the SDK that does this?If not, what examples should I start from to achieve the goal?What effort do you think such a thing requires?best regardsMax
Hi everyone.im trying to create a project with a LoraWan module that based on stm32wle5ccu6.(RAK3172).after compliting my ioc UI i build the project, on the building process i got this error./LoRaWAN/App/lora_app.c:33:10: fatal error: adc_if.h: No such file or directory 33 | #include "adc_if.h" | ^~~~~~~~~~compilation terminated.make: *** [LoRaWAN/App/subdir.mk:28: LoRaWAN/App/lora_app.o] Error 1make: *** Waiting for unfinished jobs...."make -j8 all" terminated with exit code 2. Build might be incomplete.17:24:44 Build Failed. 3 errors, 11 warnings. (took 4s.918ms)how i can solve this problem ?
I'm Developing a RF based communication between two LORA developments kits of STM32,Part.no:b-l072Z-LRWAN-1.I was using the USB stlink for a long time for debugging it.But suddenly the Built in STlink is not working.The Stlink LED(LD5) is toggling (While is stays high is a working board).Please Suggest me a possible way to solve the stlink issue or an alternate for the built in stlink to debug the Board.
We are using the STM32WB55MMG SIP module for a simple BLE application and came across the following behavior.The application is configured to use LSE as the clock source for RTC with medium drive capability as recommended by the data sheet. The LSE fails to start sporadically sometimes, due to which RTC related functions fail, due to timeout of function LL_RCC_LSE_IsReady. The issue can be replicated consistently if a drained battery with closed voltage measured at VDD is <3.2V.The BOR voltage value is set to reset level threshold of 1.7V The LSE startup failure was confirmed by probing LSE signal trough MCO pin. When LSE starts it is measured at ~32.76KHZ. Since the module comes packaged with LSE crystal and associated passives, we believe that the hardware design is proven Could anyone please provide some insight as to how we can resolve the issue, either by HW or FW?Also, is there anything that can be done in FW to recover from a failed LSE sta
Hi all,we're working on a project that involves the STM32WB5MM module that is supposed to provide OTA Update.While we got the ST OTA second stage bootloader firmware to work (including our application firmware), we encountered a couple of things:For one, we were using three STM32WB5MM-DK, which were behaving differently. We uploaded the stm32wb5x_BLE_Stack_full_fw.bin (V1.19.0) and FUS 1.2.0 to all of them to make sure that this wasn't causing the different behaviour. Still two of them ended up working properly, but the third guy does not perform the OTA update properly, even if they were using the exact same application firmware binaries. I could flash the binaries using the STM32CubeProgrammer and everything is fine, but when using OTA, something gets messed up with the third guy.Also, i had to repeat the stm32wb5x_BLE_Stack_full_fw.bin upload a couple of times for two of them. Otherwise they didn't show up in any Bluetooth Scan (tested with both, a Windows box and an Android smartph
Dear All,I am sharing the log from STM32cubeide and STM32cubeprogrammer. I need your help to figure out what went wrong. after debuggingI face this problem of not being able to connect to stm32wl. So I "full chip erase" is only option, then I being able to connect. Using ST Link V2 and STM32WLxx MCU.I'm just using these toolchain for 1 week only. -------------------------------------------------------------------STM32CubeProgrammer v2.14.0 ------------------------------------------------------------------- Log output file: C:\Users\hp\AppData\Local\Temp\STM32CubeProgrammer_a17580.logST-Link Server is running on port : 7184ST-LINK SN : 13002900130000544141514EST-LINK FW : V2J42S7Board : --Voltage : 3.24VSWD freq : 950 KHzConnect mode: Under ResetReset mode : Hardware resetDevice ID : 0x497Revision ID : Rev YDevice name : STM32WLxxFlash size : 256 KBytesDevice type : MCUDevice CPU : Cortex-M4BL Version : 0xC4 Memory Programming ...Opening and parsin
Hello and thank you in advance. I am trying to set up a nucleo-wl55jc1 to send UART data to a custom pcb I made. I will post both IOC files as well as the necessary code to help. I can send data one way (from the pcb to the nucleo) but the other direction, is not working. IOC file for nucleo, I am using usart1 for communication between boards, and usart2 for coms to PC for debugging. IOC file for custom hardware. Note that the uart pins were initially for the STLINK, however, due to some design changes, they are being used to communicate between boards. Here is the code for the receiver that just runs in main. Using the live expressions I can see the data coming in. int UART_ReceiveAndPrint(UART_HandleTypeDef *huart) { while(1) { if(HAL_UART_Receive(&huart1, rx_buff, 10, 1000)==HAL_OK) //if transfer is successful { __NOP(); // toggle LED // printf("received data\n"); //You need to toggle a breakpoint on this
Hello,I am developing a custom BLE app on a custom STM32WB55CEU6 board.I need it to periodically (every x seconds) wake up from stop2 mode, read FIFO of a sensor, process the data, go back to stop2 (CPU2 is advertising in the meantime). When a user connects via phone app, the processed data will be sent.I am not finished yet, but right now, my main() while loop looks something like this (pseudocode):while() { readSensor(); processData(); MX_APPE_Process(); } Forcing CPU1 into stop2 two the way it is implemented in the PWR_STOP2_RTC ( HAL_RTCEx_SetWakeUpTimer_IT(...) and HAL_PWREx_EnterSTOP2Mode(PWR_STOPENTRY_WFI) in the main while loop) seems to break the LPM, probably bacause WPAN itself requires RTC internal wakeup.So the question is, is registering and then managing (setting,...) the readSensor() and processData() functions in the sequencer as tasks a good approach to achieve lower power (?), since the sequencer then manages the power states autonomously if the L
Dear ST team, I have an issue with starting the USB bootloader with the STM32WB5MMG-DK and I am sure it is for lack of knowledge. The AN2606 states the following: and USB pins should be able to function as the following:The pattern 16 looks like like this:Thus by setting the BOOT0(pin) to HIGH it should enter the bootloader mode, the connection is similar as the one set for the Dongle or Nucleo baord here. The STM32WB5MMG-DK schematic shows that to set the BOOT0 HIGH, CN13 shall be shorted (Done with a soldered connector).Additionally the conenctor JP2 is shorted for the USB MCU. Whit these settings, the connection of the bootloader with the STM32CubeProg should be similar as explained here, but for some reason the Module does not go into bootloader mode. Instead it start right away with the user application that was already on the Module. I do not know what I am missing? Thanks in advance for the help.
Good day to all,I'm having an issue with a BLE characteristic on the STM32WB55. I have a characteristic that is a read only (it doesn't notify or indicate), and currently, it is just a counter that increments every second. I'm running a P2Pserver, with 1 service and 3 characteristics.When I read the characteristic with a client application on my desktop with BLE 5.1 it works (I also used my phone with BLE 5.1 and it also works).When I try to read on my laptop with a BLE 5.0, it will only read the characteristic when the Bluetooth connects but after that doing a read doesn't work at all.The only thing different is the Bluetooth version of my devices. Other than that I don't know what could be the cause.If anyone has an idea on how to fix this issue please help, because I expect this simple application to be backward compatible to BLE 4.2.I am using the most recent version of STM32cube and the most recent firmware package for my board.Here is how I initialized the characteristic &nb
Hello,We are working on a device based on a STM32WB5MM. The module has configured the SBSFU, the BLE OTA and the user application.We have defined some sections in the flash memory to store device data, like the serial number or the pin code used for pairing. The device operates correctly and when doing updates of the user application via OTA there is no problem. We have created the region just after __ICFEDIT_SLOT_Dwl_1_end__ :USER_DATA_region_ROM_start = __ICFEDIT_SLOT_Dwl_1_end__ + 1;However, when we wanted to update the wireles stack, that section has been deleted.In which region of the flash memory can we host device data that remains after updating the user application and the wireless stack?Best regards and thanks in advance.
I have multiple questions:1. Is there a limit on the firmware size in STM32WB series? If yes, what is the limit?2. Is there a limit on the firmware size of the OTA application in STM32WB series? If yes, what is the limit?3. I want to perform OTA at a different address, not 0x08007000. Is it possible?
Hi,I'm using STM32WL5 SoC in my lora project.I started from this example: "LoRaWAN_End_Node_DualCoreFreeRTOS".In my board, I have a problem at startup, CPU2 doesn't start after a simple pin reset (NRST).The only way is to switch power supply off, wait for all capacitors down, and switch on.I tryed to clear PWR_CR4_C2BOOT at startup, without success.This is where CPU1 wait forever: void MBMUXIF_WaitCm0MbmuxIsInitialized(void){while (pMb_RefTable->SynchronizeCpusAtBoot != CPUS_BOOT_SYNC_CPU2_INIT_COMPLETED){}} Can anyone help me?Thanks.
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.