Hi,
There should be a newer version of the QN9090 SDK, you can download the latest version from the MCUXpresso SDK Builder.
Have you tested the driver_examples > flash_demo without modifications? Do you observe the same behavior described in this post? Please, compare your read/write procedure with the one from the flash_demo application.
By any chance, is gAppUseNvm_d set to 1 in app_preinclude.h file?
Also, could you try the same procedure using another demo application from the SDK without BLE functionality as base?
As another test, you could try writing to another address outside the NVM region. Please, take a look at the src > connectivity.ld file for more information on the map of QN9090 FLASH.
Please, let me know your findings.
Regards,
Eduardo.