WATCH ON-DEMAND | STM32 Summit 2026
Ask questions and find answers on connectivity ICs, focusing on protocols and I2C challenges on STM32 Nucleo boards and BlueNRG products.
Most recent activity
After once BLE Initialize and authentication set by fixed pairing key as "123456" then can we change again pairing key to "123678".Means BLE will disconnected and I will configure its authentication fixed pairing key with other value during run time of my application. To ensure security as fixed pairing "123456" can known by unknown user also and he will connect to device easily but if I will change pairing key to some other value (whatever user wants of 6 digit) then unknown user will not easily connect to device which will secure my device.
The ST202EB (ST202EC, ST232EB, ST202EB, ...) RS232 receiver's datasheets shows the following application circuit.Table 7 lists recommended capacitors values for C2-C5 (for the device ST202E is states 0.1 nF, for device ST232 it states 1uF).I think this is a typo. It should rather read C1-C4, as these capacitors are associated directly with the voltage doubler and voltage inverter stages of the tranceiver IC. I believe that C5 is rather a simple bypass/decoupling capacitor.What do you think?Best regards,Dan
Hi everyone,(I am using TrueStudio/St-LinkV2)I am using the S2LP on a custom board. Everything worked fine (basic transmission, STack packet) until I wanted to use the auto-acknowledgment feature.Following the procedure (DS, 8.1), I have enabled AUTO-ACK on RX side and enabled ACK request (NACK bit = '0') on TX side.Here are the results :all packets are correctly received and read on the RX side (I am debugging via UART, so I can confirm that each packet is received) + I also can confirm that the received NACK bit is always '0' and the AUTO-ACK is always enabled at each received packet (confirmed by reading s2lp registers using printf/SWO)but on TX side, the ACK packet is received in 25% of transmissions (TX_DATA_SENT IRQ notification). For the other transmissions, I get a timeout! Timeout is set to 2 seconds, so this should be quite enough ;)Am I missing something? Does someone have any idea how to debug this?Thanks in advance,Tristan
Hello,I am using STEVAL-IDB007V1M and tried to upload the BLE_SensorDemo located on ..\ST\BlueNRG-1_2 DK 3.1.0\Project\BLE_Examples\BLE_SensorDemo\MDK-ARM\STEVAL-IDB007V1M . Compiled it using Keil and my android phone is not detecting it. From this question : https://community.st.com/s/question/0D50X00009XkXIQSA3/stevalidb007v1m-not-transmitting-at-allI tried to define HS_SPEED_XTAL=HS_SPEED_XTAL_32MHZ and still not working. But the given hex file on the link above is working properly.Also, any BLE Examples on the Navigator is not working.
We're using two Blue-NRG2 devices and we would like to implement firmware OTA upgrade without using computer. The goal is to read the binary image file through UART by master device, and then send it to slave device via OTA. Upgrading with BlueNRG GUI works fine, but we couldn't find any example software for master device explaining how to send an image file through radio (only OTA-Server example, which works with radio low-lever driver). Is there any example/manual/solution which we could refer to for writing OTA master software?
What software/hardware tools do i need to start developing a custom application on these devices?Can I use the embedded MCU to control a few externals peripheral devices so the bluenrg act as main application processor?
Hi I'm trying to get a codec up and running in full duplex using I2S with an STM32F407ZGT6 as MCU. I configure the project using STM32CubeIDE and thus also STM32CubeMx. I have got a skeleton generated but the function HAL_I2S_MSP_INIT that is generated states that the user should implement it - but unfortunately I'm clueless as to what it should do - so any pointer to what is supposed to happen in that function will be greatly appreciated.
Hello when i try to import some TrueStudio example from BlueNRG-1_2 DK 3.1.0 into Cube IDE this one ask me to select the correct MCU and the BlueNRG V2 is not proposed ? Any idea ?
according to the BlueNRG-MS Bluetooth LE stack aci :aci_gap_set_discoverable(......,SlaveConnIntervMin,SlaveConnIntervMax) the last two parameter value range :0x0006~0x0c80,but the STM32CubeExpansion_BLE1_V4.40why the last two parameter are 0???l
Sensor-Node (FP-SNS-6LPNODE1) - Wifi Bridge(FP-NET-6LPWIFI1) Is there any way to send a message like HTTP Get to the web server via Wifi Bridge?Sensor-Node needs to send an http get message to the web server, which is not good.
Hi, i am trying to connect the SPBTLE-1S device to the computer in order to advertise, but i am having troubles.i cant find anywhere which pins are needed for the GUI and what the module is preflashed withKind Regards,Mike
I'm attempting to build a React Native app that reads data from a Sensortile over BLE. I am scanning, connecting and getting the UUIDs of services and characteristics. How do I determine which service/characteristic has the data I need? For example accelerator/gyro/magnetometer?
Hello, we are working with a STM32F469I-DISCO board and the new STM32CubeIDE.We have followed some discussion in the community (mainly for the STM32F746). The board seems configured correctly, after the command: otm8009a.c/* Send Command Display On */DSI_IO_WriteCmd(0, (uint8_t *)ShortRegData44); otm8009a.hconst uint8_t ShortRegData44[] = {OTM8009A_CMD_DISPON, 0x00};the display shows the following image:But then we couldn't see our UI, it seems that the OS is stopped after the entryEvent of the GUI:void TGFX_GuiTask(void * argument){ touchgfx::HAL::getInstance()->taskEntry();}
..
To exchange data with my display I am using the i2c protocol. I decided to exchange data with the DMA but I have problems. Without DMA everything works perfectly. Communication does not go well with Dma. The configuration is the default, and the only difference in the code is the name of the 'transmit' and 'receive' ending with DMA. What can the problem be due to? I'm going crazyConfiguration DMA /* I2C1_TX Init */ hdma_i2c1_tx.Instance = DMA1_Stream6; hdma_i2c1_tx.Init.Channel = DMA_CHANNEL_1; hdma_i2c1_tx.Init.Direction = DMA_MEMORY_TO_PERIPH; hdma_i2c1_tx.Init.PeriphInc = DMA_PINC_DISABLE; hdma_i2c1_tx.Init.MemInc = DMA_MINC_ENABLE; hdma_i2c1_tx.Init.PeriphDataAlignment = DMA_PDATAALIGN_HALFWORD; hdma_i2c1_tx.Init.MemDataAlignment = DMA_MDATAALIGN_HALFWORD; hdma_i2c1_tx.Init.Mode = DMA_NORMAL; hdma_i2c1_tx.Init.Priority = DMA_PRIORITY_VERY_HIGH; hdma_i2c1_tx.Init.FIFOMode = DMA_FIFOMODE_DISABLE;
Enabling readout protection on the BlueNRG-2 requires programming the last two words of flash to some value other than all 0xFF's. These two locations are 0x1007FFF8 ans 0x1007FFFC. The default standard memory map for the BlueNRG-2 places the NVM region from 0x1007F000 to 0x1007FFFF, overlapping the readout protection locations. Is it possible for the readout protection locations to be erased by normal operation of the BlueNRG-2? I would think that over time as data stored here changes that eventually this region of flash will have to be erased and reprogrammed. If this is the case then should I modify the memory map to put the NVM in another location? Will moving the NVM cause any problems?
I am trying to program BlueNRG-2 device with low level radio APIs. Every time a packet received with crc error, the time schedule of the communication is disrupted, since the time is random for packets with crc error. I wonder how to disable the interrupt generated by packet receive with crc error.Thanks
In the BlueNRG example application the maximum sample rate is 16KHz. Is it possible to increase it without compressing the samples further (just increase the BLE bandwidth)?
Hello, I look for solutions for a problem that I have.I am designing a USB-OTG stage for the STM32F469ZIT6 microcontroller.What I'm looking for is that through a pendrive with standard type A connector can automatically load a .bin application.The problem I have is whether or not to connect the pendrive seems to be that the microcontroller detects that it is always connected (even if it is not), that is, nothing works from this stage.I enclose my electrical diagram so you can advise me on the design and tell me what I have to change, remove or add so that I can perform the function I need.Thank you.
Hi,I am exploring X-NUCLEO_IDB05A1 with STM32F401RET Nucleo, and I'm following Tutorial 7 – Using the X-Cube-BLE1 software pack (UM1718) , I'm getting build errors in console. Errors like:..\Src\app_x-cube-ble1.c:37:27: fatal error: nucleo_f401re.h: No such file or directory #include "nucleo_f401re.h"I've looked for the file but it hasn't been generated.Instead in file stm32f4_nucleo_f401re.h there is written: ****************************************************************************** * @file : nucleo_f401re.h * @brief : header file for the BSP Common driver ******************************************************************************Is it a name convention issue?My I replace #include "nucleo_f401re.h" with #include "stm32f4_nucleo_f401re.h" in file app_x-cube-ble1.c ?Thanks Andrea
Hello.I want to use the Arduino Connectors on the STEVAL-STLCX01V1 board.I know that i need to use the GPIO functions (in the "stm32l4xx_hal_gpio.c" library):void HAL_GPIO_Init(GPIO_TypeDef *GPIOx, GPIO_InitTypeDef *GPIO_Init) void HAL_GPIO_DeInit(GPIO_TypeDef *GPIOx, uint32_t GPIO_Pin) void GPIO_PinState HAL_GPIO_ReadPin(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin) void HAL_GPIO_WritePin(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin, GPIO_PinState PinState) void HAL_GPIO_TogglePin(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin)But i don't know how to use them. I mean, for example, if i want to use the D2 pin in the CN9 Arduino Connectors, what do i write in the GPIOx and GPIO_Pin variable?How do i know which pin in the Arduino Connectors correspond to it's GPIOx and GPIO_Pin variable?Also, after i know the GPIOx and GPIO_Pin that i want to use, how do i use them? i mean, which functions do i use to operate those pins?Thank you for your help,Reshef Finkelstein
when programming, GPIO 9 and 10 are programming pins and connected to header, can i also use it as input/output pin when debugging ?
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.