Join conversations with your peers and ST experts. Explore the full potential of STM32 microcontrollers for your embedded design.
Most recent activity
Hello,I want to generate four 50% duty cycle frequencies up to ~12kHz. It should be possible to enable/disable single outputs. Currently no special high requirements about accuracy, etc. Using a STM32U0 device (56MHz max).My first thought was to use an upcounting timer with four output compare channels where the timer itself is free running (ARR set to max. value). The compare channels are set to toggle on match and on each OC interrupt, the corresponding CCR register value is set to the next equivalent ARR value to toggle again. For example, if the timer is running at 1MHz and 1kHz frequency is needed, 1000 will be added to the CCR. To start/stop the output, I'd modify the corresponding OCxM value between toggle and frozen mode.However, I'm not sure if this is the most efficient way, especially regarding overhead and complexity. Another solution which came to my mind was to use a DDS approach with a (low power) timer, constantly firing interrupts at the needed resolution. On each
iam attatching a pdf of my ki cad , let me know the what prevents to flash my code . this is the below error message coming while iam trying to flash " Starting server with the following options: Persistent Mode : Disabled Logging Level : 1 Listen Port Number : 61234 Status Refresh Delay : 15s Verbose Mode : Disabled SWD Debug : Enabled InitWhile : Enabled Target no device found Error in initializing ST-LINK device. Reason: No device found on target." could you please verify the circuit
I try to start working sdMMC with DMA. When D-Cache is not active work well. But when turn it on stop work. Probably need to create MPU region , but where is located used RAM from sdMMC. And if need, how to change .ld file?
Currently designing a PCB that has a USB-C 16 pin connector. For maximum flexibility the PCB can take either a H723 or a F723 MCU. (The H723 has USB FS pins only, whereas the F723 also has USB HS pins available). This design allows it to operate in either USB in FS or HS modes but with only a single USB C port. 1 - What is best practice for wiring up the STM32 USB ID pin (FS or HS) in a USB-C scenario? Do I leave it floating, grounded, or does it need to be connected to one or both of CC1\2 ? 2 - Regarding USB connectivity, can I connect in parallel the following MCU pins (since both sets are inputs to the STM MCU) pin 69 (FS_ID) to pin 51 (HS_ID)? pin 68 (FS_VBUS) to pin 52 (HS_VBUS)? 3 - For question 2, when using a H723 MCU, pins 51 & 52 would be configured as GPIO inputs. When using a F723 either USB mode could be used, so its possible pins 68 & 69 would be configured as GPIO inputs instead. Would this parallel connectivity idea adversely affect FS_ID a
Hello,I am working on the X‑CUBE‑AZURE TFM_Azure_IoT example for the B‑U585I‑IOT02A board and would like to replace the default UART loader with CAN and USB loaders. While the non-secure loader boots and runs correctly, the non-secure interrupts for FDCAN and USB do not trigger. In the application, both peripherals work with interrupts, but in the loader, they do not.To make this change, I modified the loader's non-secure application size to accommodate the FDCAN and USB stacks. However, I am encountering issues with interrupts not firing.I have verified that FDCAN works in polling mode in the non-secure loader application.Environment:Board: B‑U585I‑IOT02A (STM32U585)X‑CUBE‑AZURE: TFM_Azure_IoT (v2.3.0)Toolchain/IDE: STM32CubeIDEWhat I've tried:Adjusted the non-secure application size to fit the CAN and USB stacks.Ensured the peripherals are initialized in the non-secure context.Checked the interrupt enablement for CAN and USB, but no interrupts are firing.Thanks in advance!
As I said before, several issues mentioned in post https://community.st.com/t5/stm32-mcus-products/missing-section-irtim-in-stm32u0-rm-and-more/td-p/667127, were not fixed.And I have more.STM32F0:1. RM0091 page 184 and table 27: Missing SYSCFG_ITLINE31 register with USB bit.2. RM0091 page 629: There is a register RTC_OR with RTC_ALARM_TYPE and TSINSEL[1:0] bits. But it is missing register description before section "25.7.17 RTC backup registers (RTC_BKPxR)". On STM32L0 RM this register is named "RTC option register".3. RM0091 page 613: "This register is write protected (except for RTC_ISR[13:8] bits)." Bits [13:8] should be [15:8]. STM32G0:1. RM0444 page 165: Register RCC_AHBSMENR should be RCC_BDCR.2. RM0444 page 75: Mentions HPREF bit, but it doesn't exist. STM32U0:1. RM0503 page 162: Register RCC_AHBSMENR should be RCC_BDCR.2. RM0503: Missing IRTIM IR_POL bit in SYSCFG_CFGR1 register.3. RM0503 page 61: TIM1/15 should be TIM1/15/16.4. RM0503 page 64, typo: '32 bytes x
I created an issue on github here, but wanted to post here as well for visibility.Copied below are the details of this linked content: Describe the set-upCustom hardware for our internal product.STM32L496.HAL version 1.13.5.2 devices on I2C bus, HTU21D and PCA9535.Describe the bugSome processors through our production have been coming across errata 2.19.4: The HAL does not seem to address this errata and the timing for I2C transactions begin failing after the bus error occurs.Sometimes it has led to the I2C bus locking up because the components on the bus (besides the processor) are stuck waiting for a transaction to finish (the device responds properly with ACK/NACK or correct data when the bus error occurs). We have created some messy workarounds that do not fully solve this issue.Additional contextThe following is a diff of the changes I made to address the problem:diff --git a/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_i2c.c b/STM32L4xx_HAL_Driver/Src/stm32l
Hello, I'm trying to DFU update some binaries into 1Mbyte STM32WB55CG Flash with OpenBootloader Custom APP. I've tried before with NUCLEO-WB55RG board without any problem, but with CG I just can erase/write until the first Block (512KB) of the memory. Always crashes from there. I've checked the option bytes and FUS parameters and everything looks normal. I don't know if you have some idea why this behavior. In the post attached some captures. I've got this contact @Alan PORTE from a colleague, but any help will be welcome. Thank you. FUS/NUCLEO-WB55RG FUS-WB55CG OB/WB55CG OB/NUCLEO-WB55RG DFU-ERROR Sergi
Hello ST Community,I’m using an STLINK-V3MINIE and I’m trying to fully understand the hardware on the probe PCB.On the bottom side of the STLINK-V3MINIE PCB there is an unpopulated footprint labeled “CN5” (small pad footprint). I could not find any mention of CN5 in the user manual as a user-accessible connector, so I’m not sure whether it is factory/test/service only or an optional header.I attached:A photo showing the location of CN5 on the PCB (bottom side).What I measured so far:CN5 pad 3 is GND (confirmed by continuity to USB shield / known GND).Questions:Do you know what the intended purpose of the unpopulated CN5 footprint is on STLINK-V3MINIE?I’m wondering whether it’s mainly for factory test / service, or possibly a reserved footprint for a future accessory / variant, or an internal option used during manufacturing.If CN5 corresponds to a functional interface, would it be possible to share the signal names / pinout (pad 1..4) to the extent you are allowed to?Even a high-level
I was just wondering if there was a suitable communications shield that I could use for my NUCLEO H753ZI development board, preferrable if I also use the X-NUCLEO-GFX02 LCD Shield on top.I've looked almost everywhere but there was no single solution for what I wanted:* RS232 with full handshake support (3T5R)* RS485 support for both half- and full duplex* RS422 since this looks very much like RS485 full-duplexOther nice-to-have features would be fully configurable either by jumper setting or MCU control, various testpoints that are easily accessible, and could handle both 5V and 3,3V input voltage.Since I couldn't find anything that even came up close to what I was looking for, I thought of designing one myself! :)What I came up with was a shield that has been build around the TI THVD4431 chip that has support for all three protocols and is easily configurable by selecting corresponding pins to set high or low.After some tweaks and modifications, I managed to create a board that is abo
HiWhen searching and filtering in the PRODUCT SELECTOR I find that accoring no one of the STM32H7R3 MCUs have UART, USART, SPIetc. It also shows that STM32H7R3V8T6 has internal SMPS, but in the datasheet it does not krØystein
STM32H753 @ 480MHz32bit SDRAM @ 125MHzLTDC clock @ 40.8MHz, 800x480 display, RGB565I increment a counter in the LTDC error interrupt when there is a FIFO underrun.That value will be 0 for >2 weeks. Then, one day, it will thousands of times every second. And of course, the display is erratic, glitchy, completely messed up.This is pretty reproducible as well. When I reboot the hardware, it will run for 18 days or something without issue, and then it happens again.I am at my wits end with this one... anyone have any clue whatsoever as to what could be happening here?
I want to implement a USBPD sink application with a 9V PDO and I am struggeling to set up a PD-contract with a source. I am using following components:STM32G0B1 MCUTCPP03-M20 PD controllerMy project is based on this example: https://github.com/STMicroelectronics/x-cube-tcpp/tree/main/Projects/NUCLEO-G071RB/Applications/USB_PD/DRP1M1_DRPX-Cube-TCPP v4.1.0 When I attach a PD-source, the DPM_Params[_port].PE_IsConnected variable is successfully set.After that I get in USBPD_DPM_Notification a USBPD_NOTIFY_POWER_STATE_CHANGE event and afterwards a USBPD_NOTIFY_HARDRESET_TX event.I also notice that I do not receive a message within PORTx_IRQHandler, as I do not jump intoif (UCPD_SR_RXMSGEND == (_interrupt & UCPD_SR_RXMSGEND))…Do you have any tips for me where I can start looking for my missing piece? Did i initialize something wrong?
Hi Team,I have an application running on touchgfx with STM32H750B-DK board, currently the display which comes along with this board is around 4 inch, but the requirements are 7 inch. Please help me to choose the display to integrate with the board. I'm currently in India. Regards,Siva
New question moved from this post. @mƎALLEm Hey! Thanks for the quick response. I saw your post from a previous thread with a same question but for the STM32F407VG.https://community.st.com/t5/stm32-mcus-products/stm32f407vg-adc-injected-channel-with-dma/td-p/652531 Is the DMA Peripheral in STM32F407VG same as GPDMA Peripheral in STM32U5? The STM32U5 Series has a GPDMA Peripheral which looks to be different from the F4 DMA.Thanks!
Bonjour,J'utilise la suite CUBEMX et CUBEIDE pour créer mon projet à partir d'une carte de développement NUCLEO-U575ZI-Q.J'ai réalisé mon projet sur CUBEMX en gardant et validant le BSP de la NUCLEO pour utiliser les leds et surtout le debug via ST-LINK embarqué.J'ai ajouté des IO pour effectuer une maquette avec SPI1 et OCTO-SPI1 plus quelques IO notamment une PWM.Pour commencer j'ai d'abord réalisé un bout de code pour faire clignoter une led (LED_GREEN); à une certaine fréquence réglée par HAL_Delay.Le souci est que cette fonction bloque car le Tick ne semble pas être validé, (HAL_GetTick me retourne toujours 0)...Je crois pourtant avoir validé les interruptions :Hello,I am using the CUBEMX and CUBEIDE suite to create my project based on a NUCLEO-U575ZI-Q development board.I created my project on CUBEMX, keeping the NUCLEO BSP to use the LEDs and, above all, debugging via the embedded ST-LINK.I added I/Os to create a model with SPI1 and OCTO-SPI1, and a few I/Os, includi
Hi everyone,I'm currently investigating an interesting issue with an STM32F030 and would appreciate some insights.I've noticed that when the processor gets warm, it takes noticeably longer to start up properly and begin executing the main software (takes longer in my bootloader state - displayed via LED). Once it's running, it seems fine, but the boot delay is definitely temperature-dependent.Has anyone experienced this before? I have two main questions regarding this behavior:General Execution Speed: Can the processing speed actually be affected by the heat? Meaning, does the MCU generally execute code slower when warm, or is the clock strictly fixed once running?Startup / Stabilization Phase: Is it more likely that the MCU is just waiting longer during the initial boot phase? For example, could the startup delay be caused by the internal oscillator (HSI) or external crystal (HSE) taking longer to stabilize, or the voltage/POR circuits reacting differently to the temperature?I suspect
We are currently in the early planning stages of developing a PCI PTS/SSF-compliant payment terminal and have selected the STM32U5 series as our target MCU due to its advanced security features (TrustZone, PCROP, HUK, etc.).To ensure we start on the right foundation, we would greatly appreciate your guidance on the following:1. Recommended Software Stack:Which version of STM32Cube_FW_U5 and Trusted Firmware-M (TFM) / SBSFU is currently recommended or validated for security-critical applications like payment systems?Are there any known issues or errata in older versions (e.g., V1.7.0) that we should avoid for certification purposes?2. PCI-Specific Resources:Does ST offer any reference designs, evaluation reports, or application notes specifically tailored for PCI PTS/SSF compliance on the STM32U5 platform?Are there pre-validated secure boot, secure firmware update, or key management implementations we can leverage?3. Documentation & Tooling:Could you share the latest Security Refere
Heyho,I'm not a SW / DSP guy, but I have to help selecting a new MCU.Mostly we need gigabit ethernet, SAIs / I2S for audio input.But for some future applications we might need some DSP power for online audio processing, some heavy filtering and FFT stuff.I wonder if the N6 's NPU can help with that. In all the documentation / ads I mostly see graphics applications.
Will this peripheral ever be documented in detail? i.e. registers, interrupts, etc.Or even a lightweight/low level library would be acceptable.We may choose STM32U5 for a product but not if we are forced to use TouchGFX for good performance.
I am using STM32U575ZIT6QU Microcontroller to measure voltages on 4 analog channels. The 4 channels are configured as Injected Channels. In the RM0456 reference manual, for STM32U5 series, I am unable to find information about using GPDMA with ADC Injected conversions. Is it possible to use ADC Injected Conversion with DMA?
Oh boy, I'm frustrated...Just when I thought I found the right MCU with the N6 (multi-channel audio over gigabit ethernet), I find in CubeMX and the datasheet that SAI2_SD_A and ETH1_CLK use the same pin. And I need both SAIs completely.Very frustrating.Using some I2S might be a solution, but these cannot be synced internally, aside from some other helpful features the SAIs have.So, any other ideas, or will there be other packages where this pin-sharing problem might be solved?
..
Hello there! I'm new here. I’ve just started working on my master thesis, which involves the STM32N6 and an image sensor.From what I've heard from colleagues, working with a camera that lacks a proper datasheet or driver can be frustrating. To avoid falling into the same trap, I’ve been searching for cameras/modules compatible with the STM32N6 that I can get up and running.Here's what I'm looking for:I need to capture images (video is not a priority) in daylight (IR filtered).Once sunlight fades, I will activate my IR illumination and take IR-only images. RGB should ideally be blocked to avoid mixed images. My two approaches so far:1. RGB Camera with Motorized Filter (e.g. RaspberryPi IR-Cut, motorized): It uses a clear filter and an IR-cut filter. The clear glass could potentially be replaced with an RGB-blocking filter.2. Dedicated RGB-IR Sensor: I came across Omnivision sensors and, later, ST’s own options. Here’s where things get tricky:The Omnivision sensors don’t s
Title edited - originally said, "sharing data between two boards" Good day y'all, I'm trying for the first time to have the two cores on a H7 board share data between one another on shared memory, in particular cm7 writing data and cm4 read it. From what I understand I need to use a semaphore to signal back and forth to alert the cm4 when there is new data in every iteration, the theory I get, but I'm not sure of the shared memory allocation and the semaphore correct availability. Is there any example code I can see to understand how it's supposed to go? I tried looking at the ide examples, but anytime I try to open the example folder the ide application just dies :\ Thx all for the advices, P.S. I'm also using FREERTOS but it's not supposed to cause any problem but you never know
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.