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
I am trying to flash the HSDatalog.bin (from Datalog1) firmware onto the STEVAL_STWINKT1B board using the STLINK_V3MINIE and the STM32 Cube Programmer, following the user manual provided. When I connect to the STLINK on the Cube Programmer, the led flashes red and green. After opening the HSDatalog file and clicking download, the USB light on the STEVAL_STWINKT1B turns off, and the STLINK continues to flash green and red, pausing on green for a second, before continuing to flash. A popup comes up in the Cube Programmer that the file download is complete. I then disconnected the STLINK from my laptop and the development board, leaving just the development board connected. The power LED is on and the USB LED flashes, but it does not come up as a USB device. When I try to open the USB_DataLog_Run file, it says that there is no device detected. I am wanting to use direct data transfer via the USB for conditional monitoring, but cannot figure out why it is not showing up as a USB device. I
Hello there!It would be really great if someone can look into this.I even tested it by reading the state of the pin and the MCU detected when the button was pressed, however when I set it up to use EXTI, its not detecting the interrupt. Could there be something wrong with the IC?Any help would be greatly appreciated. /* USER CODE BEGIN Header */ /** ****************************************************************************** * @file : main.c * @brief : Main program body ****************************************************************************** * @attention * * Copyright (c) 2024 STMicroelectronics. * All rights reserved. * * This software is licensed under terms that can be found in the LICENSE file * in the root directory of this software component. * If no LICENSE file comes with this software, it is provided AS-IS. * ****************************************************************************** */ /* USER CODE END Header */ /* Includes ---------
Hello, I am trying to setup TIM5 channel 1 to output a signal on its output pin. I generated the code using STM32CubeMX2. I am getting an assert failed during initialization.mx_system_init() calls mx_tim5_init() which calls HAL_TIM_OC_SetConfigChannel(): oc_config.polarity = HAL_TIM_OC_HIGH; oc_config.idle_state = HAL_TIM_OC_IDLE_STATE_RESET; if (HAL_TIM_OC_SetConfigChannel(&hTIM5, HAL_TIM_CHANNEL_1, &oc_config) != HAL_OK) { return NULL; } In HAL_TIM_OC_SetConfigChannel function assert fails at the following line: ASSERT_DBG_PARAM(IS_TIM_OC_OVERRIDE_STATE(p_config->override_state)); ASSERT_DBG_PARAM(IS_TIM_OC_BREAK_MODE(p_config->break_mode));The value of the override_state shown by the debugger is: (HAL_TIM_OC_OVERRIDE_SET | unknown: 0xfa). If I comment out the assert it will assert on the next line (break_mode). If I comment that line out as well the code outputs a signal on the pin. I attached my MX2 file. What am I missing?-Gil
I use STM32F407VG Discovery evolution board to drive genuine BTT TMC2209 v1.3 motor drivers and NEMA11 motors. There are 4 TMC2209 drivers. I am using bare-metal CMSIS custom firmware. Motor power rail is 24 volts, logic voltage is provided from a stable power source. The issue is whenever the Discovery board is power reset motor operation stuck, only first motor, M0 is working. In this stage STEP, DIR, UART, Enable operations are working fine (I use USB communication with Raspberry Pi and communication also work fine). After motor power rail is hard reset it will start to run all motors. Anyone faced this issue and a solution?
Hi everyone,I'm using an STM32U599VJT on a custom board and I'm having trouble getting USB to work.ProblemThe MCU cannot be detected by a PC through USB under any condition: USB DFU mode does not appear when entering the system bootloader. USB also does not work from my application firmware. Windows reports "Unknown USB Device (Device Descriptor Request Failed)" (Error 43). What I Have Verified The MCU successfully enters the system bootloader. I can program and communicate with the device through the UART bootloader without any issue. Therefore, I am confident that the MCU is actually entering the ROM bootloader. VDDUSB is powered at 3.3 V. VBUS sensing is connected and reads approximately 3.3 V when connected to the PC. USB-C CC configuration is present and the board receives power correctly from the PC. USB D+ measures approximately 3 V. USB D− measures approximately 0 V. The board uses a 25 MHz HSE crystal. The USB signals pass through a USB mux that is shared
Hello, I am using CubeMX2 Version 1.0.0 on macOS Silicon. Various software packs fail to install with a 404 error like this: Could not fetch content of pack-URL: https://developer.st.com/st-pack-server/api/v1/pack/STMicroelectronics.rot_provisioning.2.0.0.pack, got: 404 - Not Found The following packs where tested and failed: rot_provisioning eeprom_emulation mcuboot fileX usbX (now installed via local pack from https://dev.st.com/stm32pc/) Is this an error on my side, similar to the proxy or certification issues I saw in other tickets or are these packs just not available YET? Secondly, I see support packs for e.g. the L4 MCU series: "stm32l4xx_dfp". What is the point of having these packs if CubeMX2 will not support these MCUs?
Hi everyone, I have successfully set up a camera and the NPU working together on a Nucleo N6 to get proper outputs from the latter, which is great. I also have a way to see the image and can verify the outputs live.However, that only works when I launch the firmware by adding the Application to the startup, loading its symbols, flashing the trusted application and starting to debug the FSBL… After that starts, I can detach the debugger to let it run the application. (BOOT0 off, BOOT1 on)When I now flash both trusted binaries and launch without the debugger (BOOT0 and BOOT1 off) it starts normally and I see the live image. But there are no inference results (which takes the same amount of time as when it worked)… What could I be missing?Best regards, rphii
Hello,I use a STPM32 on a battery charge system. The STPM32 is associated with an ESP32 module.The driver used is from ST (V1.0, 17 may 2016).I want to detect some defaults with interrupt, and I configure the interrupt mask only for current and voltage swell.But when I launch a battery charge, an interrupt is triggered (the period error interrupt) which is not masked.I don't understand this behavior and don't find an answer in the datasheet.Any help would be appreciated !Best regardsGilles.
I am using CubeIde for the first time.First test - run minimal program with HAL from CubeIDe Configurator, under debuggerSimple program, only SYSTICK and uart , but SysTick_Handler() is not trigged at all .And function HAL_Delay hangs because uwTick is always 0. Tried with setting brakepoint inside handler - no resultsUsed HSI, SYSCLK 16MHZ, Cortex System Timer 16MHz,RCC GPIO and USART1 - HAL configured.here is main() generated from cubeide (I removed comments):-----------------------------------------------------------int main(void){ HAL_Init(); SystemClock_Config(); MX_GPIO_Init(); MX_USART1_UART_Init(); HAL_Delay(100); // here program hangs, when reaches HAL_Delay function. uwTick = 0 while (1) { }}-----------------------------------------------------------and here is the SysTick_handler from stm32g0xx_it.c-----------------------------------------------------------void SysTick_Handler(void){ HAL_IncTick();}-----------------------
Hello,I am facing an issue with the STM32C5 HAL SPI driver related to CRC error detection.In my setup, CRC is enabled for SPI. When a CRC error occurs, I can observe that the CRCERR flag is set before the transfer is closed. However, the CRC error is never reported via the HAL error callback.Looking into the HAL implementation, I noticed the following behavior:SPI_CloseTransfer() calls LL_SPI_Disable()After disabling SPI, SPI_CloseTransfer() checks LL_SPI_IsActiveFlag_CRCERR()When this check is performed after LL_SPI_Disable(), the CRC error is no longer detectedIf I move the LL_SPI_IsActiveFlag_CRCERR() check before LL_SPI_Disable(), the CRC error is detected correctlyAdditionally, in my case SPI_CloseTransfer() is called from HAL_SPI_IRQHandler(), but:the return value of SPI_CloseTransfer() is not evaluatedonly the Tx/Rx complete callback is invokedmy error callback is never called, even though a CRC error has occurredFrom my understanding:LL_SPI_Disable() itself does not clear the C
In CubeMX2 when configuring the I2S peripheral on an STM32C542 running from a clock of 144MHz and selecting an audio clock rate of 96000Hz, CubeMX2 computes a nearest reachable frequency of 97826Hz (I2SDIV = 23, ODD = 0). When code is generated and run on actual hardware, the HAL2 I2S driver computes a different value of 95744Hz (I2SDIV = 23, ODD = 1). The HAL2 hardware value has less error from the desired 96000Hz than the value reported by CubeMX2, but the CubeMX2 value may be used in designing other aspects of the firmware and result in unexpected performance.
I know that Motor control workbench is only available on Windows but I hoped that it would be possible to open the generated .ioc file from Linux. I tried it and I got this error. Can this be fixed or I cannot even open the STM32CubeMx project from linux?
I am using IHM.08M1 with nucleo.stm32g474.I’ve decided to try lowering this parameter from 2275 rpm (maximum motor speed) to 250 rpm (maximum speed for my application): As you can see, when I change the value, an error in Speed Sensing Config appears: The auxiliary sensor section is not active!I don’t understand where the error lies.Any value lower than 1600 rpm gives me an error; I don’t understand why
I designed a custom PCB referencing the NUCLEO board, yet the board cannot be detected by any means. When flashing via STM32CubeIDE, the error pops up: Target no device found. Error in initializing ST-LINK device. Reason: No device found on target.I also tried detection with STM32CubeProgrammer, but neither SWD nor USART interfaces can identify the chip. I have verified that the ST-LINK probe works properly. I measured power supplies with a multimeter: the main supply is a stable 3.3 V, and VDDSMPS reads 0.98 V.The five PCBs I received after SMT assembly all exhibit the same connection failure, which rules out soldering defects as the root cause.Attached is my schematic. I would appreciate any troubleshooting suggestions. Thanks to all ST engineers and fellow developers.
Hello,I am using a STM32G474 and the RTC is counting >24.I have setup the RTC with the STM32CubeMX. regards Mark,
Hello ST Community,I am working on a custom PCB using the STM32H743ZIT.My project uses the LTDC to generate a VGA signal.I also need at least 1 DAC output and USB_FS. The issue is, in this specific MCU, the only 2 DAC’s are on:PA4 (conflicts with LTDC_VSYNC)PA5 (possibly conflicts with LTDC_R4) Now, I can move LTDC_R4 to PA11 but now it conflicts with USB_FS pins.Importantly, LTDC_R4 is not physically connected on our PCB. We only use 8 simple colors so I can use any LTDC pin to connect it to VGA signal. I’m completely fine losing LTDC_R4 altogether because we don’t use it at all. Question: If I do the following, will it cause any conflict issues due to the way the MCU works internally?1- Assign LTDC_R4 to PA5 in CubeMX to satisfy the configurator2- Immediately after HAL_LTDC_MspInit() completes, override PA5 to analog mode using HAL_GPIO_Init() for DAC use3- Configure DAC1 channel 2 manually in code and importantly, I call it AFTER HAL_LTDC_MspInit() Note: We are not reinitializing LT
I am trying to implement a GPDMA driver in a C project that does not use HAL, and have been really struggling to get something working. I have read everything I can find on this peripheral, multiple times, and still don't quite understand how one would configure the registers without using HAL. The goal is to get circular DMA transfers from peripheral to memory (e.g. ADC to memory). The H5 reference manual gives this figure, which conceptually makes sense to me but I can't figure out the implementation.It seems like it should be relatively simple to setup in C with direct register access instead of HAL configuration structures, but I have not been able to find any examples online or in documentation. I am wondering if anyone has gotten a linked list GPDMA transfer working without having CubeMX + HAL do all the work?
Hi,I’m using a NUCLEO-C031C6 64 board.I successfully setup the tool chain and ran several test from STM32CubeMX templates, directly compile and programming through STM32CubeIDE.Until this morning, everything was working fine.But I have lost the connection to the MCU later on. From STM32CudeIDE:Target unknown error 19Error in initializing ST-LINK device.Reason: Unknown. Please check power and cabling to target. Using of STM32CubeProgrammer:Recognized as mass storage On board ST-LINK/V2 is recognized, updated to version V2J47M34 successfully Full chip erase and board recognition works fine on the NUCLEO-G031K8 boardBut I have repetitively following messages while I try to connect (): I have tried unsuccessfully:under reset mode external SWD ST-LINK How can I debug futher?Did I miss something?Thanks!
I’m trying to configure an STM microcontroller, so I tried to download STMCubeIDE. When I load the download page the ‘Get Software’ section loads forever sometimes, other times I refresh and the button doesn’t appear, and sometimes when I refresh it actually shows me the download button. When I sign in, and hit the download button (when it shows) and then accept the terms of the agreement, it just does nothing. It just closes the agreement, no download. I tried with and without VPN, on multiple home and public networks and hotspots, on multiple browsers and even devices. For context, I am on windows 11. How do I resolve this? Edit: In fact, I’ve noticed many official install links seem to be broken, as STMCubeF4, STMCubeMX, and serveral others don’t install either.
I’m using a custom board based 99% on the STM32H7S78-DK (except for the display, which is a 7”).I’m having a serious deadlock issue (the entire microcontroller freezes, and I can’t connect to the debugger).My firmware is composed:The bootloader that just checks if an SD card is attached (if so, it mounts, reads it, and, in case, updates the external flash with the firmware). If no SD card is detected, it loads the application.The bootloader uses I and D caches and sets up the external memory via XSPI (PSRAM and FLASH)The PSRAM is used for the TouchGFX framebuffer; the FLASH for the TouchGFX assets.The .icd defines (among other things)define symbol __ICFEDIT_intvec_start__ = 0x70000000;define region EXTRAM_region = mem:[from 0x90000000 to 0x91FFFFFF];define region ROM_region = mem:[from 0x70000000to 0x701FFFFF];define region EXTROM_region = mem:[from 0x70200000to 0x77FFFFFF];place in ROM_region { readonly };place in RAM_region { readwrite };place in EXTRAM_region { firs
从数据手册只能了解STWLC68的TX流程,而它的RX流程不清楚。STWBC86的TX与RX都不清楚。我想实现的目标是MCU采用i2c通过STWBC86读取STWLC68的i2c寄存器或者MCU采用i2c读取STWBC86收到来自STWLC68的TX数据。我应该如何去发送和接收数据以及在哪儿去拿数据。是否能提供两个芯片固件库的白皮书或使用手册?Google translation: “The datasheet only provides information on the STWLC68's TX flow, but its RX flow is unclear. The STWBC86's TX and RX flows are also unknown. My goal is for the MCU to use I2C to read the STWLC68's I2C registers via the STWBC86, or for the MCU to use I2C to read TX data received from the STWLC68 via the STWBC86. How should I send and receive data, and where should I retrieve the data? Could you provide the white paper or user manual for both chip firmware libraries?”
Hello I am planning to use STM32mp257Fak3 with DDR3L (16bit and 32 bit saperately),can you suggest some DDR part no and it's sonnection.
Hi,On the stm32c5 nucleo board (NUCLEO-C5A3ZG) there is T1S OA PMD driver (not mounted?). In the header file "stm32c593xx.h" exists a 10BASE-T1S control register "MAC10BT1SCR". But there is no documentation in the Reference Manual RM0522 Rev 1, and I can't find a way to enable T1S on MXcube2.Can anyone help me here? Is the T1S PDM really integrated in the C5 series?I would really like to experiment with 10Base T1S.RegardsPatrick
Hi all, I would like to load an STM32CUBEMX program in STM32CUBE IDE on my MacOSX but I can’t set the debug configurations. I simply can’t see the project that I am loading. Is this a known issue? See below the screenshot from CubeIDE:
Hello,We are designing a custom board using the STM32MP157FAC1 device and need to provide provision for a Serial NOR Flash connected to the QUADSPI interface.We are planning to use Winbond's device W25Q256JVFIQ for this purpose. Kindly confirm whether this device is suitable for use with the STM32MP157FAC1 or if there is any recommended QSPI NOR Flash device that should be preferred with this microprocessor.Regards,Prashant
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.