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
Hello, I am currently using an STM32U5G9 and would like to connect a microSD card via SDMMC1 to expand data storage. My Zephyr device tree contains the following node: &sdmmc1 { status = "okay"; pinctrl-0 = <&sdmmc1_d0_pc8 &sdmmc1_d1_pc9 &sdmmc1_d2_pc10 &sdmmc1_d3_pc11 &sdmmc1_ck_pc12 &sdmmc1_cmd_pd2>; pinctrl-names = "default"; disk-name = "SD"; bus-width = <1>; clk-div = <8>; }; As shown above, bus-width = <1> indicates 1-bit (1-line) mode. I would like to use 4-bit mode, but after changing this value to <4>, the microSD card can no longer be accessed. How should this issue be resolved, and what additional configuration or considerations are required to enable 4-bit SDMMC operation correctly on STM32U5 with Zephyr?
Greetings,I am a researcher currently developing a study on the measurement of difficulty/complexity in electronic circuits. I am looking for books, scientific articles, instructional materials, or datasets that present sets of electronic circuits accompanied by some indication of difficulty, complexity level, or pedagogical classification, even if such indication is subjective or approximate.Any reference would be welcome, including classic textbooks, lecture notes, datasets, academic repositories, or materials used in technical or university-level education. If you are aware of works that organize circuits by difficulty level, or that could be used as a basis for comparative analysis, I would greatly appreciate your help and recommendations.On my ResearchGate profile, I have published some works on complexity measurement in other domains, such as industrial property patents and C programming language source code, which may help contextualize my research approach.Thank you in advance
Good day,I'm trying to get motor profiler running on an X-Nucleo-IHM17M1. The only compatible Nucleo board I have is a F303RE.To enable the motor profiler application, it requires the selection of 3 shunt current sensing. According to this link, it seems that both the IHM17M1 and F303RE support 3 shunt current sensing.Yet, when I try and configure the project, only single shunt is available. This is not the case for the other Nucleo boards.That said, I do receive the following warning when creating the project.Is there any solution for this, or should I use a different Nulceo board?
Hello!I have encountered a problem - I am unable to create a project for STM32F769I-DISCO board with both FreeRTOS using CMSIS_V2 interface and LwIP with NO_SYS parameter set to "OS Used".In old project that was setup with STM32CubeMX V6.14.0 using STM32Cube FW-F7 V1.17.2 I had no problem with setting both CMSIS_V2 and "OS Used" value.In new project that uses STM32CubeMX V6.16.1 and STM32Cube FW_F7 V1.14.4 I have to use CMSIS_V1 interface for FreeRTOS if I want to change LwIP's NO_SYS parameter to "OS Used".Did something change in recent updates, is it a bug or am I doing something wrong? Thank You for help in advance. Using FreeRTOS with CMSIS_V2Can't change NO_OS parameterCubeMX 6.16.1, Firmware F7_V1.17.4
Hello,I am working on a project using mbedTLS and Keil MDK to make an HTTPS server running on an STM32F777. To speed up encryption/decryption, I am trying to make use of the CRYP coprocessor (mostly focusing on speeding up AES GCM calculations). My implementation is based on the example given here: https://github.com/STMicroelectronics/STM32CubeL5/tree/master/Projects/STM32L562E-DK/Applications/mbedTLS/Crypto_Selftest.However, when I try to run with my alternative AES GCM implementation, the CRYP coprocessor does not calculate the same tag as mbedTLS. This causes the SSL handshake to fail. I've attached my files for the GCM alternative implementation here. Am I missing something with the way I'm presenting my data?
Hi, I'm working with LoRa on STM32WL5MOC for a custom board and comparing performance with the dev board. I've measured RSSI and SNR at different distances. - Custom board vs Dev board RSSI, SNR values are noted for reference. How do I improve the custom board's RSSI? Are there specific design or config tweaks (like antenna matching, RF switch, etc.) to boost it? Using STM32WL5MOC reference for the custom board. Any insights would help! Thanks
Hi everyone!Just finished a dual boot system but during testing I bumped into a weird issue. With BFB2 bit unset firmware starts smoothly but when it is set, it ends up in some bootloader loop although it should switch to opposite bank (FB_MODE = 1) and run second firmware code. It looks like bootloader is waiting for update as it initialized I2Cs, CAN1 and USB.System option word for this case is 0xFB7FF8AA (nBoot0 = 1, nSWBoot0 = 0, nBoot1 = 0, BFB2 = 1). Actual Boot0 pin is connected to ground (along with quartz generator). Initial stack values of both bank firmware are within SRAM range (it is mandatory to start firmware correctly).What is most interesting, another board based on the same chip but slightly different on connected periphery works perfectly. It seems, the bootloader somehow disregards options and starts to check periphery to update but catches only noise (induced by unconnected pins or by sensor outputs) so it hangs.Is there something I missed?Regards
Hi,Do we have sample code demonstrating continuous conversions for U545 ADC1 with GPDMA using "Standard Request Mode". The sample code should use two or more channels - say IN1, IN2. I am migrating a project from F105/F405 and am a little overwhelmed by the setting options to be configured with U545.The ADC_DMA_Transfer example at STM32Cube\Repository\STM32Cube_FW_U5_V1.8.0\Projects\NUCLEO-U575ZI-Q\Examples\ADC\ADC_DMA_Transfer uses Linked-List Mode and only demonstrates a single ADC channel. Thanks.
I have been developing successfully with STM32CubeIDE for several years. My current project has been going ok, with lots of in-application debugging, until my latest revision. The debugger quits with the following error message:----------------------------------Error in final launch sequence:Failed to execute MI command:load C:\\Users\\feath\\OneDrive\\Documents\\Featherweight\\BlueRaven\\IDE_Workspace\\BlueRaven\\Debug\\BlueRaven.elf Error message from debugger back end:You can't do that when your target is `exec'Failed to execute MI command:load C:\\Users\\feath\\OneDrive\\Documents\\Featherweight\\BlueRaven\\IDE_Workspace\\BlueRaven\\Debug\\BlueRaven.elf Error message from debugger back end:You can't do that when your target is `exec'Failed to execute MI command:load C:\\Users\\feath\\OneDrive\\Documents\\Featherweight\\BlueRaven\\IDE_Workspace\\BlueRaven\\Debug\\BlueRaven.elf Error message from debugger back end:You can't do that when your target is `exec'You can't d
I am currently evaluating the X-NUCLEO-IHM16M1 motor control expansion board and would like to ask whether it is suitable for measuring the electrical parameters of the motor described below.The motor specifications (translated from the datasheet image) are as follows:Rated Voltage: DC 24 VRated Torque: 0.063 N·mRated Speed: 4,000 RPM ±10%Rated Current: < 1.7 ARated Output Power: 26 WNo-load Speed: 5,000 RPM ±10%No-load Current: < 0.3 ANumber of Poles / Phases: 8 poles / 3 phasesInsulation Class: Class BOperating Temperature: –10 °C to 40 °CAccording to the X-NUCLEO-IHM16M1 documentation, the maximum output current is specified as 1.5 A RMS. My question is:Is it possible to use the Motor Profiler tool in STM32 Motor Control Workbench to measure Rs, Ld/Lq, and Ke for this motor when using the X-NUCLEO-IHM16M1, considering its 1.5 A RMS current limitation?Any guidance or recommended measurement limitations would be greatly appreciated.Thank you very much for your support.Best
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 All, MCU is STM32H563. I attempted to jump from the Secure App directly to the System Bootloader so that I could program the OBK file without pulling BOOT0 high.However, using the method below, the jump never succeeds — the MCU keeps resetting continuously. Sometimes it resets immediately, and sometimes it reaches the reset vector of the system bootloader and then resets again. static void JumpToBootloader(void) { funcptr_NS NonSecure_ResetHandler; __disable_irq(); // Disable interrupts SysTick->CTRL = 0; SysTick->LOAD = 0; SysTick->VAL = 0; HAL_RCC_DeInit(); // Reset clock configuration for (int i = 0; i < sizeof(NVIC->ICER) / sizeof(NVIC->ICER[0]); i++) { NVIC->ICER[i] = 0xFFFFFFFF; NVIC->ICPR[i] = 0xFFFFFFFF; } __DSB(); __ISB(); SCB_NS->VTOR = BOOTLOADE
We are using the STM32U5 MCU and its internal RTC in our project.We are facing an issue where the RTC time sometimes goes beyond 24 hours — for example, we observed a timestamp showing 37 hours. The RTC is configured in 24-hour format, and we have initialized the RTC and its time format correctly as per the reference manual and HAL documentation.Also, After running for 23:59:59 seconds, the time changes to 24:00:00 instead of 00:00:00, and the week day has not been incremented. The main challenge is that this does not happen consistently. We see such out-of-range values only randomly, which makes it difficult to identify the root cause. Has anyone faced a similar issue with the STM32U5 RTC? Could you please suggest possible causes or solutions, or any checks we should perform to debug this behavior?
Hi Everyone,I'm currently migrating from LSM6DSM to LSM6DSO in my application and facing some issues with accelerometer accuracy in stable conditions.System Overview:MCU: STM32L4Sensor Interface: SPI (3-wire)Purpose: Reading raw accelerometer and gyroscope data, converting to physical units, and estimating roll/pitch/yaw using MotionFX.Configuration Details: Parameter Value Acc/Gyro ODR1.6 kHzFIFO Output Rate400 HzMain Loop Rate100 HzAveraging4 samples/frame What’s Working:I can successfully communicate with LSM6DSO via 3-wire SPI.I’m able to read raw data from the accelerometer and gyroscope.Sensor fusion (MotionFX) works and outputs roll, pitch, and yaw.With LSM6DSM, I was getting clean and accurate data as expected.Problem:I'm trying to measure raw linear acceleration (after converting to g).The requirement is that the noise level (in a static, stable condition) should be less than ±0.005g in all directions.With LSM6DSO, the data seems noisier and less accurate, eve
Hello,I am unable to connect to TouchGFX version 4.26 to download or access the demo and example projects from the software download section.My system is connected to the internet; however, the application itself does not connect to the server.Please let me know how I can resolve this issue.
Hello,I have a question about the flash memory map in the Secure project.I’m using the following application as an example:STM32Cube_FW_H5_V1.5.1\Projects\NUCLEO-H563ZI\Applications\ROT\OEMiROT_Appli_TrustZone\STM32CubeIDEIn the memory map, two flash regions are shown: - FLASH: 0x0c018400 - 0x0c01dfff - FLASH_NSC: 0x0c01c000 - 0x0c01c3ffQuestion:Should the FLASH_NSC region overlap the FLASH area, or should it be placed after the FLASH region?If it should overlap, what is the purpose of doing that? In this example, it overlaps.Thank You.
Hi,In paragraph 1.2 “Launch the provisioning script” I read that:Launch one of the provided scripts depending on your IDE:For EWARM or MDK-ARM: launch the provisioning.bat script.For STM32CubeIDE: launch the provisioning.sh script.I have Windows and STM32CubeIDE. Can I run the provisioning.sh script on Windows?Looking into the env.sh script, I found the following code: echo ${OS} | grep -i -e windows -e mingw >/dev/null if [ $? == 0 ]; then echo "" echo " ==========================================" echo "| For Windows OS, please use .bat scripts. |" echo " ==========================================" echo "" echo " Press any key to continue..." echo read -p "" -n1 -s exit 0 fi It seems that the script cannot be run on Windows.Could you please advise how to run the provisioning script for STM32CubeIDE on Windows?Thank you very much for your support.Best regards,Marco
All,I'm working on the basics of getting the SPI communication set up for the L9780 IC and am running into some issues, so I'd appreciate some feedback or a double-check. It appears so far that I'm able to send a command via the control word and successfully echo that back when the REG=1 bit is set. When doing so, the CB bits are correct, so everything seems to be functioning as intended.My issue is that I'm getting a SPI fault when REG=0 to get the status register as an output. The CB[1,0] bits are correct, however SPIF1 is asserted. The datasheet has a few sections on this so I'll address each of them:5.5.1 SPI data faultDatasheet says this is set when the CB[1,0] bits are not set as expected.My base control word is 0x00040F18192A8040 which appears to be OK.When enabling VCCS and INRC, byte 14 and 13 get updated so the word is 0x02040F.... and 0x0244F.... respectively.Additionally when getting my "echo" of the SI register, the control word is 0x0A440F18192A8040 which also appears to
Split from STM32WBA5MMGH6TR Debug interface PCB layout - which is a separate question.Hi , thank you very much.In my module (STM32WBA5MMGH6TRTR), there is only one pin for boot selection BOOT0. I believe when it is pulled low booting happens from main flash memory. But when it is high , from where the module is booting.
As shown in the figure, when using one QSPI, the other becomes unselectable.
Hi, I am trying to move to STM32H750 from STM32F407. To start with I have tried making simple LED blink project and it seems to work.Then I add SDMMC1 and suddenly it started hanging on exiting `static void MX_GPIO_Init(void)`. Any ideas why? Do I need some kind of other initialization or what could be wrong? /* Identify card operating voltage */ errorstate = SD_PowerON(hsd); if (errorstate != HAL_SD_ERROR_NONE) { hsd->State = HAL_SD_STATE_READY; hsd->ErrorCode |= errorstate; return HAL_ERROR; }it seems to return error here0x10000000U#define SDMMC_ERROR_UNSUPPORTED_FEATURE ((uint32_t)0x10000000U) /*!< Error when feature is not insupported */what does that mean and how to fix it?
Hello, I would like to know if I can use FP-AI-Vision to design my own application, for example, to detect trees in a yard. Or is it designed only for the three applications: food recognition, person presence detection, and people counting?
Good morning,I would like to measure the supply voltage on an STM32H573RI. To do this, I measure VREFINT and then want to calculate the supply voltage.My approach (simplified):sConfig.Channel = ADC_CHANNEL_VREFINT; sConfig.Rank = ADC_REGULAR_RANK_1; sConfig.SamplingTime = ADC_SAMPLETIME_640CYCLES_5; sConfig.SingleDiff = ADC_SINGLE_ENDED; sConfig.OffsetNumber = ADC_OFFSET_NONE; sConfig.Offset = 0; HAL_ADC_ConfigChannel(&hadc1, &sConfig); while (!__HAL_ADC_GET_FLAG(&hadc1, ADC_FLAG_EOC)); return HAL_ADC_GetValue(&hadc1); Using the ADC value of VREFINT, I calculate the supply voltage as follows:static uint16_t Calc_VREF(uint16_t adc_value) { uint16_t vrefint_cal = (uint16_t) (*(uint16_t *) (0x08FFF810)); uint16_t vrefint_voltage = 3300; return (uint16_t)(vrefint_voltage * vrefint_cal / adc_value); } My ADC delivers a value of 1.562 digits for VREFINT, while the calibration value is 1.503 digits. According to my calculations, the reference voltage is therefor
Hello, I am new to programming the NUCLEO-H563ZI. I am interested in the low-power STOP MODE function. I have watched an STM32 video tutorial for a different core. Everything works fine except for this function __HAL_RCC_PWR_CLK_ENABLE(); ../Core/Src/main.c:98:3: warning: implicit declaration of function ‘__HAL_RCC_PWR_CLK_ENABLE’ [-Wimplicit-function-declaration] 98 | __HAL_RCC_PWR_CLK_ENABLE(); | ^~~~~~~~~~~~~~~~~~~~~~~~ What is causing this error? Thank you for your help.
Hi community,I am working with STM32H747I-DISCO Board(Dual cortex M7+M4)MP34DT05-A digital MEMS microphone is integrated on the board and issues are facing while bringup.Issues follows:As per the schematic there is one digital microphone connected to the MCU using SAI Interface with default connectionsI am trying to bringup it with the help of refernce document(Ref AN5027).When i am understnading this document a few questions have been raised. Those question as follows.1.There are two types of mode mono modestereo mode stereo modeIf we see the schematic:One digital microphone is connected to stm32 MCU and it looks like mono mode configuration But when I am following mono mode configuration process to bring up it then pins which are enabling while configuring is mismatching with pins which are connected to this digital microphone as per the schematic.Connection pins – (SAI4_CK1) PE2, (SAI4_D1) PC1 (as per the schematic)Enabling Pins :In stereo mode config
Motor Proiler 识别无刷空心杯电机的时候,卡在28%,套件用的是 Translation: When the Motor Profiler identifies a brushless coreless motor, it gets stuck at 28%. The kit uses...
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.