Join discussions in the Product Forums. Ask questions, learn from your peers, and share insights on ST solutions to accelerate your design journey.
Most recent activity
When configuring the system, firmware version 1.6 is detected correctly. However, when the configuration ID is set to 1 as mentioned in the manual, it is not acknowledged by the device (shown in red).
I designed a board that uses a STM32H750 with a USB3300-EZK that has stopped communicating over USB. It's been having intermittent issues for the last day or so (sometimes I'd need to power cycle the board before it would show up, but then it would work flawlessly). Earlier today, I plugged it into a Raspberry Pi, and then it died fully. I've plugged it into that Pi before without issue.Despite probably hundreds of cycles at this point, I haven't gotten the USB to work again. The PHY is generating a stable 60MHz clock, and DIR is low. I haven't observed any communication on the D0..8 lines. That leads me to believe the problem is with the STM32.I am using pc2_c and pc3_c, which are supposed to work with USB, although I've heard they're more susceptible to (static?) damage.I do have a second board that I can switch to, although I don't have a third prototype, and it really would be good to figure out what happened here so I can prevent it from happening again.
I found in my tests that for the same sequence of operations (Radio.SetChannel -> Radio.RadioSetTxGenericConfig -> Radio.Send), the time required differs significantly between waking up from STOP2 sleep mode and waking up from Sleep mode. Here is Radio workflow:Startup -> Sleep -> Calibration -> Standby Here is the test code, with two additional modifications.void app_fsk_send(void) { if (!s_radio_init_flag) { Radio.Init(&s_radio_events); s_radio_init_flag = true; } TxConfigGeneric_t tx_config; uint8_t syncword[] = {0xC1, 0x94, 0xC1, 0x00, 0x00, 0x00, 0x00, 0x00}; if (!s_radio_init_flag) { Radio.Init(&s_radio_events); s_radio_init_flag = true; } priv_prbs9_generator(s_payload, 16); tx_config.fsk.ModulationShaping = RADIO_FSK_MOD_SHAPING_G_BT_1; tx_config.fsk.FrequencyDeviation = 40000; tx_config.fsk.BitRate = 100000; /* BitRate */ tx_config.fsk.PreambleLen = 4; /* in Byte */ tx_config.fsk.SyncWordLength = 3; /* in Byt
CubeIDE: v2.0.0CubeMX: v6.16.1Debugger: ST-LINK/V2 V2J46S7Hello,I'm attempting to setup a dual core project using STM32H757XIH MCU on CubeMX. I've generated and imported the project for CubeIDE. I've configured the Trace and Debug -> DEBUG for "Serial Wire" with M7 and M4 selected with Cortex-M7 as the initializer. I've configured one pin (PJ10) to be an output for a user LED.I've attempted to follow AN5361 "Getting started with projects based on dual-core STM32H7 microcontrollers in STM32CubeIDE" when configuring the debug profiles for the M7 project and M4 project while leaving the rest set to default.I've attached the logs to this post. Am I missing something when configuring the processor? Let me know if I need to add anymore information on my configuration.
Hello,I have a question about vscode with STM32 extension. I have setup a project with vscode and stm32 extension, and after compiler, it can do debug, and I can see the Global Variables on the VARIABLES window. as belowbut when I use vscode to do another design not with stm32 extension. I do the debug, but I cannot see the Global Variables on the VARIABLES window. as below, only Locals and Registers.Why no Global Variables? what is the difference among the 2 vscode?Thanks.
On the STM32N6, half the ram is attached to this NPU RAM on it's own bus. Are there any downsides to using this ram for non neural net applications. Use case I would like to use the NPU ram for just frame buffers. From what i can tell the memory is continues so i could put a memory buffer across potentially 2 different AXISRam sections. Just asking if i would be able to use DMA operations with the DMA2d or the GPU2.5D engine. Or if i could DMA peripheral like SPI or LTDC from these buffers Related posthttps://community.st.com/t5/stm32-mcus-products/npu-sram/m-p/808103#M279969
In our project I use STM32H573VIT6 LDO uC. We have a problem with the PB14 pin. We use 3 pins for LED control (PB10, PB13 and PB14, see photo). The problem with the PB14 is that the LED lights up dimly without code initialization. If PB14 is initialized as Output, Open Drain, No Pullup-Pulldown, it lights up dimly in the OFF state and normally in the ON state. With Output Push-Pull initialization it works normally, i.e. in the OFF state the LED does not light up and in the ON state it lights up normally. 1. What could be the problem? 2. Should I use PB14 at all and is there a potential risk of later problems?
I am trying to use the DA function of the STM32H573. I can successfully write the OBK file (with TrustZone disabled) and regression via STM32_Programmer_CLI.exe. However, I encountered an issue when trying to read the plaintext of the OBK payload in my code. I am unable to obtain the correct plaintext through SAES and DHUK.Here is part of my code:int32_t OBK_Flash_ReadEncrypted( void *pData) { uint32_t Offset =0x0100; uint32_t Length = 0x60; uint32_t i = 0U; CRYP_HandleTypeDef hcryp = { 0U }; uint32_t SaesTimeout = 100U; uint8_t DataEncrypted[MAX_SIZE] = {0U}; uint8_t *p_source = (uint8_t *) (FLASH_OBK_BASE_S + Offset); uint8_t *p_destination = (uint8_t *) DataEncrypted; uint32_t a_aes_iv[4] = {0x8001D1CEU, 0xD1CED1CEU, 0xD1CE8001U, 0xCED1CED1U}; for (i = 0U; (i < Length); i++, p_destination++, p_source++) { *p_destination = *p_source; } __HAL_RCC_SBS_CLK_ENABLE(); __HAL_RCC_SAES_CLK_ENABLE(); /* Force use of EPOCH_S value for DHUK */ //WRITE_REG(SBS_S->EPOCH
I've got an STM32U385 on a custom board that is unresponsive.The software is based on the OEMiROT trustzone example.The sequence of events that lead to this, as nearly as I can remember were:1.) Set up the device with provision.bat, with RDP level 2. This worked fine. The device ran as it should.2.) Regress the device using regression.bat, this process failed, but left the device in an accessible state for the debugger.3.) I connected the boot0 pin to VDD, connected with the programmer in hot plug mode, set RDP to 1.4.) I set RDP to 0 and TZ enabled to 0, which worked.5.) I disconnected the boot0 jumper, and tried loading code normally, it then failed at address 0x80004000. Reading out that address with the programmer revealed that it was not programmed, but instead remained all 0xff's. I tried several times to program, always with the same result, the first part of memory, up to address 0x80003fff programmed correctly, and the rest failed.6.) I tried running the regression script agai
Hello everyone,I am trying to implement SBSFU (Secure Boot Secure Firmware Update) on NUCLEO-G474RE using STM32CubeExpansion_SBSFU_V2.7.0.Initially, everything was working fine and I was able to program the board normally.What I didI followed the SBSFU documentation and examples.While configuring SBSFU, I modified Option Bytes, specifically Write Protection (WRP) addresses to match the SBSFU memory layout.After applying the option bytes, the problem started.Current problemNow I cannot program or erase the MCU anymore.I get the following errors:1.In STM32CubeIDE'Launching SBSFU (1)' has encountered a problem.Failed to execute MI command:load ...\SBSFU.elfError finishing flash operation2. In STM32CubeProgrammerFull chip erase failsMass erase fails with error:Error: Mass erase operation failed. Please verify flash protection3.I also tried:Full chip eraseErase selected sectorsHardware reset / power cycle“Under reset” connection modeFactory reset via STM32CubeProgrammer→ All fail with
Hello,I need to develop an external memory loader for a custom board with the STM32U375 and Macronix MX25U6432F NOR-Flash as external memory. The interface is via OCTOSPI1.I have already tested the interface functions to access the external memory and everything is working fine when used within a "normal" application running in the STM32U3 internal flash.As I am using the STM32CubeIDE, I created the code for the external memory loader based on the templates in https://github.com/STMicroelectronics/stm32-external-loader/tree/contrib. I am using STM32CubeIDE v 1.19.0 and STM Cube Programmer v 2.21.0.When I try to use the external loader in the CubeProgrammer, I can see (with some debugging) that the Init() function is called by STM Programmer, but fails quite early during HAL_Init(). With further debugging, I found out that the reason for the failing HAL functions seems to be the missing initialization of the global variables, i.e. the variables in the .data and .bss secti
STM32G491KEU3 on custom board. Using STM32CubeProgrammer to read/change option bytes.With BOOT_LOCK unchecked I use STM32CubeIDE to flash and debug my project. However SysTick_Handler() is never called, so HAL_GetTick() always returns the same value (zero). With BOOT_LOCK checked, HAL_GetTick() returns incrementing tick counts as expected.I thought I understood the ref manual description of BOOT_LOCK. Does BOOT_LOCK do other things?
Hello, Happy new year !I create my custom board with STM32MP153C I try to boot but I have an issue. Starting systemd-udevd version 255.17^ root '/dev/disk/by-partuuid/e91c4e10-16e6-4c0e-bd0e-77becf4a3582' doesn't exist or does not contain a /dev. [ 14.557600] platform 5a006000.usbphyc: deferred probe pending [ 14.561992] platform 5800c000.usb: deferred probe pending [ 14.567427] platform 50001000.pwr: deferred probe pending [ 14.572778] platform 49000000.usb-otg: deferred probe pending [ 14.578559] amba 58005000.mmc: deferred probe pending [ 14.583629] platform 5800d000.usb: deferred probe pendingI change SD card I change some settings in device tree of kernel vqmmc-supply but I don't undestand in UBOOT I can explore my sd card Hit any key to stop autoboot: 0 STM32MP> mmc list STM32 SD/MMC: 0 (SD) STM32MP> mmc dev 0 switch to partitions #0, OK mmc0 is current device STM32MP> part list mmc 0 Partition Map for MMC device 0 -- Partition Type: EFI Part Start
Hi,we are trying to get a 800x800 display to work with the STM32U5G9VJT6Q, using either RGB888 or RGB565 in Video Mode (Burst).According to what we read it is definitely possible. Did we miss something?Could someone please confirm that is definitely possible?Much appreciatedThank you
Hello,I am using STM32 Motor Control SDK / MC Workbench with sensorless FOC (STO + PLL) to drive a low-speed, high-inertia 24V 40W BLDC fan motor.Power Board: X-NUCLEO-IHM07M1Issues observed:Motor rotates stably but produces intermittent (not continuous) rubbing noise, mainly after settling at certain RPM.Large speed oscillations are visible in Motor Pilot (speed dial deviation).Motor does not reach max speed even when increasing current limit in MC Workbench.Reducing Iq PI gains(cut off frequency) does not significantly reduce the noise.Very low PLL gains are required for stable rotation; higher PLL gains cause oscillation or loss of speed feedback.pilot_register_observationQuestions:For low-speed, high-inertia fan motors, what is the recommended observer / speed LPF cutoff frequency parameters?Can I reduce this intermittent noise and speed oscillation and run smooth motor control without noise?Which parameters should be prioritized to:Reduce speed oscillationsEliminate intermitt
A development collaborator on the application is trying to improve the performance of transmitting the payload between the app and the board containing the STM32WB55 microcontroller via BLE. He is asking if he can increase the size beyond 20 bytes in order to reduce the upload time, which is currently 40 seconds (ideally, he wants to reach 6 seconds, the same way I did using the ST BLE Sensor app). The AN5247 documentation recommends writing in 20-byte increments as shown in the image below, and he would like to know if he needs to perform an ACK after each 20 bytes or if he can send directly. Any help would be appreciated.
Hello, does anyone help me with example for devkit with FatFs on uSD card? Thanks
Hi!I accedently used STPMIC25A instead of STPMIC25D when I want to boot A35 from SD card.According to AN5727 page 13, topic 4.1.8. it says that if the MP257 is going to boot from SD card, then the STPMIC25D must be used instead of STPMIC25A due to LDO7 and LDO8 are dedicated for 1.8/3.3V at initial boot.My question is: is there any soldering fix I could use to borrow voltage from another Buck/LDO output from STPMIC25A?My goal is just to boot TF-A. Suggestion:I use LDO2 for VDD_SD and VDDIO_SD. LDO2 boots at 3.3V. My SD-card might be UHS-I, but I'm guessing that it can run at low speed as well (3.3V pull-up). Edit 1:I cut of the traces from VDD_SD and VDDIO_SD and connected them to LDO2. Now I have 3.3V on the SD Card and its pull-up. But no signs of output of the USART6. The CLK of SDMMC1 has been started. I guess that the BootROM understand its purpose when telling 0b0001.
Hi,based on the ST example where the 640kB RAM is splitted into 2 * 320kB for secure/non-secure application, I want to change this to 32kB/608kB for secure/non-secure app. After modification of the linker files for the secure/non-secure app, the non-secure app runs into an hardfault right at the start. The error is that some ns access is done in secure area in SRAM1 (at address 0x2001f840).I first started the project on the STM32H563 eval board and simply copied the settings of MPU and GTZC over to the STM32H562. These settings are working on the STM32H563, so I can properly jump there into the non-secure app.Are there any difference in setting the memory areas for secure/non-secure/priviledged feature?Here are the settings.linkerfile non-secure:define symbol __ICFEDIT_region_RAM_start__ = 0x20008000;define symbol __ICFEDIT_region_RAM_end__ = 0x2009FFFF;linkerfile secure:define symbol __ICFEDIT_region_RAM_start__ = 0x30000000;define symbol __ICFEDIT_region_RAM_end__ = 0x30007FFF;v
Hello guys.I have an STM32WB5MM-DK disco board and im trying to get familiar with the ble stack. What i want to do is create a p2p server, poll an onboard i2c temp sensor for data and send that data through ble. What i did at first (successfully)was to set the device as a p2p server, set the user button as an EXT line and set the irq to schedule a task. That task transfered a random number through ble.What i tried to do next was to set the interrupt handler schedule a task tha would poll for the i2c data and schedule another task that would send said data, which didn't work. The address of the onboard i2c sensor is 0x70. I attach my .ioc file My callback function void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin) { if (GPIO_Pin == B1_Pin) { UTIL_SEQ_SetTask(1U << TASK_BUTTON_1, CFG_SCH_PRIO_0); } APP_DBG_MSG(" Buttn press\n\r"); return; }I've added the name of my tasks on the app_conf.h file/**< Add in that list all tasks that may send a ACI/HCI command
Ports definition in main.h forced to include too mutch in dependend source files when one needs ports definition only.More convenient dedicated header file with ports definition only. Something like ports.h.It would be nice to have more layered structure.
Hello.How can we enable brown out for this processor and the brown out voltage?Thank you.
Hi, I am working on STM32F469NI using the USB OTG HS peripheral in CDC (VCOM) mode. When using USB CDC without DMA, the VCOM works fine. However, when I enable Internal IP DMA (from CubeMX → USB_OTG_HS → Parameter Settings → Enable internal IP DMA), the USB CDC communication stops working after some time. Setup details: MCU: STM32F469NI USB mode: Device (CDC VCOM) PHY: Internal FS PHY DMA Mode: Internal IP DMA enabled for USB_OTG_HS Running on custom board Observed behavior: On PC, the VCOM port is detected correctly. Initially, data transfer works fine. After some time (or after repeated Tx/Rx), the communication hangs completely. No data transfer occurs until reset. If I disable Internal IP DMA, the issue goes away. What I tried: Checked buffer alignment (made Tx buffers 4-byte aligned). Verified HAL callbacks (CDC_Transmit_FS etc.) are still being called. Questions: Is Internal IP DMA for USB HS CDC fully supported on STM32F469NI? Are there know
Hi, I'm checking the flammability specifications for MJD31CT4. I need to know if the molding material of this part is rated UL94 V-0. If it's not V-0, could you tell me what the official rating is? Any link to a supporting document would be much appreciated. Thanks!
Problem descriptionI have a custom board based on STM32MP157FAA.The SD card boots perfectly in:ROM bootTF-A BL2 (FSBL)But once control reaches U-Boot, the SD card becomes completely unusable and U-Boot shows continuous: stm32_sdmmc2 mmc@58005000: cmd 55 failed, retrying ...U-Boot cannot read environment, cannot rescan the card, and reports “No block device”.This is very confusing because the same SD card and hardware clearly work during ROM and TF-A stages.Boot logTF-A / BL2 (working)INFO: Using SDMMC INFO: Instance 1 INFO: Boot used partition fsbl1 ... INFO: BL2: Loading image id 5 NOTICE: BL2: Booting BL32No SD errors at all.U-Boot (failing)U-Boot 2023.10-stm32mp-r2MMC: STM32 SD/MMC: 0, STM32 SD/MMC: 1Loading Environment from MMC...stm32_sdmmc2 mmc@58005000: cmd 55 failed, retrying ...*** Warning - No block device, using default environment ...Saving Environment to MMC... No block deviceAlso in U-Boot:Clocks:- MPU : 0 MHz- MCU : 0 MHz- AXI : 0 MHz- PER : 0 MHz- DDR : 0 MHz
ST Community highlights – April to June 2026
Already have an account? Login
No account yet? Create an account
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.