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'm using the ST67W6X_MQTT example on a NUCLEO-U575ZI-Q and i got the following result:04/11/2025 16:11:02.217 [RX] - SNTP Time: Tue Nov 04 16:11:03 202504/11/2025 16:11:27.886 [RX] - SNTP Time: Tue Nov 04 16:11:27 202504/11/2025 16:11:46.452 [RX] - SNTP Time: Tue Nov 04 16:11:48 202504/11/2025 16:12:02.734 [RX] - SNTP Time: Tue Nov 04 16:12:05 202504/11/2025 16:12:20.904 [RX] - SNTP Time: Tue Nov 04 16:12:21 202504/11/2025 16:12:37.945 [RX] - SNTP Time: Tue Nov 04 16:12:38 202504/11/2025 16:12:54.605 [RX] - SNTP Time: Tue Nov 04 16:12:57 202504/11/2025 16:13:12.778 [RX] - SNTP Time: Tue Nov 04 16:13:15 202504/11/2025 16:13:30.028 [RX] - SNTP Time: Tue Nov 04 16:13:30 202504/11/2025 16:13:49.107 [RX] - SNTP Time: Tue Nov 04 16:13:49 202504/11/2025 16:14:05.867 [RX] - SNTP Time: Tue Nov 04 16:14:09 202504/11/2025 16:14:23.925 [RX] - SNTP Time: Tue Nov 04 16:14:24 2025this correspond to an error of: +1, +0, +2, +3, +1, +1, +3, +3, +0, +0, +4, +1I was expecting errors of under a seco
Hi i am working on a project with STM32H7A3VGT6 chipset which has LTDC controller. my goal is to make a LVGL based UI with SquareLine Studio and interface a 24 bit parallel RGB display with it . so i have made a UI using SquareLine Studio and imported to my project but the issue is when i try to build it it says flash overflowed. i know that the UI takes so much space but the spec of STM32H7.. says it mas 1 MB RAM . later in the linker script i saw it uses dual bank flash not single , so can i use it like this to make it work ? and any one can explain why is the RAM is also divided? MEMORY { ITCMRAM (xrw) : ORIGIN = 0x00000000, LENGTH = 64K FLASH (rx) : ORIGIN = 0x08000000, LENGTH = 1024K /*FLASH2 (rx) : ORIGIN = 0x08100000, LENGTH = 512K*/ DTCMRAM1 (xrw) : ORIGIN = 0x20000000, LENGTH = 64K DTCMRAM2 (xrw) : ORIGIN = 0x20010000, LENGTH = 64K RAM (xrw) : ORIGIN = 0x24000000, LENGTH = 1024K RAM_CD (xrw) : ORIGIN = 0x30000000, LENGTH = 128K RAM_SRD (xrw) : ORIGIN = 0x3
Hi everyone, my custom board previously had an STM32F746BGT6. Since we were looking for a microcontroller with a graphics accelerator, we opted for the STM32H743BIT6 (which is pin-to-pin compatible). All the peripherals work, but I'm having trouble initializing the SDRAM (IS42S16160G-6TL). I set the clock to 216 MHz on Cube, and with a prescale of 2 and an oscilloscope, I get 108 MHz. However, the program crashes (neither returns an error nor continues) when I send the PALL configuration.I'm keeping the same declarations in the previous version (STM32F746BGT6), which is currently working. How can I fix this? static void MX_FMC_Init(void) { /* USER CODE BEGIN FMC_Init 0 */ /* USER CODE END FMC_Init 0 */ FMC_SDRAM_TimingTypeDef SdramTiming = {0}; /* USER CODE BEGIN FMC_Init 1 */ /* USER CODE END FMC_Init 1 */ /** Perform the SDRAM1 memory initialization sequence*/ hsdram1.Instance = FMC_SDRAM_DEVICE; /* hsdram1.Init */ hsdram1.Init.SDBank = FMC_SDRAM_BANK2; hsdram1.Init.Column
Hi,Is there a way to enable weights compression while also using the STM32N6 NPU ?I saw there is Decompression unit in the reference manual where it tells the NPU compiler is the tool that generate codebooks offline (there is also mention of it in lib_aton.h too):This would help to reduce the model size in RAM. I've tried with models using a single channel in 1x1 Conv, but maybe this feature can only be used with some specific conditions ? Thanks!Alexis Murzeau
There have been previous posts about determining how the DFU serial number is formed from the 96-bit Unique ID. However, when using the ROM bootloader for the STM32F723xx MCU I don't see unique serial numbers at all. I am always seeing the same DFU serial number in the iSerial string of the USB descriptor set to "STM32FxSTM32" no matter which device I query. I haven't found any mention of a setting that I need to configure in order to enable unique serial numbers for DFU, but I was hoping that someone in the community might have a suggestion. Or at least be able to confirm that it is expected behavior for the DFU serial number to always be "STM32FxSTM32" for all of my STM32F723xx MCUs.Thanks for the help!
I can't read référence; I am asking if this component is a zener Diode? And I'm looking for any équivalence
Post edited by ST moderator to be inline with the community rules for the code sharing. In next time please use </> button to paste your code. Please read this post: How to insert source code.Hi,I am new to STM32 and I have to do a data acquisition board project using the STM32H7 MCU.I have the STM32H753XI-EVAL evaluation kit and I am trying out all the features one by one.I'm currently working on the DAC, which I have configured on CHANNEL2 on PA5. I am trying to start it up, send it a value, and then get its value to check and measure it using a voltmeter on PA5 of CN6 on the evaluation board.DAC1_Init : static void MX_DAC1_Init(void) { /* USER CODE BEGIN DAC1_Init 0 */ /* USER CODE END DAC1_Init 0 */ DAC_ChannelConfTypeDef sConfig = {0}; /* USER CODE BEGIN DAC1_Init 1 */ /* USER CODE END DAC1_Init 1 */ /** DAC Initialization */ hdac1.Instance = DAC1; if (HAL_DAC_Init(&hdac1) != HAL_OK) { Error_Handler(); } /** DAC channel OUT2 config
Hello. I'm trying to configure the otm8009a 800x480 display panel from the stm32mp157f-dk2 dev kit on the Seeed Studio's stm32mp157c-odyssey board.The issue is that by probing display with modetest -M stm I'm getting:failed to open device 'stm': No such file or directoryBut with modetest -M simpledrm I'm getting this output:Encoders: id crtc type possible crtcs possible clones 34 0 none 0x00000001 0x00000001 Connectors: id encoder status name size (mm) modes encoders 35 0 connected Unknown-1 127x211 1 34 modes: index name refresh (Hz) hdisp hss hse htot vdisp vss vse vtot #0 480x800 60.00 480 480 480 480 800 800 800 800 23040 flags: ; type: preferred, driver props: 1 EDID: flags: immutable blob blobs: value: 2 DPMS: flags: enum enums: On=0 Standby=1 Suspend=2 Off=3 value: 3 5 link-status: flags: enum enums: Good=0 Bad=1 value: 0 6 non-desktop: flags: immutable range values: 0 1 value: 0 4 TILE: flags: immutable blob blobs: value: CRT
Hello,I am working with an STM32WBA65RI that is on our custom board, and working to reduce our power usage. Along this journey I found the issue with the HAL_PCD_MspInit() / DeInit() where the logic for the RCC PWR was inverted, which was another post I made.On our current hardware, I am noticing a large jump in current draw at the function call for __HAL_RCC_USB_OTG_HS_PHY_CLK_ENABLE() in HAL_PCD_MspInit().Just prior to the function call, the board is drawing 7.5mA, and immediately following the call it is drawing 33.09mA.I also tested this against the NUCLEO-WBA65 board, measuring across JP2, and see a jump from 3.05mA to 11.99mA, which seems more reasonable, albeit still quite large (according to DS14736, the max power draw from the OTG_HS PHY should be 5.7mA):For reference, our board has the following power setup:VBAT is 3.9 (for this test I am using a power supply). This feeds a PMIC (MAX77658). The PMIC takes the 3.9V in and creates a 3.3V using an internal switching regulat
I have a set of BLE characteristics set up, and working ok. The project uses FreeRTOS. I want to be able to have the stm32wba65 sleep in low power, then wake up at a specific time of day. After wakeup,I have a 5-second RTOS timer to take a series of measurements. Once all measurements are taken, the stm32 should sleep again. I want to set the time of day once from a PC over BLE, then disconnect and have the stm32 go to sleep. I have a 32kHz oscillator providing LSE, which seems to be running ok, as the startup code does not hang waiting for LSE to start. If I try to put the RTC into "Free running BCD calendar and binary mode" in the .ioc file then the RTOS timer no longer fires.To summarise, I need:BLElow power sleepwake at specific time of dayRTOS timers once awake.Does anyone have an example of this type of scheme?
Hi, this is my first post here and one of my first experiences with the STM32.I'm working on an STM32H7A3ZI-Q development board. I've connected an Adafruit PDM microphone to SAI1_A with clock on PE2 (SAI1_CK1) and data on PE6 (SAI1_D1). I'm not an expert on PDM microphones; I used to acquire analog data from an amplified microphone with an ADC and timer 2 (everything worked perfectly) and then transferred the data via UART to my PC, where I listened to it with a Python script.Now I need to switch to a PDM microphone.Now, I've configured this PDM MONO microphone to be used in PDM mode with CK1, with an 8-bit data size and a 16-bit frame, the same slot size as the data, 2 slots (the IOC forces me to use even numbers), free protocol, and asynchronous sync input.I get the peripheral clock from PLL2 and it's 40.96 MHz. I set the frequency divider after init (the HAL code generator doesn't generate the correct divider) to get a 1.024 MHz output to the microphone, and the oscilloscope shows t
Hi,Using STM32F429VET trying to achieve FOC with single shunt resistor over 3phase bldc motor.I am using TIM1 and corresponding CC2, CC3, CC4 as PWM channels. CC1 is used to trigger ADC in regular mode reading current over shunt resistor in S1 and S2. The PCLK2 is at 96MHz, ADC divided by 4. That all seems not to be enough.I am struggling to achieve precise and yet fast enough reading. The final PWM frequency is 20kHz in center aligned mode. The motor has to move in 1/100 duty but that seems to be unable to achieve because of timing windows to read ADC. Dead time is at overall 500ns, given that the overall 25uS I have in center aligned mode, all time is crucial.I am already doing all the magic stuff like using DMA to trigger ADC reading based on CC1, DMA to do TIM CCx updates upon Update events (shadowing CCx).I heard about FOC control from MC Workbench but am I supposed to do incredible stuff to create my own board and inverter through declarations to get it? This seems ridicoulous wh
This new VS Code plugin is an opportunity to improve support for all C++ projects. The option for generating main.cpp have been requested many times during the CubeMX and CubeIDE eras.https://community.st.com/t5/stm32cubemx-mcus/there-is-a-plan-to-allow-stm32cubemx-for-generating-main-cpp/td-p/164264
Hey there,Is there an option to turn off the prompts after programming in the STM32CubeProgrammer?The Log output is enough for me:Not really a problem, more like a QoL thingy - but i didn't see an option anywhere.Would be a nice addition if it's currently not present. Like "only prompt on errors"
Dear ST Support Team,I would like to ask about the compatibility of using the X-NUCLEO-67W1M1 expansion board based on ST67W611M1 with the NUCLEO-F446RE development board.I had read the **X-CUBE-ST67W61 Data brief document on page 3** "The X-CUBE-ST67W61 Expansion Package runs on STM32 32-bit microcontrollers based on• The Arm® Cortex®‑M33 and Cortex®‑M55 processors with Arm® TrustZone®• The Arm® Cortex®‑M7 processor"So, my questions are:1. Is the X-NUCLEO-67W61M1 hardware compatible with NUCLEO-F44 (Cortex M4 processor)? 2. Can I use raw SPI + AT commands without X-CUBE-ST67W61?, Has anyone done this on F44(Cortex M4 processor)? 3. Any known working example or GitHub project for (Cortex M4 processor)+ X-NUCLEO-67W61M1?
Hello all,I’m hitting a USB edge case on an STM32H573 in the 68-pin package (no VBUS sense pin, no VDDUSB domain).My setup (works fine in application):The product is self-powered (3V3 is always on). Because the package has no VBUS_SNS, I detect bus presence with a VBUS → resistor divider → buffer → GPIO (interrupt). My firmware only enables the USB device and D+ pull-up when this GPIO says VBUS is present, so we don’t “attach” or back-power a sleeping PC. That part is solid.The problem (ROM bootloader only):When I enter the System Memory bootloader and select USB DFU, the ROM seems to bring up the USB device and assert the D+ pull-up even if VBUS is absent (e.g., cable plugged into a powered-off PC or an unpowered hub). That effectively signals attach and can source current toward the host through D+/ESD paths—i.e., not USB-compliant for a self-powered device.Easy repro:H573 68-pin board, self-powered 3V3.Ensure no VBUS (PC off / hub unpowered).Boot to System Memory → USB DFU.D+ goes h
Configured WWDG timer in CM7 core of stm32h747I-disco and i have taken a window period of 10msec to 50 msec and configured according to that in cubeMX. also enabled Early Wake up interrupt and Window watchdog interrupt.i am trying to check interrupt call back WWDG_IRQHandler() before reset as per reference manual rm0399.issue: Core Reset is happening properly but WWDG_IRQHandler() is not getting called before reset
Post edited by ST moderator to be inline with the community rules especially with the code sharing. In next time please use </> button to paste your code. Please read this post: How to insert source code Hi, On checking, I noticed a mismatch between the expected sampling frequency (44.1 kHz) and the actual frequency (46.875 kHz). Could this be the cause of the noise? Any suggestions on what might be going wrong? For reference, I’m using SAI1_A with circular linked-list channel 12 of GPDMA1. The configuration details for SAI and GPDMA are provided below. GPDMA Configuration: handle_GPDMA1_Channel12.Instance = GPDMA1_Channel12; handle_GPDMA1_Channel12.InitLinkedList.Priority = DMA_HIGH_PRIORITY; handle_GPDMA1_Channel12.InitLinkedList.LinkStepMode = DMA_LSM_FULL_EXECUTION; handle_GPDMA1_Channel12.InitLinkedList.LinkAllocatedPort = DMA_LINK_ALLOCATED_PORT0; handle_GPDMA1_Channel12.InitLinkedList.TransferEventMode = DMA_TCEM_LAST_LL_ITEM_TRANSFER; han
Hello everyone,I am working with the STM32N6570-DK discovery kit and I have encountered a strange behavior that I cannot explain.When I use the ST-provided example projects that include both an FSBL (First Stage Boot Loader) and an Application image — for example:Template_LRUNTemplate_FSBL_XIPJPEG_EncodingFromOSPI_DMAthey fail to run correctly on my STM32N6570-DK boards.However, the exact same projects (same binaries, same flashing procedure) work perfectly on another identical STM32N6570-DK board (I was able to test the same projects on another STM32N6570-DK discovery kit provided by a friend).Interestingly, simpler examples that only contain an FSBL project (for example GPIO_IOToggle) work fine on my board.Before testing the ST-provided examples, I had tried to debug my own application on the same board.During debugging, my code ended up in a HardFault error, and since then, it seems that any project which includes both an FSBL and an Application can no longer run properly on this bo
My friend and I are trying to create a CMake project to work with Visual Studio.We need to do this because we want to use GitHub Copilot integrated into Visual Studio.Can someone suggest how to debug our software?We are working on a professional project with STM32H7, so we need to be able to use advanced debugging techniques.
The chip we are using is SR5E1E7. Now we want to know how to perform SWD debugging. We have tried various tools, but none of them worked.
Continually get the error when I start prerelease 3.4.11 I am on a A Windows 10 PCAn error occurred while installing STM32Cube bundles: [adoptium-jre@>=17.0.14+7.st.6]. Some feature may not work as expected. Please check output channel logs.
Hi,I want to use LPTIMx to output a PWM signal that changes duty cycle on each period with DMA. The HAL driver implementation for LPTIM PWM is completely wrong, so I tried to find out how to do this from TRM etc.LPTIMx has 3 DMA request events:2xCCRx: Can only be used in input mode for input capture, not with output.1xUP: Update event, which is exactly what I need here. However, it is not a regular single/burst transfer but some sort of hw block mode (DMA channel needs to set BREQ=1 to connect to this request line).LPTIM has another special thing: It only requests a new DMA request once the ARR register is written.So I can write a single register (it does not support burst), and it needs to be ARR or I will never get another DMA request again (with dest address set to ARR register): /* GPDMA2_REQUEST_LPTIM1_UE Init */ NodeConfig.NodeType = DMA_GPDMA_2D_NODE; NodeConfig.Init.Request = GPDMA2_REQUEST_LPTIM1_UE; NodeConfig.Init.BlkHWRequest = DMA_BREQ_BLOCK; NodeConfig.Init.Dire
Hi,We are using a display with the Sitronix ST7701S IC. We received the initialization parameters from the vendor and updated our display driver accordingly. After these changes, the psplash screen appears correctly when the driver loads from kernel. However, once psplash exits and Weston starts, the display goes blank and nothing is shown.We are using custom image with custom board with mickeldore yocto branch .Regards,Adnan
I couldn't find the silk-screen printing instruction document for this model SPC58EG80E5FEC0X. Please help check if these two silk-screen prints are of the same model. Thanks a lot.
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.