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
Hello, I have configured a Zigbee network using an STM32WB55 MCU with 1 coordinator device and 5 end devices. However, since I cannot check whether the Zigbee connection is lost or not, I am resetting the end devices every 1 minute using NVIC_SystemReset();. Instead of this, I am looking for a function that checks the connection status. Is this possible? During debugging, I see that the static void APP_ZIGBEE_NwkForm(void) function is used for joining the network, but after joining the network, there is no check for whether the device is still connected. I would like to check if the device is still connected to the network after some time and if not, call the function to rejoin the network. Is there a variable or function available for this check? I would greatly appreciate your support.
Hi,I have used a custom board with an STM32WB55CG MCU to successfully connect to a Tuya Gateway and also a Homassistent/Zigbee2mqtt setup with the OnOff functionality.As next topic I wanted to add a color control functionility and tried several optins (Profile ID HA or ZLL) and several functions of the color control cluster (such as step_color_xy or move_to_color_xy).In my Homassistent, the board was successfully detected (already one step ahead of my trial with Tuya) and the clusters were detected correctly. However, sending any color request from the UI in Homassistent did not work and no command was received on my board (reading the Debug messages with UART), while the OnOff functionality was still there.Since the UI gives also the option, to send commands directly, I tried to send a command to my endpoint, with the cluster 0x0300 (Color Control) and 0x07/0x09 (move_to/step_color_xy) and an arbitrary payload (Zigbee2mqtt makes sure that the format is correct). Neither of t
Hi, I am currently working with the STM32WB5MMG MCU and looking for some insights regarding its power consumption. Specifically, I would like to know:What is the current consumption when the MCU is in STOP2 mode with the RTC enabled?If anyone has experience or data on this, please share your insights. Any references to documentation or practical measurements would be greatly appreciated.Thanks in advance!
Hi all,I check with STM32WBA55 datasheet have description can supported external PA. But FW SDK(STM32Cube_FW_WBA_V1.4.0) released notes exist below description. It look Known Limitations is not support EPA, usually need logic control between FEM and radio.Can you let's know, Which FEM PN be recommend and will be supported in SDK?Best Regards,Ethan Chen
Hello,First of all, a short text in order to present my problem :After reading all documents about the STM32WL55 and STM32WLE concerning the SubGhz and DMA, I don't find how can I use the DMA and DMAMUX with SUBGHZSPI_TX.Furthermore, I'm working on the board NUCLEO-WL55JC1. My goal and requirement :In fact, on the board NUCLEO-WL55JC1, I would like to send as fast as possible a short message trough the Subghz (LoRa) when the button 1 is pressed. So I think the best way is to use the DMA : the button pressed is the trigger, and using the DMA in memory-to-peripheral, in other words, send 3 bytes from memory (0x83 for Opcode of SetTx, 0x000000 for the timeou) to SUBGHZ module via spi interface.My analysis :According the RM0461, the table 72 list the assignement of multiplexer inputs to resources. At 47 DMA request MUX input, they is SUBGHZSPI_TX :My test :So I used the Ping-Pong example project. Even if the SubGhz module activate, I don't find any DMA or DMAMUX tab !&
I check the datasheet and it say that the output impedance os the STM32WB55 is 50 ohms , so i don't must need impedance matching but on the reference design have a pi-match circuit and a RF filter. Really the MCU have a 50 ohms impedance output or the pi-match is to adapt the impedance to the input of the RF filter?
Hello,I'm planning to use an STM32WL5X microcontroller in an upcoming project, and I found myself confused on the recommended impedance for external 32MHz oscillators. Please see the attached image for a screenshot from the datasheet.The datasheet says that the incoming clock signal needs a minimum of 0.4 Vpp, and an absolute max of 1.2 Vpp. Note 1 below the table says that oscillators outputting a 0.8 Vpp signal should have a 220 ohm resistor and 10 pF capacitor put in series before the oscillator input pin. The oscillator input has a minimum input capacitance of about 11 pF.If the input signal is 0.8 Vpp, and you make a voltage divider as described, the input signal is going to be way less than 0.4 Vpp. How is that supposed to work?? @Peter BENSCHand @HamiltonDC, I found other forum responses from you two on this issue, but I still don't understand the math behind this. How is the input signal wave supposed to be greater than 0.4 Vpp?
I am refactoring the BLE_OTA sample to work on the WB5M chipset for a custom board. I am moving the call to Delete_Sectors() from boot initialization time to when the OTAS_STM_WIRELESS_FW_UPLOAD characteristic write is performed so that I can erase different sets of flash pages (starting index and length) depending upon the context from which OTA is called rather than compiling in the starting index and page length to be updated.I have read through the previous concerns with flash erases during characteristics updates and call: aci_l2cap_connection_parameter_update_req(BleApplicationContext.BleApplicationContext_legacy.connectionHandle, 48, 48, 0, 400); upon connection establishment to establish a 60 ms connection interval to allow for sufficient flash erase time. I am using flash_driver.c from the BLE_OTA sample unchanged to perform the necessary SHCI_C2_FLASH steps.When I execute my code and attempt to erase 0x0B pages at offset 0x0800E000, I ca
I have been trying to interface stm32 - nucleo wb55rg development board with mems microphones using SAI interface but I am not even getting the clock on pins specified (PB8) when checked using a DSO, no data on data pin (PC3) either do to this I have selected Pulse Density Modulation using Microphone pairs(1-2) and CK1 as clock as the mode. For some reason the Add clock section has warning Add Clock conflict with SAI1 (SAI A) : SAI mode which I mentioned above. I am also not able to select CK1 in Add Clock as the option is red. All of the other settings are default when a new nucleo wb55rg project is created. As can be seen from the screenshot pins SAI1_CK1
I've interfaced my RFM95 LoRa module with the STM32L476RG Nucleo board, using the I-CUBE-LRWAN library to send uplink messages with dummy data and temperature values. However, I can't locate the .ioc file in the library to configure the pinouts for my external sensors. Could you help me find the .ioc file in this library, and let me know which file to modify to add sensor values and customize the payload?
HIWould like to know if advertisement data can be safely changed , while advertising using : ACI_GAP_UPDATE_ADV_DATA Safely meaning , the data is changed as a bulk, and the current advertisement will not show 'half' of the old data and 'half' of the new data while switching. or do I have to stop advertisement-> change the ad type-> start again ? Thanks!
Hello, many thanks for answering the first question. Are there products with the STM32WB5MMG module that are based, for example, on the reference design shown in application note AN5165 and that can be soldered by hand (similar to the ESP32 modules)? Best Regards,Edmund
Hello,I'm using nucleo-WBA52CG.Does anyone have a problem that when BLE advertising is started, execution is stuck in function llhwc_slptmr_get() ?Code is generated with CubeIDE 1.14.1 and WBA FW 1.2.0Stack trace attached.
I have a custom board which is based heavily on the P-NUCLEO-WB55.Nucleo. If I flash my board with a slightly modified version of BLE_Ota it will appear in ST BLE Sensor, at which point I can use it to flash my application. This works. After flashing the board will reboot and my application will run. I've added the reboot characteristic to my application, and I copied the TAG_OTA_START and TAG_OTA_END lines from BLE_p2pServer_Ota to my linker file. I also added the appropriate advertisement settings, and the reboot code: As a result, it shows up in ST BLE Sensor still and allows me to do a FUOTA update. However, if I try and upload the exact same file again the board will reset but the firmware update will fail (never goes beyond 0%). I can debug my design and set a breakpoint for when ST BLE Sensor reboots it: I am able to trace the execution all the way through the reset and back into the BLE_Ota code. I can see that the co
Hello everyone,I am looking for a USB Bluetooth/Zigbee module like the WB55CG USB dongle that is part of the P-NUCLEO-WB55.Can anyone tell me if the module is also available as a standalone product?If this is possible, can someone answer the following questions* Where can I find the Linux device drivers?* Are the sources of the module firmware freely available?* Is it possible to flash the module with my own firmware?Most of the modules I have already found are based on the TI chip I originally used.Since the TI chip already has a successor, I would like to continue with ST modules.Best regards,Edmund
I am using the LoRa Development board B-L072Z-LRWAN1 and it has got STM32L072CZ microcontroller .I want to write the Firmware Update over the Air (FUOTA) Application code to this board.Please share me the reference code links for the Bootloader code or send me the FUOTA application code for this if already availableThanks
Hi guys,I'm playing with STM32WL (the Nucleo-STM32WL55JC1 to be precise). Also I'm using the SX1303 LoRa gateway (it's a RPi Hat from Waveshare).Node is next to the gateway.When it comes to send of the data, it takes quite long from passing the send command to receive the IRQ from radio:58s735:MW DEBUG: SEND REQUEST60s381:MW IRQ radio process...The ADR is enabled, but anyway I've tried to play with DF, setting it to 5 and turning the ADR but without success.I plan to use this stuff for light the bulbs and drive the blinders and the 1.5 second for the transmission is a way to long.Is there any way to speed things up? Has anybody the similar issue? What's even worse - if we are waiting a 1.5 second for the IRQ it may cause a lost of loot of energy in case of battery powered devices.
Hello,If I have a design where I am not using the RF pins, is there a recommended way to terminate them? Can you just ground them all?Thanks
I'm executing the P2P Server on an STM32WB. I have a custom client that can be ported to different platforms. When I build the client for Windows-11, message exchanges greater than 20 bytes work okay. When I build and run on Android, the P2P response messages transmitted by the STM32WB as BLE notifications are received by the client truncated to 20 bytes. The aci_gatt_update_char_value() call to generate the notifications from the server returns successfully.I have CFG_BLE_MAX_ATT_MTU set to 300 and the P2P Notify GATT characteristic has a fixed length of 244.Any insight into what appears to be a negotiation problem between BLE stacks?
Hy, we struggle to get P-L496G-CELL02 up and running. We created a Cube IDE Software project and are able to send AT commands to BG96. Now we entered a plastic SIM from 1nce and try to connect. Unfortunately we can not select plastic SIM. There is a bus switch (U6) on BG96 board and we net to set signal Sim_select0 to "0".Sim_select0 is available on pin 18 of the 20 pin connector from BG96 board to STM32 board But on the STM32 board, Pin 20 and Pin 18 are connected. So whenever BG96 asserts the "Status" signal (which it does right after boot), embedded SIM is selected.Why is Pin 18 and Pin 20 connected on STM32 board? What do I need to do to select plastic SIM?RegardsHarald
Hello everyone, do ST actually plan to support STN (Time Sensitive Networking) on their wireless products ? For industrial applications this would probably be an interesting alternative to Profibus if it is robust enough :) Greetings,Andreas
I would like to know percentage of memory usage of the ROM and the RAM of the microcontroller from output file.note ** I use source from application example named BLE_p2pClient under the Projects directory of the STM32Cube_FW_WB_V1.2.0 FW pacakge.
My STM32WB55 is configured as I2C master and connected to an I2C slave.My I2C block is configured like this:I2C->CR1 = 0x01I2C->CR2 = 0x000A0060 (slave address=0x60 and NBYTES=0x0A)To start the I2C transaction I2C->CR2.START is set to 1.I2C communication starts, but at some point the slave send a NACK, this is expected. Then, my I2C block is stuck, I acknowledge the I2C_ICR_NACKCF flag, then send another START command. I2C block send START command on the bus but never rise the `I2C->ISR.TXIS` flag, it will never send anymore byte on the bus.An unexpected STOP is send right after the START.Here I can see a START command is sent on the bus and acked by the slave:How to recover from a NACK?Datasheet shows a diagram, if a NACK is received, state is `End` but what does it mean?stm32wb55rg_reference_manual.pdf, section 32.4.9 I2C master modeMy only workaround for now is to reset the I2C block. I attached the capture made with a Saleae device.Despite this NACK problem, it wor
Hi,Today I received a new board from a distributor and used the Hands-On_WS_WBA55 example for initial tests. Everything worked fine. A few hours later, I reconnected the board to the USB board and wanted to flash the firmware. Since then I get the error message:Error in final launch sequence:Failed to start GDB server.I have tried the usual procedures (plugging and unplugging, restarting the PC, reinstalling the driver), but unfortunately without success. I also have a NUCLEO-WBA52CG EVAL board and there are no problems with flashing.Please help!
I am trying to debug a sample project from st website and but it is stuck in the first line of main (assembly ) meanwhile when I flash the .hex with cube programmer , the project works perfectly. So I assume that it's a problem with the debugger.I made sure that he's selecting the correct .elf file but still not working I did respect all the readme steps.
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.