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 created a project in CubeMX with CubeWB. Set the device to beacon mode (UID). On initialization, I can set the NamespaceID and BeaconID. But I do not understand how I can change this data during the operation of the beacon. Please tell me the sequence of actions. Perhaps there is a visual solution?
Hello. When I send data from my phone (ST BLE Toolbox App) to my stm32wb55rg nucleo board the code enter in Custom_STM_Event_Handler(void *Event) function in custom.stm. The description of this function sais that the parameter *Event is the location of the buffer of the event. Im sending 0x1111, but when I display the variable event_pkt im not able to see the value i have set or the direction of the memory of the value. Do you know what could happend?Thank you.
I am using BLE peripheral on STM32WB5MMG module. For some reason the BLE gets disconnects on its own and not able to connect it again when it disconnects on its own. So I want to understand on what event BLE gets disconnects. Is it anyway possible to get events due to which disconnection happens from the firmware itself, since I am not getting disconnection event on the firmware. For now I am using NRF app to connect to BLE and I have enclosed the image on what I have observed on the app. Just wanted to know how can I find reason for disconnection happening through function available in STM32CubeIde.
Hi I am testing STM32WL55.I am testing UART1 of STM32WL55 by referring to SubGHz_Phy_PingPongI can transmit data using UTIL_ADV_TRACE_Send.I tried to receive data from terminal using UART1.But it didnot work.I inserted UTIL_ADV_TRACE_StartRxProcess(TRACE_RxCpltCallback); in SystemApp_Init();TRACE_RxCpltCallback is as belows void TRACE_RxCpltCallback(uint8_t *PData, uint16_t Size, uint8_t Error) { UTIL_ADV_TRACE_Send(PData, Size); }When data is input from the terminal, no data is returned.When a break point is set in the TRACE_RxCpltCallback function, a break is not caught when inputting data.When I set HAL_UART_RxCpltCallback function, a break is caught in HAL_UART_RxCpltCallback function when inputting dataWhen inputting data, Should TRACE_RxCpltCallback run when data is entered? Or should HAL_UART_RxCpltCallback work?Let me know that.Please Let me eplain how to resolve the problem if there are other problems or not1. SystemApp_Init() function void SystemApp_Init(void) {&n
Hello ST - would you please clarify these two errata and share the missing formula from PM0271:Slot guard time (1.25 ms or 1.5 ms?The last sentence of 5.2 specifies a 1.25 ms guard time.5.2.2 specifies a 1.5 ms guard time and Figure 22 shows 1.5 ms guard times.Advertising interval minimum?5.1.1 specifies a random offset of 0..10 ms.5.2.3 specifies a length of 14.6 ms which "cannot be reduced" but only references min/max interval plus 5 ms (i.e. not min/max plus 10 ms).So is the realizable minimum advertising interval 14.6 + 10 --> 24.6 (plus I presume a 1.5 ms guard time, so 26.1 rounded to 1.25 ms multiple, so 26.25).Or is the random delay specified at 10 ms but ST SW truncates to 5 ms, so min adv int that can be realized is actually 14.6 + 5 --> 19.6? If so, would a mandatory 1.5 ms guard time be added to that?Finally, where can we find the formula referred to in 5.4:The following formula is defined:• GET_Master_Slave_device_connection_parameters(Num_Masters, Num_Slaves, Scan_W
Hi, I use an Nucleo-32WL55JC1 with one MS5637 (pressure sensor). (The point is not the precise sensor but the I2C communication. )In CubeMX, I designed the pins : In main.c, I added : I2C_HandleTypeDef hi2c1;And in the main function : BSP_LED_Init(LED3);And in the error handler : In order to see errors without the debeugger.Then, in lora_app.c, #include "i2c.h"at the begging of the SendTxData(): The results : Then, 5 seconds after, the RED LED blinks -> Thus, It's in Error_HandlerBUTif I comment this line : my_ret=HAL_I2C_Master_Transmit(&hi2c1, MS5637_ADDRESS_W, pMS5637_RESET, sizeof(pMS5637_RESET), 50); -> It's work well, I receive messagesInstead of the action 1, if in sys_conf.h I put 1 to LOW_POWER_DISABLE and 1 also to DEBUGGER_ENABLED -> It's work well, I receive messagesThus, I cannot see clearly the problem because each time with the debeugger it is ok but without it it's not ! Thank you for your help
Was anybody able to implement a custom BLE profile for the STM32WB55 using STM32CubeIDE v1.7 (or around) and the firmware package 1.11.1 (or around)? I would like to recreate and make publicly available this workshop. It is out-of-date.
I want to use an STM32WB module as a ble beacon receiver/detector so I can monitor beacons on my PC using a uart or USB vcom? Are there any examples that can help me and if "Yes" where can I find them?
All examples of the github repo are at least a few 10 of thousands lines of code big.I just want to share a few bytes of information over ble. Is there a really simple example without timeserver, freertos and that kind of stuff?Just like:start CPU2init hardwareadd servicesstart bleand how to get and send data?I can't find a complete documentation on how to use your ble libraries. Where can i find "opus.h", what are the possibile defines for ble_conf.h, why is the ble using files from ble_thread per default?Maybe there are some geeks who can work with that, but I'm just struggling.
Hi,I'm trying to make SRAM2a retention in standby mode work on my STM32WB55 device.As far as I can tell, the device enters and gets out of Standby as expected (the C1SBF and C2SBF flags are appropriately set when the MCU get sout of the low power state).I've reasonably certain of my variable being in the right SRAM bank (the debugger shows its address is 0x200300000, which is the start of SRAM2a as expected).However, even after making sure the RRS bit in PWR_CR3 is set, and checking that the varible is appropriately initialized before entering Standby, I still get its value back to zero after the device wakes up...My device is powered with all its power supply pins (even VBAT) to 3.3V, no SMPS.Linker script and startup code are directly from STM32CubeMX generation with the latest firmware package (STM32Cube_FW_WB_V1.12.1)Any ideas ? Obvious errors ? Thanks in advance./** * @brief Function to configure and enter in Standby Mode. * @param None * @retval None */ void EnterStandbyMode(
We accidentally bought a few Nucleo-WL55JC2 modules whereas we really wanted Nucleo-WL55JC1 modules. My understanding is that the JC2s are intended for AS433 applications. I would have expected the join to be unseccessful, though. However, we successfully got the JC2s to join our US915 configured gateways. Is this expected behavior?
I am trying to use the pushbutton of NUCLEO-WB55RG and I tried coding it in both external interrupts and also as a gpio input. The pin configuration is correct. The same code is running on other Nucleo boards such as L496 and L432. But the code does not work on wb55rg. I am using cubemx to generate the code and development is done with keil. Please do help me on this
I have configured the stm32wb with 247 data transmission but in the receiver side the buffer seems like it transferred only 20 bytes in the notification. For note: The values are updated in the 255 sized cmd_buffer in the aci_gatt_update_char_value() function. But it notified only 20 bytes of data in the mobile application.Can anyone help me according to the proper configuration of the stm32wb for transmit 249 data at a time. Thanks! in advance.
I am developing a bootloader where it must install a new stack using the FUS (STM32WBxx). When I am debugging and I call into CPU2 to start the FUS, the JTAG loses connection and will not reconnect until I reset everything. Is there a way to handle this so that I can debug my bootloader?
Hi All,I'm creating a TTN application using a STM32WLE5JC. After configuring the LoRaWAN application in STM32CubeIDE I have been able to send an OTAA join request to a gateway using the credentials provided by the TTN application. I can see the join request being accepted in the TTN console and I can also see the radio activity in SDRsharp. My problem is the following: Even though the TTN application accepts my OTAA request, my LoRa application on the STM32 always end up with a "MAC txTimeOut" message over the debug trace output. I can see that this message always appears 4 seconds after the OTAA Tx. Looking at the TTN console and the local radio activity, I can see that the gateway does in fact respond, but it takes about 5 seconds.My assumption is that the gateway takes longer to reply to the join request, and that the STM32 thus ignores this late reply. Some more information:I am using the 868 MHz EU band.The TTN application uses MAC V1.0.3The 4 second trace message corresponds to 4
I don't understand if a function that you have set in the sequencer goes out of the sequencer once it has been executed or you have to do it with code. I have read AN5289 and I didn't find out the answer. Thanks in advance.
I am using STM32WB55 HeartRate FREERTOS Example. But when I do something in the Task, it runs only once though it has a while 1 Loop. Can anyone guide me with that?Thanks in Advance.
Using the STM32WB55CG (USB dongle) with the P-NUCLEO kit.STM32CubeMonitor-RF on my win10 will not detect the COM I am using. I updated the FUS, BLE_stack, FW as described using STM32CubeProgrammer 2.8.0.UM228 says something about VCOM drivers, how do I get those?Anything else that might be causing it?All programing went well using STM32CubeProgrammer.Full Details:FUS: 1.2.0.0 Path:STM32WB_Copro_Wireless_Binaries\STM32WB5x\stm32wb5x_FUS_fw_for_fus_0_5_3Address: 0x080EC000Stack: 1.12.0Path: STM32WB_Copro_Wireless_Binaries\STM32WB5x\stm32wb5x_BLE_Stack_full_fwAddress:0x080CA000FW:P-NUCLEO-WB55.USBDongle\Applications\BLE\BLE_TransparentModeVCP\Binary\BLE_TransparentModeVCP_reference
Because the dongle is a USB and I am not sure how to move the data to computer. Do I need another main board and transmit data from dongle to the main board again? Or is there a simple way that I can directly access the data in dongle?Looking forward to reply. Thanks!
Hello!I'm trying to build an Android app to connect to my STM32WB device using a custom BLE profile.I'm able to connect and interact with my device via the ST BLE Toolbox app, but when I try to create a Bluetooth socket within Android studio and connect to my service's UUID, it's timing out.Is there any documentation out there on how to connect to a custom profile, or how to create a peripheral profile so I can connect within the Android system itself (like headphones)?Thank you! :)
Hi,I'm trying to send 32 bit data with DMA over SPI to a slave device with the STM32WB55 which can only be configured to use hardware NSS with 16 bit transfers at most. I understand that I will likely have to pull the chip select down manually, send 16 bits twice consecutively, and then pull the chip select up and repeat. I would have liked to be able to do this automatically without wasting any time as I will be sending a continuous stream of data. However, if I understand correctly, this cannot be done by hardware for the 32 bit case. I am wondering if there is a fast way to do this without constantly polling a flag or something like that as I also want to send the data received back over bluetooth. Any advice/ thoughts would be much appreciated.Thanks,SS
is it possible to use 'STM32CubeMonitor-RF' by stm32fxxx series with a Bluetooth module to analyze data?tanx
Hi,I am trying to activate LSE in a project with STM32WLE5CCU6, the pins PC14 and PC15 are activated, but in the window with clock tree, the RTC clock mux does not alow me to select LSE (it is locked on LSI). This happens even if all other pins are unused. I am using CubeMX version 6.3.0.Does anybody encounter this problem? I am doing something wrong? Can anyone check?Thank you
Hello guys, I'm currently working on a STM32WB55VGY and I have some problem setting up the Zigbee network.Using the example I found in the repository I was able to create a simple Zigbee network using the preconfiguredLinkKey.Now I would like to go further and trying using the network key to protect the communication but I found some problem setting the network with the network key.From the source code, I read that " /**< Configures the Network Key with key type set to ZB_SEC_KEYTYPE_STANDARD_NWK.* Only applicable if startupControl is ZbStartTypePreconfigured. */"So I configured zigbee_app_info.startupControl = ZbStartTypePreconfigured;Then I Setup the Extended Pan ID to a Random value (From the Source code " *If startupControl is ZbStartTypePreconfigured a non-zero extendedPanId must be provided.") ZbNwkSet(zigbee_app_info.zb, ZB_NWK_NIB_ID_ExtendedPanId, &PanId , 8);And then I start up the ZigBee with the command status = ZbStartupWait(zigbee_app_info.zb,
Hello ST friends!I'm implementing a dimmable light profile on a STM32WB55, so I need to implement the Scenes cluster. However, when allocating the ScenesServer, I cannot register any callbacks.How do I receive the Scenes Server commands on my application?For example, the OnOffServer allocation looks like this (includes a pointer to callbacks):struct ZbZclClusterT * ZbZclOnOffServerAlloc(struct ZigBeeT *zb, uint8_t endpoint, struct ZbZclOnOffServerCallbacksT *callbacks, void *arg);On the other hand, the ScenesServer allocation looks like this (no callback pointer...)struct ZbZclClusterT * ZbZclScenesServerAlloc(struct ZigBeeT *zb, uint8_t endpoint, uint8_t maxScenes);Is it all handled by the ZigBee stack itself and I will receive the callbacks to the OnOff cluster? I will try to test this next, but for this, I will need to implement the ScenesClient first...Any clues are appreciated.
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.