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, I am currently evaluating STM32C532KBU6, where I noticed the PB6 gets shorted (~20 ohms) with VDD of the MCU, as soon as the MCU is powered. When not powered, I am measuring ~4 Mega ohms between PB6 and VDD. I have not set any Option Bytes and did not flash any firmware as yet. The controller is consuming <10mA and no other abnormality observed. I checked the reference manual as well as the internal PU/PD architecture. So far, I could not find any answer.The PB6 is not connected to any external circuitry and only to a test point. Any leads will help me here! Thanks!
Hi everyone,I'm using STM32MP2 OpenSTLinux 6.6 Yocto Scarthgap MPU v24.11.06 with Linux kernel 6.6.48.I am trying to interface a Waveshare LVDS 10.1" FT5x06 touch display with the STM32MP257F-DK. We designed a custom PCB for the required pin mapping. 1. Display :Initially, the display was not working with the original compatible string. After changing the panel compatible to "panel-lvds" only then display started working. panel_lvds: panel-lvds { compatible = "panel-lvds";... /*compatible = "edt,etml0700z9ndha", "panel-lvds";*/ } 2. I2C Touch / HDMI Address :The FT5x06 touch controller uses I2C address 0x38.The ADV7535 HDMI device also uses 0x38 as one of its register-map addresses. Since I am not using HDMI for this test, I changed that ADV7535 address from 0x38 to 0x39:&i2c2 { adv7535: hdmi@3d { compatible = "adi,adv7535"; reg = <0x3d>, <0x3c>, <0x3f>, <0x39>; //<0x38>; } ili2511: ili2511@41 { compatible = "ilitek,ili251x
Dear ST Team,I am writing to follow up on my request for access to the STM32TRUSTEE-SM (Secure Manager) resources. I submitted my request several weeks ago, but I have not yet received any update, approval notification, or access instructions.Could you please check the status of my request and help expedite the approval process? If any additional information or action is required from my side, please let me know.The product page I am referring to is:https://www.st.com/en/embedded-software/stm32trustee-sm.htmlThank you for your support. I look forward to your response.Best regards,RJ
Please comment.JW
I am trying to capture video streams from two VD66GY cameras connected to the CSI0 and CSI1 ports of a Compute Module 5 IO Board. My OS is : Linux raspberrypi 6.12.75+rpt-rpi-2712 #1 SMP PREEMPT Debian 1:6.12.75-1+rpt1~bookworm (2026-03-11) aarch64 GNU/LinuxBoth seem to be recognized:However, when I try to capture video from both cameras simultaneously, only the CSI0 port works. The CSI1 port returns the following error with this command ( rpicam-hello --camera 1):I also tried a GStreamer command, but it didn't make any difference.I don't have much experience with V4L2 or camera systems in general, so I'm not really sure how to fix this problem. Maybe I missed a step during setup, but that seems unlikely. Even after searching for similar issues, I haven't found anything conclusive.What I have already tested:When using two different cameras — CSI0 = VD66GY and CSI1 = IMX296 — I can capture both video streams successfully. The reverse configuration does not work if VD66GY is connect
Hi, everyone. I have been doing some courses bout stmf411 programming, it is quite good course. However a question comes up in my mind all the time. How would i learn if i wouldn’t have nobody to teach me all the microcontoller stuff ? or in other way how have the stm32 programmer master learnt to program? is there a special course that is given by STM company?What is the main source for becoming a master in st microcontroller master? I would really appreciate any answer to this that blow my mind … Thanks a lot
Hi everyone,I'm using UART Receive-to-IDLE with circular linked-list GPDMA on an STM32H7RS and ran into a problem where reception stopped with HAL_DMA_ERROR_DTE.The DMA node and RX buffer are both in DMA-accessible, non-cacheable RAM and aligned to 32 bytes.The DMA handle and queue structure are in normal BSS. Everything is global/static and zero-initialized.I checked the queue/node connection and the source address in LinkRegisters[3], which correctly pointed to UART RDR. The node address reconstructed from CLBAR and CLLR was also correct when checked.However, these were the actual DMA register values in the working and failing cases: Working FailingCBR1 0x00000080 0x0000049BCSAR 0x40007824 0x00000005CDAR 0x24001960 0x200065A0After the DMA error, UART error handling stopped reception and disabled the IDLE interrupt, so I stopped getting HAL_UARTEx_RxEventCallback() calls.What fixed it was adding __DSB() inside HAL_DMAEx_List_Start_IT(), after the CLB
LL_LPTIM_Disable calls LL_RCC_GetSystemClocksFreq, but CubeMX does not generate stm32u5xx_ll_rcc.cThis causes a linker error due to undefined reference.A minimal reproduction .ioc file is attached.
Hi everyone,I am working on a project using an STM8S003F3 MCU with ST Visual Develop (STVD), Cosmic C Compiler, and a clone ST-Link V2 programmer.I am having an issue with debugging. When attempting to start a debug session in STVD, I get the following error:Connection error (usb://usb): swim error [30006]: comm init error: chip does not answer.Important details: If I open ST Visual Programmer (STVP) and perform a few Read/Write attempts, STVP eventually starts working and can read and program the chip without issues. However, after doing this, only programming works—debugging in STVD still fails completely. Additionally, in STVP, the Erase button is grayed out and disabled. Signal levels and waveforms look fine at a quick glance on the scope (though I haven't done an in-depth signal integrity check yet). I have used a similar ST-Link clone setup before without any issues. Could this be caused by the ST-Link clone, or is it possible that the STM8 chip itself is a counterfeit/cl
Dear ST Support Team,Thank you for your continued support.Previously, I was able to download the schematic for the STM32F769I-DISCO board. However, at some point, it became unavailable for download.I would like to check the circuit design, so could you please make the schematic available for download again?Thank you for your assistance.Best regards,
Hi STM Team,I am working on an STM32 + ThreadX + NetX Duo application with the Ethernet interface. I am facing an issue with the NetX Duo DHCP client.My setup is: MCU: STM32N655X0HxQ RTOS: ThreadX Network stack: NetX Duo Ethernet driver: STM32 HAL Ethernet driver DHCP client: NetX Duo DHCP PC is running as the DHCP server MCU and PC are connected on the same Ethernet network. Observed behaviorThe Ethernet interface works correctly when I configure a static IP address.For example, with:MCU IP : 192.168.50.50Subnet Mask : 255.255.255.0Ethernet communication works correctly.However, when I enable the NetX Duo DHCP client, the MCU remains stuck at:Looking for DHCP server ..The DHCP server is running correctly on my PC.DHCP server configurationMy PC DHCP server is configured as:[SETTINGS]IPPOOL_1=192.168.50.10-254IPBIND_1=192.168.50.1AssociateBindsToPools=1Trace=1DeleteOnRelease=0ExpiredLeaseTimeout=3600[GENERAL]LEASETIME=86400NODETYPE=8SUBNETMASK=255.255.255.0NEXTSERVER=1
Hello ST team,I am designing a hardware with STM32G4 family. I want to measure a differential signal by MCU's ADCs over a cable of 50 cm. Is it needed to use op-amp as ADC driver or I can connect it to the MCU pins directly?
Dear STMicroelectronics Technical Team,We are planning to use the STM32G431RBT6 for a 1-phase/3-phase AC motor-control application.We would specifically like to clarify the PID/PI control capability of the STM32G431RBT6: Does the STM32G431RBT6 have a built-in hardware PID/PI controller or dedicated PID peripheral? If it does not have a hardware PID/PI controller, does ST provide ready-made PID/PI control firmware for the STM32G431RBT6 through the STM32 Motor Control SDK? Does the available firmware support speed PI control and current/torque PI control for a 3-phase AC induction motor? Can the source code be provided so that we can tune the PI/PID parameters according to our motor and application? We expect an annual requirement of approximately 10,000 units. Please also advise regarding technical support, recommended reference designs, and volume pricing. Thank you for your support.Best regards,Anurag singhAVG AUTOMATION
@lbthomsen of STM32World has published a review of the new STM32CubeMX2, what is good (not so much), indifferent and BAD (a lot). He tries to get it working, browse through the features, and has a lot of opinion on this matter. https://www.youtube.com/watch?v=61r83TTzDfk End of the day, IF you plan to use future STM32 families (starting with STM32C5) you have no choice than to use CubeMX2 AND the very painful migration from HAL to HAL2 (not compatible, maybe some future tool can assist in such migration). Even if migration is possible, then you will have the pleasure to support multiple versions of YOUR code on old vs new MCU families. Have FUN. For the people without perfect vision (like myself), embrace yourself for 4 pixels font sizes, and contrast-free dark-white-on-white-backgrounds text. Lovely! At least there is plenty of white space around the text that can sooth your soul. Now is the best time for experienced STM32 shops to leave HAL, CubeMX and go Bare
STM32G051C8 TIM2 is not initializing using LL_TIM_Init(). After I call the function and look at the registers they are all zero. All the other TIM seem to work.
A customer raised a quality issue since the MCU on the NUCLEO-H7S3L8 fails to connect.Issue Description: While the onboard ST-LINK is detected successfully and target voltage is correctly measured, the main MCU fails to connect as in the attached picture.Application Description: Attempted to connect the board and upload a program using the official STM32CubeProgrammer software after powering up. I was able to find one post having the same problem, but the dev board is differenthttps://community.st.com/stm32cubeprogrammer-mcus-30/error-no-stm32-target-found-smt32n657x0-q-145776#M7723I think the solution provided in the post would work for NUCLEO-H7S3L8 too, but since they are different boards, it seems the way to enter Dev BOOT mode would also differ.Could you please check the customer's situation and provide a troubleshooting guideline? Best regards,
Could you please provide the part marking details for M24C02-FMN6P for visual inspection purposes?
Hello guys. On a WBA55CG running ThreadX with a custom BLE peripheral application, the device becomes permanently stuck after a random number of sleep/wake cycles (anywhere from ~10 to ~20+). The CPU stays alive, but the advertising timeout never fires again, so the application never returns to STOP 1 mode. Only a hard reset recovers it.The device wakes from STOP 1 mode from either an interrupt fired from an IMU sensor or the RTC, advertises for an x amount of seconds and re-enters STOP mode until the next interrupt request is issued. The onboard LED blinks when the board enters Advertisement mode and when it becomes stuck, the led stays permanently on and the device becomes unresponsive.The core part of the app is the following FSM case APP_MAIN_MSG_SLEEP_READY: MAIN_LOG_INFO("[CPU] All modules idle. Authorizing STOP entry..."); // --- Final pre-sleep housekeeping (only if we are actually meant to sleep) --- if (main_state == MAIN_STATE_PREPARE_SLEEP) { PLT_THREAD_SLEEP(10);
I purchased the STEVAL-IKR002V1D recently to investigate low power 169Mhz operation. I noticed the schematic has TBD for values on components - No BOM and the schematic also does not reflect my board. I have an IC, U3 not even shown in the schematic. Could you please attached the latest schematic with values. Thank you!
Hello everyone,I am having an issue with EEPROM Emulation initialization in my STM32 project.I am currently trying to implement the EEPROM Emulation utility using STM32CubeMX2 v1.1.0.The program starts with mx_system_init(), which initializes the peripherals and other required modules such as FLASH, RCC, etc. After that, I call mx_eeprom_emulation_init(). During this initialization, the MCU enters a HardFault.Detailed informationThe call hierarchy is:main() → mx_eeprom_emulation_init() → EE_Init() → EE_FLITF_Init() → Page_GetState() → EE_ITF_FLASH_ReadData()Inside EE_ITF_FLASH_ReadData(), the code tries to access address:0x09000018and immediately enters a HardFault.I also analyzed the fault using the Fault Analyzer in STM32CubeProgrammer. The results are:SCB_BFAR: 0x09000018 BusFault: Precise data access error (PRECISERR) The BusFault is escalated to a HardFault (FORCED)I also checked the EDATA_EN option bit in STM32CubeProgrammer, and it appears to be enabled correctly.At this point,
Hello everyone,I’m trying to communicate with a POWERSTEP motor driver via SPI using an STM32 (STM32F4) and the HAL library. I have a basic test where I send three bytes and read back the same number of bytes, but I always receive exactly the same data that I transmit (i.e., a loopback effect). The POWERSTEP does not seem to respond with its expected status bytes.SPI configuration (from CubeMX):hspi1.Instance = SPI1;hspi1.Init.Mode = SPI_MODE_MASTER;hspi1.Init.Direction = SPI_DIRECTION_2LINES;hspi1.Init.DataSize = SPI_DATASIZE_8BIT;hspi1.Init.CLKPolarity = SPI_POLARITY_HIGH; // CPOL = 1hspi1.Init.CLKPhase = SPI_PHASE_2EDGE; // CPHA = 1 => SPI mode 3hspi1.Init.NSS = SPI_NSS_SOFT;hspi1.Init.BaudRatePrescaler = SPI_BAUDRATEPRESCALER_16;hspi1.Init.FirstBit = SPI_FIRSTBIT_MSB; Code snippet (simplified):uint8_t tx[3];uint8_t rx[3];tx[0] = 0x3B; // example commandtx[1] = 0x00;tx[2] = 0x00; // Reset chipHAL_GPIO_WritePin(rstPOWERSTEP_GPIO_Port, rstPOWERSTEP_Pin, GPIO_PIN_RESET
I have a custom board using STM32H735ZGT6 and the LAN8742 Ethernet PHY using RMII. During the execution of CubeMX generated Ethernet initialization code, the MAC software reset bit is not cleared triggering an error. I have read a lot of forum posts about this issue and have verified the following:The RMII reference clock is supplied by the PHY using a 25MHz crystal as in the H723 nucleo board. The 50MHz clock generated by the PHY is present at PA1 pin and verified with an oscilloscope. (see osci image below) VDDCR voltage is 1.2V generated by internal regulator on PHY The PHY hardware reset is supplied by a MCU GPIO, and the resistor straps seem to function properly during reset (probed all with oscilloscope). I also have a pulldown resistor on the LED2 pin so that REFCLKO is generated by PHY. I can communicate through MDIO with the PHY to read out and write to registers, confirming that straps work ok. The output side of the PHY works, a link is established in both 10 and 100Mbps mo
Hello,We are using STM32U585QII6QTR in our device that is powered via USB and batteries. We observe that some devices do not startup anymore after some time of use. It is unclear which impact causes this. Everything that can be measured outside the MCU looks as expected.Debugging the device shows that everything is working normally, for example the bootloader checks successfully that a valid firmware is flashed by using HAL_HASHEx_SHA256_Start/Finish.However, the Systick is not triggered and GetTick remains 0, but SysTick->VAL is counting.Similartly, when starting the FreeRTOS Scheduler the device crashes when the SVC 2 instruction is called. The SVCHandler interrupt is not called. So, it looks like interrupts are not activated anymore.I created a no-RTOS project with CubeMX and checked directly after HAL_Init if the Systick is triggered. On a “damaged” device there is no SysTick triggered after HAL_Init whereas on a good device it is as expected.I attached a dump of important regis
Can the STM32MP231 simultaneously capture or stream four 2-lane MIPI CSI-2 camera streams through a DS90UB960/TDES960 using VC0–VC3?I have reviewed ST’s documentation on “How to use one or multiple multi-stream MIPI CSI cameras.” But did not get complete clarity on simultaneous capture of four camera streams. The documentation example appears to show routing for up to three streams/channels through the DCMIPP pipes (Dump, Main, and Aux).
Reverting STM32H7B3 from Secure Access Mode to Standard ModeHello,I am working with an STM32H7B3 and currently evaluating the Secure Access Mode and secure user area functionality.I am going to configure the device as follows:Create a secure user area in Bank 1 with DMES1 = 1 Create a secure user area in Bank 2 with DMES2 = 1 Enable Secure Access Mode (SECURITY = 1) The device is currently at RDP Level 0My requirement is to support reverting the device from Secure Access Mode back to Standard Mode during development/service.My understanding is that the following sequence can be used:Change RDP from Level 0 to Level 1. Perform an RDP regression from Level 1 to Level 0. Since DMES1/DMES2 are set to 1, the secure areas should be erased during the RDP regression. After the secure areas have been removed, disable Secure Access Mode (SECURITY = 0). Reset the device and boot normally in Standard Mode.In other words:RDP Level 1 → RDP Level 0 regression → secure areas removed due to DMES1/DMES2
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.