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 currently playing around with LoRaWAN and TTN and try to getting SX1276 Modem (nice RF) to work.I implemented on STM32l4 board. When OTAA join starts the device gets registered on the TTN console but i never receive the join accept back on my node. So with both MCU’s the join hangs up after EV_JOINING event.I fiddled around with the timer settings and also change in joining time but it can't joined to node and continuously open Rx window1 and Rx window2 but Rx timeout occurs.But ABP is properly work.Could it be possible that this is a problem on the gateway’s side? Or are there any other possibilities that cause those problem? (In the forum i also found problems/solutions regarding the datarate in the RX1 and RX2 windows that weren’t LoRa compliant but according to the change log they resolved that a while ago so it couldn’t be the source of my problem).
Good Day.I want to put my stm32wb device to sleep standby mode. and wakeup using RTC after specific time.I am following the PWR_STANDBY_RTC example which works.I would like to sleep for up to 12 hours and would like to use RTC_WAKEUPCLOCK_CK_SPRE_16BITS and not RTC_WAKEUPCLOCK_RTCCLK_DIV16 since the latter only allows up to 33 seconds.I am sucessfuly using RTC_WAKEUPCLOCK_RTCCLK_DIV16 but I am puzzled by value.for example if I set up counter to: HAL_RTCEx_SetWakeUpTimer_IT(&hrtc, 60, RTC_WAKEUPCLOCK_CK_SPRE_16BITS);it wakes up roughly 16 minutes later. I have tried various values but it seems a rough value is i must divide my second by 16 to get more or less correct time.For exampleHAL_RTCEx_SetWakeUpTimer_IT(&hrtc, 60/16, RTC_WAKEUPCLOCK_CK_SPRE_16BITS);Gives me roughtly 60 second wakeup time.Help would be greatly appreciated.I m using external 32khz clock and bluetooth functionality works great.
Dear Support,I'm using the SX1272 in lora mode in my application. I have both products that communicates together. They are configured in Rx single with a symbol timeout equal to 1000. When no communication the rxtimeout is about 1023ms. But when the both products communicate together, the rx timeout is less than 100ms. I received a rx timeout even if a rx done is occured. When I receive a RXdone, I force the Sx1272 in sleep mode. I sent and receive message every 300ms, so I should not have rxtimeout. Why a rx timeout is occured and why the timeout is less than 1000ms? I measured between the mode rx started and the rx timeout. Please help me to understand this phenomen. Best regards
..
Hello ST Community,Let's start with my problem:I have a STM32WB55CG chip that I want to get working in BLE. I also want it to have an USB CDC interface.I created a project on cubeMX, added my external oscillator (32MHz), activated the USB device under "connectivity", then the Communication Device Classs under "MiddleWare". I went to generate this project, compile under Keil and program my chip. Connected it to my PC, seems to work, Windows recognizes it as COM3. Note that my project is still blank at this point, I did not write a single line of code.Then back to CubeMX, I added the Bluetooth part: HSEM in "System Core", RTC in "Timers", RF in "Connectivity", STM32_WPAN in "MiddleWare". That last option added automaticaly "Sequencer" and "Tiny_LPM" in "Utilities" (I would've added them anyway).Code generation, but this time Keil (my IDE) gives me errors: CubeMX generated some files 2 times in my project, see below.I get it compiing, and program my chip. This is STILL a blank project: th
I'm developing an application which uses both USB mass storage and BLE. I've started by building two separate applications using STM32CubeMX:A USB mass storage application communicating with a microSD card over SPI1A BLE P2P serverBoth of these work fine on their own. But if I build an application that includes both components, the USB mass storage device will not enumerate properly.Initially, I discovered that in the full application, HAL_PCD_IRQHandler got called, but it never fell through to PCD_EP_ISR_Handler. This makes me think the mass storage endpoints have not been configured properly.I've also tackled the problem a different way--by systematically eliminating parts of the BLE initialization to determine what is interfering with USB mass storage. Using this method, I've been able to determine that if I comment out the call to SHCI_C2_BLE_Init in APP_BLE_Init (in app_ble.c), USB mass storage enumerates properly. If I then uncomment this line, it stops working again.SHCI_C2_BLE_
I would like to be able to turn BLE off (e.g. with a timer) even if it is currently connected. I know I can stop it advertising, but this doesn't seem to kill the connection. Basically, after a timeout, I would like the BEL to shutdown and stop using power. I would then like to turn it back on with an external interrupt (hall effect trigger from a magnet). If I stop the BLE, do i need to reinitialise it, or something similar? I have used the p2pServer example to find the "stop advertising" code, but it doesn't fully stop the BLE if you are connected to it.Thanks
Hello! I am using PWM to generate 1.25 ms period pulse to trigger a LED strip light . In main.c , properly in while(1) when I called HAL_TIM_PWM_Start_DMA followed by HAL_Delay the program got stuck in uint32_t tickstart = HAL_GetTick(); . When I runned the debug once again it now gets stuck in the place shown in the image (in the file startup_stm32wb55xx_cm4 )How could I solve this?
I have a custom test/debug fixture for a custom board. It is based on the ST-LINK/V3-MODS board to programm the target MCU (STM32WB55).The other interfaces (GPIO, I2C) are used to control functions like power supply to the target etc.When I try to debug a project from SW4STM32 it fails with the message: "Unplugged target or STLink already in use or STLink USB driver not installed"In the details it states: "Error: open failed (no matching adapter found)This works without any problem with Stm32CubeProgrammer and Stm32CubeIDE. They are able to connect, program and debug the target while the STLink/V3-MODS is controlled by another program (via it's C-API). This is neccessary to supply the target with power in my case.I made sure to initialize the C-API Interface with the "shared" option enabled.Does SW4STM32 not support this use case? Sadly I have to use it since the SBSFU package does not work in Stm32CubeIDE.
As far as I understand, the OTA example provided (BLE_Ota) supports either flashing the user application directly or handing the processing over to CPU2 for decryption of the Wireless firmware (which comes as an encrypted and signed package).Is it possible to use the BLE_Ota firmware to handle encrypted user applications? If not is there an example how to?
When will it be possible to start a project with components from the series STM32WLE?
I am using the following code: while(HAL_I2C_Master_Transmit(&hi2c1, DEVICE_ADDR, i2cbuffer, 1, 1000) != HAL_OK) { /* Error_Handler() function is called when Timeout error occurs. When Acknowledge failure occurs (Slave doesn't acknowledge its address) Master restarts communication */ if (HAL_I2C_GetError(&hi2c1) != HAL_I2C_ERROR_AF) { errorcount = 20; Error_Handler(); }The routine error handler basically is a while(1) that toggles an led and never exits. I'm trying to trap the errors, mostly I'm getting a NACK error, with the following code: /* I2C not acknowlege NACK flag ---------------------------------------------*/ if (I2C_CHECK_FLAG(itflags, I2C_FLAG_AF) != RESET) { hi2c1.ErrorCode |= HAL_I2C_ERROR_AF; /* Clear NACK flag */ __HAL_I2C_
I am using the STM32WB in master mode, polling a single LSM303AGR accelerometer. Using the HAL transmit routine as follows:if(hi2c1.State == HAL_I2C_STATE_READY) { /* Now send the device address and register to be read with 1 sec delay max*/ while(HAL_I2C_Master_Transmit(&hi2c1, DEVICE_ADDR, i2cbuffer, 1, 1000) != HAL_OK) { /* Error_Handler() function is called when Timeout error occurs. When Acknowledge failure occurs (Slave doesn't acknowledge its address) Master restarts communication */ if (HAL_I2C_GetError(&hi2c1) != HAL_I2C_ERROR_AF) { errorcount = 20; Error_Handler(); } } /* Now get the return byte of the register in i2cbuffer[0, 1] with 1 sec delay max*/ while(HAL_I2C_Master_Receive(&hi2c1, DEVICE_ADDR, i2cbuf
I2C Error trappingI am using the STM32WB in master mode, polling a single LSM303AGR accelerometer. Using the HAL transmit routine as follows:if(hi2c1.State == HAL_I2C_STATE_READY) { /* Now send the device address and register to be read with 1 sec delay max*/ while(HAL_I2C_Master_Transmit(&hi2c1, DEVICE_ADDR, i2cbuffer, 1, 1000) != HAL_OK) { /* Error_Handler() function is called when Timeout error occurs. When Acknowledge failure occurs (Slave doesn't acknowledge its address) Master restarts communication */ if (HAL_I2C_GetError(&hi2c1) != HAL_I2C_ERROR_AF) { errorcount = 20; Error_Handler(); } } /* Now get the return byte of the register in i2cbuffer[0, 1] with 1 sec delay max*/ while(HAL_I2C_Master_Receive(&hi2c1, D
Hi,I've got 2 I-Nucleo-LRWAN1 shields on 2 STM32 Nucleo64 F103-RB boards. I've uploaded PingPong example from : https://github.com/stm32duino/I-NUCLEO-LRWAN1 and it works but when I've tried to modify code and send longer message (for example "ABCDEFG123") i received on second board only first four characters "ABCD".I checked modules by BridgeSerial and it works. Software version is: 2.9.I cannot update firmware to newer version, after connection to ST-Link on STM32 Board there is info in ST-Link utility that it has Read Out Protection.I also paste my simple code I used for testing.Tx:#include "LoRaRadio.h" #define SEND_PERIOD_MS 2000 HardwareSerial SerialLora(PC_11, PC_10); uint8_t Message[] = "ABCDEFGH"; //uint8_t len=0; //int timer=0; //uint8_t x=0; void setup() { Serial.begin(115200); Serial.println("!! Tx !!"); while(!loraRadio.begin(&SerialLora)) { Serial.println("LoRa module not ready"); &nbs
Hi greetings,I am using Murata module with STM32CubeExpansion_LRWAN_V1.3.1 STM32L073RZ-Nucleo code. with below details1. GATEWAY KERLINK2. CLASS C3. UPLINK and Downlink4. Loriot Network Servercommunication is going well. but after fix 24 hour I am not able to receive data at network server side.and in case of B-L072Z-LRWAN1 code with development board I not face this issue.last from loriot networkside a DevStetusReq 06 {} command transmit from network server side after then no communication happen end node stuck after hard reset again work.please suggest how to continuous communication enable in STM32L073RZ-Nucleo Hw.
I have recently downloaded STM32CubeExpansion_LRWAN_V1.2.1.In the main.c of the End_Node example I commented all the sensor related variables etc. and just tried to send letter 'H' with AppData.Buff[i++] = 'H';The message gets though but it keeps changing letters by itself. For example first letter is blank space, then on the next transmit comes the 'H', then ';'...I do not understand what could be causing this.
I use custom application with FreeRTOS.When I embed a power save mechanism, the FW periodically have an unhandled hardfault when use "maybe" stop mode API.After more investigation like:pending ISR CFG_HW_ENTRY_STOP_MODE_SEMID and CFG_HW_RCC_SEMIDhardfault by address 0x58001412 (it is a HSEM ISR CFG_HW_ENTRY_STOP_MODE_SEMID)and so elsei chesk an API function "PWR_EnterStopMode". In this func I comment all code who used a CFG_HW_RCC_SEMID and FW stay work fine.P.S when disable a stop mode likeUTIL_LPM_SetStopMode(1 << CFG_LPM_APP, UTIL_LPM_DISABLE); all work fine without any commenting.What could be and why?Thanks.
Hello. I'm currently working with the STM32WB55 controller and the Nucleo demo board. I successfully used the BLE heartrate example. Now, I try to tailor the example for my needs because at the end I would like to run a similar application on the STM32WB50 controller.Right now, I'm trying to reconfigure the RFWakeupClockSource. The heartrate example specifies the LSE clock as RF WakeupClock. On my customized board with the STM32WB50 controller, I don't have an external crystal for the LSE. So, I would like to use another clock source. There is also the option to use the HSE divided by 1024.But if I select the divided HSE clock source, the controller is advertising but I'm not able to connect to it anymore. I enabled the serial debug output and this is what I see:Device Information Service (DIS) is added Successfully 000C Manufacturer Name Characteristic Added Successfully 000D Heart Rate Service (HRS) is added Successfully 000F Heart Rate Measurement Characteristic Added Successfully
Dear Members,Is there any STM32 product spesifically for ANT+ ?Examples ? Dev board ?Thanks
Hi All,I am quite new to LoRa so if I am in the wrong forum area I do apologise. If anyone has any information based on my issues below I would appreciate a reply.I have followed the setup guide from STMicroelectronics for the P-Nucleo-LRWAN2:I have loaded the following bin file to the gateway: st-nucleo-lora-gw-at-fw-v2.1.7-eu868-TTN.binI have loaded the I-NUCLEO_LRWAN1 with the AT_Master firmware as instructed.
HelloI am implementing the SBSFU on STM32WB. Thus I have a question on the figure 53 page 88 in UM2262 Rev 6.I need to have the "Loader" inside the "Active image", since the active image links the BLE software stack and OTA will be done via BLE. So the user application of the "Active image" needs write access to the "Download image" region.Is this possible? How can I do?Best regardsPaul
and i also checked the radio.send function its work properly that means spi work properly but data is not sending .please help me any one
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.