2025-09-28 9:17 PM
I created a Boot/App/ExtMemLoader project for my NUCLEO-H7S3L8 via the STM32CubeMX for STM32CubeIDE, and ran into issues when running the application code from the external NOR Flash chip on the NUCLEO board (U18, P/N MX25UW25645GXDI00 on the schematic). The Boot and ExtMemLoader applications run just fine. However, the App would not run with the default config generated in STM32CubeMX. Screenshot here:
After changing the FifoThresholdByte to `1`, setting the size to 256Mbit, and reducing the XSPI clock to 180MHz, I was able to get the application to run. I probably should double-check which of these settings are necessary. Although I can now have it execute the Application from the external FLASH, I am now running into issues when setting breakpoints and debugging the application. The debugger stops responding entirely, and I have to kill the GDB instances in order to recover.
I wonder if something in the XSPI config is still off. Is there a way to get the datasheet for the Macronix `MX25UW25645GXDI00` memory chip? The closest part I could find is the `MX25U25645G`, but it only does x1/x2/x4 SPI. Or perhaps, do you have a better tuned set of parameters for the device that might fix my debugging problems?
Note, too, that I have left the XSPI configuration in the Bootloader which also sets up the peripheral in memory-mapped mode before launching the application. Thanks in advance.