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
Dear All,Our work is focused on the STM32 WL55JC1 board!What we would like to achieve is use its RF transceiver as W-MBus.It seems that WL55 is suitable for WM-Bus since its transceiver supports the appropriate frequencies and modulations for such purpose.Still I was not able to find any example code so that WL55 can be used with WM-Bus and trying to do it from scratch seems difficult for someone not that experienced.Looking at X-CUBE-SUBG1 package there are lots of examples for WM-Bus but they target the SPIRIT1 and S2-LP transceivers.I was thinking to manually integrate the WM-Bus example code (X-CUBE-SUBG1) to WL55 but I guess it will not work out-of-the-box since it is equipped with another transceiver (I think Semtech).I wanted to ask if anyone is aware of an example code to use WM-Bus with WL55 or if anyone can provide a suggestion/help to this direction! Thank you!
Hi everyone, I'm facing a problem with my STM32WB1MMCH6TR. After performing an OTA update, the power consumption jumps from 120µA to 2.5mA, which is significantly higher than expected. Interestingly, the power consumption returns to normal after I power cycle the board.I'm uploading the exact same code that is currently running on the MCU, so there shouldn't be any code changes causing this. Has anyone encountered a similar issue or have any suggestions on what could be causing this behavior?I appreciate any help you can provide.Tadej
I have five identical development boards that I am attempting to bring up. One of the boards works without issues. The other four all fail during MX_LoRaWAN_Init(), After digging a little deeper I found that the SubGhzSPI peripheral is never getting enabled. For non-working boards:After calling MX_SUBGHZ_Init() all of SPI3/SubGhzSPI registers show 0x0 and I unable to change the values by writing to them.And this is what I see with identical firmware on the working board after MX_SUBGHZ_Init():All of the other peripherals seem to be working correctly (I2C, ADC, SPI) but I cannot configure or enabled the SubGhzSPI (SPI3). I noticed the SubGhz SPI is the only peripheral on APB3. Is there any way to reset, reconfigure or test APB3? Note: I am using the Seeed Wio-E5 STM32WLE5JC
Can someone confirm that the STM32WB10CC does not come pre-programmed with the BLE stacks? I'm assuming they are not pre-programmed, because I've used FUS in STM32CubeProgrammer to see if I can Start Wireless Stack. When I do, a message pops up stating that an image was not found. If my assumption is correct, does anyone have a better way than STM32CubeProgrammer to program the stacks for production on a custom STM32WB10CC board? It seems to me that the binary output from CPU1 and the stack binaries for CPU2 can be linked and placed in a common binary for a single download at a CM. Thanks!
In the documentation for STM32WB09 it is written that the output impedance of the chip is 40 ohms. It is also written in the document AN5526 on page 5. And in the documentation for MLPF-NRG-01D3 chip it is written: Transmission line between STM32 and MLPF is dimensioned to 57 ohms characteristic impedance.What should be the impedance of the transmission line between STM32 and MLPF?And another question, in the same AN5526 document it says that the thickness of the double layer PCB should be 0.5mm.At the same time there is a two-layer board STEVAL-IDB012V1. Does it really have a board thickness of 0.5mm? If the thickness is 1.5mm, can 1.5mm boards be used with the STM32WB09 chip?
HiI am trying to interface the STM32WLE55x lora module to a pulse counter. when I tried with interrupt as a counter (as i have to count the pulses!!!) its taking 123mA current at the time of sending the data to server and on ideal condition it is taking around 5 to 6ma!!!! This seems very high for me. I am trying to develop this on a battery so it will kill my battery. I have tried using LPTIM with LORA wan but its not taking as interrupt for LPTIM even the LORA is getting connected or unconnected, the interrupt is not performing tasks what it suppose to. any one have idea to reduce current in interrupt mode or how to enable LPTIM interrupt so it can perform the tasks. Thanks
I'm working on a project with the STM32WL55JC microcontroller. Before testing the LoRaWAN_FUOTA_DualCore application, my LoRaWAN setup was functioning correctly with all example applications.However, after flashing the LoRaWAN_FUOTA_DualCore application, I noticed that only this application is working. While other applications like LoRaWAN_FUOTA, LoRaWAN_End_Node, and LoRaWAN_End_Node_DualCore are functional in terms of peripherals, my device is unable to connect to the LoRa gateway.Could you help me understand why it’s only working with the LoRaWAN_FUOTA_DualCore application?
I 've made a realy simple app for testI'm using only 1 i2c and 1 spi and 1 gpio as input and 2 as outputI've set all unused gpio to analog to lower currentafter init it starts advertising and goes in STOP2 mode for 10 secI can see after the boot around 10µA of minimal current with spikes every 800ms witch is my advertising periodafter 10sec RTC wakes up CM4 it cancel advertising and goes OFFbut when it goes off it draws around 1mA and some time with litles spikesto solve I've try several things when entering OFF mode in PWR_EnterOffMode :- I've cut all clocks for spi/i2c/ipcc and and shut down C2 (CM0)HAL_IPCC_DeInit(&hipcc);HAL_I2C_DeInit(&hi2c1);HAL_SPI_DeInit(&hspi1);LL_AHB1_GRP1_DisableClock(LL_AHB1_GRP1_PERIPH_CRC);LL_PWR_DisableBootC2();- I've set all gpio to pull-down to avoid artifact on other of board's IC- set all gpio as output and lock them using LL_PWR_EnableGPIOPullDown() to avoid relaxing gpio when going offbut I have no results and lacking of ideaIf anyone h
I've looked through many examples (in particular p2p client ) but I can't find any that sends payload that's made of array ```uint8_t pPayload[] = {0xFF, 0x01, 0x00, 0x05, 0xAA};uint8_t payloadLength = sizeof(pPayload);ret = aci_gatt_write_without_resp(aP2PClientContext[index].connHandle, aP2PClientContext[index].P2PWriteToServerCharHdle, payloadLength,&nbs
Hello,I have developed a custom board around the WB5M and I am working on adding OTA support to it using the sample code from CubeWB -> Projects -> NUCLEO-WV15CC -> Applications -> BLE -> BLE_Ota.I have modified this code to use CMake (following the pattern of my app firmware which is customized from a template CubeMX / CMake application) and then made the changes to the sample app to use stm32wbxx_hal_driver and CMSIS_device_wb with STM32WB5Mxx defined. I have turned off CFG_LED_SUPPORTED and CFG_BUTTON_SUPPORTED since there is no BSP associated with my custom board.So far the code compiles, flashes, and seems to be trivially working -- e.g. I can use a BLE app to see advertisements for BLECore with Local Name STM_OTA with the manufacturing data in the advertisement. I can connect/disconnect to the device, though no services are advertised (I believe this is 'normal' OTA behavior?). I have not yet connected an OTA app to attempt a firmware fla
Good day, We have a battery-operated device using the STM32WL55.The battery voltage is regulated to 3.6V as supply to the STM32.We have found when the battery runs flat, the STM32WL5 would often need to be reprogrammed. This doesn't happen when we plug the battery out. The below is the 3v6 power rail when I turn the input down to 1.4V. Our MCU brown-out is set to default. Any suggestions of what might be happenign or what we need to look at?RegardsDouglas
Yesterday evening I worked on an application for a Nucleo-WL55JC and STM32CubeIDE could connect to the ST-LINK just fine. I closed my PC and this morning started it again. I am trying to upload code to the CM0Plus core and now I am getting the following error: Target unknown error 32Error in initializing ST-LINK device.Reason: Unknown. Please check power and cabling to target. Things I did to diagnose and solve:I have checked the USB cable which is perfectly fineI changed for another USB cable which did not change the situation.I used a similar Nucleo board which was never used and got the same error.I checked the settings in the debug configuration. All seems fine.I tried to access and erase the chip with STM32CubeProgrammer -> THIS WORKS FINEI made a new project and tried connecting to the chip with STM32CubeIDE. This does not work.I tried to upload code to the CM4 core and this worked. Does anyone know how to solve this? I am on a very tight deadline an
Hello all,I want to use the STM32WB5MMG module for a project which requires an RTC.The datasheet states the module integrates a 32.774 kHz LSE crystal. That seems a bit strange to me because the standard clock for LSE is normally 32.768 kHz. Checking the reference manual RM0434 there does not seem to be any reference to using a 32.774 kHz clock.I would like the RTC time to be as accurate as possible, is 32.774 kHz ok to use for the RTC? I guess I would need to somehow offset the faster clock to keep correct time.Here are some calculations I did, which I have no idea if they are correct.It seems that a 32.774 kHz clock divided by 2^15 = 1.000183105.That equals 0.001000183 ms offset from the ideal 1 second per clock period.Multiply by the number of seconds in a day, 0.001000183×86400 seconds = 86ms offset per day.If you have any thoughts on the matter, let me know!Thanks!-Eric
Dear ST Support Team,I am working on a project using the STM32WB5MM module, where I am trying to create a custom BLE service under Server mode, and also enable FreeRTOS for task management. However, I’ve encountered an issue where the Custom Server option in STM32CubeMX disappears when I activate FreeRTOS.Here’s a summary of my setup:Microcontroller: STM32WB5MMSTM32CubeIDE Version: 1.16.0BLE Middleware: STM32_WPAN (BLE stack enabled)RTOS: FreeRTOS (latest available in STM32CubeMX)When FreeRTOS is not enabled, the Custom Server option appears normally, allowing me to configure a custom BLE service. However, as soon as I activate FreeRTOS, the option disappears from the BLE Server mode configurations. I have ensured that the BLE stack is configured properly and that I am using the peripheral role for BLE.I have also checked memory allocation and attempted to adjust heap sizes, but the problem persists. Could you please advise on why this conflict occurs and how I can enable both Fr
Hi there.I'm trying to use the STM32WB0 (NUCLEO-WB09KE) in HCI Controller mode with our Bluetooth Stack: https://github.com/bluekitchen/btstack/I found the BLE_Transparent application in the STM32WB0 Firmware package which provides HCI over the virtual Serial Port of the ST-Link.This works until a connection is established. Then, the ST BLE Stack initiates an ATT MTU Request and informs us via a custom HCI Extended Event.How can I disable the included BLE stack in the BLE_Transparent example and use the STM32WB0 with an external Host Stack?Thanks, Matthias Ringwald, BlueKitchen GmbH
I've found something curious in the code generated by CubeMX for a BLE application on STM32WB. In APP_BLE_Init we have this:/** * Do not allow standby in the application */ UTIL_LPM_SetOffMode(1 << CFG_LPM_APP_BLE, UTIL_LPM_DISABLE);My understanding is that this prevents CPU1 from going into standby while CPU2 is booting. Then, in APPE_SysUserEvtRx, we have this:UTIL_LPM_SetOffMode(1U << CFG_LPM_APP, UTIL_LPM_ENABLE);Again, my understanding is that this is in response to a message from CPU2 indicating that it has finished booting, so standby mode can once again be enabled.However, what I've just noticed is that these two calls use different IDs (the first disables standby mode for CFG_LPM_APP_BLE, and the second enables it for CFG_LPM_APP). The effect is that standby mode is never re-enabled when CPU2 finishes booting.These are the only two calls to UTIL_LPM_SetOffMode in the generated code, so it seems unlikely that the change in ID is intentional--why would we see exact
How to erase STM32WLE5JC so that I can put my binary in the Seeed Studio Wio-E5 module. Web says changing the lock bit from hex value of ??? to ???. Where can I set it? TIA
Hello STM32 community, I'm currently working on implementing Zigbee applications on my STM32WB55 Evalution boards, and I'm looking to create custom clusters. I've gone through the documentation custom-clusters, but I'm a bit confused about the procedure. Could someone please guide me on how to create custom Zigbee clusters on STM32? Is there any GUI cluster configurator tool available in STM32CubeIDE?Any step-by-step instructions or examples would be greatly appreciated.Thanks in advance!Best regards,Naani Ch
Hi,I'm working on implementing attribute reporting on the Zigbee STM32WB55 Evaluation boards. I've attempted to configure attribute reporting in the Zigbee_DevTemp_Server_Coord and Zigbee_DevTemp_Client_Router baseline examples. However, I encountered an issue on the server side where I am unable to perform the Write operation on the attributes. ([DEV TEMP]Failed to initialize initial Temperature) During my investigation, I came across two APIs, namely ZbZclAttrReportKick() and ZbZclClusterReportCallbackAttach().Interestingly, without using ZbZclAttrReportKick(), the report callback implemented on the router side is not being triggered. I'm curious about this behavior. The comments suggest that the application might disable automatic periodic reporting, but I'm unsure why this is happening.Is it not possible to receive the callback output on the client side without calling ZbZclAttrReportKick()? Here are the comments on ZbZclAttrReportKick(); /** * This
I've been having a lot of trouble getting all of the online BLE examples to work and was hoping someone could steer me in the right direction. In every example they state that the RFWKP Clock Mux should be set to LSE but whenever I do that the main loops runs once then hangs somewhere in MX_APPE_Process() but I'm not sure where. Interestingly if I setup a timer and ADC (to give it something else to do) that part works just fine - my ADC loop just reads a few values every second then toggles and LED. If I set the RFWKP Clock to HSE then it seems to work fine. I thought it was a problem with my custom board but this happens with the P-NUCLEO-WB55 board as well.I'm using STM32CubeIDE version 1.14.1 and have the latest version of the FUS and wireless stack installed.
Hi , I see in the Datasheet in Table 31 some reciever parameters .I need to know what is the Dynamic Range of the Reciever in the STM32WLE5 . can you point me to which parameters should I look at ? Thank youViola
hi, I have two B-WB1M-WPAN1 cards and I would like to create a program that works as a client server, so one card will act as a server and then other client cards will send messages to it via BLE, I saw the example proposed by the company "BLE_HR_p2p_Sensor" which might look like what I want to do but I haven't quite figured out how it all works.Where can I find, for example, a complete file with commands useful for BLE transmission?Then if you have any advice they are welcome, I would also be curious to understand how the connection through the application from the phone to the card works.
Hello, I have a question regarding having both library (from the example files) SubGHz and LoRaWAN on the same microcontroller STM32WL5MOC at the same time and my idea is to use a switch to choose which on i would like to use depending in the case of use.
Hello,This message is for ST team.I attended the webinar on STM32WB0 MCUs, but I didn't receive the e-mail that was supposed to follow, including the links, recording and voucher for the demonstration board.What happens ?PS: I'm posting here because I'm having trouble connecting to online support.
Hi , in the Datasheet there are few interfaces which are marked as "alternate functions" for DEBUG_RF or DEBUG_SUBGHZSPI. ( Table 20 in the Datasheet)But , I didnt find any info regarding what can I use those function for ? for example - Can i access this SPI from external pins ? is there additional Info regarding those debug capabilities and what each signal is used for ? ThanksViola
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.