How to test flash of nRF54L15?

Hi,

I'm interested in testing the flash of the nRF54L15. Are there any sample applications or existing projects that could help me get started?

Thanks,

PG

  • Hello,

    I'm not exactly sure what you're trying to test here, but if you're looking for something like read/write operations on flash, you can take a look at the nRF Soc internal Storage. See the relevant sample here.
    Refer to the Zephyr Flash API documentation . You can also check out the file system samples, if you are looking for flash on the nRF54L15 using a file system .

    Kind regards,
    Abhijith

  • Hi Abhijith,

    Thank you for your prompt response. The link you shared above is for nRF52. I am looking sample for nRF54L15.

    Thanks,

    PG

  • Hello,

    This sample is not specific to the nRF52840, it is a generic example demonstrating the Flash API. I recommend trying this sample on the nRF54L15 to see how the read and write operations work.

    I have tested this sample on the nRF54L15 DK and can clearly see the well-defined flash layout. I am attaching the logs captured after flashing.

    *** Booting nRF Connect SDK v3.0.2-89ba1294ac9b ***
    *** Using Zephyr OS v4.0.99-f791c49f492c ***
    
    Nordic nRF5 Internal Storage Sample
    =====================================
    
    Test 1: Internal storage erase page at 0x163000
       Erase not required by device
    
    Test 2: Internal storage write (word array 1)
       Attempted to write 1122 at 0x163000
       Attempted to read 0x163000
       Data read: 1122
       Data read matches data written. Good!
       Attempted to write aabb at 0x163004
       Attempted to read 0x163004
       Data read: aabb
       Data read matches data written. Good!
       Attempted to write abcd at 0x163008
       Attempted to read 0x163008
       Data read: abcd
       Data read matches data written. Good!
       Attempted to write 1234 at 0x16300c
       Attempted to read 0x16300c
       Data read: 1234
       Data read matches data written. Good!
    
    Test 3: Internal storage erase (2 pages at 0x163000)
       Erase not required by device
    
    Test 4: Internal storage write (word array 2)
       Attempted to write 1234 at 0x163000
       Attempted to read 0x163000
       Data read: 1234
       Data read matches data written. Good!
       Attempted to write aabb at 0x163004
       Attempted to read 0x163004
       Data read: aabb
       Data read matches data written. Good!
       Attempted to write abcd at 0x163008
       Attempted to read 0x163008
       Data read: abcd
       Data read matches data written. Good!
       Attempted to write 1122 at 0x16300c
       Attempted to read 0x16300c
       Data read: 1122
       Data read matches data written. Good!
    
    Test 5: Internal storage erase page at 0x163000
       Erase not required by device
    
    Test 6: Non-word aligned write (word array 3)
       Attempted to write 1122 at 0x163001
       Attempted to read 0x163001
       Data read: 1122
       Data read matches data written. Good!
       Attempted to write aabb at 0x163005
       Attempted to read 0x163005
       Data read: aabb
       Data read matches data written. Good!
       Attempted to write abcd at 0x163009
       Attempted to read 0x163009
       Data read: abcd
       Data read matches data written. Good!
       Attempted to write 1234 at 0x16300d
       Attempted to read 0x16300d
       Data read: 1234
       Data read matches data written. Good!
       Attempted to write 1122 at 0x163011
       Attempted to read 0x163011
       Data read: 1122
       Data read matches data written. Good!
       Attempted to write aabb at 0x163015
       Attempted to read 0x163015
       Data read: aabb
       Data read matches data written. Good!
       Attempted to write abcd at 0x163019
       Attempted to read 0x163019
       Data read: abcd
       Data read matches data written. Good!
       Attempted to write 1234 at 0x16301d
       Attempted to read 0x16301d
       Data read: 1234
       Data read matches data written. Good!
    
    Test 7: Page layout API
       Offset  0x00041234:
         belongs to the page 65 of start offset 0x00041000
         and the size of 0x00001000 B.
       Page of number 37 has start offset 0x00025000
         and size of 0x00001000 B.
         Page index resolved properly
       SoC flash consists of 357 pages.
    
    Test 8: Write block size API
       write-block-size = 16
    
    Finished!
    

    Kind Regards,

    Abhijith

  • Hi Abhijith,

    Thank you — I was able to successfully build and flash the sample. I just need to confirm one thing: does this sample operate on the flash labeled U9 on the nRF54L15-DK board, or is it targeting the internal flash within the chip? We're specifically interested in the U9-labeled external flash.

    Thanks,

    PG

  • Hello,

    The MX25R6435F module you mentioned is the external flash integrated on the nRF54L DK ,not the internal flash. The sample I referred to works with the internal flash of the nRF54L15.

    To work with the external flash, you’ll need to configure it first for the application/mcuboot (depending on your use case). You could start by looking at the JEDEC SPI NOR sample as a reference

    Kind regards,
    Abhijith

Related