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,Like "BLE_AT_Server" example, is there a similar example of "802.15.4_AT_Server" for 802.15.4 RF MAC Mode Transceiver for STM32WB5MMG modules?
Dear team!,I have a problem with STM32WL55JC1 board.I loaded the "LoRa End Node Dual Core "project and it works very well.Then I made a project from scratch, with Dual core checkbox checked.Before initialising any module, I built both projects and downloaded the exported elf files.Then I tried an example to test the IPCC but I found that the CM0 is no longer able to start from its default address.I've made a full chip erase using STProgrammer CUBE and loaded the "LoRa End Node Dual Core "project binaries to the board. But CM0Plus is not working. I've entered a debug session. I found that CM4 is working normally but CM0Plus after releasing it by CM4, it goes to 0x FF FF FF FE. I double checked the linker file for CM0Plus and it looks the same as the default example. I brought a brand new kit, loaded the "LoRa End Node Dual Core "project and it works fine. I checked the Flash Option Bytes from the working kit and compared with the died one and they were the same.I hav
Hi,I'm working with an ST50H based on STM32WLE5 series MCU. Here's the product: https://www.st.com/en/partner-products-and-services/acsip-st50h.html. I would like to be able to flash the device using pyOCD or OpenOCD. However, after installing the STM32WL series support for pyOCD, pyOCD ask me to select a target and I'm seeing these devices. I tried each of these resulting in a "critical No ACK received error".I would like to know the exact name of the STM32 used in ST50H. I asked Acsip for the exact name and they do not tell me more than STM32WLE5.Did you have examples or documentation about flashing an STM32WL series MCU with pyOCD?Thanks!Alexandre
Hello,I'm currently developing a Zephyr application and want to use the STM32WB55 chip. For evaluating I use the ST Nucleo WB55RG board. The device is configured as a Bluetooth peripheral using the Zephyr v3.6.0 host stack and the stm32wb5x_BLE_HCILayer_fw.bin firmware V1.18.0 for the controller.Issue:Once a central connects to the device, the following warning and error messages are logged: <wrn> bt_hci_core: opcode 0x2016 status 0x3a <err> bt_hci_core: Failed read remote features (-16) The opcode corresponds to the OCF defined in the Bluetooth Core Specification 5.3, Vol. 4, Part E, Chapter 7.8.21 (LE Read Remote Features command).The controller return status indicates "controller busy". Debugging the issue, I found that a delay of 500ms between connecting and requesting the remote features in most times prevents the error.Steps to reproduce:Build and flash the peripheral example from the Zephyr sources.Connect to the deviceError message is logged
HelloI've been recommended the product by the ARROW sales manager, but I'm not getting any documentation or technical help. I'm new to st product and ble.Below are the features I want.1. If you don't do anything for a certain period of time, you will be in sleep mode, and if you receive a wake-up message through wireless communication, you will wake up.2. The button allows you to turn on or off the low power mode.3. Can it operate on low power by default unlike item 2?4. How do I do broadcast communication, not pairing?What else should I refer to to to implement the above features?
Excuse me, how can we establish a Bluetooth connection between stm32wb55 as an observer and other broadcasting devices on CubeMX? The current CubeMX can only implement WB as a broadcaster to connect to the app, which is not the pattern required in my project. Please give me a good suggestion, thanks !
I tried the RTC_Alarm example folder, at first it worked out well and I was able to view the output.But when I ran for the 2nd time without any changes in the code the execution stopped at HAL_RTC_Init ->> (if (HAL_RTC_Init (& RtcHandle)! = HAL_OK)). And it didn't get through the if loop also.And strangely when I upload some other code and reset the board (STM32WL55 Nucleo board) and again when I upload the RTC_Alarm code it works fine and again when I upload the same code the 2nd time the code is freezing.What should I do and where I am going wrong here..
I have a Nucleo WL55JC1 and I'm trying to run the SubGHz_Phy_PingPong example from STM32CubeWL v1.3.0. I am using STM32CubeIde and if I try to build without any modification to the original project the compiler outputs that stm32wlxx_nucleo_radio.h, stm32wlxx_nucleo_errno.h and stm32wlxx_nucleo.h files are missing and aborts. If I add those files and corresponding .c files everything compiles, but I can't manage to get any output on the serial port. The readme.txt file says that when the system boots two leds on the board should blink, but I can't get neither that. I tried some some debugging and I didn't get anything useful.What have I done wrong? May I have skipped some configuration or tweaking?
application stopped advertising , with error 0x0C, later to discover it got connected.is this error indicates I got connected? does it mean other things too? thanks
Hello everyone,In the schematics en.MB1389-WL55JC-highband-E02_Schematic,there's a Pi filter following the RF switch before it links to the SMA connector for the antenna.Upon calculation, I found that the cutoff frequency of this low-pass pi filter is approximately 1800 MHz, which is significantly higher than the 870 MHz of LoraWAN. Could someone clarify the intention behind including this section in the schematics?Ultimately, I intend to integrate a chip antenna onto the PCB and eliminate the SMA connector.Should I retain these filters, or do I need to adjust the values of the pi filter components?Thank you!
Hi there!If I interpret table 45 on p. 247 of the reference manual correctly, then the IPCC interrupt is not able to wake up a CPU from STOP mode:Am I correct in my interpretation? If so, is there any other way for CPU1 to wake up CPU2 from STOP mode to signal that there is a message waiting? One way I can think of is connecting two GPIO pins so that CPU1 can generate an external interrupt to CPU2 but that feels like such a waste of resources :(Thanks in advance,Pieter
Hello, Is there any estimation for when the STM32WL3x will be supported in STM32Cube IDE or STM32CubeMX? Also, is there any estimation for when there will be a dev board available on the market? The SoC STM32WL33C8V6TR looks extremely promising for our projects and we would like to start evaluating it as soon as possible. Thank you.
Hi everyone, I have questions about thread network protocol on STM32WB series mcus.When using open thread protocol in STM32WB series processors, the device can be configured as open thread border router (OTBR).In the same way, STM32WB mcu can be configured as end device.1- Let's configure one of the two stm32wb mcu devices as end device and the other as OTBR. Let's assume that we have an active end device and OTBR. Will these two devices be enough for me to control the end device from the mobile application? Does it need any other device like Leader, Router etc.?2- In this example, Raspberry pi is used as OTBR. Why was STM32WB not used? Does the OTBR device need to be an embedded linux device? https://wiki.stmicroelectronics.cn/stm32mcu/wiki/Connectivity:STM32WB_OpenThread_Border_Router_Application3- If the STM32WB mcu can be configured as OTBR, what is the number of end devices connected to this border router? Is there a maximum number of end device connections? I
I am using STM32CubeProgrammer trying to correctly start BLE stack.MPU: STM32WB50CGFUS was successfully updated to latest version 1.2.0.0.The bin file (BLE_Stack_full_fw.bin (v1.13.0) was successfully flashed on the address 0x080C7000. https://github.com/STMicroelectronics/STM32CubeWB/tree/master/Projects/STM32WB_Copro_Wireless_Binaries/STM32WB5xProblem is that when I press "Start Wireless Stack" inside the program it loads some data into flash between addresses 0x08000000 - 0x08001700 but the space on a STM32WB50CG from address 0x08000000 to 0x08020000 is supposed to be reserved for user programs, so a part of mine gets overridden.I am fairly new to ARM development, so I just want to know, if after pressing button to "Start Wireless Stack" is supposed to load something in to flash starting at 0x08000000 or am I doing something wrong. Any suggestions what to check?Overall MPU setup was done by official STM tutorial, but BLE doesn't show up as someone in comment section also pointed out
I have changed my service characteristic from CHAR_PROP_WRITE to CHAR_PROP_WRITE_WITHOUT_RESP.(following android issues) But, when I try to write it , using a stm32wb55 dongle (ACI_GATT_WRITE_CHAR_VALUE) , I get : ACI_GATT_ERROR_RESP_EVENT ( 0x03: Write not permitted) ACI_GATT_PROC_COMPLETE_EVENT (0x91 Failed) Only if I set my characteristic to both ( CHAR_PROP_WRITE | CHAR_PROP_WRITE_WITHOUT_RESP ) all work well. Can you explain the route cause for this? what does _WITHOUT_RESP mean ? and why dongle GATT rejects the write request?
Hi,I'm using a Stm32wb5mmgh6tr embbeded MCU for sharing data wireless via BLE. I just saw on the AN5185 application note document that wireless stack is not installed by default. So I've started FUS and then installed the latest version of the WS with STM32CubeProgrammer. After that, I've started the WS:Spoiler (Highlight to read)10:26:46 : Warning: Option Byte: nSWboot0, value: 0x0, was not modified.10:26:46 : Warning: Option Byte: nboot0, value: 0x1, was not modified.10:26:46 : Warning: Option Byte: nboot1, value: 0x1, was not modified.10:26:46 : Warning: Option Bytes are unchanged, Data won't be downloaded10:26:46 : Time elapsed during option Bytes configuration: 00:00:00.00310:26:46 : Succeeded to set nSWboot0=0 nboot1=1 nboot0=110:26:46 : Memory Programming ...10:26:46 : Opening and parsing file: 0x495_FUS_Operator.bin10:26:46 : File : 0x495_FUS_Operator.bin10:26:46 : Size : 8.00 KB10:26:46 : Address : 0x0800000010:26:46 : Erasing memory corresponding to segment 0:10:26:46 :
Hi everyone,I'm trying to add a new file Alarm.c to my project. I added it in the Core>Src folder but I want to use it in a custom_app.c file that is located in another folder (STM32_WPAN>APP) as I use BLE. I included it to this file but when I compile, it doesn't find it in this file. How can I do to declare Alarm.c in one location and all my project's folder can find it?Thank you
I'm new to BLE and working on a project where I need to create a link from my STM32WB15 to a 3rd party IMU sensor. I have no access into the sensor, but I have the UUID's and advertisement data structure.In STM32CubeProgrammer I set the parameters for the STM32 to be a client looking to link with a third party server. I believe I found the line's of code that direct me where it is pulling/finding the device UUID.UTIL_SEQ_RegTask(1<<CFG_TASK_START_SCAN_ID, UTIL_SEQ_RFU, Scan_Request); UTIL_SEQ_RegTask(1<<CFG_TASK_CONN_DEV_1_ID, UTIL_SEQ_RFU, Connect_Request);What I cant find is where in the files I can adjust which device it is searching for to input my sensor's UUID.Any help would be great, thank you!P.S. - I've been searching through header files, and other program files. I may be overlooking the exact line where I can manipulate the STM to search and connect with the IMU.
So is this chip now completely released or not?The product page is available and says it is active, but it does neither offer a reference manual nor a price indication.Form what I understand it is basically a BlueNRG-LPS with more Flash. Meaning the peripherals are all BlueNRG compatible but maybe not STM32 compatible?So if I have µC drivers for e.g. I2C and UART for the L0 and WB Variants of the STM32, are those easily portable or do I start from scratch (no I do not like to use the cube drivers, but that's a different discussion)?
Hello, I am working with STM32WBA52CG as a central and I want to read the RSSI from the incoming advertising packets. The RSSI value should be a negative value in dBm, however it is defined as uint8_t in the AdvertisingReport_t structure. Can someone explain me how to get the correct RSSI value? I am getting the values shown on the terminal below.... } bleAppContext.BleApplicationContext_legacy.connectionHandle = p_conn_complete->Connection_Handle; GATT_CLIENT_APP_Set_Conn_Handle(0, p_conn_complete->Connection_Handle); /* USER CODE BEGIN HCI_EVT_LE_CONN_COMPLETE */ /* USER CODE END HCI_EVT_LE_CONN_COMPLETE */ break; /* HCI_LE_CONNECTION_COMPLETE_SUBEVT_CODE */ } case HCI_LE_ADVERTISING_REPORT_SUBEVT_CODE: { hci_le_advertising_report_event_rp0 *p_adv_report; p_adv_report = (hci_le_advertising_report_event_rp0 *) p_meta_evt->data; UNUSED(p_adv_report); /* USER CODE BEGIN HCI_EVT_LE_ADVERTISING_REPORT */ uint8_t rssi = p_adv_report->Advertising_Report[0].RSSI;
Hi,I started a Circuit/PCB design with STM32WL55CCU (UFQPN48) to work at 433MHz.I was referred to ST design for low band/Hight power and to AN5457.But I am style missing for some information:What is the PA impedance at 433MHz for UFQPN48 package?In AN5457, the recommended value of L6 between 300MHz and 500MHz is 68nH. Why in all ST circuit design (low band) L6 is set to 56nH?Is the order of C4 and L3 has any influence on the circuit (some time C4 is before L3, and some time C4 is after L3)In the different ST circuit design, the CLC PI filter an matching (C8/L4/C7) is not accorded to 50ohm. Is it normal?…..After making some test with the nucleo board wl55, I cannot find the same range like I had with other RF433 module. It is look like RF circuit is not optimised or …. Is anybody have the same observation?
I have a program that requires a 30 second wake up period to feed a watchdog but use as little power a possible. To initiate the LPTIM using an external 32.768kHz watch crystal I am doing this:__HAL_RCC_LPTIM1_CONFIG(RCC_LPTIM1CLKSOURCE_LSE); //LSE LPTIM1 __HAL_RCC_LPTIM1_CLK_ENABLE(); LPTIM1->CR &= ~LPTIM_CR_ENABLE; //Ensure Disabled LPTIM1->IER |= LPTIM_IER_ARRMIE; //Auto-reload match Interrupt NVIC_EnableIRQ(LPTIM1_IRQn); NVIC_SetPriority(LPTIM1_IRQn, 40); LPTIM1->CFGR |= (0b110 << LPTIM_CFGR_PRESC_Pos); // /64 prescaler, restart on trigger LPTIM1->CR |= LPTIM_CR_ENABLE;// | LPTIM_CR_RSTARE; LPTIM1->ARR = 15360; //Reload on cnt==15360 (30 seconds at 32,768/64) LPTIM1->CR |= LPTIM_CR_CNTSTRT; //Start LPTIM1 in continuous modeOnce this has been initiated I put the device into STOP2, after 30 seconds I was expecting thisvoid LPTIM1_IRQHandler( void ){ LPTIM1->ICR |= LPTIM_ICR_ARRMCF | LPTIM_ICR_CMPMCF; //Clear Status }interrupt handler to be cal
Hi,I am current reading the material to develop a LoRa application. My PCB is wicked small, therefore the chip-antennas wont have a good ground plane and therefore bad efficiency.While reading about the RX-path, I stumbled upon AN5457 where in figure 83 on page 64/75 the LNA-noise figure is depicted as a miserable 8dB.This generated the urge to place an external LNA in front of the receiver chain. Here is my reasoning, assuming external LNA-parameters to be v=13dB, NF=0.8dB, Ic=5mA:- the v=+13dB compensate for my bad antenna- the resulting overall noise-figure of ~1.66dB gains ~6dB SNR- therefore, overall the link-budget increases by 6dB+13dB = 19dB.- all this while only doubling the RX-current consumption (from 4.8mA to ~10mA).- with 19dB higher signal (or even just with the 6dB better SNR alone) the LoRa-datarate can be increased (quadrupled), thus reducing the RX-on-time by 4 and/or saving massively during the power hungry TX.Now, I wonder, if my assumptions were true, it would be a
Whenever I set the SMPS Clock Mux to HSE /4 /2 = 4 I can save the project without errors but whenever I reopen the ioc file I get a warning that there is a clock issue that needs to be fixed. I go into the clock configuration and it's bee reset to HSI /4 /2 = 2 and marked in red as an error. If I click resolve clock issues it changes it to HSI /2 /2 = 4 but I want it to stay at HSEOther projects I've created for the NUCLEO-WB55 board from the example selector use HSE /4 /2 =4 so I'm wondering if there is a setting that's conflicting. I just can't find it.
Hey,It states on the product page for the STM32WL5MOC that it is certified. In the presentation for the part the FCC logo is under the "Certification" box. Does this mean that the module already has FCC certification? If so, is there a way to view the certificate?For reference here is the presentation: https://www.st.com/resource/en/product_presentation/microcontrollers-stm32wl5m-wireless-module-line.pdfThanks!
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.