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
Good dayI have a Custom PCB with a STM32F217ZG populated.When trying to program with the STM32CubeIDE I get a No STM32 target found error.Then I tried with the STM32CubeProgrammer and get the following:20:27:26 : UR connection mode is defined with the HWrst reset mode20:27:26 : ST-LINK SN : 0670FF36344550304303404220:27:26 : ST-LINK FW : V2J46M3220:27:26 : Board : NUCLEO-F207ZG20:27:26 : Voltage : 3.26V20:27:26 : Error: Unable to get core ID20:27:26 : Error: No STM32 target found! If your product embeds Debug Authentication, please perform a discovery using Debug Authentication In STM32CubeProgrammer I have tried the Modes in Normal, PowerDown and Under Reset. In Reset Mode i have tried Hardware Reset and Software Reset.When measuring with an scope on Pins 105, 109 and 25(NRST) I do see the Reset, Clock Pulses and something like Data Pulses but still get the error.Can someone Please help me with this error.
CubeIDE 2.0.0 (and before as well) for MacMacOS 15.7.2 IntelRun your program in debug, forget that the processor isn't stopped, click on the SFR pane, click on any value.BOOM, spinning ball, never returns, have to force quit. Next, it leaves ST-LINK_gdbserver running and unattached, you'll have to find that and kill it or you can't restart and expect to debug again.I haven't seen a program that I had to kill and restart this often since NewtonScript on Windows 95. Grrrrr
We are facing an issue with the RTC on our STM32L-series microcontroller board. Below are the actions we tried and their outcomes:Main issue:When the battery is connected to the supercapacitor for the first time, the RTC initializes correctly.But when we simulate a power loss by manually removing the main power and reconnecting it, the RTC clock fails to configure on the second initialization.Tests performed:Removed the supercapacitor and replaced it with a coin cell and an RPS → the clock still fails to configure.When the system is configured without any backup power source, the system clock initializes and works normally.Referred to this article: https://mischianti.org/stm32-internal-rtc-clock-and-battery-backup-vbat/ and tested the small noise-suppression circuit, but it did not resolve the issue.Tried fully resetting the RCC using:__HAL_RCC_BACKUPRESET_FORCE();__HAL_RCC_BACKUPRESET_RELEASE();This allows the clock to reinitialize, but the stored RTC time/date are lost.Please provide
Dear ST Team,Our application need Magnetic information which is returned via message called $GPRMC as format below: $GPRMC,<Timestamp>,<Status>,<Lat>,<N/S>,<Long>,<E/W>,<Speed>,<Trackgood>,<Date>,<MagVar>,<MagVarDir>,<mode>*<checksum><cr><lf> However, Teseo-VIC3DA inside our Testbench can not get such information even after long hours of testing, please kindly refer to attached log file for more details and by the way please kindly guide us how to setting Module for getting such information. Thank you.Here is short extraction:$GPRMC,091446.200,A,1051.01966,N,10647.92288,E,0.1,0.0,111225,,,D*62$GPRMC,091446.300,A,1051.01967,N,10647.92288,E,0.1,0.0,111225,,,D*62$GPRMC,091446.400,A,1051.01967,N,10647.92288,E,0.1,0.0,111225,,,D*65$GPRMC,091446.500,A,1051.01967,N,10647.92288,E,0.1,0.0,111225,,,D*64$GPRMC,091446.600,A,1051.01967,N,10647.92288,E,0.1,0.0,111225,,,D*67
Now I am working on my own project which involve with detecting the pattern of hand gestures using LSM6DSOX. I planned to use decision tree to detect each gesture and use FSM to detect the sequence of gestures and send the interrupt signal.Now the project has 2 decision trees which detect different type of gesture. Both are working fine. In FSM, It program to detect 2 results from the decision tree. I use SETP command to change the DECTREE variable to check other decision tree address and value. But when upload the config, it doesn't work.I not sure that I am misunderstanding something about MEM_ADDR and MEM_VAL in SETP command, or my FSM has other issueThe picture attached is the FSM I use now for clarification. I want to check decision_tree_1 if the result is 4 first, then check decision_tree_0 if the result is 4.p.s. Actually, I have other question, how can I program the FSM to detect if the sensor is tilt and stay still for a period of time (the tilt data is from dec
Dear community,first of all: I'm new to using STM32 controllers. I did some quite complex project using Arduino (consisting of Arduino Nano Every (ATMega4809) and a custom board using ATMega328P), but for my next project I consider switching to STM32 due to higher need for SRAM. So, I begin with simple blink-application to learn.Board used: Nucleo-L432KCIDE: STM32CubeIDE, STM32CubeMXOS: Win 11LED that shall blink: LD3 (the green one)So far, code is working, but with unexpected GPIO_PIN_3.I did some search here in the forum related to my question, but no sucess. Consulting documentation was also not helping at the end:With reference to User Manual UM1956 Rev 6, Table 16 on page 30, and schematic on page 33 (of Rev 5!, Rev 6 does not show the schematic), the green LED LD3 is connected to pin PB3 of STM32L432KC. In Table 16 of UM1956 the pin number is given for PB3 as 15.So, I would have expected to toggle the pin by using:HAL_GPIO_TogglePin(GPIOB, GPIO_PIN_15);but instead I hav
Hello Forum,I upgraded my (alredy working) project, based on AT-Slave to the latestSTMCubeIDE: V2.0.0STMCubeMX: V6.16.0and STM32Cube_FW_WL_V1.4.0My problem: suddenly I get Flash Error -6 "FLASH_IF_PARAM_ERROR" after "AT+CS".Is this a know issue? Before, all worked and "AT+CS" stored well.My Stack, derived from AT-Slave:AT+VER=? APPLICATION_VERSION: V1.4.0 MW_LORAWAN_VERSION: V2.6.2 MW_RADIO_VERSION: V1.3.1 L2_SPEC_VERSION: V1.0.4 RP_SPEC_VERSION: V2-1.0.3I think there might be some issue with the FLASH-IF-Driver? I also reconised in "lora_at.c" a missleading comment:(it should be 256kBytes, not 128), whereas ADDRESS is right. /** * @brief LoRaWAN NVM Flash address * @note last 2 sector of a 128kBytes device */ #define LORAWAN_NVM_BASE_ADDRESS ((void *)0x0803F000UL)Thanks for any help,Jo
The code completion provided by clangd automatically introduces the header file corresponding to the functionThis is a very bad thing !A configuration item needs to be added to the setting.json to disable automatic header file insertion
Split from STM32G431CBU: section `.bss' will not fit in region `RAM' as that issue is solved, and this is a new question.One more question. If you can help.BSP_TS_Init e BSP_TS_GetState is not recognized in IDE versions 1.19 and 1.20.Therefore, TOUCH doesn't work.BSP_TS_Init(ILI9488_TFTHEIGHT, ILI9488_TFTWIDTH);BSP_TS_GetState(& osc->touchScreen);What did I forget to port?
Hello,I can't find reference to the expected chip markings for the ISM330DLC and IIS2MDC in their respective datasheets. My PCB assembler is requesting this information to validate the components.Are these the correct markings?ISM330DLC: SY 203IIS2MDC: M Thank you in advance for your time and kind regards,
In the STM32CubeMX configuration interface, there are two identical options here.They can be configured into different options.After generating the code, it will be based on the configuration of the second option.
There is an error in table 17 on page 33 in regards to two of the pin positions for the MB1880A adapter. Table 17 states that pin 2 is SPI1_MOSIP (PA7) / UART1_TX (PC1) and pin 3 is SPI1_MISOP (PA6) / UART1_RX (PC0). These two pins are reversed in both the CN2 and CN3 columns. In actuality, pin 2 is SPI1_MOSIP (PA7) / UART1_RX (PC0) and pin 3 is SPI1_MISOP (PA6) / UART1_TX (PC1). This is confirmed by table 13 (page 28), the MB1779 schematic (MB1779-HIGH-BAND-B02 Board schematic under the B-WL5M-SUBG1 CAD Resources tab), and wasting an hour trying to determine why the I2C3 port was not talking to a device.
Hi,I am currently trying to update my STM32L433 on my custom board and I am having some issues with the RDP level 1.When receiving the blank boards (not programmed yet), I use a RPI with OpenOCD and a JTag to update the chip. When I set the RDP level 1, I can't seem to find a way to restart the device with having to do a manual power cycle. I am missing something?This is what I do :initreset initstm32l4x mass_erase 0sleep 50flash write_image "$name"sleep 50reset runAfter first programming, I am trying to update through USB dfu using a custom application in C# based on CubeProgrammerApi. I am able to boot the device in the Bootloader (I have control over the Boot0 and Reset pins), to connect to it, remove the readout protection (using connectDfuBootloader2) and flash the new firmware.I am unable after that to set the readout protection using sendOptionBytesCmd("-ob rdp=0xbb") (gives me an error) and if I set it in the application itself, my STM32 cannot restart unless I do a manual powe
Im looking to use the STM32G0B1KBU processor including the USB-C interface.I only want to use it as a UPF with VCP and update the firmware, no advanced PD or role switching. The issue is that UCPD1_CC2 is not routed to a pin on the processor.Is it possible to substitute the UCPD1_CC2 function with the "Dead battery pulldowns" UCPD1_DBCC2?Will it work with the bootloader after the "dead battery" has been programmed/configured? I could place the CC1 & CC2 pulldowns discreetly on the board but i am space constrained.I could also switch to the N variant of the processor that seems to have the UCPD1_CC2 pin broken out. I Already have several of the GP variants laying around from a previous project and want to reuse them if possible.Thanks for any input!
Title edited to correct version number.I have not programmed in the IDE for a while. But when I created a project, and edited the .ioc file, and told it to save and create the main.c file it did, and opened the main.c file. I am able to create a project, and it lets me go to the MX editor (I am in 1.9.0). I enable a couple of UARTS, Then I save. And it asks if I want to generate code, I say yes. And there is no code at all. There are only two files in the EPS_PDU_STM32L433RCT3 project directory the EPS_PDU_STM32L433RCT3.ioc.projectNone of the subdirectories were created, the main.c was not created. This used to work. I must have fat fingered something to screw it up. But I do not know what I did. I did see a warning on the project name in the Project ExplorerDescription Resource Path Location TypeProject 'EPS_PDU_STM32L433RCT3' has no explicit encoding set EPS_PDU_STM32L433RCT3 /EPS_PDU_STM32L433RCT3 No explicit project encodingI do not know what tha
Hello, ST CommunityI’m currently working with the NUCLEO-WB55RG board to enable BLE communication.Initially, BLE advertising worked perfectly when the board was powered via USB (connected to a PC or 5V Adaptor). However, now BLE advertising do not start, when I power it via USB - 5V adapter. The 5V adapter is not the issue — it’s a stable power source rated at 5V / 3A.I powered using CN15(ST-Link 5V-usb) in both cases before and now. System setupBoard: NUCLEO-WB55RGExpansion board: X-NUCLEO-NFC08A1Initialization sequence in main.c:int main(void) { HAL_Init(); MX_APPE_Config(); SystemClock_Config(); PeriphCommonClock_Config(); MX_IPCC_Init(); MX_GPIO_Init(); MX_RTC_Init(); MX_X_CUBE_NFC6_Init(); MX_RF_Init(); MX_APPE_Init(); // BLE initialization NFC08A1_LED_Init(); rfalInitialize(); }When I toggle an LED for debugging, the program appears to stop or hang inside MX_APPE_Init() when i connect to adaptor for power. What I’ve already checkedLinker script verified — .MB_
This post provides a workaround for a specific issue in STM32CubeIDE v2.0.0. The issue will be resolved in the next version. If STM32CubeIDE v2.0.0 is installed from scratch and if the imported project in STM32CubeIDE v2.0.0 is a project generated with STM32CubeMX v6.16, it is not possible to install the OpenSTLinux plugin. Consequently, it is not possible to import OSTL projects such as Linux, Optee, TF-A, or U-Boot. In order to work around this, the following steps are recommended: Install STM32CubeIDE 1.19.0 Install OpenSTLinux plugin v6.1.0 in STM32CubeIDE 1.19.0 Import the projects concerned (Linux, Optee, TF-A, U-Boot) Help > Check for updates > select STM32CubeIDE 2.0.0 > Next > Finish Then restart the STM32CubeIDE.
Split from: Power Supply for STM32F030 Cortex TSSOP20 VDDA and VDD pin; specifically this post.@TDK wrote:that satisfies the condition. But only the "VDDA >= VDD" condition - it doesn't satisfy the "VDDA must be first" condition. As noted, I suspect that the 2nd condition is incorrectly stated; I guess it should say, "VDD must not come after VDDA" or similar ? @TDK wrote:That is the most common configuration.Indeed it is!@fredy - you could check out some ST board schematics to verify ...
This is to report an erroneous speed - with a divided by two speed - for the Motor Control Workbench and its associated Motor Pilot version 6.4.1.The speed information throughout the Motor Control Workbench generates twice the mechanical speed with F.O.C algorithm and STEVAL-SPIN3202 control board.The measured tachometer shaft speed which leads to confirmed motor speed and associated computations are the following:Motor Speed (RPM) = 2 x BEMF(Freq)(Hz) x 60 seconds / Poles pairsNote: 2 factor meaning: Each magnet passes over the coil used to sense the Back-EMF twice during each rotation, once over each end.BEMF(Freq) is matching HALL(Freq) in our application.These checks were carried out with two motors:1,400 RPM with a 10:1 gear ratio delivering 140 RPM at the shaft and 155 RPM with no gear In both cases, we have correct mechanical speed for half the speed entered within Motor Control Workbench and Motor Pilot. Motor Pilot reports half the speed of the actu
I am trying to use SWD for printing using ITM_Sendchar, Printf not calling _write, I tried to put breakpoint and see, But it is not hitting breakpoint
Good morning.Could anyone tell me about this error and how to resolve it.C:/ST/STM32CubeIDE_1.19.0/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.13.3 .rel1.win32_1.0.0.202411081344/tools/bin/../lib/gcc/arm-none-eabi/13.3.1/../../../../arm-none-eabi/bin/ld.exe: Oscillo_STM32G431CBU.elf section `.bss' will not fit in region `RAM'C:/ST/STM32CubeIDE_1.19.0/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.13.3 .rel1.win32_1.0.0.202411081344/tools/bin/../lib/gcc/arm-none-eabi/13.3.1/../../../../arm-none-eabi/bin/ld.exe: region `RAM' overflowed by 54928 bytesI'm using IDE 1.19 to compile the code for a G431CBUGratefulValter Matos
Hey guys. I recently got a nucleo wba55cg board into my hands and tried to finish the ble app youtube tutorial, but it didnt work. A led was supposed to be blinking to indicate that the device advertices for a bl connection, but that didn't happen. I also couldn't find the board on the available bl devices. What i did step by step1) Downloaded cubeIDE 1.19 (mx 1.15) and wba_fw1.8 since 1.8 requires MX version 1.162) Downlaoded the ble p2p server example from here 3) Chose to open a Cube MX/IDE .ioc file 4) Changed device and advertising name to WPAN_MOOC5) Built the project6) Flashed the project to my deviceAgain, no result whatso ever. I tried to open a serial terminal and reset the nucleo board, to check the logger. It seems that everything initializes fine, but no actual output about the process. Any advice would be welcomed.
* board - STM32N6570-DK* using STM Cube 1.19.0* Example - USBPD_SNK Goal - to enable Display port Problem - is i'm getting stuck with the current example. It gets stuck at SVDM_deiscovery_identity part. Which in that packet i should be able to start to tell the host that i have display port capability, but i what is currently set it that the message is unsupported. How would i go about enabling this. Thoughts - In usbpd_vdm_user.c it seems like it has all the stuff that i need to start sending back these kind of messages but they don't seem to be called anywhere. There's a function called* USBPD_VDM_DiscoverSVIDs()But it doesn't seem to be called. Capture from a STM32 PD G0 - with STM32CubeMonitor app
Is it possible to add MotionFx to an STM32WB09TEF7TR MCU?According to the table on page 6 of this document:https://www.st.com/resource/en/brochure/sensor_libraries_software_pack_for_stm32cube.pdfMotionFx is available on Cortex M0+However when trying to add this in CubeMx I get the warning "This component cannot be used as it has device or context compatibility issues.
Hi,We are evaluating the LSM6DSR's noise floor for a specific use case. Based from the datasheet the noise is 60ug/sqrt(hz). So calculating the RMS noise at 208Hz should result to 0.00062 m/s^2 right? However, we are getting measured RMS values around 0.002 to 0.004 m/s^2. Here are some configurations setFS: +-2GODR: 208HzData acquired using FIFO reading every 500 samplesNo onboard filtering enabled. I have attached a sample dataset for your analysis as well.
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.