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
Hi,We are building Linux for STM32MP157D using Buildroot, and we are experiencing an issue where the boot process sometimes does not proceed from BL2 to OP-TEE, and sometimes OP-TEE does not proceed to U-Boot.Occasionally, the kernel does boot successfully.Could this be caused by incorrect DDR3 controller settings? We are using a custom board.If so, would compiling the STM32DDRFW-UTIL source code and using it in engineering mode be the right solution?I have read that for some chips it is possible to perform automatic tuning and receive the optimal configuration as a result.Is this possible in this case? If not, what is the proper method to determine the correct DDR controller settings?If DDR is not the issue, do you have any other suggestions?For testing with DDR-UTIL, I see that there is no development board listed for the 157D series, as the utility supports "STM32MP157C-EV1_DDR_UTILITIES_A7".If we order the "STM32MP157D-EV1", will I be able to run DDR tests on it to compare with our
I need support for the design of STM32WL30XX PCB Antenna. Are there reference designs available for the PCB antenna?Specifications:Two layer board Output power 10dBm in the 868MHz band.
Hello, Is there a setting in MX2 to enable/disable timer freezing during debugging? If not, what HAL APIs can be used for this purpose? Thank you, Gil
Hi Apologies in advance if these are daft questions, however I'm trying to put together a development kit for the SR5E1E5 . I have found the SR5E1-EVBE5000P evaluation board, but need a debugger to use with it. I assume that the ST-LINK/V2 is compatible but can someone please confirm this? Also can the Stellar Studio All in One be used with this combination? The SR5E1-EVBE5000P has a USB connector can I assume this does not support debugging via Stellar Studio All in One?We already have the SPC5-UDESTK, but I assume that this is not compatible with the Stelar series of micros? Thanks in advance.
Hi All!I'm starting with a project with STM32H573 + STiRoT + Trustzone + Crypto + FreeRTOS + DA.My preference is to do development and debugging in Visual Studio Code instead of the Eclipse based IDE.I got to the point that I can build a secure/encrypted application (still without FREERTOS at this point) in VS Code and was able to provision my board.However, I can't really find anything on debugging in VS Code with Debug Authorization.I did find the tutorial on CLI DA for provisioning and regression (https://community.st.com/t5/stm32-mcus/implementing-debug-authentication-on-stm32h5-using-cli-tools/ta-p/622308) but not for actual debugging in VS Code. Maybe I've overlooked this on the forum and/or application notes. I'm hoping that someone can give me a push in the right direction. Or is this not officially supported in VS Code yet and am I bound to Eclipse IDE at this point in time?With kind regards,Martijn
I am currently considering the EVALSTGAP4S evaluation board for a laboratory prototype, and I would like to ask a few technical questions about its possible use in a motor-drive application.My goal is to build a 7-level cascaded H-bridge (CHB) multilevel inverter for motor driving. Since the EVALSTGAP4S includes isolated gate drivers, I am wondering whether it can be used as a building block for a CHB inverter cell.I would like to ask the following:What is the practical current capability of the EVALSTGAP4S board?I would especially like to know the recommended continuous current range, and whether it depends on thermal conditions, switching frequency, or cooling method.Would this board be suitable for use in a 7-level cascaded H-bridge multilevel inverter for motor-drive applications?If not, what would be the main limitations or concerns?Since the board has isolated gate drivers, can multiple boards be used in a cascaded configuration with floating DC sources?If there are any important
Hi All,I have an issue with STM32CubeMX 6.17.0 (Windows 11 + Visual Studio Code)I want to start a STiRoT Full secure project (with DA and encryption) for STM32H573 with FREERTOS.But when I add the freertos software pack, I don't get any configuration options.Open STM32CubeMXStart My project from MCUSelect STM32H573IIK3Q (same as STM32H573I-DK)Enable ICACHE and MPU -> YesWith TrustZoneSoftware packs -> Select Component -> Cortex-M33 Secure -> X-CUBE-FREERTOS 1.5.0 -> CMSIS RTOS2 11.2.0 -> Core : TZ_Secure (I can't select Heap???)No configuration is shownIf I add FREERTOS to non-secure I am able to open configuration optionsI have added my IOC file.Can someone tell me what I'm doing wrong?Thanks!With kind regards,Marty
NUCLEO-F767ZI I'm trying to use the LwIP middleware which I have enabled in MX. First I'm trying to check if an ethernet cable is attached or not. I have setup UART3 to use printf (which works as expected) I've set the callback in lwip.c to print when the cable is removed or plugged in or so I thought but I get no message when I connect or disconnect the cable. The LEDs on the socket light up when the cable is connected, so the board at some level does see the cable. What am I missing here? EDIT:: LWIP_NETIF_LINK_CALLBACK was enabled in MX // In main.c MX_LWIP_Init(); /* USER CODE BEGIN WHILE */ while (1) { MX_LWIP_Process(); /* USER CODE END WHILE */ /* USER CODE BEGIN 3 */ } /* USER CODE END 3 */ // In lwip.c the callback function that is registered in MX_LWIP_Init() static void ethernet_link_status_updated(struct netif *netif) { if (netif_is_up(netif)) { /* USER CODE BEGIN 5 */ printf("Cable connected\r\n"); /* USER CODE END 5 */ } else /* netif is down */ { /* USER C
Hello, I have a simple CubeMX project with the STM32N6 MCU, and I cannot seem to be able to uncheck the FREERTOS option from the FSBL to move it to the Application. Is there something I am doing wrong? Thank you
Hello, I configured a timer in STM32CubeMX2 to use 2 channels (HAL_TIM_CHANNEL_1 and HAL_TIM_CHANNEL_3). After the mx_system_init() I use the following code: hal_tim_handle_t *htim5 = mx_tim5_gethandle(); if (HAL_TIM_OC_StartChannel(htim5, HAL_TIM_CHANNEL_1) != HAL_OK) { return (-1); } if (HAL_TIM_OC_StartChannel(htim5, HAL_TIM_CHANNEL_3) != HAL_OK) { return (-1); } if (HAL_TIM_Start(htim5) != HAL_OK) { return (-1); } The first channel starts as expected, but when I attempt to start the second channel the code causes an assert in HAL_TIM_OC_StartChannel: /* Check and update the channel state */ ASSERT_DBG_STATE(htim->channel_states[channel], HAL_TIM_OC_CHANNEL_STATE_IDLE); Do I need to do anything different? Regards, -Gil
The entry for address 0x1FFF7838 in Table 17 ( Organization of option bytes) shows FLASH_PCROP1ASR as the "Corresponding option register" - it should be FLASH_PCROP2ASR.
Trying to Interface ADS1293 with STM32U5 for 3-Lead ECG – Need Help with Lead II Data Hi STM32 Community :waving_hand:, We’re trying to build a 3-lead ECG signal acquisition setup using the ADS1293 analog front-end connected via SPI to an STM32U5G9ZJT6Q microcontroller. The goal is to capture and plot Lead I, Lead II, and derive Lead III using TouchGFX. What’s Going Well: We are able to receive and plot clean ECG data for Lead I (RA - LA) using CH1 of the ADS1293. SPI communication is stable, and the plotting is handled through TouchGFX without lag. Sampling is working at 500–1000 Hz using a DRDY-based interrupt routine. What We’re Struggling With: When we try to configure CH2 for Lead II (RA - LL), the data appears noisy, flat, or unstable. We’re using the same initialization and acquisition process for CH2 as we did for CH1, but the result is not usable. For Lead III, we are trying to derive it in software using: Lead III=Lead II−Lead 
hello ST Community,There's an STM32 board in a USB pen drive format with a small flash memory capacity and only a few pins (3-5 pins) for UART serial communication. On this STM32 board, inside the USB pen drive, I can program the dedicated software for serial communication.If it exists, can you tell me the model and serial number? I can't find it online.Thanks for the information.
We will design a layout for the VD55G1 Promodule with Image read out over I3C. Alternative there is also a VD55G4 camera with an additional SPI image read out. Is it possible to get the pin assignment for the new VD55G4 promodule ?
Hi all.I wish disable auto PAD disable CRC append. Send packet use low_level_output(), before call HAL_ETH_Transmit_IT()I set TxConfig.ChecksumCtrl = ETH_CHECKSUM_DISABLE; TxConfig.CRCPadCtrl = ETH_CRC_PAD_DISABLE;but packet allways pad to 60byte,if use TxConfig.CRCPadCtrl = ETH_CRC_PAD_DISABLE;, no packet outputif use TxConfig.CRCPadCtrl = ETH_CRC_INSERT; output fine but have 4byte crcr append.How to do , NO-PAD NO-CRC send packet?
I'm trying to interface with a W25N NAND flash chip on an STM32H7, over QSPI. I've only got consistent output out of the reads, and even then, I notice the system hangs forever and can't accept anymore input after a read. Everything else will hang immediately, even a print statement to the terminal at the top of the function won't appear, and the whole system hangs. From some similar issues I found online, I thought it would be a timing issue, and so I tried to implement a status register check. That's my first function in my excerpt below. However, this function couldn't even run alone without again hanging the system (meaning something else is causing the resets, program, clear, and even status check to hang). What else could be the issue that stops everything from running? Any advice much appreciated. Thanks very much in advance.uint8_t W25N_status(void) { QSPI_CommandTypeDef cmd = {0}; uint8_t status; cmd.InstructionMode = QSPI_INSTRUCTION_1_LINE; cmd.AddressMod
Hi everybody,For a project, we need to start the STM32MP257F in the M33 flavor, in order to perform some basic functions (GPIO, I2C, UART) in the lowest power mode possible (DDR unpowered, A35 in low power mode — i.e., no remoteproc nor Linux). The goal is to compare MP257 capabilities compared to IMX8 (goal line end of this month)I use Yocto/bitbake to compile for our custom board.Following the StarterApp_M33TD_CM33 example, I've encountered the following difficulties:1) How can I debug the BL2 part?From the post STM32MP257 programming via JTAG - STMicroelectronics Community , I see that JTAG can be used to debug the STM32MP257 using CubeIDE.2) How can this be done?I tried to modify the *.ld file used by StarterApp_M33TD_CM33 to place the code in internal RAM instead of DDR, but it doesn't work. On the UART console I see BL2 logs, but nothing from this app, and since I can't debug, I don't know what's happening.3) How do I modify the project/Device Tree or other elements to execu
While I was experimenting with the 'L476 Disco, the RM wording goes across multiple families, so it may be relevant to most/all of them. In particular, for Shutdown mode (which is supposedly the lowest-VDD-consumption mode), the RM says: What does "switch to Backup domain is not supported" mean, exactly (assuming VDD and VBAT have separate sources)? as soon as Shutdown mode is entered, RTC (backup domain) is switched to VBAT even if VDD is present, potentially draining the VBAT source (battery, capacitor) in Shutdown, while VDD is present, RTC is powered from VDD; but when VDD is removed, RTC is *not* switched to VBAT, resulting in backup-domain reset and/or RTC corruption in Shutdown, while VDD is present, RTC is powered from VDD; but when VDD is removed, most of the time the switch flips to VBAT as expected, but this is not reliable and sometimes RTC corruption occurs in Shutdown, it's unpredictible, what is the backup-domain switch state, even while VDD is present These are
Hello, is it possible to boot FSBL and load application from SD card upon powerup, bypassing onboard flash? I didn't see any clear guides on this procedure.Thank you
I’m designing a board using the STM32U083MCT6TR, and my system supply voltage is VDD = 1.8 V.The design does not use USB at all. The datasheet specifies that VDDUSB normally requires 3.0–3.6 V for USB operation, but it’s not fully clear what the correct connection is when USB functionality is not needed. My question:What is the recommended way to handle the VDDUSB pin when USB is unused and the MCU is powered at 1.8 V? Should VDDUSB be tied to VDD (1.8 V)? Should it be left unconnected? Or is another configuration required? If anyone has experience with the STM32U0 series or clarification from ST, I’d appreciate the guidance. Thanks, -Tal
Hi everyone,I’m currently working on a project involving LR-FHSS and I’d like to know whether there are STM32-compatible end devices and gateways that already integrate LR-FHSS-capable radio chips.From what I’ve found so far:End Devices (sensor/node): They must use a chip from the SX126x family.Gateways: They need to be based on the SX1302 or SX1303.Before I start designing custom hardware, I’d like to confirm whether there are existing commercial end devices or gateways that already include these chips with LR-FHSS support.If anyone has experience with this or can recommend specific hardware, I would really appreciate it.Thanks!
This is probably an old hat to most of you here but I'm facing this problem momentarily:Using an STM32F103CBT6 (Blue Pill) where GPIOB Port is used already with the following PB3 - SPI1_SCKPB5 - SP1_MOSIPB6 - Some Interface Function (OUTPUT)PB7 - Some Interface Function (OUTPUT) I want to use PB0, PB1, PB4, PB8, PB12,PB13,PB14,PB15 for a keyboard matrix scan and outputa running pattern to these pins. Writing the bits should be nondestructive what the remaining bits is concerned. At the back of my mind I recall something like BSRR, but could someone help me to get on the right track?I'm using HAL in this app (under STM32CubeIDE).
Hi, I am working with the SBSFU_Boot on the STM32U5A9 chip. After the SBSFU_Loader has written the update image into internal memory, a reset happens in order for the SBSFU_Boot to write the image to be booted. When performing the update, it ends up in a process where it has to do some encryption. The SAES engine is initialized successfully, and then AES_Encrypt is called. This keeps on failing because a read error is reported in the SAES->SR reports a read error upon enabling the SAES peripheral. It should be noted that the initialization and encryption sequence is strictly followed per instructions in RM0456 Rev 6 sections 50.4.4 (Initialization of SAES) and 50.4.8 (ECB/CBC encryption sequence) respectively. What am I missing?
@FBL Can you explain me about buffer descriptor table (BDT)? Is it fixed?I have got behavior that I can't explain.Dumping packets on host I got wrong data. Length is ok, but data is wrong.In BDT I wrote correct address and length. Data wrote in pma (adress that is in BDT) is correct.But when I stop in debugging address in BDT is changed. As I think in BDT there is a place for each endpoint (or it is like cyclic buffer?)What I found if I set break point with "if" condition, just before sending address in BDT is OK, and data on host is OK. It seems to me that I am working incorrectly with BDT.
Hello,I am following the blog "Implementing Debug Authentication on STM32H5 using CLI tools" (https://community.st.com/t5/stm32-mcus/implementing-debug-authentication-on-stm32h5-using-cli-tools/ta-p/622308) to provision my STM32H533RE based custom board on which i have configured secure word only(All the peripherals configured as secure) and i have disabled Non Secure Project from "Project Manage" tab of STM32CubeMX, and I am now stuck with the device in CLOSED state with no way to regress.Environment:Board: NUCLEO-H533RE (STM32H533RET6)STM32CubeProgrammer: v2.22.0STM32CubeH5 Firmware: v1.6.0ST-LINK FW: V2J47S7SFSP Version: v1.2.0OS: WindowsWhat I did (step by step):Step 1 — Flashed secure firmware (succeeded with mode=UR):STM32_Programmer_CLI.exe -c port=SWD mode=UR -e all -d C:\H5\Binary\Sec_FP_Sensor_v1_2_Secure.elf -vResult: :white_heavy_check_mark: Download verified successfullyStep 2 — Set product sta
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.