Get ready for the STM32 Summit 2026 | Online, November 3
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
Hi,We are using a LSM6DSV16X unit to track pitch and roll in our product based on the quaternions reported by the unit's SFLP algorithm (High Accuracy ODR 120Hz)During the operation and in what seem to be arbitrary times, the pitch and roll signals for such unit present some unexpected overshoot or oscillation (see below) before returning to the expected value.The graph above shows the IMU pitch signal (purple) with the reading of an absolute encoder (blue) and both signals should be fairly similar. The roll signal below, although not compared to any other signal, should maintain the same oscilatory behavior that is seen before and after the anomaly (vertical axis in º). At the moment of the anomaly, no special movement happened that could have caused such readings.We have other LSM6DSV16X units in the same usecase and we do not see such behavior as of now.We were doubting whether this could be a calibration problem of the IMU? Is there any calibration procedure you recommend for these
If I use STEVAL-MKI208V1K to collect vibration data of bearings, do I just need to fix this board on the bearing where I want to take data?Thanks
Hi everyone,I designed a first custom PCB using the BlueNRG-2N as a coprocessor, and everything was working fine, I was able to control it with my main MCU over SPI without any issue.Recently, I made a new version of the board where I replaced the BlueNRG-2N with the BlueNRG-M2SP module. I flashed it with the DTM firmware (BLUENRG-M2SP_DTM_SPI.hex) because I want to use it as a coprocessor.I’m using exactly the same software as before for my main mcu (which should work), but now it doesn’t work at all : I don’t receive any data on the SPI MISO line from the BLE module.I’ve attached both the old (working) and new designs. Since the firmware works with the BlueNRG-2N, I assume the issue is hardware-related. What could be wrong in my new design? Or what changes are required for the software ? Also, I have a couple of additional questions:1- There are multiple DTM firmware versions available (e.g. BlueNRG-M2SA_M2SP_DTM_Stack_v2.1c, v2.1e, and several others in the BlueNRG-1_2 DK 3.2.3
I am using NUCLEO-STM32WBA25CE1. I created STM32CubeMX project for this board. I activated RF, WPAN, RTC. I configured a wakeup every 10 seconds and set up a task for the sequencer to toggle the LED. The LED pin is correctly configured. I can toggle the LED before the main loop starts. But in the task LED toggling is not working. How should i configure GPIO and anything else to get LED working?I am using STM32CubeMX 6.17.0 and STM32CubeIDE 2.1.1 versions.Moreover, I try to use USART1 or LPUART1 for debugging. Before the MCU goes into low power mode, i can output the message to the terminal. But after the low power mode it stops working.
HiWhen I attempt to install the 1.2.1 version of STM32CubeMonitor-Power on Ubuntu Linux, I encounter a "java.lang.ArrayIndexOutOfBoundsException". I saw some posts about problems with files on the server, but they are quite old, and I have a problem with today's download. Can someone help me with this problem? Console:-> % java -jar SetupSTM32CubeMonitor-Power.jar Command line arguments: SEVERE: java.lang.ArrayIndexOutOfBoundsException: Index 70131 out of bounds for length 22674sha256 checksums:SetupSTM32CubeMonitor-Power.jar 6638b2c15ada4d359f796484856db1c54d120acfca4c59775a265a8665bf3b35cubemonpwr-lin-v1-2-1.zip 01d4e9fcc6a3024f957b7c70f1ec3912557b41a189f075822a4ec5f059a60824
Good day. I am using STM32WL31 on a custom board.DeepStop mode entry works correctly, but wakeup from PA0 (WakeUp pin) is not reliable or does not work. I used the example code in project:STM32Cube_FW_WL3_V1.3.1\Projects\NUCLEO-WL33CC\Examples\PWR\PWR_DEEPSTOPThe same code I use in my custom board works correctly on NUCLEO-WL33CC2 board (I have tested succefull the code on the NUCLEO-WL33CC2). In my opinion the difference from my custom bord + my code and the NUCLEO-WL33CC2 is the microcontroller; the NUCLEO-WL33CC2 mount the STM32WL33, my board mount the STM32WL31. Code sequence foe enter in deep stop:1. Enable wakeup pin (PA0, PA11 used as wakeup pins are connected by a button to GND). Internal pull-up enabled using LL_PWR_EnableGPIOPullUp on PA0 e PA112. Clear WUF flags3. Enter DeepStop When I press PA0 or PA11 buttons the MCU does not resume execution OR behaves inconsistently, it look like as the micro is in an undefined state.After programmed the micro it seam
Good day,I have a simple custom board with a STM32WL31 that needs to cyclically enter DEEPSTOP mode and then wake by means of RTC internal wakeup. It seems the device enters DEEPSTOP, but does not wake from it. Basic setup:Clocked from HSI, RTC clocked from LSE with 32kHz xtal.SMPS not implemented.Basic project generated with STM32CubeMX 6.16.0 with MCU Package for STM32WL3 Series 1.3.0 installed.IWDT activeMR_SUBG radio not yet implemented I can confirm RTC runs, RTC interrupt occurs every 1s, and HAL_PWR_EnterSLEEPMode() behaves correctly. However, when I enter DEEPSTOP with the sequence below, then the code never gets to HAL_ResumeTick() (reset after a few seconds by IWDT): PWR_DEEPSTOPTypeDef sConfigDEEPSTOP; sConfigDEEPSTOP.deepStopMode = PWR_DEEPSTOP_WITH_SLOW_CLOCK_ON; HAL_PWR_ConfigDEEPSTOP(&sConfigDEEPSTOP); HAL_SuspendTick(); HAL_PWR_EnterDEEPSTOPMode(); HAL_ResumeTick(); Below is a reg dump of possible relevant registers just before calling&
We are evaluating the L9916 IC and need to test it with different settings. We are following the information in the Datasheet and the Programming App Note. We keep the IGN, PHASE and LAMP pins at 0V right until the moment we send the ignition sequence (although we have also tried bringing it to 5V before that in order to match the oscillogram in the app note).We also ensure that the data is valid at least until the half high period of the clock and are confident that the initial sequence matches the one described in the application note. We have tried with the clock speed from the oscillogram in the app note as well as with faster and slower clock speeds. After the initial sequence is sent, the microcontroller reconfigures the pins connected to IGN (SCL) and PH (SDA) for I2C communication. Then, even though both pins have strong external pullups, the IGN (SCL) line is brought to 0V by the L9916 and held there indefinitely. This prevents I2C communication from occuring, since
Would it be possible to use a Time-of-flight sensor to measure water level in a pipe?The pipe is vertical with a diameter of 50 or 75 mm and a height of 800 mm. At bottom there is a 90 degree bend. Sensor should be at top looking down the pipe. I assume that best sensor would be VL53L4CD since it has smallest field of view. Would reflection from pipe walls disturb measurements?
Dear Team,We are planning to use the SPC560B50L1B4E0X MCU for project.We would like to get official clarification regarding the development ecosystem and debugging support for this MCU.Could you please confirm the following:Whether FreeRTOS is officially supported for SPC560B50L1B4E0X.Which debugger is officially recommended for this MCU.Whether PE Micro supports full debugging for SPC560B50L1B4E0X.Whether SEGGER J-Link supports only flashing or full debugging as well.Which IDE/toolchain version is recommended for development.Your guidance will help us finalize the development setup for the project.Best regards,Pandiyan T
Hello all! I need some rubber ducking help here. I have got hold of a B-U585I-IOT02A dev board, where I'm trying to get learn and get to know the STM32 family. I have got a lot of things working, but the ADC1 is giving me a hard time: Here is my MX config: IN1 enabled, and expecting the data to be stored in the DR register. PC0 is selected as ADC1_IN1: Global interrupts are enabled: So far, so good( I think ). my application code: /* Running in my main while(1) loop */ // Other stuff before here if (StartConv) { if (HAL_ADC_Start_IT(&hadc1) != HAL_OK) { /* Start Conversation Error */ Error_Handler(); } StartConv = 0; } HAL_Delay(10); And when above is executed, I can see that I'm getting a interrupt and call to my own ConversionCallback function: void HAL_ADC_ConvCpltCallback(ADC_HandleTypeDef* AdcHandle) { /* Get the converted value of regular channel */ adc_raw = HAL_ADC_GetValue(AdcHandle); printf("ADC Raw Value: %lu\r\n", adc_raw); // Retrigger convertion
Hi everyone,I am working on STM32H723 (H7 series) using HAL, and I am facing an issue with ADC1 + ADC2 dual regular simultaneous mode.Configuration DetailsMCU: STM32H723HAL based projectADC1 = MasterADC2 = SlaveMode: ADC_DUALMODE_REGSIMULTDualModeData: ADC_DUALMODEDATAFORMAT_32_10_BITSResolution: 12-bitScan mode: DisabledContinuous mode: DisabledTrigger source: TIM2_TRGO (rising edge)DMA: Circular modeADC3 runs independently (also TIM2 triggered) and works perfectlyDual mode started using:HAL_ADCEx_MultiModeStart_DMA(&hadc1, (uint32_t*)g_adc12_packed_buffer, TP_DMA_BUFFER_SIZE); Buffer unpacking: uint32_t packed = g_adc12_packed_buffer[i]; uint16_t adc1_raw = packed & 0xFFFF; uint16_t adc2_raw = packed >> 16; Observed BehaviourWhen I apply voltage to ADC1 input:Both ADC1 and ADC2 values changeBoth show identical values (mirrored)When I apply voltage to ADC2 input:No change in readingsADC2 does not respondWhen inputs are floating (level shifted mid-sca
Hello I've been trying to recreate the DCMIPP_SnapshotDecimation example with STM32CubeIDE, I have been running into several issues. I have solved most of them, I am encountering a memory error while debugging my code. I was able to flash and debug the original example successfully on the STM32N6570-DK. However, when I try to read a value from the AXISRAM address (0x34200000), it fails: (address does not exist and unable to reconnect to target device). AXISRAM3 which it should be the address 0x3420000 is activated and initialized in the main. Initialization of the signal processor and starting the DCMIPP pipeline was passed without any problem:if( ISP_Init(&hcamera_isp, &hdcmipp, 0, &appliHelpers, ISP_IQParamCacheInit[0] ) != ISP_OK ) { Error_Handler(); } if( HAL_DCMIPP_CSI_PIPE_Start(&hdcmipp, DCMIPP_PIPE1, DCMIPP_VIRTUAL_CHANNEL0, BUFFER_ADDRESS, DCMIPP_MODE_CONTINUOUS ) != HAL_OK ) { Error_Handler(); }But, trying to access the buffer addr
Hello,I'm working on a projet where I need to drive 4 (or 2 x 4) GPIO at the same time with high speed on the STM32U545RE.I'm trying to use the DualQuad SPI (with OSPI) but I can't have the clock working...At first I tried to write a code with a send only type of frame (with no instruction and no address) but nothing was working.Now I tried to use the example code from a STM32L5 but nothing seem to be working either. Can you if someone already tried to do that ? BR,Loïc
Hi,I am using the M95P08-IXMNT/E flash memory IC and I am unable to identify the Pin-1 orientation on the package.The device does not appear to have any visible:dot/dimplechamferlaser markingbeveled cornerI checked carefully under light and magnification, but I still cannot find any Pin-1 indication.Could anyone please help with:How to identify Pin-1 on this package?Any package photos/reference images?Whether some lots come without visible Pin-1 markings?Thanks.
Hi all,I'm looking for a free library or source C code to develop and application for DALI master manager with STM32F7 board.I didn't find anything ....Any suggestion?Many thanksFabio
I use STM32U5A9J-DK to plot a graph containing a series of V-I data. I have tried static graph widget and was succeed, but it somewhere doesn't meet my need: the label can only show int, if x data range is -0.6~0.6V, I can only scale them to -600~600, in mV unit, (but I want to show unit in V); besides, my data sequences may have the same x value with different y, e.g. (-0.6,2) (-0.2,5) (0,3) (-0.2,2) (-0.6,1), data like this can't be plotted on static graph, it only accepts monotonous x value. I need my graph showing the original data points (need no scaling) and allowing same x value with different y values, Any other way I can build a graph fitting my requirement? I use touchgfx 4.26.1, seems no canvas function ?!I mean like drawing the plot below, with a lots of on the same graph, and allow me to active/inactive the plot, each plot is a regression
Hi Everyone,I am working on a project with TouchGFX. I'm working with STM32U5G9ZJT6 and I have an external RAM APS12808L-OBM-BA connected via HSPI (Fclk-hspi 100 MHz) in mapped mode. The project is working, but the image animation are not working well. To solve it I have decided to increase the HSPI frecuency.The APS12808L-OBM-BA memory can operate at up to 200MHz. However, when I exceed 118MHz, I can't map the memory. You can see a picture below reading the memory after mapping (you see "?").I have changed the memory read latency (MR0 and MR4) to increase the Fmax.I need all of suggestions for this issue.Thanks in advance all
Dear ST team.(related :Re: UART of NUCLEO-WB09KE UART signal no found - STMicroelectronics Community)I am testing with NUCLEO-WB09KE EVBStarted from the example code ; "BLE_Peripheral_Lite", which is using PB0/PA1 as usuart portI can see the Uart output signal on MB1801, CN3.37. Then I manipulate to code to use LPUART; PB4/PB5 [attached code: BLE_Peripheral_Lite_LPUART1_PB4PB5.zip]But the result is, Uart output signal is still on MB1801, CN3.37(same PIN with USART).Did I do something Wrong? or Missed something?Please Help
Hi, My projet has been working fine until the last week or so where I can no longer debug. When I press F5 I get a "Missing CMSIS_PACK_ROOT" with a notification toast message of "gdb is not running".Nothing has changed in terms of project settings, launch.json, etc. as far as I'm aware. All STM32 extensions and packs are the latest (these might have updated recently - i've tried older versions as a test but that didn't help).Target device is STM32C562.Using ST-Link GDB Server.Windows 11 OSHere is the log of "STM32Cube core" at startup.2026-05-13 08:23:08.715 [Info] Adding STM32Cube CLI path to environment: c:\Users\ZZZ\.vscode\extensions\stmicroelectronics.stm32cube-ide-core-1.3.0-win32-x64\resources\binaries\win32\x86_64 2026-05-13 08:23:09.984 [Info] Configuring CUBE_BUNDLE_PATH environment: C:\Users\ZZZ\AppData\Local\stm32cube\bundles 2026-05-13 08:23:09.985 [Info] NODE_EXTRA_CA_CERTS is not set 2026-05-13 08:23:10.369 [Info] CMSIS_PACK_ROOT=C:\Users\ZZZ\AppData\Local\stm32cube
Can I join a LoRaWAN network only once?so that after a software or hardware reset, i would not need to join the same network once again I am working with LoRaWAN_End_Node_LBM example
If the STM32H743IIK6 is clocked by an external 25MHz clock generator, but we still aim for minimum current consumption until a wake-up is required, what is the lowest achievable current draw assuming everything is powered down except for the external oscillator? Thanx,Eli.
Planning L4981B as PFC controller as pre-stage to our DC-DC Convertor.Will this controller work with 400Hz can it be able to maintain unity power factor in 400Hz line as it does for 50/60Hz?Any other PFC controller recommendations will be appreciated
In the last weeks, I was working on running W25Q256 nor flash chip from vendor Winbond with STM32F746 MCU on a custom board. My guideline in this road is ST's how to run QSPI flash video tutorial (5-part video) and of course some genius guys in the community who's helped me a lot to rewrite the functions of QSPI flash (Init, Erase, Write, Memory-mapped). So far functions tested in the Main.c and I can read the pre-written data on the memory. The next step is to generate (.stldr) external loader file and modify Flash.ld file.according to the video tutorial, I added Loader_Src.c, dev_inf.c, and dev_inf.h files to the workspace but there is a little confusion about flash.ld file that contains memory definitions and all other data and text stuff to assign to specific memory (>FLASH, >RAM, >QUADSPI).for the point of concern, I use STM32F746 with IS42S32400F SD-RAM connected with 2-banks to MCU and of-course W25Q256 NOR-FLASH.how to modify flash.ld file to my specific condition and
The graphical representation shows an internal op-amp amplifying the signal entering the comparator's positive input.However, the STSPIN32G4 positive input comparator cannot be an op-amp output unfortunately and is limited to op-amp positive inputs - see Ref. Manual RM0440 ver 9 (Figure 168).This is misleading, because only non-amplified signals gets to the positive input of the comparator.
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.