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 used a GFSK configuration with 433MHz and it is work very well,I try now to migrate to Lora modulation. i used a basic config, but the receiver on the other side receive less then 1% of sent frames ! (even transmitter and receiver are very close)is anybody has advice to improve communication ?
I am trying use the stm32wb15cc to run an application on CPU1, but with no application in CPU. I don't need the RF side at all and want to hold CPU2 in reset and allow CPU1 to access all the Flash and Ram.However this does not seem possible as Option Bytes are set to reserve parts of the flash and RAM 2a and 2b, so I have limited access. Apparently these bits can only be reset by CPU2. I tried using the Cube Programmer, but it was not able to change these bytes.Is it possible to clear these bytes in some manner? Or can ST provide a binary for CPU2 that removes the security or just reduces the RAM lock to just the last 1KB of each region?
I attended the Tuesday Sept 7th session of the lorawan-with-stm32wl-soc-workshop-ame-2021 I was unable to complete the workshop during the allotted time. I would like to complete the training. Are the videos available?
Hello,we are developing an application with LoRaWAN and FreeRTOS, based on STM32CubeWL, for a custom board.While we got this to send data properly with the LoRaWAN "End Node skeleton", we are facing issues with the "User defined skeleton".With "User defined skeleton", join and sending works the first time, but further calls to `LmHandlerSend(…)` error with `LORAMAC_HANDLER_BUSY_ERROR`, because in LoRaMac.c `MacCtx.MacState` is `LORAMAC_TX_RUNNING`.While this might be similar to question 0D53W00001aJT8eSAG in this forum, we already tried increasing the stack sizes with no success.Instead, repeated sending works properly if we set `DISABLE_LORAWAN_RX_WINDOW` in lorawan_conf.h to 1. That is with "NVIC/SUBGHZ Radio Interrupt" enabled in the IOC. But we want to use RX functionality as well.Any help is greatly appreciated.
Hi all,I have recently started working on B-L072Z-LRWAN1 for understanding the LoRaWAN protocol.I am using icube lrwan software for example code.I was able to build the code successfully.But when tried to flash the code using openocd,i am continuously getting following error.Please see the attached image for reference to check if all required jumpers are connected or not.Thanks."Open On-Chip Debugger 0.11.0+dev-00449-g53fa0f7 (2022-06-09-09:40) [https://github.com/STMicroelectronics/OpenOCD]Licensed under GNU GPL v2For bug reports, read http://openocd.org/doc/doxygen/bugs.htmlInfo : Listening on port 6666 for tcl connectionsInfo : Listening on port 4444 for telnet connectionsInfo : STLINK V2J40M27 (API v2) VID:PID 0483:374BInfo : Target voltage: 3.254104Error: init mode failed (unable to connect to the target)0"
I'm working with STM32CubeWL, version 1.1.0. Starting a new project from .ioc file seems that the firmware will be upgraded to the version 1.2.0. Is this correct? Can I find, somewhere in the source code, the firmware version?Can I avoid this behavior? The built project compile with error (fatal error: stm32wlxx_nucleo_radio.h: No such file or directory and similar).Starting a new project from .project file (C:\Users\fabrizio\Downloads\STM32Cube_FW_WL_V1.1.0\Projects\NUCLEO-WL55JC\Applications\LoRaWAN\LoRaWAN_End_Node\STM32CubeIDE). On this case, the project can be built without error. F.
HiI am trying to install STM32CubeWB from STM32CubeMX by following YouTube "STM32WB Getting Started Series: Part 3, Tools Install". After clicking "INSTALL/REMOVER" button, I got message "The Updater is already in use and checking the server. Please retry launching the Update after a few seconds."I use my home internet. There isn't any proxy server on the way. Any tip to solve the issue?Thanks in advance!Nancy
I am trying to build an embedded provisioner for the stm32wb5m, but i am not able to find an unprovisioned device.I am using the example "BLE_MeshLightingProvisioner" for the WB55 nucleo Board as reference.The Initialization of the STM32WB and the communication between the cores is done.The init of the library:void MESH_Init(void) { BLEMesh_BleHardwareInitCallBack(&user_ble_cb); BLEMesh_Init(&BLEMeshlib_Init_params); Appli_CheckForUnprovision(); Appli_StartProvisionerMode(1); } The function "BLEMesh_Process();" is called every 1ms like in the example.The function "BLEMesh_GetNeighborState(NeighborTable,&NoOfNeighborPresent);" does not get any unprovisioned devices.If im trying to provision the device it works and it will show the device in the ST app, so the library works, but what am i missing?For the unprovisioned device im using the "BLE_Mesh_ThermometerSensor" for the STM32WB5MM-DK.library version 1.13.005
..
Hi, following your DS, LoRa PER = 1%. While RF examination, for BW= 125KHz and SF=7, the sensitivity of the micro controller is around -125dBm for PER = 1%. When we change the value of SF to 12, the sensitivity should change to -138dBm but in reality we get sensitivity around -110dBm for PER = 1%. In -138dBm we have got Per of ~20%. Our PER calculation has taken from your lib : Subghz_Phy_Per.Our code is attached.I would like to get a feedback from you why it is not working.Thanks,Tamar
Hello,I am using I-NUCLEO-LRWAN1 development kit for LoRa setup. I have interfaced that setup with USB module and I am trying to communicate it using X-CTU. When I start the module the module sends #, but it's not responding to AT<CR>. I have attached the image of terminal output.What would be the reason for this?-Regards Hrishikesh
Hi,I need to write some config data to the flash and tried to start from the example FLASH_EraseProgram for NUCLEOWB15. But I got problems already when running the example without any modification. My setup:NUCLEO-WB15CC boardFLASH_EraseProgram without modificationsSTM32CubeIDE Version: 1.10.1 Build: 12716_20220707_0928 (UTC)Import STM32 Cube Example->Board NUCLEO-WB15CC->FLASH_EraseProgrambuild, and DEBUG FLASH_EraseProgramand the debugger ends in the Default Handler Infinite LoopWen I look at the registers, the program counter shows WWDG_IRQHandler, maybe a watchdog problem?Any help is appreciated!Regards VolkerContent of the registers:General Registers General Purpose and FPU Register Group r0 56 r1 536871108 r2 1476411392 &n
Hello, I am using a p-Nucleo-wb55. I would need to get data from vbat channel and the internal temperature channel. I used the example for internal temperature and it works but I am not able to add the reading of vbat value. Am I supposed to use one rank per channel? How do I add a rank using the .ioc file ? Thank you
I looked into the radio_driver.h library, Radiolorabandwidths enum there is enumeration of lora bandwidths but the value assigned seems to be random with respect to RM0453 document on Bandwidth on lora. Is the library is correct or need modification?
Hello everyone,I want to migrate my existing TCP-WLAN based MCU application which acts as a data server with a proprietary protocol. The application comes very close to standard Posix TCP handling. Each connection is handled by a separate thread that is created when the client connects.The message size varies between 100 and 200 bytes. File transfers, approx. 10kByte are rare but possible.I don't want to change the protocol, for example to identify the clients. For this reason a "simple" BLE UART is not possible.How to solve this problem with a Bluetooth device? Which BLE services, supported by ST, are suitable for this?Best regards and thank you very much for your help,R Jordan
Hi,I am using the Nucleo WB55 board that has a STM32WB55RGV6 MCU to develop an application. I see instabilities in bluetooth by default when I am using the LSE clock as RfWkUpClock of the BLE that are leading to the BLE core crashing.Those instabilities disappear when I disable the use of the LSE clock and replace it by the HSE clock. That is though not a long term solution for me as the difference of power consumption is quite consequent.I did probe the LSE clock on the LSCO pin of the MCU and got the attached measurement.Why is the LSE clock so unstable? Is there any way to make the BLE more robust while still using the LSE clock?Best regards,Antoine Poussart
Hello,in STM32CubeProg v2.11.0, in the Registers (BETA) tab, peripheral ADC, register SMPR1, the entry SMP0 is missing (it's the VREF INT channel).Best,Nicolas
I have nucleo-wl55jc board i want to transmit CW beacon.i am able to transmit continuous wave but not able to sleep the radio and continue next transmit.What would be the possible way to start and stop radio quickly?
Hi, I create my new project follow the SubGHz Phy Ping Pong example project.In the example project, the RTC configure in "Free running Binary mode". In my project, I configure the RTC in "Free running BCD calender mode" therefore no Radio Rx Timeout after the Radio.Rx() function called. Someone know how to fix this problem in RTC Free running BCD calender mode. My project below.Please support me.Thanks.
Hi,I use STM32WLE5CBU6. I created SubGHz Phy project. Device entered stop 2 mode, exit stop 2 mode when the alarm B interrupt issue then the Radio.Rx(3000) is called to receive data.my RTC Alarm interrupt function below,void HAL_RTCEx_AlarmBEventCallback(RTC_HandleTypeDef *hrtc) { UTIL_LPM_SetStopMode((1 << CFG_LPM_LoRa_Id), UTIL_LPM_DISABLE); DebugPuts("\rAlarm B."); /* Radio Receive */ DebugPuts("\rRadio Receive."); Radio.Rx(3000); }my SubGhz App Init() function below,void SubghzApp_Init(void) { /* USER CODE BEGIN SubghzApp_Init_1 */ DebugPuts("\rSMETER."); /* Get SubGhz-Phy APP version */ DebugPrint("\rAPPLICATION_VERSION: V%X.%X.%X", (uint8_t)(APP_VERSION_MAIN), (uint8_t)(APP_VERSION_SUB1), (uint8_t)(APP_VERSION_SUB2)); /* Get MW SubGhz-Phy info */ DebugPrint("\rMW_RADIO_VERSION: V%X.%X.%X", (uint8_t)(SUBGHZ_PHY_VERSION_MAIN), (uint8_t)(SUBGHZ_PHY_VERSION_SUB1), (uint8_t)(SUBGHZ_PHY_VERSION_SUB2)); /* USER CODE END SubghzApp_Init_1 */ /* Radio i
Exist some internal way to do this ? Itry this , but clock config for CPU2 must be 32MHz ...
I have generated ble middleware using cubemx with application type set to the server profile. I'd like the device to be able to advertise and scan for non-connectable ad's. Hence in the ble_conf.h I have set BLE_CFG_PERIPHERAL as well as BLE_CFG_CENTRAL to 1. However, in the Ble_Tl_Init( ), app_ble.c, I have overridden the ble central to use the observer role as shown below.#if (BLE_CFG_PERIPHERAL == 1) role |= GAP_PERIPHERAL_ROLE; #endif #if (BLE_CFG_CENTRAL == 1) role |= GAP_OBSERVER_ROLE;//GAP_CENTRAL_ROLE; #endifI did the above so I can configure the device to advertise as well as scan for non-connectable advertisements using the aci_gap_start_observation_proc( ) API. How do I prevent cubemx from overriding this change or is there a way I can achieve the same without having to manually make this change every time cubemx generates code?PS: I did try configuring calling aci_gap_init( ) separately, to override the role settings but for some reason, it ends up in a fault handl
Hi Sir,I'm developing project using STM32WB55 and start from STM32Cube_FW_WB_V1.14.0\Projects\P-NUCLEO-WB55.Nucleo\Applications\BLE\BLE_p2pServer.everything setup fine with LightBlue Android APP. When I trace and debug code, I cannot hit break if I use "READ" from lightBlue APP. I can hit point if send notify/subscribe and write. Please kindly guide me where I can hit READ EVENT in code. thank you.btw, I also try STM32Cube_FW_WB_V1.13.0 and other Android BLE APP. The result is same.Best regards,Chang
I've made sure "force rejoins at reboot" is not not ticked in the configuration file, and then I set the task "LoRaStoreContextEvent" in the beginning of the user code section like thisstatic void OnNvmDataChange(LmHandlerNvmContextStates_t state) { /* USER CODE BEGIN OnNvmDataChange_1 */ UTIL_SEQ_SetTask((1 << CFG_SEQ_Task_LoRaStoreContextEvent), CFG_SEQ_Prio_0); ....Since it stills rejoins when power cycling I think I'm probably misunderstanding how things are supposed to be used.
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.