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
Dear Team, I am using STM32WBA5MMG in my project. The datasheet does not contain pin description and their alternate functions. I also checked STM32WBA5xxx datasheet (DS14127). It does not contain any pin description and alternate functions of STM32WBA5MMG. For finding the pin details of , may I know where I need to check in the datasheet. Regards HARIOM
Hello, What can i take for a MCU which has function with Low Speed USB 1.1 ? I must make a USB HID Interface as Gamecontroller. It is essential to prevent the PC from getting stuck on the USB port, and this is only possible with USB 1.1. greets Stefan
I have an X-Nucleo-67W61M1 with a Nucleo-WB55RG host board. I was following this link for how to do the set up How to use X-CUBE-ST67W61 STM32CubeMX pack. One of the prerequisites says that I need to ensure that I flash the updated code before using.In this link there is steps to flash the board with an STM32 host ST67W611M1 Hardware setup. It says that what I need to do is migrate the NCP_Loader to generate the binaries, but I am unsure how to do this.Is there anyone that has some suggestions? I am new to working with STM boards and I would appreciate any help.
On Version 1.11.0I'm aware that the chart can be resized with the 'Size' parameter.However, attempting to expand it beyond size 15 horizontally just shuts the window down:(Furthest I can go horizontally)While it is possible to expand it out vertically to an arbitrary size.Jut wondering if this is a bug or horizontal size 15 is the max limit for the chart.on 4k Monitor the chart size of 15x9 is way too small.
Hi there !I use thi function and work perfectly . But if i try to read the HAL_StatusTypeDef i don't understand why return HAL_OK even if i wrote a wrong address why ???? if i use void HAL_I2C_ErrorCallback(I2C_HandleTypeDef *hi2c) this work with i wrote a wrong address please some one can tell me why ? Thank you Sergio
HERE WE R USING STM32WB55 MCU FOR BLE PURPOS AND FACING ISSUE IN FLASHING BLE STACK .HERE IT SHOWS 0.0 STACK VERSION AND FUS VERSION 2.1 IN IMAGE AFTER READING. WE ARE USING ADDRESS FOR FUS 0X80EC00 AND FOR BLE STACK WE ARE USING 0X80C7000 OR 0X80C000,AND AFTER FIRMWARE UPGRADE WE R GETTING ISSUE OF FUS STATE IMAGE NOT FOUND .HOW CAN WE SOLVE THIS ISSUE PLEASE PROVIDE A SUPPORT FOR THAT.FOR YOUR REFERENCE WE ATTCHED SOME IMAGES .
Hi, I have an application with 4 legs PFC and 2 legs inverter controlled by the STM32G484VET3. Can I use one input to disable both when a fault happens independently from the software? Thank you.
CubeMX 6.16.0's "Memory Management" Tool assumes Rx_PoolSection size to coincide with the Eth "Rx Buffers Length" - is that correct? I used CubeMX 6.16.0 to create a project for an STM32 H755ZI-Q.Then I opted to use the Tools -> "Memory Management" tool and afterwards enabled the ETH [ethernet] component. This automatically generated the required sections in the "Memory Management" tool. Great.Then I enabled LwIP [with RTOS and CMSIS v2] and generated code.Compiling this code worked - linking however did not. It told me the contents of Rx_PoolSection were too big, i.e. the section too small: EBoxNG3_CM7.elf section `.Rx_PoolSection' will not fit in region `Rx_PoolSection'region `Rx_PoolSection' overflowed by 225668 The buffer for the RX_POOL is declared in CM7\LWIP\Target\ethernetif.c:98:#define ETH_RX_BUFFER_CNT 12U LWIP_MEMPOOL_DECLARE(RX_POOL, ETH_RX_BUFFER_CNT, sizeof(RxBuff_t), "Zero-copy RX PBUF pool");with__attribute__((section(".Rx_PoolSection"))) extern
The STM32L0xx series contains EEPROM located at 0x08080000. This is extremely handy for storing factory calibration data, serial numbers, license keys, etc.The STM32CubeProgrammer GUI can read this memory in the Memory & File editing view Device memory tab by entering the Address and amount of data to be read. You can enter and read any address and range within EEPROM.However the Memory & File editing view cannot be used to download data from a binary file into an arbitrary location in EEPROM such as 0x08080100. If you open a binary file in a new tab and try to set the address to 0x08080100, it will display an Address out of range error dialog.This is not critical since you can still download to an arbitrary address in EEPROM using the Erasing & Programming tool within the GUI (or use the CLI tool), but it seems to clearly be a bug and there's no need for everyone to have to figure out the problem and the workaround...so I'm documenting it here.Also annoying (albeit arguabl
Hi, I am compiling the STM32U0 HAL library and I get errors like this one:/Users/kiwanda/techniek/swexternals/STM32/HAL/Libraries/STM32U0xx_HAL_Driver/Inc/stm32u0xx_ll_comp.h: In function 'uint32_t LL_COMP_GetCommonWindowMode(const COMP_Common_TypeDef*)': /Users/kiwanda/techniek/swexternals/STM32/HAL/Libraries/STM32U0xx_HAL_Driver/Inc/stm32u0xx_ll_comp.h:391:27: error: ISO C++17 does not allow 'register' storage class specifier [-Werror=register] 391 | register const uint32_t window_mode_comp_odd = (uint32_t)READ_BIT(COMPxy_COMMON->CSR_ODD, COMP_CSR_WINMODE);I am using a C++ compiler and since C++14 the keyword register has been declared obsolete and useless. I fully agree with this step, all the more since we are writing SW here on ARM Cortex:When writing software for ARM Cortex, which is a Load/Store architecture RISC processor, EVERYTHING goes through a register. The register keyword is therefore completely meaningless, useless and superfluous in this context.I would l
Hello everyone, I’m looking for some help getting an Ethernet TCP server running using LwIP with FreeRTOS on an STM32. Current status: Hardware: NUCLEO-H723ZG Stack: LwIP + FreeRTOS Development Environment: STM32CubeMX and STM32CubeIDE TCP client/monitor: Hercules v3.2.8 I can ping the board successfully every time (with Windows terminal and Hercules) However, I cannot establish a TCP connection when FreeRTOS is enabled What’s confusing me is that: If I disable FreeRTOS, I can successfully establish a TCP connection using the CubeMX example LwIP_TCP_Echo_Server Once FreeRTOS is enabled, the TCP connection attempt from Hercules fails (no connection established) What I’ve tried so far: Multiple CubeMX LwIP + FreeRTOS example configurations Both Netconn and Socket-style APIs Adjusting task priorities and stack sizes Verifying IP address, subnet, gateway, and port settings Confirmed Ethernet link is up and LwIP responds to ping At this point, it feels like I’m
Hi!We are working on product that needs to count people on the range of 3-4 meters. We designed dev.board for sths34pf80 and tetsted it with UNICO-GUI. The max range that we are getting is around two meters and therefore it looks that we need to use additional lens to extend the range. I found one of your documentation " New industrial sensors:anomaly detection and presence" where you have descibed it working together with a lens. So we bought the same lens IML-0687 and tested it, but we are not reproduce the same results. With a lens the range is even less than without it. I played with different settings, but no success. There also should be document AN5983, that describes the work with lens, but looks like its not created yet. Have you got any suggestions for us, to get it work?
Hi,is there a 64Kb drop-in replacement for the STM32C031G6U6 (which is only 32kb)?We need to find a part where - ideally - we just use the same code without any mods, this is the most important part.And is there perhaps a tool that helps with that? Or at least allows us to make an accurate comparison check between two parts?We just use GPIOs and 1 x RS232 and 1 x I2C in their default pin locations.Thank you
Hello,I was using STM32CubeMX, but starting two days ago, when I launch the program, only the splash screen appears and the STM32CubeMX does not proceed any further.1. I have tried deleting the program, restarting the computer, reinstalling it, and running it again.2. Adding a new user is not possible; the user creation permission is restricted to the company's IT administrator.I would appreciate any suggestions on additional steps I could take to resolve this issue.
I recently upgraded my IDE to version 2.0. I cannot start a project from the board view; where you select the board type and configure the settings. It would then create the c++ project code for you. The new version doesn't have anything to help you select the board and it cannot even open up the board configuration editor when you click on the .ioc file. Is there. a way to revert back to the previous editor version - I think it was version 1.x.18?
I am using the Stm32wb09kev6tr ic for the ble.I am not able to update the fus or wireless stack from the st link? is there anything i am doing wrong? is there any documents regarding this which will helpfull?
I am unable to change the project name in STM32CubeIde, if i change it and try to open it i get error windows cannot find the file. They are all linked files, may be that is causing the issue, what changes i have to do avoid this error. The project is generated using MCSDK and after generation i am trying to change the project name in CubeIde.
Hii Community member,I need technical help from someone who had faced this issue earlier described as below:I am currently working on STM32H723ZG mcu in which i had interfaced NAND flash of MX30LF4G28AC using FMC peripheral.As per our hardware test routine, I am checking flash test in which first a block gets erased and then each page is verify whether it is erased or not. Then a dummy buffer of 4096 get writes in a page and then read back into another buffer and comparing them. During comparison, my test passes for some pages and fails for some pages within block. When checked for failed pages, it is found that only last byte i.e. 4095th byte is differing. Although i had done configuration for 4Gbit model in cubeMx, my test routine is working for 2Gbit model.I would welcome any suggestion or some guidance point to resolve my issue.If any code snippet required, i will share on this chat.@TDK
What is the P variant of STDRIVE102 and how does it vary from the STDRIVE102H?I can find datasheets for STDRIVE102H/STDRIVE102BH - with the BH variant having 3 Shunts(OpAmps) vs the standard H having 1 Shunt(OpAmp).The boards manager in ST Motor Control Workbench has the EVLDRIVE102P & EVLDRIVE102BP Evaluation Boards that point to the following (broken) links:https://www.st.com/en/product/EVLDRIVE102Phttps://www.st.com/resource/en/data_brief/EVLDRIVE102P.pdfI see Digikey and Mouser have stock of STDRIVE102P.
When I Debug cmwx1zzabz_0xx, I get a hard fault somewhere near a call to HAL_PWR_EnterSLEEPMode(). It happens just after all the init code, somewhere in the first call to MX_LoRaWAN_Process(). If I step into MX_LoRaWAN_Process() and continue stepping, there is no fault.Note that I commented out the calls to DBG_Disable() and DBG_ProbesInit() in SystemApp_Init() since they drop the ST-Link connection over USB.
Hello! I'm just getting started with an STM32MP257F-DK and B-CAMS-IMX module. I've followed the instructions for connecting the B-CAMS-IMX and have populated SD cards for booting with both optee and extensible layouts, but I am having an issue getting the camera module up and going. Instructions in the Wiki made it seem like this module is supported out of the box, but I am getting "imx335 0-001a: failed to find sensor: -6" at boot with both SD card images. Looking at the stm32mp257f-dk dts, it seems that the other components of the B-CAMS-IMX (ToF and IMU) are not defined as well.Am I missing something? Do I need to create a custom dts to bring up this module? Thanks for any help.
I have designed a custom board based on the STM32F767ZI MCU. To enable Ethernet connectivity, I integrated the KSZ8081RND PHY, along with the necessary magnetics and an RJ45 connector. You can find the full schematics in the attached PDF.On the hardware side, everything appears to be functional. I can confirm the presence of the 50MHz clock signal feeding both the PHY and the MAC. I have trace-matched the signals to this clock, and the MDI signals also look correct (including route matching). I can observe the TX_EN line going high (3.3V) during activity, as well as movement on the other lines. Just to clarify, I am using the RMII interface.The MDIO and MDC signals seem fine, as I am able to successfully read the PHY registers. For instance, reading register 0x02 on the KSZ8081RND correctly returns the ID 0x0022. I also see activity blinking on the RJ45 LED.During debugging, it seems I can receive ping requests on the board; I can inspect the memory and see my Host's MAC address and th
Hello, I have tried a number of I2C slave tutorials found on YouTube with no success, but none are specifically for the STM32G03 series. Also I am getting a very strange phenomenon. In CubeMX for I2C2 I set the first slave address to 0x012. On my PC I am using python with a USB adapter to scan() the bus. I have an EEprom on the same bus an the scan address is correct but for the MCU it returns 0x13?Has anyone encountered this address shift?Is there ANY WORKING examples for this MCU series? This is my first post on this community.
Hi, HAL_LIN_SendBreak seems to be blocking CPU, is there a way to bring UART TX pin down then wait for timer and bring it up? I have done it making GPIO pin GPIO_MODE_OUTPUT_PP then back to GPIO_MODE_AF_PP but init after takes long time. I was wondering is it possible to do it within UART without changing pin mode? Or reducing the time pin mode init is required? void LIN_SendFrame_IT(void) { __HAL_UART_DISABLE(&huart2); GPIO_InitTypeDef g = {0}; g.Pin = LIN_TX_Pin; g.Mode = GPIO_MODE_OUTPUT_PP; g.Speed = GPIO_SPEED_FREQ_HIGH; HAL_GPIO_Init(LIN_TX_GPIO_Port, &g); HAL_GPIO_WritePin(LIN_TX_GPIO_Port, LIN_TX_Pin, GPIO_PIN_RESET); TIM2->ARR = 900; // 900us break TIM2->CNT = 0; TIM2->CR1 |= TIM_CR1_OPM; HAL_TIM_Base_Start_IT(&htim2); } void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim) { if (htim != &htim2) return; HAL_GPIO_WritePin(LIN_TX_GPIO_Port, LIN_TX_Pin, GPIO_PIN_SET); GPIO_InitTypeDef g = {0}; g.Pin = LIN_TX_
This thread is the follow-up to this thread Hi, is clear that uart pins are connected , the counter of received bytes is a real value. I try this one: 1. Stop RTOEN interrupt 2. And get interrupt from DMA when buffer is HALF and FULL : and I have data in DMA buffer: huart2.Instance->RTOR = 100; // __HAL_UART_ENABLE_IT(&huart2, UART_IT_RTO); // huart2.Instance->CR2 |= USART_CR2_RTOEN; HAL_NVIC_SetPriority(USART2_IRQn, 0, 0); HAL_NVIC_EnableIRQ(USART2_IRQn); this is in : static void MX_USART2_UART_Init(void) and : void DMA1_Stream0_IRQHandler(void) { /* USER CODE BEGIN DMA1_Stream0_IRQn 0 */ HAL_UART_Transmit( &huart1, dma_buf ,DMA_BUFFER_SIZE , HAL_MAX_DELAY); /* USER CODE END DMA1_Stream0_IRQn 0 */ HAL_DMA_IRQHandler(&hdma_usart2_rx); /* USER CODE BEGIN DMA1_Stream0_IRQn 1 */ HAL_UART_Receive_DMA(&huart2, dma_buf, DMA_BUFFER_SIZE); /* USER CODE END DMA1_Stream0_IRQn 1 */ } this is on DMA interrupt. Then we have data:
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.