Join conversations with your peers and ST experts. Explore the full potential of STM32 microcontrollers for your embedded design.
Most recent activity
I am trying to source a 12.288MHz clock for an STM32L433 but having difficulties finding something.The clock is required for I2S playback with a bluetooth receiver (BT401).I have tried using the internal MSI RC to generate the 12.288MHz clock for SAI, but the BT401 is misbehaving so it might be because the MSI RC clock has too much jitter.I was wondering if a ASFL1-12.288MHZ-EC-T would be suitable for the clock source for the SAI external clock input....https://uk.rs-online.com/web/p/crystal-oscillators/2403583Below is the setup... The I2S amplifier (MAX98357A) seems to work fine with the 12.288MHz clock generated by the internal MSI RC and PLL. But the BT401 either requires multiple attempts to start playing and sometimes plays just a screeching sound for a few seconds then stops. So I need to rule out whether the issue is caused by clock jitter by trying a more accurate clock source. I am currently using the STM32L433 Nucleo board whi
I created project in stmcube32mx for h5 microcontroller and it works if I manually replace bl main to bl entryin file startup_stm32h563zitx.s.If this manual replacing is a bug or on purpose?Jan
Originally a comment on the How to recognize a genuine ST-LINK/V2 versus a cloned one Knowledge Base article.Moved to main forum for better visibility / discussion.I bought this ST-LINK V2 on Amazon ( see pictures) . I don't think its' a genuine STM device. STM32CubeIDE and STM32CubeProgrammer recognize it but No STM32 target is found ( STM32L051K8U6)I notice that my ST-Link V2 does not provide clock signal on pin 9 (SWCLK) I'm using VT ref pin, SWDIO pin, SWDCLK pin, GND pin and RST pin.
Hi Sir,Does any STM32 MCU support two independent USB 2.0 High-Speed (480 Mbps) interfaces simultaneously? I have observed that current H7 parts limit the second core to Full-Speed only. Do any newer series support true dual-HS operation?Thank you.
Hi everyone,I’m setting up LVGL on a custom PCB using an STM32H747BIT MCU. The display is connected via LVDS, and I’m using DMA2D for transferring the framebuffer to the screen.The issue I’m facing is that the DMA2D transfer complete callback is never triggered, and as a result, lv_disp_flush_ready() is not called and the buffer is not pushed to the display.Below is the relevant initialization code: lv_init(); lv_tick_set_cb(HAL_GetTick); //FIXME: per ThreadX fer servir tx_time_get disp = lv_display_create(LV_DISPLAY_HORIZONTAL_RES, LV_DISPLAY_VERTICAL_RES); lv_display_set_buffers(disp, buf1, NULL, sizeof(buf1), LV_DISPLAY_RENDER_MODE_PARTIAL); hdma2d.XferCpltCallback = disp_flush_complete; lv_display_set_flush_cb(disp, my_flush_cb);The my_flush_cb() function is as follows:void my_flush_cb(lv_display_t * display, const lv_area_t * area, uint8_t * px_map) { lv_coord_t width = lv_area_get_width(area); lv_coord_t height = lv_area_get_height(area); SCB_CleanInvalidateDCache();
Moved from STM8 forum; STM32H7 Label added.Hello everyone, i am trying to get the data from my http my data will be around 6 KB i can able to receive the data but imediately after receiving the data all the other threads except the MQTT thread(I have the HTTP function inside the MQTT thread) is suspended.I can notice that the interupt is also triggering properly but other threads are running i am attaching my MQTT file with this can you please help me to solve this issue.
Hi All, I'm building an instrument that needs to stream data to a PC at ~4Mbps. People were claiming nearly twice this with USB CDC so I chose the nucleo-h533 board and started with the Ux_Device_CDC_ACM example. I disconnected the USART code and added a loop that calls ux_device_class_cdc_acm_write and then I measure the rate at which I receive data on the PC. I can't get past ~1.8Mbps. I have tried the following: varying the size of the buffer passed in from 64 to 2048 enabling ZERO copy in the driver UX_DEVICE_ENDPOINT_BUFFER_OWNER=1 and defining UX_DEVICE_CLASS_CDC_ACM_ZERO_COPY setting USBD_CDCACM_EPINCMD_FS_BINTERVAL to 1 instead of 5 In all cases, the baud rate remains about the same at 1.8Mbps. Is there anything I can do to improve this? Best, Marc
I am currently working on BLE applications for a custom STM32WB05KZ board using the SDK stm32cubewb0-v1-3-0. In general, peripherals such as GPIO and UART are functioning correctly when running non-BLE examples provided in the SDK.However, when I run BLE applications (such as Beacon, Server, or Client), I am unable to receive any logs over UART (configured on PB0 and PA1). I have verified that an LED, which is initialized prior to the BLE initialization in app_entry.c, operates correctly, indicating that the application is executing at least up to that point.The main issues I am facing are:No log output is observed on the UART interface during BLE operation.The device does not appear to advertise(No address is visible: random or public), as it is not detected by the ST BLE Toolbox application.I would appreciate any guidance or suggestions to help identify and resolve this issue.
I have a custom STM32 WB05KZ and I want to get logs using UART for BLE_Beacon, and check if its advertising. But I am unable to get the logs. Is UART not supported? Is it because of low power mode? How do I get the logs?
I am trying to use the ble_p2pServer example on my stm32wb05kz, but it is not advertising and not detectable on the ST toolbox application. These are the debug statements I am getting via UART: *** UART Test - System Starting ***BLE Stack initialized successfullyTotal Buffer Size: 8498 bytesNum Radio Tasks: 1Success: aci_hal_set_tx_power_level commandSuccess: aci_gatt_srv_profile_ini t commandSuccess: aci_gap_init commandStatic Random Bluetooth Address: de:ce :41:ed:ca:9aSuccess: Gap_profile_set_dev_name - Device NameSuccess: Gap_prof ile_set_appearance - AppearanceSuccess: aci_gap_set_io_capability commandAdver tising data filled with BD addressSuccess: aci_gap_set_security_requirements c ommandSuccess: aci_gap_configure_filter_accept_and_resolving_list command==>> End BLE_Init function Services and Characteristics creationSuccess: aci_gatt_sr v_add_service command: p2p_ServerEnd of Services and Characteristics creation Success: aci_hal_set_radio_activity_mask command === Starti
Could you add NVM option for zigbee stm32WB55 in cubeMX ?It's essential for developement of application (persistence and coord association...)thanks FYI: This is a repost from https://community.st.com/t5/stm32-mcus-wireless/stm32wba-option-nvm-not-present/td-p/680720
Hello all and happy holidays, I am having a bit of weirdness going on. I have setup UART using stm32 HAL, confirmed it is working properly by stepping through (using an STLINK-V3-MINIE) as well as confirmed data is on the wire with a logic analyzer as well as a scope. Furthermore, I have also run a loopback test to assure the com port is working for the V3-MINIE. Despite this, I still can't get transmission to show up in my serial terminal (I did receive the message once but I beleive it was in a GDB session and I have not been able to replicate it since). Any suggestions for anyone who has run into a similar issue with this device (for context I am using an STM32F411CEU6 black pill board)? I can provide any extra context where needed but I have run through the motions and still cannot seem to come to a solution.
Hi ST Team,I just downloaded X-Cube-Matter package v1.5.0 and noticed that support for STM32WB55 uC was entirely removed, without even being mentioned in the release notes. Why is that? Is the uC being discontinued?Where can I find updated Matter examples for STM32WB55?Thanks
le_advertising_event = (hci_le_advertising_report_event_rp0 *) p_meta_evt->data;int8_t rssiValue = (int8_t) le_advertising_event->Advertising_Report[0].RSSI;We are using the BLE stack version full stack = v1.24.0.3 (we had older version 1.18.0.3 but with this too we had the same issue).FW Package : v1.15.0Cube Mx: v6.7.0
HI allI'd like to know how to be able to read a data file from windows.I have to convert those data (binary) from windows system, to another format, and then write them to a flash W25Q.The only part I'm missing is how to open then read those bin files in windows. I have around 100 of those windows files to work on, and they are on the same windows folder.So what are my options to do that.Thanks all.For now I'm using a Nucleo-L432KC, on STMcube 1.19.0.
I am using the STM32U585RIT6 MCU with the B-U585I-IOT02A development kit. My primary focus is on USB, and in my project, I have enabled USB CDC-ACM, through which data and messages are transmitted over USB.For this project, I need to enable firmware update support. I have been searching for a suitable example, but most available examples require manual interaction with the hardware—such as setting the BOOT0 pin high and resetting the board, or pressing a user button to jump to the bootloader and perform the firmware update via a programmer.However, I do not want any physical interaction with the board. I need the firmware update to be triggered purely through software, perform the update, and reset the device without manually changing the BOOT0 pin or pressing any buttons.Is this possible? If so, what are the steps that need to be followed, and are there any reference examples available for this approach?
Hello everyone,I am migrating a design from STM32F446 (UFBGA-144) to STM32H533 (UFBGA-144) and noticed that FMC-SDRAM is no longer supported on the STM32H533.On the STM32F446, the FMC supports SDRAM and provides signals such as SDCLK, SDCKE, and SDNE, allowing the use of external SDRAM devices. On the STM32H533, these SDRAM-related signals and the FMC SDRAM mode are completely absent, and only SRAM/PSRAM/NOR/NAND memories are supported. From the reference manual and datasheet, this appears to be a hardware design choice.Could someone clarify the main reason for this architectural change between STM32F446 and STM32H533, and also for applications that previously relied on SDRAM performance, is OctoSPI PSRAM/HyperRAM considered the recommended alternative on STM32H5? Thank you in advance for your clarification,Best regards,Aymen
I was doing reset through SPI command and expected results are not happening. this is the line i was expecting to reset the MCUSCB->AIRCR = (NVIC_AIRCR_VECTKEY | (SCB->AIRCR & (0x700)) | (1 << NVIC_SYSRESETREQ));where#define NVIC_AIRCR_VECTKEY (0x05FA << 16) #define NVIC_SYSRESETREQ 2also my watchdog is running and expected to reset the system.code snippet FLASH_Unlock(); FLASH_ErasePage(0x08013000); FLASH_ProgramWord(0x08013000, (uint64_t)0x0000000000000000ULL); FLASH_Lock(); FLASH_Unlock(); FLASH_ErasePage(0x08013008); FLASH_Lock(); SCB->AIRCR = (NVIC_AIRCR_VECTKEY | (SCB->AIRCR & (0x700)) | (1 << NVIC_SYSRESETREQ)); __DSB(); while (1); Edited to apply proper source code formatting - please see How to insert source code for future reference.
Hi I hope you are well.Background: The SPI bus of MCU has 9 slave devices, with loads of 1pcs x C component, 2pcs x A component, and 6 pcs x B component. The SPI rate of component is 200kbps, the SPI rate of A component is 1Mbps, and the SPI rate of C component is 100kbps. The SPI waveform has ringing, and the SPI communication between C component and A component sometimes reports errors.Request for support: Can you provide SPI multi device bus design materials to evaluate whether MCU can drive multiple SPI slave devices, whether the number of SPI slave devices is reasonable, and whether the capacitive load of slave devices is reasonable?
Hello, dear colleagues!If my request seems inappropriate to you, I apologise — but I had no other choice.I've been struggling with this for a week now.Please, if anyone has a ready-made working project, share it or give it to me. I need a ready-made project for Nucleo-STM32H753ZI (MB1364-H753ZI-E01) that includes FreeRTOS with USB-CDC or Ethernet support.I have tried many times, but I still cannot get past the FreeRTOS initialisation stage. Thank you all. *This post has been translated from Russian to comply with the ST Community guidelines.
Since the description of the FDCAN controller in the reference manual ofthe STM32G474 was not detailed enough, I looked around for more Informationand found the Application Note AN5348 ("FDCAN peripheral on STM32 devices ").But that didn't make me feel more confused.- but that didn't answer myquestions, I'm even more confused nowAt the moment I am busy sending CAN messages.According to AN5348, the FDCAN has dedicated Tx buffers and optionallya Tx FIFO or a Tx queue (Figure 4. CAN message RAM mapping.)The FDCAN controller on the STM32G474 seems to be like aminimal implementation of the controller described in the AN5348 -obviously 32 Tx buffers are possible, but the STM32G474 has according to.Reference Manuel only 3 of them. And as I understand I understand, they areused as a TxFIFO or a TX queue - therefore there are no "dedicated" Tx buffer !?Or can I simply use the 3 buffers in a detected manner by ignoringthe TXFQS registers and working only with registers TXBRP, TXBAR and TXBTO?I a
Hi all,I've been working through this tutorial: How-To-Create to bring up LWIP + FreeRTOS on the STM32H735IGK development kit. I'm using STM32CubeIDE 1.18.0, FreeRTOS with CMSIS-v1, and STM32Cube FW_H7 version 1.12.1I noticed that pinging is very sporadic, and the STM32 eventually stops replying to ARP requests. I've attached a couple of pictures(wireshark captures) that describe the problem.For reference, here are relevant screenshots my MPU settings, linker script, ethernetif.c, and lwiopts.h files. However, if I disable D-Cache, then pinging becomes stable (I'm able to ping for > 30 minutes continuously). I don't want to disable D-Cache, as my MPU should be disabling caching for the relevant memory regions.I understand that MPU regions have priority, and I'm overlaying region 2 onto region 1, but both regions disable caching. What's going on here?Please let me know if there additional information that you may need.Thank you!@Piranha, @STea, @Pavel A.
I am running the ADC using a timer trigger and DMA to sample a sinusoidal signal.The captured samples are transmitted to a PC via UART.However, as shown in the attached image, the ADC output appears to be step-like and does not capture smoothly changing values, even though the input signal is a clean sine wave.I have checked the external reference voltage, interrupts, and the microcontroller power supply, but the issue still persist
Suppose I have a project where I have to continuously read and display values from the adc called AD9215BRUZ, I have NUCLEO-H753ZI board , is it possible? Can the STM Hseries read and sample parellel data , if yes then how should I proceed , if no then what are the limitations.Thank you
I'm trying to work with a STM32F4-Discovery board, and previously it connected perfectly okay, but a couple weeks ago something, seemingly out of nowhere, broke and CubeIDE stopped detecting the board and writing programs to it showing this message:I tried reinstalling the IDE, downgraging the toolchain, upgrading the IDE, creating a fresh project and so on.I'm running version 1.19.0 CubeIDE, using EndeavourOS (Arch-based).Here are my udev rules for a relevant device:# stm32 nucleo boards, with onboard st/linkv2-1 # ie, STM32F0, STM32F4. SUBSYSTEMS=="usb", ATTRS{idVendor}=="0483", ATTRS{idProduct}=="374b", \ MODE="660", GROUP="plugdev", TAG+="uaccess", ENV{ID_MM_DEVICE_IGNORE}="1", \ SYMLINK+="stlinkv2-1_%n" SUBSYSTEMS=="usb", ATTRS{idVendor}=="0483", ATTRS{idProduct}=="3752", \ MODE="660", GROUP="plugdev", TAG+="uaccess", ENV{ID_MM_DEVICE_IGNORE}="1", \ SYMLINK+="stlinkv2-1_%n"My user is a member of the plugdev group. But the important detail is that if I run stm32cube
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.