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
So, I created a PCB with the STUSB4500, and I thought it would be a simple matter of having some breakouts where I could connect an arduino to the I2C lines to flash the NVM. Unfortunately, I cannot get it to work.I can do a basic I2C scan to find that the chip is at address 0x28, so the STUSB4500 must have a solid connection to the arduino... The arduino sketch that I am using to flash the NVM is from the following link:https://github.com/oxplot/fabpide2/blob/master/arduino/stusb4500_flasher/stusb4500_flasher.ino(Haha, unfortunately I see now that the latest commit is labeled "still not working"...) The sketch will always hang when it is waiting for a response from reading FTP_CTRL_0, which I assume means that no data has been successfully received.I've been playing around with it and trying to make sure that sketch is working according to this Registry Description that I found, but I cannot find any mistakes in the protocol in the sketch:https://github.com/timkruse/stusb4500/blob/mas
I have hade issues now for 8 month, I cant connect to the stusb4500 chip i have on my custom board for PD profile programming, The gui always tells me there is no board connected and the HW checker wont find anything. I can connect to the f0732 with the Cube programmer but not more than that. Anyone with possible help ? ? :beaming_face_with_smiling_eyes: /V
we are making a project based on BLE using BlueNRG-2 but I will be using my own stm32 controller. Thus, I want to know whether I can control BlueNRG-2 via other stm32 controllers...
I have been trying to get help from STM technical support for over six weeks but no response.
I am using BlueNRG2 for a project, and using jtag segger as burner/debugger.The application is simple, i have activated all 3 leds and using the microcontroller with sleep mode.but when my system wakes, the red keeps glowing. The code is:BTLE_StackTick(); BlueNRG_Sleep(SLEEPMODE_NOTIMER, wakeup_source, wakeup_level);GPIO_WriteBit(GPIO_Pin_6 | GPIO_Pin_7 | GPIO_Pin_14, Bit_SET);Clock_Wait(1000);GPIO_WriteBit(GPIO_Pin_6 | GPIO_Pin_7 | GPIO_Pin_14, Bit_RESET);Like i said, the red led does not goes off even when system is in sleep mode.
I have Contiki Coap server and client running on our two prototype boards with SPSGRF-915 module mounted on it. One node is on roof inside HVAC unit and second one is in the lab. The node on roof is not able to send data to the node in lab (in lab both nodes are communicating). I want to configure SPIRIT1 (SPSGRF-915) to maximum output power level. This is how it is done currently; #define POWER_DBM 11.6 st_lib_spirit_radio_set_pa_level_dbm(0,POWER_DBM); st_lib_spirit_radio_set_pa_level_max_index(0); /** * @brief Sets a specific PA_LEVEL register, with a value given in dBm. * @param cIndex PA_LEVEL to set. This parameter shall be in the range [0:7]. * @param fPowerdBm PA value to write expressed in dBm . Be sure that this values is in the * correct range [-PA_LOWER_LIMIT: PA_UPPER_LIMIT] dBm. * @retval None. * @note This function makes use of the @ref SpiritRadioGetdBm2Reg fcn to interpolate the * power value. */ void SpiritRadioSetPALeveldBm(uint8_t cIndex, float
Hi, for my thesis, I am doing a project with SensorTile (STEVAL-STLKT01V1), and I am trying to let him communicate with my computer (I have Windows 10), but until now I have only been able to pair the SensorTile with my computer. I followed the UCLA tutorials, but about the BLE communication they use only Linux. Can anyone help me?
Hi,I am using BlueNRG-MS stack w/ STM32L475 MCU.I realized that I loose BLE packets, and I found the reason being calling free_event_list on hci_send_req which might drop already received packets, and results in error.Why doing this? Is this necessary? this is causing BLE comms being unstable at times.Not to mention this is hidden in code without passing the information that some packets have been dropped.I know that I can try to avoid this by increasing HCI_READ_PACKET_NUM_MAX by I prefer not to fix it in that way,Kind regards,Yuval
I need an ibis model of M41T82 for signal integrity simulation on HyperLynx.
Is there any point in asking questions here?If I look down the list of discussion titles, hardly any are answered.
I am specifically trying to receive a packet from a SPIRIT1 transmitter on another receiver.
..
Sensor: STWINKTIs there any service that i can cal so that once the sensor receives it, it will go into shutdown/restart mode?
Hello ST Community,I have Blue NRG 2 Bluetooth SoC. I want to make this SoC as slave device for my STM32H7 board using any protocol(e.g. I2C, SPI etc).Is there any feasible way to achieve this.Thanks in advance.Regards,Swapnil Champaneria
Using the X-CUBE-BLE1 expansion software package for STM32Cube or other examples, is it possible to scan and create a list of all of the Bluetooth MAC addresses within range? Are there any examples of this that someone could point me too? I am using IAR Workbench but am currently in the process of selecting ST hardware for this project.
GPIO PA15 input connnected to infrared receiver, I am using a NEC standard remote.This code work with 2 different NEC remote command.DelayUs function found on the post "Delay in us".//*************************************************************************************** //* Infrared on PA15 //*************************************************************************************** uint32_t getUs(void) { uint32_t usTicks = HAL_RCC_GetSysClockFreq() / 1000000; register uint32_t ms, cycle_cnt; do { ms = HAL_GetTick(); cycle_cnt = SysTick->VAL; } while (ms != HAL_GetTick()); return (ms * 1000) + (usTicks * 1000 - cycle_cnt) / usTicks; } void delayUs(uint16_t micros) { uint32_t start = getUs(); while (getUs()-start < (uint32_t) micros) { __asm("nop"); } } void EXTI15_10_IRQHandler(void) { #define MAX_NEG_START (10000) #define MIN_NEG_START (8000) #define MAX_POS_START (5000) #define MIN_POS_START (3500) #define MAX_POS_R
I receive the external event from infrared remote and I want to simulate the click on a specific button.Here the port PA15 is used like IR input, this code has been add in the file stm32746g_discovery.c.void EXTI15_10_IRQHandler(void){ HAL_GPIO_EXTI_IRQHandler(GPIO_PIN_15); if (HAL_GPIO_ReadPin(GPIOA, GPIO_PIN_15)) return; BSP_LED_Toggle(LED_GREEN); ..... [decode IR] [click button]}void BSP_IR_Init(){ GPIO_InitTypeDef gpio_init_structure; __HAL_RCC_GPIOA_CLK_ENABLE(); gpio_init_structure.Pin = GPIO_PIN_15; gpio_init_structure.Mode = GPIO_MODE_IT_FALLING; gpio_init_structure.Pull = GPIO_PULLUP; HAL_GPIO_Init(GPIOA, &gpio_init_structure); HAL_NVIC_SetPriority(EXTI15_10_IRQn, 0, 0); HAL_NVIC_EnableIRQ(EXTI15_10_IRQn);}in the file Screen1View.cppvoid Screen1View::setupScreen(){ #ifdef SIMULATOR printf("LED on\n"); #else &nbs
Also adding these includes it is impossible to modify text in the screen or select a button from the main.cpp - main() - while(1) { }/* USER CODE BEGIN Includes */#include <stm32746g_discovery_qspi.h>#include <gui/screen1_screen/Screen1View.hpp>#include <gui_generated/screen1_screen/Screen1ViewBase.hpp>/* USER CODE END Includes *//* Start scheduler */ osKernelStart(); /* We should never get here as control is now taken by the scheduler */ /* Infinite loop */ /* USER CODE BEGIN WHILE */ while (1) { /* USER CODE END WHILE */ Screen1View().setIRBuffer("pippo"); <<<<< NEVER GO HERE !!! /* USER CODE BEGIN 3 */ } /* USER CODE END 3 */
To integrate in the application the EEPROM read and write functions is necessary integrate in the compile and link phase the code of stm32746g_discovery_eeprom.c and stm32746g_discovery_eeprom.h.
int main() {SystemInit(); SysCtrl_PeripheralClockCmd(CLOCK_PERIPH_GPIO, ENABLE); SysCtrl_PeripheralClockCmd(CLOCK_PERIPH_SYS_CONTROL, ENABLE);GPIO_InitType GPIO_structInit; GPIO_structInit.GPIO_Pin = GPIO_Pin_9; GPIO_structInit.GPIO_Mode = Serial2_Mode; GPIO_structInit.GPIO_HighPwr = ENABLE; GPIO_structInit.GPIO_Pull = DISABLE; GPIO_Init(&GPIO_structInit);}
I would like to add a TMR interrupt to manage an action every 1sec.Code used now in the stm32746g_discovery.c file:void TIM2_IRQHandler(void){ if (TIM_GetITStatus(TIM2, TIM_IT_Update) != RESET) { TIM_ClearITPendingBit(TIM2, TIM_IT_Update); STM32vldiscovery_LEDToggle(LED3); }}void BSP_TIM2_Init(){ TIM_TimeBaseInitTypeDef TIM_StructInit; NVIC_InitTypeDef NVIC_StructInit; RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM2, ENABLE); TIM_StructInit.TIM_Period=Period; TIM_StructInit.TIM_Prescaler=Prescaler; TIM_StructInit.TIM_ClockDivision=TIM_CKD_DIV1; TIM_StructInit.TIM_CounterMode=TIM_CounterMode_Up; TIM_StructInit.TIM_RepetitionCounter=0; TIM_TimeBaseInit(TIM2, &TIM_StructInit); TIM_ITConfig(TIM2, TIM_IT_Update, ENABLE); TIM_Cmd(TIM2, ENABLE); TIM_ClearFlag(TIM2, TIM_FLAG_Update); NVIC_StructInit.NVIC_IRQChannel=TIM2_IRQn; NVIC_StructInit.NVIC_IRQChannelCmd
aci_gatt_disc_char_by_uuid() takes in the region of 2-3 seconds to fire the aci_gatt_proc_complete_event()why does it take so long? Anyway to speed this up?I have 6 characteristics so that 12 seconds +
Is there an example to see how to use the I2C inside a TouchGFX application ?I have found the following functions but how to select the target I2C port because I have 4 i2C ports on my 32F746G-DISCO.I don't know which is the I2C port number for the CN2 connector.I2C_HandleTypeDef i2c_handler;I2Cx_Init(&i2c_handler);I2Cx_WriteData(0x20), 0x11, 0x00);
Hello ! I use a NUCLEO L152RE combined with S2LP eval board (X-NUCLEO-S2868A1). I managed to successfully register the node thanks to the S2-LP_Sigfox_DK. I'm in France so I used RC1. Then I could send some message to the sigfox backend. That's great ! :grinning_face: Now I would like to build my own application. Here's what I did first : I downloaded STM32CubeExpansion_SFXS2LP_V1.1.0. I flashed my setup with Sigfox_PushButton_L1.bin. I pushed the button but could not get any new message on the sigfox backendI then flashed my setup with Sigfox_CLI_L1.bin. Surprisingly, this time, when I pushed the button, I did receive the button count on the sigfox backend ! Does Sigfox_CLI_L1.bin contains the PushButton code ? I'm also wondering why Sigfox_PushButton_L1.bin does not seem to work...Then I tried to open the PushButton project in SW4STM. But I get compile issues : fatal error: radio_shield_Config.h: No such file or directory mcu_api.c /NUCLEO_L1_ALL/Middlewares/Sigfox_STM32 line 46 C/C+
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.