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

Segger emb studio with nRF51422: undefined symbol: __data_start__

trying to program an nRF51422 chip with Segger embedded studio with soft device

i get the error

"Checking project status
Building ‘ble_app_uart_c_pca10028_s130’ from solution ‘ble_app_uart_c_pca10028_s130’ in configuration ‘nrf51422_xxac’
  Linking ble_app_uart_c_pca10028_s130.elf
    
    undefined symbol: __data_start__
Build failed"

Parents
  • to add a few more details, because this is all very confusing to me:

    1. this is taking place when i 'build' the program

    2. the program was important from SDK12 (nRF5SDK1230.zip) (because we want to use softdevice s130 for the n51 chip)

    3. the program was imported from the SDK (C:\nordic_semi\nRF5SDK1230\nRF5_SDK_12.3.0_d7731ad\examples\ble_central\ble_app_uart_c\pca10028\s130\iar\ble_app_uart_c_pca10028_s130)

    because SDK12 does not have SES files (Segger embedded files) such as NDK 15 does

    (we followed the instructions for file imports)

    4. the connection is by SWD and seems to work

    5. we are able to use nfrGO to upload the soft device (though i'm a bit confused with why segger is not doing that)

  • Hi, 

    Please try follow the instructions given in this blog post link. You need to include the Nordic specific startup files after importing the project.    

  • thanks. does it need to be 3.10e, or can it also work with the most recent version 4.12?

  • we kinda got it to work.

    but with a lot of config changes such as

    preprocessor definitions:

    BLE_STACK_SUPPORT_REQD

    __HEAP_SIZE=0

    NRF51422

    BOARD_PCA10028

    NRF_SD_BLE_API_VERSION=2

    S130

    BSP_UART_SUPPORT

    NRF51

    SOFTDEVICE_PRESENT

    SWI_DISABLE0

    and User i ncluded directoris

    ./../../../config/ble_app_uart_c_pca10028_s130

    ./../../../config

    ./../../../../../../components

    ./../../../../../../components/ble/ble_advertising

    ./../../../../../../components/ble/ble_db_discovery

    ./../../../../../../components/ble/ble_dtm

    ./../../../../../../components/ble/ble_racp

    ./../../../../../../components/ble/ble_services/ble_ancs_c

    ./../../../../../../components/ble/ble_services/ble_ans_c

    ./../../../../../../components/ble/ble_services/ble_bas

    ./../../../../../../components/ble/ble_services/ble_bas_c

    ./../../../../../../components/ble/ble_services/ble_cscs

    ./../../../../../../components/ble/ble_services/ble_cts_c

    ./../../../../../../components/ble/ble_services/ble_dfu

    ./../../../../../../components/ble/ble_services/ble_dis

    ./../../../../../../components/ble/ble_services/ble_gls

    ./../../../../../../components/ble/ble_services/ble_hids

    ./../../../../../../components/ble/ble_services/ble_hrs

    ./../../../../../../components/ble/ble_services/ble_hrs_c

    ./../../../../../../components/ble/ble_services/ble_hts

    ./../../../../../../components/ble/ble_services/ble_ias

    ./../../../../../../components/ble/ble_services/ble_ias_c

    ./../../../../../../components/ble/ble_services/ble_lbs

    ./../../../../../../components/ble/ble_services/ble_lbs_c

    ./../../../../../../components/ble/ble_services/ble_lls

    ./../../../../../../components/ble/ble_services/ble_nus

    ./../../../../../../components/ble/ble_services/ble_nus_c

    ./../../../../../../components/ble/ble_services/ble_rscs

    ./../../../../../../components/ble/ble_services/ble_rscs_c

    ./../../../../../../components/ble/ble_services/ble_tps

    ./../../../../../../components/ble/common

    ./../../../../../../components/ble/nrf_ble_qwr

    ./../../../../../../components/ble/peer_manager

    ./../../../../../../components/boards

    ./../../../../../../components/device

    ./../../../../../../components/drivers_nrf/adc

    ./../../../../../../components/drivers_nrf/clock

    ./../../../../../../components/drivers_nrf/common

    ./../../../../../../components/drivers_nrf/comp

    ./../../../../../../components/drivers_nrf/delay

    ./../../../../../../components/drivers_nrf/gpiote

    ./../../../../../../components/drivers_nrf/hal

    ./../../../../../../components/drivers_nrf/i2s

    ./../../../../../../components/drivers_nrf/lpcomp

    ./../../../../../../components/drivers_nrf/pdm

    ./../../../../../../components/drivers_nrf/power

    ./../../../../../../components/drivers_nrf/ppi

    ./../../../../../../components/drivers_nrf/pwm

    ./../../../../../../components/drivers_nrf/qdec

    ./../../../../../../components/drivers_nrf/rng

    ./../../../../../../components/drivers_nrf/rtc

    ./../../../../../../components/drivers_nrf/saadc

    ./../../../../../../components/drivers_nrf/spi_master

    ./../../../../../../components/drivers_nrf/spi_slave

    ./../../../../../../components/drivers_nrf/swi

    ./../../../../../../components/drivers_nrf/timer

    ./../../../../../../components/drivers_nrf/twi_master

    ./../../../../../../components/drivers_nrf/twis_slave

    ./../../../../../../components/drivers_nrf/uart

    ./../../../../../../components/drivers_nrf/usbd

    ./../../../../../../components/drivers_nrf/wdt

    ./../../../../../../components/libraries/bsp

    ./../../../../../../components/libraries/button

    ./../../../../../../components/libraries/crc16

    ./../../../../../../components/libraries/crc32

    ./../../../../../../components/libraries/csense

    ./../../../../../../components/libraries/csense_drv

    ./../../../../../../components/libraries/experimental_section_vars

    ./../../../../../../components/libraries/fds

    ./../../../../../../components/libraries/fifo

    ./../../../../../../components/libraries/fstorage

    ./../../../../../../components/libraries/gpiote

    ./../../../../../../components/libraries/hardfault

    ./../../../../../../components/libraries/hci

    ./../../../../../../components/libraries/led_softblink

    ./../../../../../../components/libraries/log

    ./../../../../../../components/libraries/log/src

    ./../../../../../../components/libraries/low_power_pwm

    ./../../../../../../components/libraries/mem_manager

    ./../../../../../../components/libraries/pwm

    ./../../../../../../components/libraries/queue

    ./../../../../../../components/libraries/scheduler

    ./../../../../../../components/libraries/slip

    ./../../../../../../components/libraries/timer

    ./../../../../../../components/libraries/twi

    ./../../../../../../components/libraries/uart

    ./../../../../../../components/libraries/usbd

    ./../../../../../../components/libraries/usbd/class/audio

    ./../../../../../../components/libraries/usbd/class/cdc

    ./../../../../../../components/libraries/usbd/class/cdc/acm

    ./../../../../../../components/libraries/usbd/class/hid

    ./../../../../../../components/libraries/usbd/class/hid/generic

    ./../../../../../../components/libraries/usbd/class/hid/kbd

    ./../../../../../../components/libraries/usbd/class/hid/mouse

    ./../../../../../../components/libraries/usbd/class/msc

    ./../../../../../../components/libraries/usbd/config

    ./../../../../../../components/libraries/util

    ./../../../../../../components/softdevice/common/softdevice_handler

    ./../../../../../../components/softdevice/s130/headers

    ./../../../../../../components/softdevice/s130/headers/nrf51

    ./../../../../../../components/toolchain

    ./../../../../../../components/toolchain/cmsis/include

    ./../../../../../../external/segger_rtt

    ./../config

  • I'm using nrf51822 and faced this same issue, I tried your solution but it did not work for me.

    I'm using sdk12.3 on segger 4.10.

Reply Children
No Data
Related