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 am using STM32H750B-DK (DK32H750BSAT1). Following st tutorial in:https://www.youtube.com/watch?v=dx7xHRH9YXg The project built and ran successfuly on the board. Unfortunately upon implemeentig the updateDate on a textArea the update stopped completely for both time (was originaly uopdating before adding the text widget) and date. I have then deleted the textArea widget and commented out the relevant lines in the script, the update returned normally. I suspect the typogrphies is the root cause of the problem (I need advise on that. MyGFX is 4.26.0 , I couldn't get my way around Texts smoothly).
We have TOF data collected every half hour, but we are surprised by the results, as the TOF data is not consistent each time.
We are developing sensing device with using VL53L0X, we will use optical lens on top of VL53L0X for special sensing purpose then in order to optimize lens design with effecive sensing, we would like to know dimension of both sensor and emitting chip sizing and distance from Chip to upper casing,
Hello Folks,I am facing an issue while controlling a BLDC motor using the STEVAL-ESC002V1 board. ST provides a reference firmware for this board which includes the 6Step Library for motor control. The firmware exposes functions such as:MC_StartMotor()MC_StopMotor()MC_Set_Speed()According to the documentation, these APIs should allow setting and controlling the motor speed.I had paste the code which is written by me in main while loop. (For Reference)ISSUE:1. when the val(ADC value) goes above the 300, still the MC_StartMotor(), is not getting enable. Motor didn't run.2. If I make changes into my code, delete by everything in the while loop and just try to run the motor at 10000rpm, by function MC_StartMotor() and MC_Set_Speed(10000).As result of it as motor make a sound and vibration, not working smoothly.hey it would be helpful to me, if someone help me to resolve this issue./* Includes ------------------------------------------------------------------*/ #include "main_32F0.h" #includ
Hello,WORKING ON : STM32H753I am looking to implement a jump from one application to another on an STM32H7 (Cortex-M7), so that the new application starts as if the microcontroller had just been reset: MSP initialized, VTOR set, caches (and MPU maybe?) correctly managed, peripherals reset, SysTick and IRQs disabled.Knowing that my APP1 is a custom bootloader at address 0x08000000 and my APP2 is my main application with lots of peripherals, timers, DMA, etc. at address 0x08020000.I tried many sequences to make a jump without crashing.My jump from APP2 (app) to APP1 (bootloader) seems to work without bugs: //disable interrupts __disable_irq(); //disable Systick SysTick->CTRL = 0; SysTick->LOAD = 0; SysTick->VAL = 0; //deinit HAL_RCC_DeInit(); HAL_DeInit(); // __enable_irq(); // vide cache SCB_DisableICache(); SCB_DisableDCache(); __DSB(); __ISB(); // je définis ma table des vecteurs au début de mon IAP donc à IAP_ADRESS (0x08000000), ave
Edited by a ST moderator. In next time please use English language. 在STM32CUBEIDE中配置STM32F103C4完以后直接编译出现《没有 “huart2() at 0x20000108” 对应的源文件》不知道该如何把huart导入到编译器的路径下 Translation: After configuring the STM32F103C4 in STM32CUBEIDE, I encountered the error "No source file corresponding to 'huart2() at 0x20000108'" during compilation. I don't know how to import the huart2() file into the compiler's path.
I created default project with FreeRTOS in STM32CubeMx for the board Nucleo-H563ZI. Nothing more added.Hard Fault is invoked at vRestoreContexOfFirstTask.I was looking for the solution in Copilot and Perplexity but without success. Only I can say it's probably no problem with stack overflow.Jan
Hi there,I have a DIY board similar to EVSPIN32G4. Below is the three-shunt sensing circuit(In internal OpAmps, differential, external gain mode)Because the STSPING4 doesn't support internal OpAmps, differential, external gain mode, I just use the below config to generate the project(seems differential or single-end does not influence the code, yes?), see the project in the attachment: And because the EVSPIN32G4 project's encoder and hall sensor use the same GPIO, I only enable the encoder in the MCSDK project.After generating the code, I added the hall signal pin in STM32CubeMx and then compiled the MDK project successfully.I added some code trying to find out why the motor isn't working:uint8_t MC_GetHallValM1(void) { uint8_t M_Hall_val; M_Hall_val = (M_Hall_val & 0xFE) | HAL_GPIO_ReadPin(M_HALL_U_GPIO_Port, M_HALL_U_Pin); M_Hall_val = (M_Hall_val & 0xFD) | (HAL_GPIO_ReadPin(M_HALL_V_GPIO_Port, M_HALL_V_Pin) << 1); M_Hall_val = (M_Hall_val & 0xFB
My nucleo f303re board was connected via USB but I was using a resistor around 2.2kohms to 5V. This was fine though and it functioned as normal but when I disconnected the pins on the MCU to move it, reconnecting it back resulted in nothing. While troubleshooting, I realised that if I connected the USB cables to the MCU's usb pins, device manager was showing an unknown usb device even without any resistors in place. This did not happen before while it was working and I realised this was due to PA12, DP, which was the pin pulled high, is now constantly at 2V when the MCU powered on. Now I am not sure if this is normal but I am quite confident in saying that this is not normal and is the reason this is not working anymore. If it's helpful, I know PA12 is at 2v because I measured this with a multimeter. I suspect that whatever I had done cause damage to PA12 and the usb board is fried. Is this theory wrong or is there no hope for this board. Perhaps there is a way to use other pins f
Hello there I am struggling with receiving interrupts on my microcontroller project. I am currently developing a CAN bus logging device; the following code therefore sets up the CAN peripheral in silent mode. I test my device in a CAN network with two other devices that are constantly communicating with each other. I have verified that the CAN messages appear at the CAN Rx pin of my MCU using an oscilloscope.However, my CAN Rx interrupts won't fire. I tried some fixes from other posts, but unfortunately, neither of them worked for me. My setup is as follows:>> MCU: STM32L432KCU>> CAN receiver ISO1044BD>> Vdd = 1.8 V (the MCU and the CAN transceiver are both running on this level).>> IDE = CubeIDEHave any of you ever had to tackle this problem?## Here is the can.c file that was automatically generated by the CubeIDE, in which you can see the CAN initialisation. /* USER CODE BEGIN Header */ /** ************************************************
Hello Yes here we go again… I’m again busy with the implementation of PTP slave inside STM32H7, based on this GitHub: https://github.com/hasseb/stm32h7_ptpd I tried to port this to my own project based on STM32H7, I changed what was mentioned in the readme. And look inside the helper files to modify the necessary HAL stuff. After all this, everything is compiling, but it doesn't work… My setup: PTP master is Magwell Pro Convert AES67 and act as master, this master is sending all the necessary packets on the ethernet. Checked with Wireshark. When I run the PTPD in slave mode I get this output: (V) handle: something (d 1162345242.829138544) handle: ptpd_net_recv_event returned 0 (d 1162345242.834921492) handle: ptpd_net_recv_general returned 44 (d 1162345242.840950789) handle: unpacked message type 8 (d 1162345242.846096992) handle_followup: received in state PTP_UNCALIBRATED (d 1162345242.853011945) ptpd_servo_update_offset (V) ptpd_servo_update_offset: ingress_timestamp 875418629 secon
I am flashing a code to write into the last sector of the flash memory of STM32F401 Nucleo Board, for the first time the code was successfully dumped into the flash but while dumping it the second time this error pops up, whenever i mass erase the whole flash it again works properly but the second it doesn't. I even tried using different sectors but the issue was still there.What might be a possible solution of this error.I am attaching the snapshot of the error and the code snippet as well.uint32_t Flash_Write_Data (uint32_t StartSectorAddress, uint32_t *Data, uint16_t numberofwords) { static FLASH_EraseInitTypeDef EraseInitStruct; uint32_t SECTORError; int sofar=0; /* Unlock the Flash to enable the flash control register access *************/ HAL_FLASH_Unlock(); /* Erase the user Flash area */ /* Get the number of sector to erase from 1st sector */ uint32_t StartSector = GetSector(StartSectorAddress); uint32_t EndSectorAddress = StartSectorAddress + numberofwords*4; uint32_t
Title edited to clarify "donut board"I would like to connect the LM324(below) to the STM32F103C8T6 on a donut board, purpose to read four IR receivers. VR with highlight T shape is preset 103. IR1, IR2, IR3, IR4, 5V and ground will connect to a 6 pin header, connect to another donut board which contains only 4 groups of IR transmitters and receivers.My task is without jumper wires connect them together but I can’t connect it due to the preset 103 make the circuit too messy. Can anyone help me please.:folded_hands:
Hello,I updated to Mac15 (MacOS Sonoma Public Beta), which was probably a mistake. Now I get an error from STMCubeIDE when I try to run indicating "ST-Link Server is required to launch the debug session" and to Please download it on www.st.com. I figured something changed in the OS that no longer makes the ST-Link Server run any more.However when I try to download it, I get essentially a broken link, or at least it simply wont download. Even worse, the web page with Safari seems entirely broken and I cant even get a download to start after accepting the license, but with FireFox I get further, I get but still wont download and the link seems broke.I can still flash using the STM32CubeProgrammer fortunately (using 2.13.1).Can anyone tell me how to download this ST-Link Server? Or if there is an issue with the last MacOS and this and there is no fix?
I have designed a board with STM32H750B-DK With exact same pin configuration with QSPI amd SDRAM connected exactly to the reference board.QSPI is running properly by viewing using STM CUBE Programmer (External loader selected)But when I am using touchg GFX sample code it gives Hardfault error I believe that SDRAM is failing. (I have removed the touch screen routine to check the flow of code)
Hello, I have a project using the spirit MP3 Decoder. I am in the process of moving this project over to a FreeRTOS based project using the STM32F411. FreeRTOS only supports hardware floating point for this chip and the spirit MP3 decoder is provided as a library only supporting software floating point. What is required for me to get a new build of the Spirit MP3 deocder re-compiled supporting hardware floating point?Can ST provide this re-compiled library?ThanksStuart
HiWhen I migrated by project to ST Cube IDE v2 this morning, my CM4 project would not link. I had to right-click the project and "convert to C++" (even though I had been using C++ for months with previous versions).Using a Nucleo STM32H755 as a target (dual core), my project is configured as follows:CM4 is using C++, and using Free RTOSCM7 is using C, and only using the HAL Steps TakenUpgrade the IDE from v1.19 to 2.0Install latest Cube MXOpen my workspace, and chose to "migrate" when promptedDouble click the .ioc file, fix an issue (related to CAN which I am not using) and re-generate the codeReturn to the IDE, and try to clean and build the CM4 project. I get linker errors. ResolutionRight-click the CM4 project and select "Convert to C++". (In v.19 the only available option was "Convert to C")Clean and build. Maybe this is a bug in the project migration process? Could it be specific to dual-core, where only the CM was configured for C++? CheersNick Outram&nb
I have STM32H753I-EVAL2 board and I want to set it up as an USB Speaker device. I see 3 protect that can make this as such, which are:NameBoardBoard TypeSTM32CubeMX VersionSW Package InstalledUx_Device_Audio_2.0STM32N6570-DKNucleo-64NATRUEUx_Device_Audio_2.0_StandaloneSTM32N6570-DKNucleo-64NATRUEUx_Device_Audio2.0_PlayBackSTM32H743I-EVALNucleo-646.15.0TRUE Two things...1) I don't want RTOS, but STM32H743I-EVAL has RTOS, and the one I'm looking for is on the wrong board. So... What advantage do I have using RTOS? Can I use the Standalone one and change the board somehow in the code? I haven't done much comparison to know, I've been overwhelmed trying to understand the organization of the project. 2) When I do download, install and run the Ux_Device_Audio2.0_PlayBack anyway, the program is running. I see the USB being enumerated as a speaker on my laptop. Issue is, everything is fine, but when I try to play an audio, it runs into a fault -- > `void HardFault_
Split from this thread. Actually, I have jitter in TIM1 PWM. Is there any way to decrease jitter?
I'm working on an STM32 project using STM32CubeIDE with CMake as the build system. I need to add custom include paths for my own header files.I tried to include my_folder from C/C++ General -> Paths and Symbols -> Includes, but it doesn't work.Note that under C/C++ Build -> Settings there is no settings to include anything, which are available only when working with STM32CubeMX/STM32CubeIDE Project
we are observing with the RTC (Real Time Clock) on the STM32L496ZG in our project. kindly help us to resolve this . The code gets stuck on power-on . Below are the details and what we have tried so far:1. Summary of the IssueAfter a full powering on, while debugging the code code get stuck in systemclockconfig() function. The issue occurs only on power-on with some hardware only and with same version of hardware its working correctly. 2. Hardware / System DetailsMCU: STM32L496ZGRTC clock source: (external crystal of 32.768KHz oscillator with 10pF capacitors used)On VBAT pin its 3.2v battery cell is usedwe uses below function for initialization : void SystemClock_Config(void) { #if 1 //og RCC_OscInitTypeDef RCC_OscInitStruct = {0}; RCC_ClkInitTypeDef RCC_ClkInitStruct = {0}; /** Configure the main internal regulator output voltage */ if (HAL_PWREx_ControlVoltageScaling(PWR_REGULATOR_VOLTAGE_SCALE1) != HAL_OK) { Error_Handler(); } /** Initializes
According to RM0433 Rev 8:The Run* mode is entered after a POR reset and a wakeup from Standby. In Run* mode, the performance is limited and the system supply configuration shall be programmed in PWR control register 3 (PWR_CR3). The system enters Run mode only when the ACTVOSRDY bit in PWR control status register 1 (PWR_CSR1) is set to 1.andAs long as ACTVOSRDY indicates that voltage levels are invalid, the system is in Run* mode, write accesses to the RAMs are not permitted and VOS shall not be changed.Now, the startup code first jumps (bl ExitRun0Mode) to the C function `ExitRun0Mode()` which probably might involves writes to stack.Is this construct (calling a C function from ASM) just relying on the compiler not touching the stack or am I'm reading the docs wrongly?best regardsTorsten
Hi,I've installed the CubeIDe rel 2.0.0 and the CubeMX rel 6.16.0; when I build my project this error appears: undefined reference to `ExitRun0Mode'. May you help me ? Thank you, CarloV
Hi! I have a problem. I faced with a problem of USB middleware initialization as a virtual port in CubeMX. After code generation USB init initializes in main.c within of one of task FREERTOS. If I initialize USB only as connectivity USB init replaces right. How to resolve it? Here details is: /* USER CODE END Header_start_task_can_handler */ void start_task_can_handler(void *argument) { /* init code for USB_DEVICE */ MX_USB_DEVICE_Init(); /* USER CODE BEGIN 5 */ app_start_task_can_handler(argument); /* Infinite loop */ for(;;) { osDelay(1); } /* USER CODE END 5 */ }
Hi everyoneI use STM32G030. I'm gonna set the clock system to HSE on the External crystal, but I couldn't find the proper RCC_OCS_OUT.What are the MCU's crystal correct pins?Please help me set the correct pinout.Thank you
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.