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
Some applications have the need to use an external interrupt from an GPIO input that is already configured as alternate function. My use case is to use EXTI on a rising edge of SPI_NSS input to detect a terminated SPI transfer on a slave.So I need the combination of MODE_AF and EXTI_IT when configuring the GPIO input pin. Unfortunately, HAL does not support this and asserts on IS_GPIO_MODE(__MODE__) for this combination.However, STM32 MCUs usually support this combination, so it makes sense to support this in HAL.To allow this, I added some definitions in stm32g4xx_hal_gpio.h:#define GPIO_MODE_AF_IT_RISING (MODE_AF | EXTI_IT | TRIGGER_RISING) /*!< Alternate Function with External Interrupt Mode with Rising edge trigger detection */ #define GPIO_MODE_AF_IT_FALLING (MODE_AF | EXTI_IT | TRIGGER_FALLING) /*!< Alternate Function with External Interrupt Mode with Falling edge trigger detection
Hi friends, Does have processors from this family a dedicated input pin as the the input for inner LDO? It will be in the future to supply the inner LDO with the voltage Vcc/2 from the splitter like LM2665 or other. best regards zbynoB
Hi! We are using the STM32MP153 with FreeRTOS on the CoPro side and OpenEmbedded/Yocto Linux on A7 side. To save power, the CStop mode is used. We go to CStop using`HAL_PWR_EnterSTOPMode(PWR_MAINREGULATOR_ON, PWR_STOPENTRY_WFI);`on the CoPro side and using`echo deep > /sys/power/mem_sleepsystemctl suspend`on Linux side.The CoPro is waken up by a falling edge on pin PI8 via an EXTI interrupt.The Linux also wakes up using a falling edge on pin PI8 (modified device tree).Sometimes (approx. every 10 wakeups, but I can’t reliably tell), a Hard Fault occurs on the CoPro shortly after waking up. I noticed that, when that happens, the memory area 0x10040000 through (at least) 0x10042a80 is overwritten with 0xFF. This is where the IPC shared memory is, which leads to an invalid load operation, causing the Hard Fault. Also, on Linux side, a message occurs `[ 272.028406] virtio_rpmsg_bus virtio0: output:id 4294967295 out of range`.Sometimes, the memory area of approx. 0x1003D000 through 0x100
HelloMy Nucleo-H755ZI-Q board disconnected mid-STLINK firmware update, and I am now unable to complete the process.Could you please guide me on the next steps to resolve this?
I’m designing a tag coil for the ST25DV-04k. I am planning to use the ST25 to harvest NFC energy from a phone tap for a bioimpedance sensor (MAX30002). The ST25DV will then relay the sensor measurement to the phone via NFC again. I used an online calculator to design the tag coil, and these were the parameters I chose. Parameters for tag coilHowever, I am unsure if my quality factor is too high. “59.77” is before coupling, and I assume it will be lower after that. I understand that a high Q is great for energy harvesting, but it can limit the bandwidth and garble communication between the tag and the reader.Is my Q too high right now? If so, what is the optimal Q factor range? Anything else that stands out from my coil design?
Hi,I am using TouchGFX 4.26.1 on a custom STM32N655x0 board. Most widgets (Box, Text, Button, SVG, Slider, etc.) render correctly, but Canvas Widgets such as Line, Circle, Shape, and the graph plot lines are not rendered. The graph background/grid is visible, but the plotted lines are missing.The same TouchGFX project works correctly on the STM32N657-DK, but not on the STM32N655 custom board.Is there any known limitation or additional configuration required for Canvas Widgets/NemaGFX/NeoChrom GPU2D on STM32N655? Are there any differences in Canvas Widget support between STM32N655 and STM32N657?I've attached screenshots of the designed UI and the actual output on the custom board. TouchGFX design Custom board display STM32N6570-DK’s display Thank you.
Subject: X-CUBE-CLASSB-L4 (STL) — Fault Injection Method for Flash/CPU/RAM Self-Tests on STM32L451CETI am applying X-CUBE-CLASSB-L4 (Self-Test Library, STL) on an STM32L451CET MCU to implement CPU/Flash/RAM self-tests for IEC 60730-1 Class B certification.Main issue: No matter what method I try, the Flash test never passes (always reports a failure / never completes successfully under normal conditions).Certification requirement: Our certification body requires us to demonstrate both the normal (pass) case and the fault (failure) case for each test, specifically by actually altering real values during test execution:CPU test: by actually changing register values during the test Flash test: by changing the CRC value, or modifying Flash memory contents while the test is running RAM test: by modifying RAM contents while the test is runningI understand that ST's recommended method is to use STL_ArtifFailingConfig to perform fault injection. However, this only simulates a failing configurat
Dear Sir/Madam,We use STPS20200CG-TR Schottky diode in our unit. This diode has operating junction temperature range -40C...175C and storage temperature range -65...175C. Our unit must start operating at -55C. Will STPS20200CG-TR operate at -55C ambient temperature without being damaged and which parameters may deteriorate?Thank you,Alex
Hi community, I have been having trouble with finding the correct steval-mki217v1 motionFX 9axis fusion Sensor orientation: NED, ENU, SEU, NWU. the only resouce I had was from IKS01A1 Nucleo eXpansion board. I had tried several combination and had the best combination shown below.Please feel free to correct what I got wrong here.Could someonr confirm this sensor orientaion I use on the right is correct as well as how can I determine the north east west south from this shield?
Hi team, Reposting my earlier query as it appears to have been missed.How do I measure the peak RAM and peak Flash usage of an AI model?I need to calculate peak RAM and peak Flash from the IDE, but the model generated by ST Edge AI is in HEX format and is not included in the IDE's reported size. So, I'm adding the HEX file size to the IDE's peak RAM and peak Flash figures — is this approach correct? Details are shared below. KWS cpu+npuIDE Flash = text + data = 205,404 + 1,616 = 207,020 bytes ≈ 202.17 KBRAM = data + bss = 1,616 + 102,040 = 103,656 bytes ≈ 101.23 KBFor cpu+npu we flash the model in hex format, so we need to add the peak ram and peak flash of hex file with IDE peak ram and peak flash. model size - Total Peak Ram and Peak FlashPeak RAM = (103,656 + 22,065 = 122.77 KB) Peak Flash = (207,020 + 22,065 = 223.72 KB)
Product: STM32CubeProgrammer 2.22.0 (Linux x86-64) Interface: SWD / STLINK-V3 (dual probes) Target: STM32F427 (DEV_ID 0x419)DescriptionRunning --incremental flash against one STLINK-V3 probe while a second STLINK-V3 is physically connected (but not commanded) produces a deterministic SIGSEGV inside ST_LINKInterface::programMemory.Call chain at crash:DebugInterface::programBufferFlashLoader (@ 0x206400) FlashLoaderMng::Loader_WriteRange ST_LINKInterface::programMemory ← SIGSEGV @ 0x727b81Root cause: use-after-free on Target::loadersTarget::loaders is a BSS-global loader table shared across all code in the process. When the second probe is plugged in, the library's internal USB hotplug callback fires, rescans the bus, and rebuilds — freeing — the loader table while the incremental flash write loop holds a pointer into it. There is no lock observed on the table.The sequence at the crash site (DebugInterface::programBufferFlashLoader @ 0x206400):206631: mov 0x40(%rsp),%rdi
[PN]: EVSPIN32G06Q2S1[VERSION]: MCSDK 6.4.1[TOOL]: MC WB[DETAILS]:6step and sensorlessabout the BEMF circuit, BJT(Q2/Q5/Q8) the MCWB give me a tip should I keep the BJT and short B-E?wha’s the purpose of these BJT(Q2/Q5/Q8)?
I downloaded X-CUBE-AI, but after clicking it, the Add network button did not appear, and uninstalling and reinstalling the IDE also did not work.
The schematic is shown below. I have pulled down BOOT0 to ground through a jumper , power supply voltage is normal. Could you please help me check if there is a problem with the MCU configuration。
On a garage floor a small limestone block 150 mm by 50 mm by 20 mm on a fixed roller support XXXXXXXXXXXXXAF RSensor at A, the F and R are small wooden blocks and a roller. I pick up the electrical signal to 420 Hz. The limestone is vibrating at 460 Hz quite nicely as it is a heavily degraded block so the Sensor TileBox Pro is quite good, but should I normally see electrical signals this high, the CX1 stops at about 180.
Hello All,We are adding the IIS2MDCTR magnetic sensor in our existing product.The concern we share is that this is a magnetic sensor and will it affect the MRI machine or its results when installed in the MRI Room.Our product is an Emergency Exit Light a manadatory product but as of now without the magnetic sensor. Please share your feedback.
I am trying to make the ADC channels sample the current through some motor channels synchronised to the center of the center aligned PWM waveform to avoid switching noise.The microcontroller I am using is the STM32F411 series, and I am using the first 3 channels of Timer 2 for PWM. The 4th channel is set to "Output compare no output", and I also set the timer trigger output event selection to Output compare (OC4REF). I set the pulse of channel 4 to the TOP value of the timer so it triggers when the counter counts to the TOP (midpoint of PWM). For the ADC, i am trying to sample 4 inputs (2 phases for 2 motors) and shift the data into a buffer using DMA. I enabled scan conversion mode as well as DMA continuous requests, and set the trigger source to Timer 2 capture compare 4 event, triggered on the rising edge. The ADC global interrupt is also enabled.In code, I started timer 2 using:HAL_TIM_Base_Start(&htim2); HAL_TIM_OC_Start(&htim2, TIM_CHANNEL_4);Then, I start the ADC us
Hello ST Community,I am currently working on a hardware integration project where a Xilinx ZCU104 FPGA acts as the SPI Master, and an STM32F446RE acts as the SPI Slave. We are attempting to establish a stable full-duplex SPI communication using DMA, but we are consistently encountering a "Communication Timeout" on the Master side, and the STM32 RxBuffer remains empty (all zeros).Here are the implementation details and the troubleshooting steps we have already verified:### 1. Configuration & Code Snippet* Data Size: 8-bit SPI data size, but grouped into 4-byte (32-bit) transfers to match the FPGA's 32-bit register data width.* STM32 SPI Configuration: Slave Mode, 2 Lines Full-Duplex, CPOL=0, CPHA=0 (Mode 0), MSB First.* NSS Management: Hardware NSS Input (SPI_NSS_HARD_INPUT) on PB12.* DMA Configuration: DMA1 Stream 3 (RX) and Stream 4 (TX) enabled with circular or normal transfer.In `main.c`, we initialize the peripheral and start the listening process as follows:```c#define BUFFER_
Hi everyone,I have one question before starting one project.I am working on information system related to Philippines government services like NBI Clearance. We are thinking future version can also work on small self-service kiosk or information terminal, not only website.Main requirements are:Stable for many yearsFast boot timeLow powerTouch display supportEthernet or Wi-Fi optionQR code scanner supportUSB printer support for receipt or documentI see many people using STM32 in industrial products.Do you think STM32 is good choice for this type of public kiosk?Or better use Linux SBC like Raspberry Pi for easier software development?I want something reliable because government/public service devices may run all day without restart.Anyone already build similar public information kiosk using STM32?Thanks for any advice.
Hello,I’m working on a stm32h753 MCU and trying to use LwIP. I followed a lot of topics on that but I’m still not able to make it work.When I’m using debugger to identify issue, I’m always falling in unaligned access issue.backtrace in debugHere is my configuration :MPU_configvoid MPU_Config(void){ MPU_Region_InitTypeDef MPU_InitStruct = {0}; /* Disables the MPU */ HAL_MPU_Disable(); /* Configure the MPU as Strongly ordered for not defined regions */ MPU_InitStruct.Enable = MPU_REGION_ENABLE; MPU_InitStruct.BaseAddress = 0x00; MPU_InitStruct.Size = MPU_REGION_SIZE_4GB; MPU_InitStruct.AccessPermission = MPU_REGION_NO_ACCESS; MPU_InitStruct.IsBufferable = MPU_ACCESS_NOT_BUFFERABLE; MPU_InitStruct.IsCacheable = MPU_ACCESS_NOT_CACHEABLE; MPU_InitStruct.IsShareable = MPU_ACCESS_SHAREABLE; MPU_InitStruct.Number = MPU_REGION_NUMBER0; MPU_InitStruct.TypeExtField = MPU_TEX_LEVEL0; MPU_InitStruct.SubRegionDisable = 0x87; MPU_InitStruct.DisableExec = MPU_INSTR
Hi,I am using an STM32N655X0H3Q interfaced with an NHD-7.0-800480EF-ASXN#-CTP display that uses the FT5426G capacitive touch controller. I have created a TouchGFX screen containing a single button widget. No interactions are currently assigned to the button (I had previously tested it with a screen-change interaction, but the behaviour remained the same, so I removed all interactions and am now testing with only the button widget present on the screen).The touch controller appears to work correctly otherwise. I can continuously poll touch events inside STM32TouchController::sampleTouch() and successfully print the touch coordinates and number of touch points when touching any area of the screen outside the button.However, as soon as I touch the button widget, the application hangs. The button disappears and the display turns into a plain screen. At the same time, the continuous polling inside STM32TouchController::sampleTouch() stops completely, indicating that TouchGFX is no longer ca
I am using an LDL1117S50R fixed voltage, 5 V regulator. I am regulating down from +12V to +5V. Our +12V supply is clean.It’s a pretty simple circuit; one 1 uF capacitor at the input, and one 100 nF, one 1 uF, and one 4.7 uF capacitor at the output. I don’t need an enormous load; 500 mA is sufficient.It was working great at first, but once I reach a load of about 200 mA, it began oscillating unstably at about 2.2. kHz. See the screenshot below. I was using a Rigol electronic load to test this. This problem also appears to be intermittent. See the screenshots below. It’s fine, and then unstable, and then fine again, and unstable. The period of instability is not consistent. My PCB is good. The input and output caps are close to the pins and I’ve used low ESR ceramic capacitors.Does anyone have any idea what this may be?
Hi!I wonder why ST have chosen to implement a 10 kOhm pull-up (R34) on the clock line of the SD-card?I have seen this on the STM32MP257F-DK board from ST.Normally, you chould not have a 10 kOhm pull-up on the clock signal, only the other data/command signals.That’s the reason why the EMI filters for the SD-card e.g ST products EMIF06-HMC02F2 and EMIF06-MSD02N16 does not any pull-up onto the clock signal.
I require urgent technical support regarding a VIPer22A-based dual output power supply design (5V/800mA and 12V/200mA).I have designed and manufactured the transformer according to my calculations; however, the power supply is not operating properly. I have attached the following documents for your review:Schematic PCB Layout Transformer Design DataI would appreciate it if you could review the attached files and provide your feedback and recommendations as soon as possible, as this matter is highly urgent and is currently affecting our development schedule.Thank you in advance for your support. I look forward to your prompt respons
Have successfully worked throughSTM32Cube_FW_U5_V1.8.0/Projects/B-U585I-IOT02A/Applications/SBSFU/readme.htmlI need to port this (..boot, ..loader, ..appli) to a custom board running STM32U585VIT6.Within the readme it states "This example has been tested with STMicroelectronics B-U585I-IOT02A board and can be easily tailored to any other supported device and development board."Is there an example / idiots guide to work through doing the above?Thanks
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.