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 everyone,I’m working on a BLE project using two STM32WB55 boards.My goal is to create a connection between them without using the ST BLE Toolbox App.One board is configured as a Custom Server (Peripheral), and the other as a P2P Client (Central).I want to ensure that I am properly connected to my server and receiving notifications.But I am not sure about how using:Start scanningIdentify the correct serverConnectDiscover servicesEnable notificationsReceive data Please without saying follow the P2p example, because I didn't catch it
Hi,We're faced to an issue in the RTC module. RTC registers: time, date and backup register aren't saved after power off ( we measured the VBAT supply is about 3v given by the supercapa), we used a magic number to ensure that data aren't reinitialized at each software startup: /** Initialize RTC Only */ hrtc.Instance = RTC; hrtc.Init.HourFormat = RTC_HOURFORMAT_24; hrtc.Init.AsynchPrediv = CFG_RTC_ASYNCH_PRESCALER; hrtc.Init.SynchPrediv = CFG_RTC_SYNCH_PRESCALER; hrtc.Init.OutPut = RTC_OUTPUT_DISABLE; hrtc.Init.OutPutPolarity = RTC_OUTPUT_POLARITY_HIGH; hrtc.Init.OutPutRemap = RTC_OUTPUT_REMAP_NONE; if (HAL_RTC_Init(&hrtc) != HAL_OK) { Error_Handler(); } /* USER CODE BEGIN Check_RTC_BKUP */ if(HAL_RTCEx_BKUPRead(&hrtc, RTC_BKP_DR0) == 0x55AA) { // Time and Date are OK return; } /* USER CODE END Check_RTC_BKUP */ /** Initialize RTC and set the Time and Date */ sTime.Hours = 18; sTime.Minutes = 4; sTime.Seconds = 0; sTime.SubSeconds = 0x
Hello, I flashed into WB55 FUS 2.1 and Wireless Stack V1.23. Then flashed BLE_p2pServer_reference.hex for an evaluation. But nothing happened. The device is not discovered. What is the problem? Something happened with the option Bytes after the upgrade?
I am developing using X-Cube-Matter v1.4.0.I imported the BLE_Ota project onto MDK Arm and built it, but the following error occurred and I was unable to compile it.../Core/Src/app_entry.c(28): warning: In file included from...../STM32_WPAN/app\app_thread.h(30): error: 'stm32wbxx_core_interface_def.h' file not found30 | #include "stm32wbxx_core_interface_def.h" Please tell me the cause.
i cant seem to really connect to my iphone after direct advertising i get a false print that i have connected Bonded device 0 / 1 - Public BLE address xx:xx:xx:xx:xx:xx -- here it prints my true iphone bluetooth mac addraci_gap_add_devices_to_list() status = 0x00aci_gap_get_bonded_devices = 0x00 (found 1 devices)aci_gap_set_direct_connectable (HIGH DUTY) = 0x00aci_gap_update_adv_data = 0x00Directed ADV to iPhone = Success>>== HCI_LE_ENHANCED_CONNECTION_COMPLETE_SUBEVT_CODE - Connection handle: 0x0- Connection established with Central: @:4f:17:21:ee:cb:2c- Connection Interval: 0.00 ms- Connection latency: 0- Supervision Timeout: 0 ms it isnt truly connecting because i get the same print when my iphone is off or is not in range why does this happen? i am using stm32wb15 nucleo boardi would love to get an example like thishttps://github.com/stm32-hotspot/STM32WB-Filter-Accept-List-Peripheralwhere the only change is that in static void adv_start(void)it uses directed advertisi
Hi,We're faced to a problem when dealing with LSE clock to handle RTC backup using a supercapa connected to the VBAT pin. The LSE configuration under STM32CubeIDE: The Clock Configuration function:void SystemClock_Config(void) { RCC_OscInitTypeDef RCC_OscInitStruct = {0}; RCC_ClkInitTypeDef RCC_ClkInitStruct = {0}; /** Configure LSE Drive Capability */ HAL_PWR_EnableBkUpAccess(); __HAL_RCC_LSEDRIVE_CONFIG(RCC_LSEDRIVE_LOW); /** Initializes the RCC Oscillators according to the specified parameters * in the RCC_OscInitTypeDef structure. */ RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSI|RCC_OSCILLATORTYPE_LSI1 |RCC_OSCILLATORTYPE_HSE|RCC_OSCILLATORTYPE_LSE; RCC_OscInitStruct.HSEState = RCC_HSE_ON; RCC_OscInitStruct.LSEState = RCC_LSE_ON; RCC_OscInitStruct.HSIState = RCC_HSI_ON; RCC_OscInitStruct.HSICalibrationValue = RCC_HSICALIBRATION_DEFAULT; RCC_OscInitStruct.LSIState = RCC_LSI_ON; RCC_OscInitStruct.PLL.PLLState = RCC_PLL_NONE; if (HA
Hi,i am currently trying to implement OTA Update capabilities in my own custom board based on a WB55CGU6.So i flashed the BLE_Ota app to its desired sectors. The bootloader is starting and spawning the BLE Update Service correctly.Now i take my custom app binary and flash it. After flash -> The new firmware starts properly and is running smoothly.Now i implemented sth like this:If a user button on my board is pressed (boot to OTA) it should boot to the OTA Loader.I have done this with the following code snippet:*(uint32_t*)SRAM1_BASE = CFG_REBOOT_ON_BLE_OTA_APP; NVIC_SystemReset();Now the device was doing a reboot, but it does not spawn my BLE OTA Update Service anymore...I checked the SRAM1 address 0x2000000 and there is a 01. After hard debugging this stuff somehow with blinking an LED on the board (from the OTA Firmware) i figured out that it seems to get stuck at the point where it waits for the SHCI / HCI command (wireless fw ready). This event never seem to happen :( so
Hi,what i need to do, if i want to build the Debug app of BLE_Ota Demo application (FW 1.23.0)If i import the BLE_Ota app there is only "Release".If i now click on Debug as STM32 Application, the fw is uploaded but then in the Breakpoint i just get the following:In this video: https://www.youtube.com/watch?v=mRzZOa3jmuM&t=389sthere seems to be a "Debug" config for this project - But i can not see this in my IDE.
Hi,I want to make my custom ota project and i wanted to know Is there a ioc file for the BLE_ota example? or does anybody know how to extract that example from the FW_WB examples, there are lot of files and examples i dont need and the structure of the example is very messy.Thank you
Hello STM32 Community,I accidentally erased the full firmware on my STEVAL-PROTEUS1 board (STM32WB5MMG). After that, I followed this process to recover:FUS firmware: Updated using stm32wb5x_FUS_fw.bin from STSW-PROTEUS (since FUS was missing in the other package).BLE Stack: Flashed stm32wb5x_BLE_Stack_full_fw.bin from FP-AI-PDMWBSOC.OTA Reference App: Flashed Proteus_BLE_FUOTA_reference.bin from FP-AI-PDMWBSOC.After these steps, Bluetooth worked fine — I could connect to the board via my phone.However, when I upload the user application PDMWBSOC.bin (from FP-AI-PDMWBSOC), Bluetooth stops working — it gets disconnected and doesn’t advertise anymore.I tried uploading the application using:STM32CubeProgrammerOTA method via the mobile appIn both cases, the same issue occurs.My Goal: I want to use the FP-AI-PDMWBSOC software pack to run the predictive maintenance application via BLE.Can someone please guide me on what might be going wrong or if any additional steps are needed after uploadin
Hello folks. How can I determine the BLE MAC address of my WB55 device's wireless stack?
Hello ,I'm trying to flash in the NUCLEO WBA52CG the basic code example available in STM32CubeIDE. I use version 1.19 with Windows. It was originally version 1.17 and was updated in 1.19.No issue to generate the code or build it. I then connected the NUCLEO WBA52CG and wanted to flash in the board.I got the failure message "No device found on target." Can anyone help me ?I added below a pictures of the connected board. Some leds ( green and red ones) are blinking but I don't know if it's OK or notThanks in advanceRegardsSerge
I'm trying my first Nucleo WL55JC2 dev board on my Macbook Air M2 (apple silicon). I am having an issue with connectivity. I have two of the same dev boards and multiple USB cables, and two USB ports on the Mac. All combinations give me the same result.I am able to upgrade the firmware on the board using STM32CubeProgrammer, so that shows that communication with the board via USB is possible. However, in STM32CubeProgrammer, I am not able to connect to it via STLink (with either JTAG or SWD) . . when I try SWD, I get the following output:09:07:10 : UR connection mode is defined with the HWrst reset mode09:07:10 : ST-LINK SN : 005200303234510A3335353309:07:10 : ST-LINK FW : V3J15M709:07:10 : Board : NUCLEO-WL55JC09:07:10 : Voltage : 3.25V09:07:10 : Unable to get core ID09:07:10 : No STM32 target found! If your product embeds Debug Authentication, please perform a discovery using Debug Authentication So it is reading information from the board...but can't go further.
Hello,I'm currently working on a medical project based on the STM32WB55. One of our key safety requirements is to be able to detect a maximum of clock-related error, including:Complete clock failuresMissed or irregular clock ticksFrequency variations or driftI’ve already enabled the Clock Security System (CSS) for both HSE and LSE, but it seems that CSS only detects complete clock failures (i.e., when the oscillator stops entirely). It does not catch more subtle issues like missed clock ticks or frequency deviations.My question is:Are there any known techniques or best practices to detect a wider range of clock anomalies on STM32WB55?Any insights, suggestions, or references would be greatly appreciated.Thanks in advance!
I am currently considering capturing and analyzing LE-Audio packets, but for that I need the LTK used for decryption.BLE Secure Connection pairing does not directly exchange LTK, so I do not know what it is, and I am having trouble.Could you please tell me how to output an LTK log by modifying the user source code?-------------------------------------------------------------------------------------------------------------[Srouce]https://github.com/STMicroelectronics/STM32CubeWBA.git[Project]Projects\STM32WBA55G-DK1\Applications\BLE\BLE_Audio_TMAP_PeripheralProjects\STM32WBA55G-DK1\Applications\BLE\BLE_Audio_TMAP_Central
Hi ST Community,I have developed a custom board based on the MB1720 HighBand HighPower A01 reference schematic (STM32WL series). On my custom board, I’m unable to debug the MCU — my debugger can’t connect to the target at all.I’ve double-checked the power rails (VDDRF, VDDPA, VDDRF1V55) and they seem fine.However, I’m not sure if I made any mistakes when replicating the debug interface or SMPS configuration.Could you please help me check:1.Is the debug circuit (SWD/JTAG lines, NRST, BOOT0) correctly implemented?2.Are the power supply and SMPS sections connected properly for the STM32WL to boot and allow debugging?3.Any common mistakes that could cause the debugger not to detect the target MCU?I’ve attached my schematic
Dear Team, May I know any hardware design guide exists for STM32WB55RG.Especially for the RF section and it's pch schematic and layout guidelines.RegardsHAI
After I upgraded the FUS version to v2.1.0.0, the STACK version was also upgraded to v1.23.0.3 accordingly, as shown in Figure 1. However, I found that after programming the firmware into the STM32WB55CGU6, I could no longer detect any Bluetooth signal.Is this a problem with the new version? I tested with two boards and encountered the same issue. When the FUS version was v2.0.0.3, the Bluetooth signal was working normally.I would like to downgrade the FUS version back to v2.0.0.3. How can I do this using STM32CubeProgrammer? I tried performing a full chip erase and re-downloading the stm32wb5x_FUS_fw.bin for v2.0.0.3, but both attempts failed.
Hi, i am currently trying to wrap my head around the OTA Application Update Procedure which STM32 recommends to do.So what i understand is:There is the BLE_Ota example (which basically should take another application binary and write it to some memory)This BLE_Ota app is located at 0x08000000 -> So the device should first enter the BLE_Ota app.The "real" application is then located at 0x08007000.I hope this is correct so far.Now i would have the question: Who is deciding now that we need a "jump" to address 0x08007000?I can not really find this in the BLE_Ota app somehow, but from my understanding the BLE_Ota app at some point in time should decide if it should go to 0x08007000 and let the real application run?Maybe this is also handled by some internals (or even the coprocessor?).I know that after a "upload" in the OTA_App is triggering a reset. But interesting for me would be: What is the flow after exactly this reset? Now the controller should end up in 0
Hello,I am working with an X-NUCLEO-WB05KN1 expansion board and I need to flash the default DTM firmware into the STM32WB05KN device.In the X-CUBE-WB05N package, I found the following folders:BLE_Transparent_Mode_STM32WB05_controller_onlyBLE_Transparent_Mode_STM32WB05_location_essentialEach contains SPI and UART .bin and .hex files.I tried flashing BLE_TransparentMode_UART_with_Updater_C_O.hex (the .bin did not work with CubeProgrammer), but my board does not respond to HCI Reset commands via UART.My questions are:Which exact DTM firmware is the default one preloaded on the WB05KN1 by ST for UART usage ?Where can I download this default DTM firmware (.bin or .hex) to restore the original configuration of my board ?Thank you in advance for your help.Best regards,Sheul
Hi, I am looking for a reference implementation whereby I need to generate a RF carrier wave with 2.45 GHz frequency and also need to variate the Tx output power levels. Is there a sample example to acheive this in Zephyr. My setup:- SW: Zephyr v3.7.0 - HW: NUCLEO_WBA55CG Thanks,
Hi all, I'm fairly new to programming an STM32 :) Is there a simple way of getting started with the above wireless development kit? The documentation on the product page isn't very helpful.
Hello,I am working on a project using the STM32WBA microcontroller and looking for a way to provide Wi-Fi connectivity in order to connect the system to a web server.I've read in several places across ST's website that the STM32WBA series supports OpenThread Border Router (OTBR).However, I couldn't find clear information on whether the STM32WBA can act as a standalone OTBR, or if it's limited to acting as a Radio Co-Processor (RCP) like some examples for the STM32WB series.Does anyone know if it's possible to use the STM32WBA alone as a full OTBR? Or would I need to connect it to an external host that handles the Wi-Fi stack?Any clarification or pointers to official documentation would be really appreciated!
Hi,I'm faced to a problem and i'm no more able using the FUS in order to update the BLE STACK: i get this error message: "FUS_STATE_ERR_UNKNOWN: Unknown error when i clicked on the START FUS button on the STM32CubeProgrammer tools (V2.13.0)we tried the action severals times and get same issue as shown in the attached screeshot. is it mean that the FUS was erased ? and in this cas how to flash a new one using JTAG ? Please give help to figure out this blocking issue.
Hello,I have STMCubeIDE version 1.17.0 on my computer.No issue to create a new project with Nucleo board STM32L073. However when trying to create a new project for Nucleo board STMWBA52CG, there is the following error message "Please login to download a software package. Go to Help__>STM32Cube updates --> Connection to my ST".This I did, and some updates were installed. However , even after restarting my computer, I still have the same failure message.Can anyone help me ?
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.