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 am using nucleo-stm32wb55 board, I am working on BLE peripheral and I am working on MEMS interface, I am using STM32 demo code, where OPUS is used to convert the PDM to PCM . I modified the demo code and added LCD interface and it is working, I am able to write the message like bluetooth connected and blutooth standby mode on my LCD board, I am using ST7789 LCD module, Now I want to display the time using RTC on LCD, I used Systick interrupt, Set a flag, used RTC interrupt, used the RTC_setdate function in infinite loop(above Seq_Run()).When I tried the above methods, RTC worked, but it is taking 15 seconds to update the value (it should have changed it to 1 second), So I believe the problem is with the sequencer has it is taking time for scheduling MEMS task and bluetooth task, so I want to create another task,so I want to add this RTC code for execution, Please help me how to implement this.Thank you!
Hi everyone,I have created a minimal new project for my board based on STM32WLE5C8.After enabling Sigfox into the .ioc view, in my main.c I have : HAL_Init(); SystemClock_Config(); sfx_rc_t SgfxRc = RC1; int ret = SIGFOX_API_open(&SgfxRc);However it fails with ret = 0x10.This code corresponds to SFX_ERR_API_OPEN (Error occurs during the opening of the Sigfox Library : check the manuf error code)But as I only get 0x10, no manufacturer code, I can't get any informations about what failed.What could be the reason of SIGFOX API opening failure ?Do I have some other configurations to do into the .ioc ?Thank you per advance !
Let me see if I've understood. I'm using STM32CoreWL for LoRaWAN end-node implementation, where I need to insert my sensors. As specified on AN5406, the low power modes are activated by UTIL_SEQ_Idle(), when the sequencer has nothing to do. So there are no active low power modes processes called by the sequencer (!?). My sensor reading routine is called inside SendTxData(). I need a pulse with a defined duration. The routine sets the needed GPIO but it doesn't reset it at the right times like if the timer was ignored.All work if I set #define LOW_POWER_DISABLE to 1. I'm using TIM16 for a resolution of uS.Even reading (and reading again) the application notes regarding sequencer and low power modes, I'm not able to control my applications.How to disable (or manage) temporally, for the time needed, the low power mode? I need help.F.
Hello, I am developing STM32L072.The library is using ""I CUBE LRWAN".Inside the library, I have created the part that enters the OFF mode (STANDBY mode.But the MCU doesn't consider the RTC and just keeps rebooting.What else should I consider?void PWR_EnterOffMode(void){ /* USER CODE BEGIN EnterOffMode_1 */ UTILS_ENTER_CRITICAL_SECTION(); if(__HAL_PWR_GET_FLAG(PWR_FLAG_SB) != RESET) { /* Clear Standby flag */ __HAL_PWR_CLEAR_FLAG(PWR_FLAG_SB); } DBGMCU->CR = 0; /*SX1276 DEINIT*/ Sx_Board_IoDeInit(); Gpio_PreInit(); Gpio_STOP_PowerHold_Init(); HAL_RTCEx_DeactivateWakeUpTimer(&hrtc); HAL_RTCEx_SetWakeUpTimer_IT(&hrtc, 0x2616, RTC_WAKEUPCLOCK_RTCCLK_DIV16); /* Clear all related wakeup flags */ __HAL_PWR_CLEAR_FLAG(PWR_FLAG_WU); /* Enter the Standby mode */ HAL_PWR_EnterSTANDBYMode(); UTILS_EXIT_CRITICAL_SECTION(); /* USER CODE END EnterOffMode_1 */}
Saludos!Im new to STM32W series.With two P-NUCLEO-WB55 boards on my table im trying to run the BLE_CableReplacement example.It doesnt work out of the box so i opened the readme.txt @par How to use it ? This application requires having the stm32wb5x_BLE_Stack_full_fw.bin binary flashed on the Wireless Coprocessor. If it is not the case, you need to use STM32CubeProgrammer to load the appropriate binary. All available binaries are located under /Projects/STM32_Copro_Wireless_Binaries directory. Refer to UM2237 to learn how to use/install STM32CubeProgrammer. Refer to /Projects/STM32_Copro_Wireless_Binaries/ReleaseNote.html for the detailed procedure to change the Wireless Coprocessor binary.I found the binaries already But as i try to follow the release note instructions i get stuck in STEP3 There is no "Start FUS" button anywhere, am i doing the raindance wrong?Also if i try to "firmware upgrade" anyway is asking me for the start flash addr, thats not in any STEP
Hi Guys, as I am new to STM and STM32CubeIDE, I am wondering how can I get the LoRaWAN_End_Node-example to work on our custom chip STM-chip STM32WLE5JC. Basically, I want to re-configure the project via the "Device Configuration Tool" so that it works on our custom chip. Is it possible?
TLDR: Is there a simple way (or at least clear step-by-step instructions) to reset the P-NUCLE-WB55 back to the firmware it was delivered with?Full:I have a P-Nucleo-WB55 and am trying to develop a project with it. I ran the "Getting Started" demo on the back of the pack and it worked brilliantly, so I got in with my project development. This started with a simple project to run a sensor using the SPI interface which worked fine. I then went to try some BLE development which is why I got this board. Unfortunately, this is where my problems start. I was trying the BLE HeartRate demo and no matter what i did I couldn't get it to work. I followed the instructions for the FUS and BLE stack update and spent the next 24 hours thinking I had bricked the board as it would no longer do anything (I followed the ST instructions verbatim). I finally managed to get the update to work by using a mix of instructions from here and reddit on top of the ST release notes.Anyway, I now have the most rect
Hello I am using stm32wb55 nucleo i am tring to delete the firmware but it shows errorC:\Program Files\STMicroelectronics\STM32Cube\STM32CubeProgrammer\bin>STM32_Programmer_CLI.exe -c port=SWD -fwdelete ------------------------------------------------------------------- STM32CubeProgrammer v2.6.0 -------------------------------------------------------------------ST-LINK SN : 066CFF303430484257141344ST-LINK FW : V2J37M26Board : P-NUCLEO-WB55Voltage : 3.25VSWD freq : 4000 KHzConnect mode: NormalReset mode : Software resetDevice ID : 0x495Revision ID : Rev YDevice name : STM32WBxxFlash size : 1 MBytesDevice type : MCUDevice CPU : Cortex-M4Warning: Option Byte: nSWboot0, value: 0x0, was not modified.Warning: Option Byte: nboot0, value: 0x1, was not modified.Warning: Option Byte: nboot1, value: 0x1,
Hi!I am using P-nucleo WB55 board to develop BLE application. 1 I use TIM2 to generate a interrupt where I use SPI to read external ADC data. However, I found that the time period between SPI SCK signal and rising edge of TIM's PWM is varying. as shown in the attached figure.Below is a part of the code in TIM interrupt function:// HAL_TIM_IRQHandler(&htim2); /* USER CODE BEGIN TIM2_IRQn 1 */ SPI1->CR1 |= SPI_CR1_SPE; while(!(SPI1->SR&SPI_SR_RXNE)); SPI1->CR1 &=(~SPI_CR1_SPE); Dout_a[i]=SPI1->DR; SPI signal is enable right after the interrupt. There is no code before enabling SPI signal. Why the time is varying?Can a task in sequencer be interrupted, when it is running?Sequencer tasks are running in parallel with the interrupt or in series with the interrupt?
Hi Everyone!We have two RFM98PW LoRa Modules and we successfully can communicate with these modules from more than 9 kilometers. But when we change our frequency from 434 to about 433.663 we cannot communicate very well. It just *****. Using these LoRa modules with an Atmega2560 and STM32F446RET6. In Atmega, so in library that we are using setFrequency function to change frequency. Is it enough to change freq with just a function. Do we need to change anything else like bandwidth?When we change the frequency the frequency error jumps to 32 kHz from 1 kHz in the receiver serial port.Library: https://github.com/SMotlaq/LoRaThanks.
Hey guys , I am trying to program custom stm32 board using stm32lorwan module using stlink v2 pins. I have configured debugger as followed.Can you tell me debug configuration?>>Connect to remote GDB server , port no 61234>>debug prob , stlink (stlink gdb server)>>Interface , SWD>>Access port, 0-cortex,m0plus>>Reset behaviour , Software system reset>>Debug In low power modes, Enable>>Suspend watchdog counters, DisableBelow is issue that I am having.Error in final launch sequence:Failed to execute MI command:target remote localhost:61234Error message from debugger back end:localhost:61234: The system tried to join a drive to a directory on a joined drive.Failed to execute MI command:target remote localhost:61234Error message from debugger back end:localhost:61234: The system tried to join a drive to a directory on a joined drive.localhost:61234: The system tried to join a drive to a directory on a joined drive.
Hello ST,We are looking for the solution for OTA BLE firmware upgrade using another BLE module. It must be between two STM32WB board not from android app .Could you please provide the documents or example for this solution.Best RegardsDeepak Aagri
We are using the STM32WB5MMG in our product.To inform any client about the battery level of our device we want to implement theSIG Battery Level Service.After configuration through CubeMX, the Service is visible and the value can be read.However, how can you update the value being read or how do you notify a client (notify is enabled).Detailed Problems:1) I would like to update a specific characteristic. Therefore I used "aci_gatt_update_char_value()". But it seems I'm, not allowed to change the value while the service is running. An error-handler gets called.2) I would like to notify a client of new data. Therefore I tried to implement the "Hear Rate Measurement" from the "BLE_Custom" template. In the code I get the "CUSTOM_STM_HRS_M_NOTIFY_ENABLED_EVT", but how can I change the value and notify the client?PS: I have already asked this question under another tag: "Documentation/Ressources for BLE "Custom Template" CubeMX"
I have implemented STM32WB P2P Router connection with following P2P Server1 to 6.In my application I need to connect more than 6 devices in the same room or hall so I can use 2 P2P Routers but P2P Server will get repeated.How can I manage this situation?
I made my test codes on nucleo(32wb55) and it worked.But i have a problem on My Custom Board.I try Cable Replacment application on my board, but my sw isn't pass "hci_reset" section on "ble.hci.le.c"...When I look at the crystals(HSE_32Mhz and LSE_32,768Khz) with an oscilloscope, there is no problem.My current .bin version: V1.12.0 / 24-June-2021 (stm32wb5x_BLE_Stack_full_fw.bin)My custom board µC : STM32WB55VGY6TRtBleStatus hci_reset( void ) { struct hci_request rq; tBleStatus status = 0; Osal_MemSet( &rq, 0, sizeof(rq) ); rq.ogf = 0x03; rq.ocf = 0x003; rq.rparam = &status; rq.rlen = 1; if ( hci_send_req(&rq, FALSE) < 0 ) // <<<----my code don't pass here. return BLE_STATUS_TIMEOUT; return status; }@Christophe Arnal @Necronomicon @towynlin
Hi,The ble stack provided follows BLE V5 protocol, which means that it should be possible to have multiple slaves or multiple master connections. I'm trying to build an application that would be a server/slave capable of connecting to multiple clients ie. the device would still be advertising after a connection has been made. Does the stm ble stack support this and are there examples/documentation I could use to build?I'm working with stm32wb55 nucleo board.Thank you
I am using following snippet after the BLE Advertisement stops. I am using p2pserver example in which BLE Advertisement stops after 60 seconds and I have a timer of 65 seconds in which I have following snippet.HAL_SuspendTick();SET_BIT(PWR->CR3,PWR_CR3_RRS); //RAM retention in standby mode (SRAMa);LL_C2_PWR_SetPowerMode(LL_PWR_MODE_STANDBY);HAL_PWR_EnterSTANDBYMode();But somehow i am getting 5 to 6 mA even after this snippet means it is not going into standby mode. I already made the configuration as follows:/** * keep debugger enabled while in any low power mode when set to 1 * should be set to 0 in production */#define CFG_DEBUGGER_SUPPORTED 0/** * When set to 1, the traces are enabled in the BLE services */#define CFG_DEBUG_BLE_TRACE 0/** * Enable or Disable traces in application */#define CFG_DEBUG_APP_TRACE 0Please guide me. Thanks in advance.
Hello,I'd like to debug the I2C Master/Slave example located at:..\STM32Cube\Repository\STM32Cube_FW_WB_V1.12.1\Projects\P-NUCLEO-WB55.Nucleo\Examples\I2C\I2C_TwoBoards_AdvComITI have the 2 Nucleo WB55 boards with proper I2C connection, And have a CubeIDE debug environment.Is it possible to open both the Master and Slave projects running on different Nucleo platform simultaneously on the same ST Cube IDE? Is it similar for dual core debugging ?Thanks In Advance,Micha
Good day! I have 2 NUCLEO -WL55 boards. I want to use them to interrupt the charging of the device through LoRa communication. I want to use the PingPong example with a physics layer. But when I try to connect the ADC using CubeMX, the project falls apart. I'm trying to build a project from scratch, putting together a project, connect a radio.h library, but OnTxDone, OnRxDone, OnTxTimeout, OnRxTimeout events in the subghz_phy_app.c file are not generated. Please tell me my mistake and how to connect the events
Multiple Zigbee examples in STM32Cube_FW_WB applications tree fail to start by triggering assertion failure in APP_ZIGBEE_ConfigEndpoints.The code under questions isstatic void APP_ZIGBEE_ConfigEndpoints(void) { struct ZbApsmeAddEndpointReqT req; struct ZbApsmeAddEndpointConfT conf; memset(&req, 0, sizeof(req)); /* Endpoint: SW1_ENDPOINT */ req.profileId = ZCL_PROFILE_HOME_AUTOMATION; req.deviceId = ZCL_DEVICE_ONOFF_SWITCH; req.endpoint = SW1_ENDPOINT; ZbZclAddEndpoint(zigbee_app_info.zb, &req, &conf); assert(conf.status == ZB_STATUS_SUCCESS); ... }conf structure is not initialized, and it seems ZbZclAddEndpoint does not touch it at all leaving status member as is, causing the assertion to fail.This problem is observed in multiple applications, OnOff_{Server,Client}_Distributed, OnOff_Client_Router and OnOff_Server_Coord. Other applications are very likely to have to the same problem.
Hi All,I'm using the P-NUCLEO-WB55-Nucleo and I'm using all the two CPUs (CPU1 + CPU2). I must put the all board in the stop mode, I've downloaded the example PWR_EnterStopMode but I've some doubs about the manage of the CPU2 to entering in stop mode. Do it exist some examples that shows how to manage all the CPU in order to enter in stop Mode?
STM32WL RM0461 Rev 4On pages 1145 and 1146 wrote "EIE = 1 in the LPUART_CR1 register", but actually EIE in LPUART_CR3 register.
Whenever I created a new project based on LoRaWAN Skeleton, it doesn't generate MX_GPIO_Init() in any file. This requires user to write their pin configuration manually, compared to the other project that are not based on LoRaWAN Skeleton where MX_GPIO_Init() is generated automatically.Board:STM32 Nucleo-WL55JCCustom board based on STM32WL55CCIDE:STM32CubeIDE v1.7.0Code Generator:STM32CubeMX v6.3.0STM32CubeWL package version:v1.1.0Is it a bug or something I don't know?The code below is the main.c file, where I've done configuring my self-defined pin via STM32CubeMX. Because there is no MX_GPIO_Init(), I have to write it manually./* USER CODE BEGIN Header */ /** ****************************************************************************** * @file : main.c * @brief : Main program body ****************************************************************************** * @attention * * <h2><center>&copy; Copyright (c) 2021 STMicroelectronics. * All rights reserved.</
Hi,We are tying to run sigfox pushbutton app on Seeeds lora e5 module what has a stm32wl mcu built in. I have configured the radio control switch gios according to the lora e5 module and also changed the tx power define to High power. have also changes the button and the led gpios.Now the situation is when I press the button the led blinks 3 times as intended for sigfox app but no data received on the sigfox back end. One thing to mention is that, i have done the commissioning which includes copying chip certificate and get pac and dev ids files from st and programming them into stm32wl using cube programmer. these are done and the device is also registered on the sigfox backend. The sigfox covererage is there too in my area and i have tried taking the device to different areas, But still i cant get any packets received on sigfox backend. i have also used external antenna but still no luck.what could it be?I am suspecting something in the code.Can anyone help me and let me know what el
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.