Expanding Primary RAM with PSRAM on nRF7002-DK

Description: I am currently working on an MQTT application using the nRF7002-DK chipset for communication with the AWS IoT Core. In the course of development, I've encountered a challenge where I'm running out of onboard Primary RAM, which is limited to 512KB. To address this issue and enhance the system's memory capabilities, I am interested in expanding the Primary RAM with an external PSRAM (Pseudo Static RAM) connected to the SPI port.

I am seeking guidance, support, or information on how to integrate PSRAM with the nRF7002-DK chipset and Zephyr OS, particularly any resources or driver files related to this specific configuration.

Specific Questions:

  1. What is the recommended PSRAM module for use with the nRF7002-DK and Zephyr OS?
  2. Are there any example driver files or code snippets available for integrating PSRAM with the nRF7002-DK chipset in Zephyr?
  3. Could you provide guidance or best practices on configuring and utilizing the PSRAM within the Zephyr OS environment?
  4. Are there any known challenges or limitations when integrating PSRAM with the nRF7002-DK for this application.

  • If I were you, I'd go for an MRAM SPI module. There are small packages that are byte-accessible such as these ones 32 Mbit MRAM.

    You can get them up to 1Gbit. They are very fast and have the added benefit of being non-volatile. So you can use them to store const data, use them as regular ram etc.

    WIth the added benefit of some models emulating NOR chips, including XIP via QSPI (which we know Zephyr already does).

    Also, there's no erase involved (you can overwrite data as you wish) and no wear leveling required, as these devices don't degrade when flipping bits.

  • Hi

    1. I'm afraid we don't have any recommended PSRAM modules, as the QSPI on the nRF52/53 series is tailored around a specific set of NOR flash chips with hard coded commands, so PSRAM modules won't be well suited for this. What  suggests might be the best way to go about this, alternatively using regular SPI and DMA with a MicroSD card for example.

    2. No, I'm afraid we don't have driver files for integrating PSRAM in the Zephyr SDK as far as I know.

    3 & 4. I'm afraid we don't have support for external PSRAM modules for any of our devices, so we don't have any guidance or known limitations for what you're trying to do I'm afraid.

    What exactly is the end goal for this extra RAM for the nRF7002? What do you need the extra RAM for?

    Best regards,

    Simon