Beware that this post is related to an SDK in maintenance mode
More Info: Consider nRF Connect SDK for new designs
This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Qspi NAND Driver

I've read quite a few threads where people are asking for help getting NAND Flash to work with their devices, only to find out they are not supported. I see that only NOR Flash is supported and it seems like that's not changing anytime soon. 

I wanted to ask if anyone has written their own driver to accomplish this? I am in need of adding the Winbond 25N into our company's design that uses the nrf52840 and was looking for a good starting point, as I'm am new to doing embedded work through an SDK. 

Thanks for any advice.

  • Hi Ron

    This is essentially a hardware limitation in the QSPI peripheral, as it is only supports the NOR flash instruction set out of the box. Most NAND devices use a different instruction set, because of the architectural differences between NOR and NAND devices. 

    There might be NAND devices that support the NOR instruction set, but we have yet to do the necessary research to verify this. 

    Hopefully someone in the community can share some experiences. 

    Best regards
    Torbjørn

  • Thank you sir. I'm trying to look into writing my own driver for the Windbond parts. Not going to be able to use what is available in the NRF52840. 

  • Hi Ron

    Can you give me some details on what you are planning to use the flash device for? 

    Do you have an estimate of how much and how often you have to write/read to the device?

    The main limitation of NAND devices is that they don't support random data access. For general data storage this is usually not a problem, but if you want to run code directly from external flash it is not ideal. 

    Best regards
    Torbjørn

  • We will be replacing our eMMC with this Nand memory. It is used to store logged data and config data, the data is transmitted at certain intervals over cellular for our backend online software. We also incorporate BLE, GPS, and Wifi in this device. This is a tracking/monitoring device we use at FedEx and it is used world wide. Currently tracking and monitoring all Covid vaccine shipments we deliver. 

    We will not be running code from this memory. 

    Thank you for your reply, too.

  • Hi 

    Thanks for the added information. I will make some inquiries internally if we are planning to add NAND driver support, but I doubt we will be able to provide anything in the short term. If you need something immediately you might need to roll a driver of your own, or port a driver from another platform. 

    Best regards
    Torbjørn

Related