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've using TouchGFX Designer for a while, only using Simulator project (which Board setting is PC) for sfx evaluation and learning. And I wanna try to flash my previous project running on a real microcontroller board like F429 discovery board.Here's my question: How to migrate my previous PC Simulator project to new CubeMX project based on real board project?I tried to find related settings in TouchGFX but failed. Is it the only way to migrate my previous ui into new project by doing all the steps in the new TouchGFX project?Thanks !
Hi ST Support Team, #1 Demo provided by ST for STM32H7B3I-EVAL board is working on Windows Simulator. But it is not working for Target (STM32H7B3I-EVAL board.) #2 Does code generated by TouchGFX designer will run on Target board without any code changes on target (STM32H7B3I-EVAL).Please help me to resolve this issue. Regards,Tejas
Hi,I created a project in STM32CubeMX 6.17.0 targeting the NUCLEO-G491RE and successfully generated the code. I then imported the project into STM32CubeIDE 2.1.1 and as far as I can tell it looks ok. The only apparent issue was that when I clicked on the .ioc file I thought that the STM32CubeMX project was supposed to open inside STM32CubeIDE but instead I get an error saying:So that's one issue. But when I come to build the project in STM32CubeIDE there is no Build All (CMD+B) option available, or indeed any other build options available.This is the folder structure:What is missing from this workflow to create a project that can be built in STM32CubeIDE please?Kind regards,Al
Good afternoon,First post here, so aologies for any ignorance.I am trying to combine the subghz radio feature of WL55JC1 and the ST60 high frequency communication Full Duplex UART bridge.Ideally, I would be switching between these two functions.I have ported the ST60 example to the WL55JC1 dev board, and can get both running independently.But my problems arise because the subghz radio example uses the STM32 Sequencer utility, while the ST60 doesn't.When I try to integrate the sequencer into the ST60 code, it seems like the I2C comm/config channel for ST60 stops working.Does anyone have any guidance/direction in this area?Appreciate your time.
Hi everyone,I am working on an STM32H523 MCU and I have recently observed some strange behavior regarding the PB14 and PC9 pins. I have the following setup:PB14 is configured as input (I use this for the TIM2_CH2 alternate function, but this does not affect the issue) and is externally pulled up using a 10kOhm resistor.The PC9 pin is configured as output.When the PC9 pin is unset, the PB14 is 3.3V, as expected. But when setting the PC9 pin, the voltage on PB14 drops to only 1.13V. These pins are otherwise not connected, so 2 seemingly unrelated pins seem to have some dependency within the stm32h523 chip. Another test was performed by configuring PB14 as output (without pullup). Now, when PC9 is unset and PB14 is set, the voltage on PB14 is 3.30V. When setting PC9, the PB14 voltage drops to 3.26V, which seems related... To make sure it is not caused by our own hardware, we did the same test on a STM32H5 Nucleo-144 board (MB1404C), this development b
I am using STM32CubeMX 6.16.1 to configure a project for STM32F415.I use the FATFS on SD card and set it up as:According to FATFS documentation (https://elm-chan.org/fsw/ff/doc/config.html#lfn_unicode), the data type TCHAR should translate to char in this case. However, CubeMX generates Middlewares/Third_Party/FatFs/src/ff.h in which TCHAR is defined as WCHAR, i.e. a 16-bit type:The _STRF_ENCODE is correctly defined as 3 in FATFS/Target/ffconf.h, which corresponds to UTF-8:Is this a bug? How can I ensure that UTF-8 uses the 8-bit data type correctly?
I got this error also.
Hi everyone, I’m designing my first custom PCB for an underwater ROV project (Leak Detection + ESC Control + Jetson Interface) and I would really appreciate feedback before moving closer to manufacturing. A few months ago I shared the schematic review here, and after applying suggestions I completed the PCB routing stage.Now I would like to ask for a review of the PCB layout itself, especially regarding signal integrity, grounding, routing quality, and overall reliability. The board is designed around an STM32G431CB and acts as a sensor/control board communicating with a Jetson Orin Nano and a separate Power Distribution Board (PDB). Main Functions Reading 4 leak sensors Generating ESC PWM outputs Communicating with Jetson Orin Nano Processing leak sensor states and sending a digital LEAK_FAULT signal to the PDB Interfacing with: BNO08X IMU D300 depth sensor ESCs Leak sensors Board Layout Overview Bottom side: 4 leak sensor connectors Left and right sides: ESC connector
Flint is an accelerometer system in the Smithsonian Museum. It is a MKI109 and MKI 210 pair. It has been in place for about three years after a recommendation from your David Reynoldson, who is a really great guy and helps a lot. We have about six to ten such systems that were used and have now been pulled, but old Flint just keeps on working. It has a partially bespoke C# program. The PI designed and manufactured some small boxes. But to hold the 210 onto the 109 I used a rubber band before it was boxed. It worked well for three years and then broke. Flint had some minor problems:1. You have to use a USB Managed HUB to turn the device on and off if you reboot the computer. The HUB is as expensive as the accelerometer pair. Or you unplug the computer, the device does not reset to home if the computer is switched off - major design flaw in a complex system.2. You have to put a watcher program to monitor the accelerometer program that ca
I recently bought a STM32F446 64 pin chip and wired it up. The following circuit is made: I've installed 0.1uF capacitors between two power pins, and two I've not (It's difficult to do so) it's consuming around 20 to 30 mA Pin 30 shows 1.132 volts (4.7uF cap is installed) voltage 3.298 v oscillator is working fine I tried bypassing the 15uH inductor as I thought that is too much, but neither way works The chip is perfectly soldered, checked for resistances multiple times Tried uploading code from both usb to ttl converter and STM programmer from Nucleo f072rb board all the wiring is correct according to me checked multiple times, but when I upload the code using arduino ide, I get this issue: Sketch uses 16576 bytes (3%) of program storage space. Maximum is 524288 bytes.Global variables use 1212 bytes (0%) of dynamic memory, leaving 129860 bytes for local variables. Maximum is 131072 bytes.NODE_F446RE not found. Please ensure the device is correctly connected.Faile
I tried compiling the generated code of the MCSDKand compiling it by C++ compiler, but the error at the revup_ctrl.h file: pHandle->pCurrentPhaseParams = MC_NULL;prevent such compilation.Will it be fixed soon ?
Hi,I'm having trouble getting my ST-Link V2 dongle to be recognized by Cube Programmer. It is recognized by Windows 10 in the device manager, I have been able to update the firmware, and I can get it to load in STM32 ST-Link Utility, but that program doesn't support the .elf file format I need.When I launch Cube Programmer, it does recognize something as shown by the voltage and the firmware (image attached), but when I click the refresh button next to the serial number it says "No ST-Link detected."I've read from others that there are a lot knockoffs of these dongles floating around that don't work anymore. That might be the problem with mine (this is the second one I've bought and tried). Can anyone point me to a good source to buy a legit one? In the products page, I've only seen the bigger ST-Link V2 unit and the smaller USB-C V3 unit, but not the V2 Dongle.I'm trying to flash a board for an Atari 2600 homebrew game I made and I attached a diagram of what the instructions show
Hello, I am designing a USB-C power sink using the TCPP01-M12 and STM32G071CBT6 (UCPD peripheral). The connector is a Molex 2171790001 receptacle. I have two separate issues and would appreciate guidance on both. --- ISSUE 1: No power at all with Type-C to Type-C cable When I connect a USB-C to USB-C cable between my board and a USB-C charger, the board does not power on. However, when I use a Type-A to Type-C cable (from a USB-A charger), the board powers up fine. Hardware setup:- J1: Molex 2171790001 (CC1 on A5, CC2 on B5 — both routed)- IC1: TCPP01-M12 (CC1C and CC2C connected to J1; CC1 and CC2 connected to STM32 PA8/PB15)- IC2: STM32G071CBT6 (UCPD1_CC1 = PA8, UCPD1_CC2 = PB15)- TCPP01 VCC (pin 12) is driven by STM32 PB12 GPIO (TCPP01_PWR net)- TCPP01 DB/ (pin 10) is connected to STM32 PB11 GPIO- C1 and C2 (330 pF each) are now soldered on CC1c and CC2c lines to GND- R8 and R9 (0 Ω, intended to connect UCPD_DBCC1/PA9 and UCPD_DBCC2/PA10 to GND) are NOT yet soldered — so DBCC1 and D
I have a custom STM32H755IIK6 board where ADC1 and ADC2 are used as an I/Q receiver. The ADCs are configured in dual regular simultaneous direct mode, 12-bit, at 1.92 MSPS per channel.The board also includes a LAN8742A Ethernet PHY. The 50 MHz RMII reference clock trace is routed close to the ADC pins (ETH_REF_CLK on P2, ADC inputs on P3 and R3).Both STM32H755 and LAN8742A use separate 25 MHz crystals.ADC clock configuration:PLL2P = 30.719995 MHzDIVM2 = /5DIVN2 = x153DIVP2 = /25FRACN2 = 4915I observe a periodic spur pattern with peaks at:93.75 kHz280.31 kHz466.88 kHz653.44 kHz840.00 kHz Noise level is below approximately 14 codes p-p when applying a 0.9 V DC input from a signal generator. I am using an external 1.8 V reference.The spur frequencies shift when I change the sampling rate, but the amplitudes remain more or less the same.Initially I suspected the 50 MHz RMII clock because touching the 33 Ω series resistor on ETH_REF_CLK changes the spur waveform, making it resemble a 9
Environment:MCU: STM32WB09KE, Cortex-M0+Board: NUCLEO-WB09KEIDE: STM32CubeIDE 2.1.0STM32CubeIDE Build: 27993_20260219_1630 (UTC)STM32CubeMX Version: 6.17.0OS: Windows 11 HomeFirmware package: STM32Cube_FW_WB0_V1.4.0Example project used: BLE_DirectionFinding_Central_LocatorSetup:I am using the STM32WB09 Direction Finding example project on the NUCLEO-WB09KE board.The project is based on ST’s provided STM32CubeWB0 package and the NUCLEO-WB09KE board files available here: https://www.st.com/en/evaluation-tools/nucleo-wb09ke.html#cad-resources The goal is to use two GPIO pins as antenna-switching control signals for AoA direction finding:RADIO_ANTENNA_ID_0 -> PB0RADIO_ANTENNA_ID_1 -> PB1PB0 works correctly. When configured as RADIO_ANTENNA_ID_0, I can observe the expected switching signal on a Saleae logic analyzer. Screenshot provided here: https://imgur.com/a/uk8L8tq Not much here, but zooming in into each pulse shows rapid switching- you can trust me. PB1
When U-boot is going to startup at the entry point address = 0x84000000, then this happens.IAC ID 137 is RISAF4 - DDR-SDRAM.SERC ID 32 is USART2.I don't know why USART2 seems to write at the Optee address region (0x82000000 - 0x83FFFFFF) and it all lands on 0x83FFFF80. The optee address region is secure and USART2 seems to write on this address.I have attached my complete device tree and I wonder if the ST dev team can help me to find why USART2 is trying to access 0x83FFFF80 in DDR-SDRAM?My processor is STM32MP257FAK.Note 1: The difference between 0x84000000 and 0x83FFFF80 is 128, e.g one byte. So I guess that something is shifted wrongly here?Note 2: I'm using LDO2 as VDDIO_SDCARD and BUCK7 for 3v3 for VDD_SDCARD. Because my PMIC is the STPMIC25A and not STPMIC25D. F/TC:0 0 pmic_get_voltage:192 vddgpu_pmic: get voltage: 800000 uV D/TC:0 0 set_opp:67 set clock to 800000kHz I/TC: Primary CPU switching to normal world boot INFO: BL31: Preparing for EL3
Hi! I am working on a design that uses an SD card and an STM32U5 MCU. In trying to educate myself more thoroughly about SDIO bus design, I've come across LVS (low voltage signaling), which is part of the UHS-I spec and required for reaching SD speeds above 25MB/s. I've not designed for this before, and an interested in examples that demonstrate the level-shifting part of this. I'd be particularly interested in solutions that allow the MCU to run at 3.3V, rather than 1.8V, though it's possible that this is an unusual thing to want (I'm still fairly ignorant about this...but keen to learn!)I'm wondering, then, if there are any ST eval boards that demonstrate this in any form? I found this forum post that suggests a few solutions, but most rely on the MCU being run at 1.8V. (I am further aware of the notion that some MCU's have a VDDIO domain that allows the MCU to run at 3.3V but allow some peripheral to be run at a different/lower voltage. Unfortunately the U5 series uses this
Hello, I am working on an application that uses the SDMMC peripheral to read the contents alternating audio files every 150ms. The buffers i have to store the data are large enough to store the entire file in a single burst within RAM. The problem I am running into is that intermittently, the sound "loops" indicating a lockup on the sound subsytem. I've added a small timer in SysTick in order to quantify how long and often this lockup occurs as the logic is running in a lower priority interrupt. I find that the system locks up between 300ms-1200ms. When I listen for this audibly and stop the code, I find that the code is stuck in:if(BSP_SD_ReadBlocks_DMA((uint32_t*)buff, (uint32_t) (sector), count) == MSD_OK) { ReadStatus = 0; /* Wait that the reading process is completed or a timeout occurs */ timeout = HAL_GetTick(); while((ReadStatus == 0) && ((HAL_GetTick() - timeout) < SD_TIMEOUT)) { } /* in case of a timeout return error */ if (ReadStatus == 0) { res
I normally use 1.19.0 because of the MX sillyness...When compiling you get warnings - let's take stm32h723xx.h as an example.Line 2516 is - #define GPIOB ((GPIO_TypeDef *) GPIOB_BASE)In 1.19.0 you get a warning - Description Resource Path Location Type(near initialization for 'output_port[9]') stm32h723xx.h /Cube-Wave-723/Drivers/CMSIS/Device/ST/STM32H7xx/Include line 2516 C/C++ Problem In 2.1.1 you get an error - Description Resource Path Location Typeinitialization of 'long unsigned int' from 'GPIO_TypeDef *' makes integer from pointer without a cast [-Wint-conversion] stm32h723xx.h /Cube-Wave-723/Drivers/CMSIS/Device/ST/STM32H7xx/Include line 2516 C/C++ ProblemAs it is actually your generated code I do wonder how this has slipped through your 'testing' process.I was awaiting a news item reporting on ST employees being treated for burns as their ears caught fire after I found this ;) Andy.
I have a Nucleo-WL33CC1 board which has been working fine, but after starting to work on a DEEP SLEEP implementation I can not connect any longer using SWD neither through Crossworks IDE nor CubeProgrammer. Any possibility to unbrick the board?
Hii everyone,I am designing AC-DC board using STNRG012 IC and used EVL012LED evaluation board for reference purpose and we are facing some isuess1. We design input voltage range from 90-305VAC.2. PFC boost voltage range would be 450V.so which parameter need to be consider while designing for this PFC range .3.Is there similar standard core available for PQ3812 but in your document you mention it NH9 material and in datasheet there no AL value for this core so is there any another simliar core available for it.4.Also want guidance related LLC section because my output voltage is 24V 10A or any reference circuit for it .
I have used a Micro USB cable and it doesn't insert. Help
Hi everyone! I am developing a custom inverter+control board and need to use motor pilot. Would someone please tell that apart from enabling UART TX and RX through Motor Control Workbench and wiring them, what additional hardware do I need for isolated connection to a PC?Thanks and Regards
On line 1695 of stm32h5xx_hal_eth.c ETH_MACTSCR_TSUPDT is used to set the timestamp counter, however page 2934 of RM0481 says this bit is used to add or subtract from the timestamp counter instead:Based on the description of this function, and its use elsewhere, this function should instead use ETH_MACTSCR_TSINIT to overwrite the timestamp counter. As it is at the moment, the current time is added to the counter every time there is a PTP sync meaning the time fluctuates wildly over a century and a half span, and the time is never close enough to use fine adjustment methods.Also consider adding a line to enable PLL1Q's output to the HAL Ethernet init function, that was another fun bug to track down...
Split from Sensor TileBox Pro - orientation of X,Y,Z axes ? - this is a new question.Ok, so I will go with what I measured.I have the output from MEMS Studio for temperature. It says the temperature is 32.18C, which is 0x0c90 There is no such hex value in the entire file and so I am wondering how mems studio got the value file attached
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.