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

Does using pca10028 BSP for a diffrent custom board cause application not work?

I am runing the example on custom board 16k ram, i have configured the linker file correctly as shown below. but all the ble_peripheral application doesnt run (not advertising) after flash. But this examples work find on my other board pca10028 , ram 32k. I dint modify the BSP for the customboard in the application.But i ignored it because am only focusing on the BLE application running only not abt bsp(led,button) Is my problem due to the different BSP that the examples are not working or is it another problem ? Am using s130.

Edited: I MODIFIED the linker file : MEMORY { FLASH (rx) : ORIGIN = 0x1b000, LENGTH = 0x25000 RAM (rwx) : ORIGIN = 0x20002080, LENGTH = 0x1F80 }

what else do i have to change , so i can run the example on my custom board ?

Parents
  • FormerMember
    0 FormerMember

    From the datasheet you can see that RAM starts from 0x20000000. The linker file says that the RAM for the application starts from 0x20002080. Since the total size of RAM is 32 kB for xxAC, 0x2080 + 0x5f80 is 0x8000, which is 32 kB. So just change the RAM length to 0x1f80 to show that the total length is 16 kB (0x4000).

  • FormerMember
    0 FormerMember in reply to FormerMember

    Strange, it works here. Not sure where the problem is then. Here's the linker file that I use.

    /* Linker script to configure memory regions. */
    
    SEARCH_DIR(.)
    GROUP(-lgcc -lc -lnosys)
    
    MEMORY
    {
      FLASH (rx) : ORIGIN = 0x1b000, LENGTH = 0x25000
      RAM (rwx) :  ORIGIN = 0x20002080, LENGTH = 0x1f80
    }
    
    SECTIONS
    {
      .fs_data :
      {
        PROVIDE(__start_fs_data = .);
        KEEP(*(.fs_data))
        PROVIDE(__stop_fs_data = .);
      } > RAM
    } INSERT AFTER .data;
    
    INCLUDE "gcc_nrf51_common.ld"
    
Reply
  • FormerMember
    0 FormerMember in reply to FormerMember

    Strange, it works here. Not sure where the problem is then. Here's the linker file that I use.

    /* Linker script to configure memory regions. */
    
    SEARCH_DIR(.)
    GROUP(-lgcc -lc -lnosys)
    
    MEMORY
    {
      FLASH (rx) : ORIGIN = 0x1b000, LENGTH = 0x25000
      RAM (rwx) :  ORIGIN = 0x20002080, LENGTH = 0x1f80
    }
    
    SECTIONS
    {
      .fs_data :
      {
        PROVIDE(__start_fs_data = .);
        KEEP(*(.fs_data))
        PROVIDE(__stop_fs_data = .);
      } > RAM
    } INSERT AFTER .data;
    
    INCLUDE "gcc_nrf51_common.ld"
    
Children
No Data
Related