STM32F767 QSPI Flash Not Writing First Byte (S25FL256S)
Hi everyone,
I'm using an STM32F767 with an S25FL256S NOR flash over QSPI in indirect mode (HAL driver).
I'm trying to write the string "HELLO" at address 0x000000, but after programming and reading, I always get: FF 45 4C 4C 4F → "ELLO".
The first byte is always 0xFF. All other bytes are written and read correctly.
What I’ve already done:
Verified Flash ID: 01 20 18 (correct)
Erased the sector before writing
Using 0x02 Page Program in 1-1-1 mode
Set SIOOMode = QSPI_SIOO_INST_ONLY_FIRST_CMD
Set FIFO threshold = 1
Using indirect mode (HAL_QSPI_Command() + HAL_QSPI_Transmit())
Test Code:
char tx[] = "HELLO";
QSPI_PageProgram(0x000000, (uint8_t*)tx, strlen(tx) + 1);
QSPI_ReadData(0x000000, rx, strlen(tx) + 1);
Why is the first byte not being written?

