This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

DFU Dual Bank Example with PCA10001

Keil v5 , SDK 7.2.0 , SoftDevice S110 v7.1.0

Copied the dfu_dual_bank_ble_s110_pca100028 app

Changed preprocessor symbol from BOARD_PCA100028 to BOARD_PCA10001

Changed the appropriate button and led numbers

IROM1 : Start ( 0x3C000 ) Size ( 0x3C00 )

IRAM1 : Start ( 0x20002000 ) Size ( 0x2000 )

I get a error :

*** Error: Referred Memory Range 'IRAM2' is undefined.

Are there any other changes I need to make to get the example working with PCA10001 ? I looked around the code but looks straightforward.

Even though there is an error, a bootloader target is made.

I erased PCA10001. Programmed SoftDevice S110 v7.1.0. Then I programmed the bootloader target.

I don't have a application to start. Just the SoftDevice and the DFU Bootloader.

In the nRF Utility app, PCA1001 does not show up. Any suggestions ? I'd really appreciate the help.

Also how do I debug this ? ( Debug Session ? ) The Advertising LED used in dfu_transport is on, but I don't see anything.

Thanks!

Parents
  • Hi

    At least this thread should get you started on the debugging.

    A new bootloader feature was introduced with SDK version 7 which includes init packets which are sent from the central to the device before the actual application firmware image is transmitted. IRAM2 section is needed for this init packet data.

    Try to define the RAM sections similar to the bootloader example does in SDK 7.2.0 but for 16kB RAM instead of 32kB RAM:

    IRAM1:   Start: 0x20002C00   Size: 0x1380
    IRAM2:   Start: 0x20003F80   Size: 0x80
    

    and check NoInit for IRAM2.

Reply
  • Hi

    At least this thread should get you started on the debugging.

    A new bootloader feature was introduced with SDK version 7 which includes init packets which are sent from the central to the device before the actual application firmware image is transmitted. IRAM2 section is needed for this init packet data.

    Try to define the RAM sections similar to the bootloader example does in SDK 7.2.0 but for 16kB RAM instead of 32kB RAM:

    IRAM1:   Start: 0x20002C00   Size: 0x1380
    IRAM2:   Start: 0x20003F80   Size: 0x80
    

    and check NoInit for IRAM2.

Children
Related