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
..
Hi,i have some pairing problems with a STM32WB board and a smartphone.I have configured the STM32WB for working with the "Just Works" method (code attached).static void Ble_Hci_Gap_Gatt_Init(){ uint8_t role; uint16_t gap_service_handle, gap_dev_name_char_handle, gap_appearance_char_handle; uint8_t *bd_addr; uint16_t appearance[1] = { BLE_CFG_GAP_APPEARANCE }; hci_reset(); // Initialize HCI layer // Write the BD Address bd_addr = BleGetBdAddress(); aci_hal_write_config_data(CONFIG_DATA_PUBADDR_OFFSET, CONFIG_DATA_PUBADDR_LEN, (uint8_t*) bd_addr); // Write Identity root key used to derive LTK and CSRK aci_hal_write_config_data(CONFIG_DATA_IR_OFFSET, CONFIG_DATA_IR_LEN, (uint8_t*) BLE_CFG_IR_VALUE); // Write Encryption root key used to derive LTK and CSRK aci_hal_write_config_data(CONFIG_DATA_ER_OFFSET, CONFIG_DATA_ER_LEN, (uint8_t*) BLE_CFG_ER_VALUE); // Set TX Power to max. aci_hal_set_tx_power_level(1, CFG_TX_POWER); // Initializ
Hello!I'm working on a project where I'm trying to pair a foot motion tracking device with my STM32WB15 Nucleo board. In my case, the STM board will serve as the BLE client while the PDR (foot motion tracking device) will serve as a BLE peripheral. My issue is I'm trying to modify the p2pClient code so my STM board will attempt to pair with my sensor instead of another STM board, however after many attempts to make changes to the SVCCTL_UserEvtFlowStatus_t SVCCTL_App_Notification() function by hard-coding the PDR's bluetooth address using the SERVER_REMOTE_BDADDR variable, I'm still not seeing any progress. I have the provided UUID's for the PDR device too, but I am not sure where in the code the UUID's for the server STM board were being set in the first place.Some extra info about the sensor, as soon as the sensor is switched on it will go into discoverable mode and is visible and pair-able to devices such as my phone (using a special app). I apologize as I'm still very new to BLE an
Hey!!I have a BLE application which runs on custom server profile. There are few characteristics of a given service, where the client can modify them. I want to read these characteristics once they are updated by the client. I have tried to use "aci_gatt_read_handle_value" API but I'm not sure whether my implementation is correct or not.My implementation: ZoneConfigurationStatus_t zoneStatus; aci_gatt_read_handle_value(CustomContext.CustomZone_Configuration_StatusHdle, 0, SizeZone_Configuration_Status, &SizeZone_Configuration_Status, &SizeZone_Configuration_Status, &zoneStatus); LOG_DEBUG("zoneStatus :%d", zoneStatus);Can anyone help me out with this?Thanks,Akash
Hello everyone,I'm developping on the STM32WB15 with the wireless light stack v1.14.I want to implement a simple IoT flow for the bonding process, it goes as follow :A trigger launch the device in an open pairing modeA phone connect and bond with the deviceLater on futur advertising, I want to white list the bonded device.Another trigger would allow to pair with a device not bondedAccording to the release notes, the function is available in the light stack.My implementation goes as follow :#define CFG_BLE_ADDRESS_TYPE 0x02 /**< Bluetooth address types defined in ble_legacy.h */ aci_gap_set_authentication_requirement(BleApplicationContext.BleApplicationContext_legacy.ble SecurityParam.bonding_mode, BleApplicationContext.BleApplicationContext_legacy.bleSecurityParam.mitm_mode, CFG_SC_SUPPORT, CFG_KEYPRESS_NOTIFICATION_SUPPORT, BleApplicationContext.BleApplicationContext_legacy.bleSecurityParam.encryptionKeySizeMin, BleApplicationContext.BleApplicationContext_legacy.bleSecurit
Hello all,I am working on dual core stm32wl55.If the start address of CM4 is 0x08000000 and the start address of CM0 is 0x08020000, then everything works well, both applications work fine.But if i change the address location of the CM0 from 0x08020000 to 0x08027800, the the CM0 doesn't work, only CM4.The STM32WL55JCIX_FLASH.ld of CM0:system_stm32wlxx.cDoes anyone have an idea what is wrong?
Hello I need send data from server to client, I did it, with the next command uint8_t data= 8; uint8_t *send_data= &data;P2PS_STM_App_Update_Char(P2P_NOTIFY_CHAR_UUID, send_data);But in "ST BLE Sensor" I can flash the lamp but can not receive value, it is always - 0 do you know which command better to use
The example project BLE_p2pServer ishas the debug interface configurated such as it is possible to see what is happening on the Wireless Stack.For example However if I use the project IOC file to make a new project I'm not getting any information.Actually I'm entering in app_entry.c in the correct loop. The command APP_DBG_MSG("Wireless Firmware version %d.%d.%d\n", WirelessInfo.VersionMajor, WirelessInfo.VersionMinor, WirelessInfo.VersionSub); in void APPE_SysUserEvtRx is called. However APP_DBG_MSG return a printf which in this case do not print anything. I manage to get printf working using stdio.h in the main.c infinite while loop. Therefore I think I have to do the same for the BLE App side. But do not know where to define it.Thx in advance.I attached the IOC file used.
Hello,I am trying to follow the steps in parts 12b and 12c in the STM32WB Getting Started series, but I find that my device is not detected in the ST BLE ToolBox mobile app. I am currently using an STM32WB55 dev kit with an STM32WB55RGV6U microcontroller on it. Has anybody had this problem before and if so, is there a solution?
I am trying to build my own BLE application for STM32WB5MMGHx using cubeMX with BLE custom Template , I followed all the needed steps to configure BLE APP the advertising data, services and chars. the projects build but nothing work.I debugged my projects and I found that I didn't get any interruption on IPCC (RX/TX handlers) after initializing the BLE stack.I tried also to use the same steps with Custom P2P server and it doesn't work for me and I have the same symptoms.Is there any specific configuration and setting to make it working.
Hello everyone, I am working with 3 stm32wl55JC module. 1 is receiver the other 2 is transmitter. The code has UTIL_SEQ_RegTask((1 << CFG_SEQ_Task_Sensor_Process), 0, Sensor_Process);I want to add another task which needs to work as endless loop. The task is accelerometer and it works at 20Hz. UTIL_TIMER_Create(&accelMovementTimer,0xFFFFFFFF,UTIL_TIMER_PERIODIC,movement_Process,NULL); UTIL_TIMER_SetPeriod(&accelMovementTimer,10); //10ms UTIL_TIMER_Start(&accelMovementTimer);I can get this task work with timer but I want to use sequencer. So I added this on utilities_def.htypedef enum { CFG_SEQ_Task_Sensor_Process, /* USER CODE BEGIN CFG_SEQ_Task_Id_t */ CFG_SEQ_Task_movement_Process, /* USER CODE END CFG_SEQ_Task_Id_t */ CFG_SEQ_Task_NBR } CFG_SEQ_Task_Id_t;and this line on subghz_phy_app.cUTIL_SEQ_RegTask((1 << CFG_SEQ_Task_movement_Process), 0, movement_Process);My question is how can I add this task properly ?
Hello....I am trying to do a DMA of 32 samples every second. The A/D sequence is CH1, CH2. (so 16 samples of each). I have attached a picture trying to depict what I am doing. I am starting the DMA but I never get into the Transfer Complete interrupt. The TCIE and EN bit are set as seen in the debugger. Addresses all look correct and the transfer size looks correct (0x20). My timer is going off as expected every 1 second so trigger is there. I have attached MX settings for the A/D converter. Can someone point me as to what I seem to be doing wrong?Thank you.
Using the latest version of STM32CubeIDE, the latest example Thread_Cli_Cmd, and the latest stm32wb firmware (Thread FTD 1.16.0), I am unable to get the thread stack up. The state is always "detached".Connecting to the LPUART1 for tracing, I see the following:[0000000000] [PLATFORM] M0: 802.1eive] -> ip802154_lld_set_channel(15) FAILED : 0x92!!![0ve] -> ip802154_lld_setDefaultState(RX) FAILED : 0x92!!!2m [PLATFORM] Short_Addr=FFFESome LLD driver is failing. What's odd is that regular thread applications that do not use the command line continue to work.
Case 1: without STOP2 mode UTIL_SEQ_SetTask or HW_TS_Start working fine.Case 2: without UTIL_SEQ_SetTask or HW_TS_Start calling, the device can go to sleep and wake up without any problem.case 3: when the device wakes up and after the device wakeup, if I use UTIL_SEQ_SetTask or HW_TS_Start device hangs up, and I am unable to debug also.================Sleep code==========================while (1) { /* USER CODE END WHILE */ MX_APPE_Process(); /* USER CODE BEGIN 3 */ if(Go_TO_SLEEP) { Go_TO_SLEEP = false; HAL_GPIO_WritePin(MY_LED_GPIO_Port, MY_LED_Pin,1); HAL_Delay(5000); HAL_GPIO_WritePin(MY_LED_GPIO_Port, MY_LED_Pin,0); GPIO_InitStructure.Pin = GPIO_PIN_All; GPIO_InitStructure.Mode = GPIO_MODE_ANALOG; GPIO_InitStructure.Pull = GPIO_NOPULL; // HAL_GPIO_Init(GPIOA, &GPIO_InitStructu
1. Issue: When connecting a PC to a device for the first time, disconnecting the connection after turning off the device's power, and then turning on the device's power, the PC and device should automatically reconnect, but they are not connecting.Problem: When initially connecting a PC to a device, disconnecting the connection after turning off the device's power, and subsequently turning on the device's power, the PC and device fail to automatically reconnect.2. Issue : How to remove a pin code I have two questions. If anyone knows the solution, please answer. thank you
Hi I am trying to play a little bit with STM32WLE5 MCU in order to receive raw wM-Bus packages (mode S, T and C). But I need help in setting up the radio part. Is there anyone who can provide a piece of code on how to setup the radio communication for wM-Bus using SubGHz phy of STM32WLE5?
Hi, I'm trying to send data via LoRa with two Nucleo wl55 boards, one receiving, and one sending. I made the code from the SubGHz_Phy_PingPong example, and altered only the process where the "ping-pong" happens. I'm trying to debug both boards, but the console keeps returning "Target is not responding, retrying..." when i run it (both together, and separately aswell). Any idea of what it could be?Before uploading the code, the IDE also asked me to update the ST-Link on both boards, which I did, but I don't know exactly what is the propper option to update it, so I tried the HSI and HSE, but it also didn't work. Don't know if it's related too.Appreciate the help!
Hello,The STM32WB55 on our custom board doesn't ever go into stop2 mode. Our application needs to activate BLE and advertise for a fixed time at startup, so that the system can be configured and started. After this period BLE is no longer needed, so I want to completely stop the radio and C2. C1 has to wake up now and then to continue to run the application.The application is made up of FreeRTOS tasks and uses the hardware timer service, tickless idle mode and the low power manager to handle the powermodes. Before advertisement is started, current draw is about 3mA. During advertising the current draw bumps up quite a bit to about 7.5mA. After advertising is stopped the current drops down a bit, but only down to about 6mA. I expect the current draw to go down to the original 3mA.During initialization I set the power mode for the C2 core.LL_C2_PWR_SetPowerMode(LL_PWR_MODE_STOP2);When the advertisement timeout is reached, I perform these steps to stop BLE activity and trigger the system
Hello, I wanted to ask if anyone actually is doing (or has already done successfully) the STM32WB Getting Started Series on youtube (STM32WB Getting Started Series - YouTube) and the according Nucleo Pack (P-NUCLEO-WB55 - Bluetooth 5 and 802.15.4 Nucleo Pack including USB dongle and Nucleo-64 with STM32WB55 MCUs, supports Arduino Uno V3 and ST morpho connectivity - STMicroelectronics) ?I'm currently facing the problem that even If I follow all steps in the tutorial in Detail (Flashing the FUS, then Flashing the BLE stack, then build and upload the BLE application) and the whole process works without any errors or warnings, in the end my smartphone is not able to detect the Application with the ST BLE Toolbox app. I already tried other apps like "Light Blue App" but the problem remains the same.A list of the software versions I'm currently Using:CubeMX - V 1.10.1CubeProg - V 2.13.0FUS-File: "stm32wb5x_FUS_fw_for_fus_0_5_3.bin" - BLE V 1.16.0 - Flashing-Address: 0x080EC000BLE-Stack-File:
Hello!!I developed a BLE product with STM32WB55CEU. I am preparing certification.To be certified, the STM32WB55CEU must be set up for RF testing.I set it up with Transparentmode FW for P-nuleoboard. But it didn't work.Different chipset seems to be the reason.I need help on setting up the STM32WB55CEU for RF testing.I'm running out of time, please help.
I am following this tutorial for setting up my STM32WB55 dev kit. When I generate the code and try to compile I get the following error:../STM32_WPAN/App/custom_stm.c:22:10: fatal error: common_blesvc.h: No such file or directory../STM32_WPAN/App/custom_stm.c:22:10: fatal error: common_blesvc.h: No such file or directoryUnder the 'includes' dropdown in the project explorer, all of the STM32_WPAN directories are greyed out. I'm assuming this is because these directories do not exist, because there is no `Middlewares` directory in my project. Is this something that CubeMX is supposed to generate? Or do I need to add this myself.
Hello Community,I am making a custom requirement with LoRa using STM32WLE5CCxx. The parameters for the P2P communication are given below:Frequency: 868MHzSpreading Factor: 7Coding Rate: 4/3Bandwidth: 125KHzPreamble Length: 8 TX Power: 14dBm Another thing to add I am using the RFO_HP pin transmitter section.
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.