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
I have made the STM32 BootLoader OTA on a STM32WB35CE several months ago and now I'm facing with a problem to expand it. The initial OTA bootloader and an user App work well for me, but I want to merge the OTA bootloader with some more stuff and changing size of it to bigger than before. So it growed and the start addr of user App now is 0x800D000 (instead of 0x8007000), but it doesnt work. I have new constant address for magic number on 0x800D140 (instead of 0x8007140) on the user App ld file. On the OTA bootloader I modified the start vector:#define CFG_APP_START_SECTOR_INDEX (13) on the app_config.h file, and even I defined it on general preprocessor macros in the properties of project. I'm searching a lot to fix my problem, the problem is after connecting to OTA bootloader and after sending the user App, the user app dosn't start and it will return to Bootloader OTA and again advertises there. Could you please give me some tips about what I'm missing for t
looking for details on “VBAT, VREF+, VDDRF1V55, VDDPA, not listed in the datasheet, please advise.
Hi, have a nice day.I'm currently facing an issue on a custom board which uses the STM32WB55RGV6 MCU, with which BLE doesn't work.Browsing through forums I found the documentation for installing the ".bin" files needed to update the FUS and BLE_Stack, but I haven't been successful when trying to update the wireless firmware of the MCU.The project is created with the version STM32Cube_FW_WB_V1.16.0., therefore I have used the corresponding memory addresses and files from the STM32Cube_FW_WB_V1.16.0 folder. To upload code I use a J-link with the 6-pin connector and I can't use the WB section of CubeProgrammer as it is not supported for J-link.I would also like to know if it is necessary for the PH3-BOOT0 pin to be at 3.3V or GND in order to correctly load the files. I clarify that I have already done it in both ways without success.I have tried several ways (When I load the FUS first and then the BLE_Stack I verify that the files are in the previously loaded memory address, but it s
Dear All,let me ask for your kind support.I am able to debug a customized board equipped with STM32WLE micro by using the STM32CubeIDE program (Version: 1.3.0.20) with the connection to a ST-LINK V2 device.On a second PC I installed the STM32CubeIDE program version1.15.1, I am able to build a running program on the same customized board. I did also the Debug Configurations(the same parameters of the version 1.3.0.20) but I am not able to debug. After the compilation I get this final message on the consoleSTMicroelectronics ST-LINK GDB server. Version 7.7.0Copyright (c) 2024, STMicroelectronics. All rights reserved.Starting server with the following options:Persistent Mode : DisabledLogging Level : 1Listen Port Number : 61234Status Refresh Delay : 15sVerbose Mode : DisabledSWD Debug : EnabledTarget no device foundError in initializing ST-LINK device.Reason: No device found on target.Some seconds later a box appears with this further messageError in final launch sequence:Failed to e
Hi there, I'm currently trying to setup the STM32_Touchsensing library.I have already downloaded the library fromST(https://github.com/STMicroelectronics/STM32CubeWB/blob/master/README.md#how-to-use). How do I enable this Touch sensing library now that I have downloaded it Thanks!
Hi,I recently ran new code on the STEVAL-PROTEUS1 sensor kit. Before uploading the code, I was able to connect to the STBLE sensor app, but now I can't. I tried a full chip erase using the STM32 CUBE Programmer, and then I re-uploaded the software file (STSW-PROTEUS) through STM32 CUBE IDE. However, the code doesn’t seem to be working correctly because I still can’t connect to the app via Bluetooth. Additionally, after uploading the code, the green LED was on, but after cycling the power, the light no longer turns on.I’ve checked the memory addresses through the STM32 CUBE Programmer and confirmed that the code was uploaded. I also placed the stm32wb5x_BLE_Stack_full_fw.bin file in the address specified in the release notes, as mentioned in the readme.txt. I noticed some discrepancies in the flash memory sections and their start and end addresses in the datasheet of the STEVAL-PROTEUS1 kit (see the attached image). The BLE stack section appears different from the address mentioned on t
According to page 118 of stm32wb55ce frequency needs to be exactly 32 mhz with no option of holding any other value at all. However when in stm32cube ide the clock configuration tool lists 4-48 mhz as acceptable input frequency for HSE.Is the datasheet or stm32cube ide wrong?
Hello,I am using STM32WB55CEU6, when using EXTI callback with BLE and LPM enabled, the MCU never enters the desired STOP2 power mode. The callback triggers every 20 seconds and is used to set a task by calling UTIL_SEQ_SetTask(...).When a virtual timer is used (no EXTI callback) to set the task, MCU enters STOP2 when there is nothing to do, as expected.Is the EXTI callback behavior an expected behavior (does EXTI break the LPM)? Is this a consequence of the sequencer being not re-entrant?Thanks!
Hi,I use an STM32WB chipset for my device and my application reads sensor data and sends over the BLE when the device is connected. When the device gets disconnected then after 30 seconds it should STOP BLE advertisement and RF also, go to CPU sleep and wait for GPIO interrupt to wake. I have tested a development for CPU sleep when BLE is not enabled and it is working fine, The CPU goes to sleep and wakes on GPIO interrupt, but after enabling the BLE, it is not going to sleep. void cpu_sleep(){ if(cpu_running_status == BA_ENABLE){ cpu_running_status = BA_DISABLE; HAL_SuspendTick(); LL_PWR_SetPowerMode( LL_PWR_MODE_STOP2 ); LL_LPM_EnableDeepSleep( ); /**< Set SLEEPDEEP bit of Cortex System Control Register */ __WFI(); } } void cpu_wakeup(){ if(cpu_running_status == BA_DISABLE){ cpu_running_status = BA_ENABLE; HAL_ResumeTick(); HAL_Delay(10); } } Here I have added the snippet of code which is working fine without BLE
Hi, new to microcontrollers, I want to use an STM32WBA54 for the BLE and have it control: a class D amp, a Led strip What I need at this moment is to understand the connections I need in order to have the chips comunicate and work with each other. Once this is established, I will move forward into settings and programming. I chose the STM32WBA54 because the audio signal will be transmitted via Bluetooth and because it has a SAI interface which I need to connect to the AMP TAS5827 I guess. So basically the physical connections I need are: I2S (LRCLK, BCLK, DIN) between STM and TAS I2C (SDA, SCL) between STM and TAS --- this I am not sure of if needed and why A PWM output for the WS2812 Led strip Plus eventually 4 GPIOs between TAS and STM (Fault, Mute, Power Down, Warn) --- are these In or Out? and and ADC for an encoder to act as volume control. ohh and DEBUG (UART or I2C or SPI) Start wondering if the STM32WBA has enough pins Is this correct? any Help thanks
Hello Users, I test BLE with low power. measured current is 250uA when pcb power was on. After 10sec(INIT Advertising timeout) enter stop mode and measured current is 4uA. If EXTI1 detect raising edge, wake up from stop mode. set system_clock_config and normally act re-advertising. but measured current is 2.5mA. I expected to wake up in the same condition as the first time. Which document can I refer to to to solve this? I attached my project in google drive link. https://drive.google.com/file/d/1hlZh2q2eH-TDoElUJ05OjvQzDDG9fWRw/view?usp=sharing Best Regard.
If STDES-CBMLoRaBLE module is not available for sale then can one evaluate all the features of this module?
Hi All, I am trying to get a custom BLE and MEMS project running on the Nucleo-WBA52CG board - however looks like the STM32_WPAN middleware does not work properly also in the latest WBA software pack the applications folder for the board does not have any BLE applications (older versionSTM32Cube_FW_WBA_V1.0.0 - had those)I can build the older application and it works with the board - however since I need to add the MEMS libraries - regenerating with the new cube does not work. Any ideas on how to get this working - Wish there was an easier path than this version nightmare I am attaching the ioc file that I obtained from the 1.0.0 FW_WBA pack. I am using it with CubeMX 6.12.0 and FW_WBA version 1.4.1.The project does compile however the BLE advertisement does not seem to be working and I am unable to see it in the STM Ble toolbox. I Compiled the porject using STM32 Cube IDE Version: 1.14.0
I am designing a project using custom hardware that utilises the STM32WB55 to stream ADC values via DMA from which I want to process using a python script for gesture detection. I want to minimise the use of peer to peer communication and omit the use of a USB dongle to a computer for communication. There are not many resources that go into detail regarding how to communicate from the STM32WB55 to a PC as a peripheral as a continuous stream of information. What do I need to do to enable for host to peripheral communication to a computer using this set up if it is possible?
When running second core initialization, the program goes into HardFault on line "i_feature = *(i + p_MBMUX_Cm0plusFeatureList->Feat_Info_TableAddress);" The code was automatically generated by CubeIDE when opening the ST program "SubGHz_Phy_PingPong_DualCore"---------------------------------------------------------------------------------------------------------------------------------------------------------mbmux.c static uint8_t MBMUX_CheckIfFeatureSupportedByCm0plus(FEAT_INFO_IdTypeDef e_featID){int8_t ret = 0;uint8_t i;uint8_t cm0plus_nr_of_supported_features;FEAT_INFO_Param_t i_feature;/* USER CODE BEGIN MBMUX_CheckIfFeatureSupportedByCm0plus_1 */ /* USER CODE END MBMUX_CheckIfFeatureSupportedByCm0plus_1 */ if (p_MBMUX_Cm0plusFeatureList != NULL){cm0plus_nr_of_supported_features = p_MBMUX_Cm0plusFeatureList->Feat_Info_Cnt;for (i = 0; i < cm0plus_nr_of_supported_features; i++){i_feature = *(i + p_MBMUX_Cm0plusFeatureList->Feat_Info_TableAddress);if
Hi,I am trying to make a simple BLE service with a custom characteristic descriptor and UUID (128 bit) has anyone got any good examples of this?The reason I ask is when I running a BLE server to advertise the characteristics always just seem to show the same UUID number (generic) with no descriptor on my phone? I have tried several different UUID's and descriptors yet it still shows the same generic UUID & Characteristic/Descriptor? Thanks!
Hi, I'm trying to use the STSAFE-A110 to store my LoRaWAN keys, to generate session keys and to encrypt my payloads through it.I'm supposed to send commands to the secure-element but for the symetric encryption, neither the datasheet nor the source code gives us the command to send.Furthermore, I read that it exists 16 slots for symetric encryption (into the STSAFE-A110 datasheet §3.3). How can I access it ? Is-it only possible to do that with infos under NDA ?Thank you !
Has anyone encountered the issue that external loader works fine only when flashing QSPI EFlash_Section independently (e.g. slice the firmware.elf into MCU.bin and EFlash.bin and flash separately).BUT if flash from 0x08000000(Complete Firmware) the using firmware.elf either stm32cubeide or stm32cubeprogrammer will halt with error message. Below are -v from stm32cubeide Erasing memory corresponding to segment 0: Erasing internal memory sectors [16 138] Erasing memory corresponding to segment 1: Erasing external memory sectors [0 397] Download in Progress: �������������������������������������������������� 0% ���� 9%����� 18%���� 27% And pop message:============================================= Blah Blah Blah............. Error message from debugger back end: Error finishing flash operation Error finishing flash operation
Hello,Our IoT product is LoRa based, and uses the STM32WLE5JC mcu. For the purpose of operability in several countries, we have used a Molex antenna, which operates in the frequency range 863MHz to 928 MHZ.We're using the STM32CubeIDE for development, and firmware package STM32Cube FW_WL V1.3.0In order for the device to be used in, say Japan for example, is it enough to simply set the active region to one of the values, as defined by the LoRaMacRegion_t struct in LoRaMacInterfaces.h?For. the Japan usecase, would LORAMAC_REGION_AS923 be the most appropriate option? Are there any other values that need to be set when configuring for specific regions?Thanks :)
Hi all,no experience, so please explain like to a child.I want to jump into digital.My idea is to make a bluetooth speaker with LED meter so:USB C for Power(CYBD3177) and/or Audio IN(STM32wb5).Bluetooth Audio IN (STM32WB5) -> out to Class D Amp (TAS5827)Two more Data Lines to control WS2812BWhich physical connections do I need?I guess:D+D- from USB C to STM32DIN L/R (GPIOs?) from STM32 to WS2812I2S(LRCLK,SCLK,SDIN) from STM32 to TAS58274 more eventually Data lines (GPIOs?) from TAS 5827 to STM32 for return messagesis this correct?thanks
Is NUCLEO-WB55RG/WB15CC compatible with X-NUCLEO-PLC01A1? I want to develop a controller that supports BLE and thought of starting with a combination of these two boards. Would be helpful if someone can confirm that these boards are compatible and can be stacked and work together. Thanks.
Hello. Thanks again for all your appropriate assistance.I would like to ask a question about the implementation details of BLE_Hid in STM32CubeWB.> Is the data written by aci_hal_write_config_data saved in NVM area?(Is that implementation already in the sample?)I would appreciate your response.Best regars.
Hi, I use an STM32WB with the BLE stack. In my code, I need to write data to the flash memory (writing new firmware to a prepared memory area). Unfortunately, when I attempt to write to the flash, an error occurs. Is there anything special that I need to change? This worked fine on other MCUs like the G0 and F4.bool MM_WriteData(uint32_t addr,uint8_t *data, uint32_t size ) { uint64_t data64; HAL_StatusTypeDef status=HAL_OK; HAL_FLASH_Unlock(); //Unlocks the flash memory while (__HAL_FLASH_GET_FLAG(FLASH_FLAG_BSY) != RESET) {} memcpy(&data64,&data[0], sizeof(uint64_t)); status|=HAL_FLASH_Program(FLASH_TYPEPROGRAM_DOUBLEWORD, addr, data64); } HAL_FLASH_Lock(); //Locks again the flash memory if(status == HAL_OK) { return true; } return false; }
Hi, I have a STM32WBA55G card and I want to flash an example code but it doesn't work. So I used STM32Programmer to find out why my board wasn't "found". Normally STLink is included and I can go through the usb-c port. But I still get an error if I go through the uart connection: "Error: Activating device: KO. Please, verify the boot mode configuration and check the serial port configuration. Reset your device then try again... »Et j’ai toujours l’erreur suivante si je passe par stlink : « Error: No STM32 target found! If your product embeds Debug Authentication, please perform a discovery using Debug Authentication »I can't find the solution, can you help me? Best regards
I have configured a BLE MESH with two nodes one as client and other as server . It is working well . I also want to recieve the same data that is being exchanged on Phone. Can someone tell me how this can be done and what app I must use.
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.