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

HRS pca10100 missing

Hi,

After fighting with Zephyr, mcuboot and others, i decided to come back on sdk5 sdk.

I'm working with nrf52833DK and latest sdk5.

I should drag and drop hrs example but it is not present in this version of the sdk, that claim to suport this board in the latest version 16.

How to proceed please ?

Thanks a lot 

  • Hi

    Indeed, we added support for the nRF52833 in the latest SDK, but we have not made all the examples for the nRF52833 as of yet. You should however be able to port the pca10040 example to be compatible with the pca10100. We recommend using the pca10040 example, as the nRF52840 has the CryptoCell which is more complicated to remove than it is to change the pca10040 examples to 10100.

    So to port the pca10040_uart example to run on the pca10100 you will have to do the following changes in the Preprocessor Definitions

    • replace NRF52832_XXAA with NRF52833_XXAA
    • replace BOARD_PCA10040 with BOARD_PCA10100

    Replace the SoftDevice S132 with either S140 or S113.

    Alter the Code > Linker > Section Placement Macros to the correct values according to the SoftDevice you're using.

    Replace ses_startup_nrf52.s with ses_startup_nrf52833.s

    Best regards,

    Simon

  • Thank you Simonr !

    Hi also need to do dfu, i have created another ticket for this one later , may be you can also comment, then i will may be start from the other 10040 dfu example .

    I tried to do the changes, but i don't really understand what kind of value i have to choose for section placmeent macro. I have seens a table with certian value, and on devzone ticket a collaegue of you mention other value. Also there is adresse FLASH_STARTand also FLASH_PH_START.

    In the documentation of dthe device i see nowhere physical adresse of flash or ram ..

    https://devzone.nordicsemi.com/f/nordic-q-a/56155/nrf52833-uart-bootloader

  • Hi again

    The appropriate person will be assigned to your DFU case as well, however, let's keep them separate as it's generally a good idea to keep each ticket to its own topic. You can check out our RAM and Flash memory adjustment guide for what start addresses are needed with various SoftDevices, as well as an introduction into what the various Placement macros are.

    Best regards,

    Simon

  • Hi,

    I followed and read all the tutorial, but i still get always the same errors, and i think some important stuff are missing in the guide. No where i speak about flash or ram size, does it correspond to the 512kB  128kB tht 52833 has ? Also, what is the difference with FLASH_PH_START and what should i place there ? 

    FLASH_PH_START=0x0

    FLASH_PH_SIZE=0x80000

    RAM_PH_START=0x20000000

    RAM_PH_SIZE=0x10000

    FLASH_START=0x1C000

    FLASH_SIZE=0x52000

    RAM_START=0x20001198

    RAM_SIZE=0xdd90

    I get the same error in ble_perpherl_blinky than in ble_app_buttonles_dfu example so i guess i'm doing something wrong in both cases. I have changes all the other setting. I tryed also the debug like in guide but as i can't build i can't use this method yet.

    Here is the result of my build in the consol : UNPLACED_SECTION error

    I flashed previously softdevce with nrfGo, is it there that i can know what adresse have been filled ? also, hw to know where is placed the bootloader ? i (m really lost with all the pieces of memory everywhere lol.

    Thanks a lot for your help

    Building ‘ble_app_buttonless_dfu_pca10100_s113’ from solution ‘ble_app_buttonless_dfu_pca10100_s113’ in configuration ‘Debug’
      Preprocessor Definitions property has changed.
      Assembling ‘thumb_crt0.s’
      Preprocessor Definitions property has changed.
      Compiling ‘nrf_log_backend_rtt.c’
      Preprocessor Definitions property has changed.
      Compiling ‘nrf_log_backend_serial.c’
      Preprocessor Definitions property has changed.
      Compiling ‘nrf_log_backend_uart.c’
      Preprocessor Definitions property has changed.
      Compiling ‘nrf_log_default_backends.c’
      Preprocessor Definitions property has changed.
      Compiling ‘nrf_log_frontend.c’
      Preprocessor Definitions property has changed.
      Compiling ‘nrf_log_str_formatter.c’
      Preprocessor Definitions property has changed.
      Compiling ‘boards.c’
      Preprocessor Definitions property has changed.
      Assembling ‘ses_startup_nrf_common.s’
      Preprocessor Definitions property has changed.
      Preprocessor Definitions property has changed.
      Compiling ‘system_nrf52833.c’
      Assembling ‘ses_startup_nrf52833.s’
      Preprocessor Definitions property has changed.
      Compiling ‘app_button.c’
      Preprocessor Definitions property has changed.
      Compiling ‘app_error.c’
      Preprocessor Definitions property has changed.
      Compiling ‘app_error_handler_gcc.c’
      Preprocessor Definitions property has changed.
      Compiling ‘app_error_weak.c’
      Preprocessor Definitions property has changed.
      Compiling ‘app_scheduler.c’
      Preprocessor Definitions property has changed.
      Compiling ‘app_timer2.c’
      Preprocessor Definitions property has changed.
      Compiling ‘app_util_platform.c’
      Preprocessor Definitions property has changed.
      Compiling ‘crc16.c’
      Preprocessor Definitions property has changed.
      Compiling ‘drv_rtc.c’
      Preprocessor Definitions property has changed.
      Compiling ‘fds.c’
      Preprocessor Definitions property has changed.
      Compiling ‘nrf_assert.c’
      Preprocessor Definitions property has changed.
      Compiling ‘nrf_atfifo.c’
      Preprocessor Definitions property has changed.
      Compiling ‘nrf_atflags.c’
      Preprocessor Definitions property has changed.
      Compiling ‘nrf_atomic.c’
      Preprocessor Definitions property has changed.
      Compiling ‘nrf_balloc.c’
      Preprocessor Definitions property has changed.
      Compiling ‘nrf_fprintf.c’
      Preprocessor Definitions property has changed.
      Compiling ‘nrf_fprintf_format.c’
      Preprocessor Definitions property has changed.
      Compiling ‘nrf_fstorage.c’
      Preprocessor Definitions property has changed.
      Compiling ‘nrf_fstorage_sd.c’
      Preprocessor Definitions property has changed.
      Compiling ‘nrf_memobj.c’
      Preprocessor Definitions property has changed.
      Compiling ‘nrf_pwr_mgmt.c’
      Preprocessor Definitions property has changed.
      Compiling ‘nrf_ringbuf.c’
      Preprocessor Definitions property has changed.
      Compiling ‘nrf_section_iter.c’
      Preprocessor Definitions property has changed.
      Compiling ‘nrf_sortlist.c’
      Preprocessor Definitions property has changed.
      Compiling ‘nrf_strerror.c’
      Preprocessor Definitions property has changed.
      Compiling ‘nrf_drv_clock.c’
      Preprocessor Definitions property has changed.
      Preprocessor Definitions property has changed.
      Compiling ‘nrfx_atomic.c’
      Compiling ‘nrf_drv_uart.c’
      Preprocessor Definitions property has changed.
      Compiling ‘nrfx_clock.c’
      Preprocessor Definitions property has changed.
      Compiling ‘nrfx_gpiote.c’
      Preprocessor Definitions property has changed.
      Compiling ‘nrfx_prs.c’
      Preprocessor Definitions property has changed.
      Compiling ‘nrfx_uart.c’
      Preprocessor Definitions property has changed.
      Compiling ‘nrfx_uarte.c’
      Preprocessor Definitions property has changed.
      Compiling ‘bsp.c’
      Preprocessor Definitions property has changed.
      Compiling ‘bsp_btn_ble.c’
      Preprocessor Definitions property has changed.
      Compiling ‘nrf_dfu_svci.c’
      Preprocessor Definitions property has changed.
      Compiling ‘SEGGER_RTT.c’
      Preprocessor Definitions property has changed.
      Compiling ‘SEGGER_RTT_Syscalls_SES.c’
      Preprocessor Definitions property has changed.
      Compiling ‘SEGGER_RTT_printf.c’
      Preprocessor Definitions property has changed.
      Compiling ‘auth_status_tracker.c’
      Preprocessor Definitions property has changed.
      Compiling ‘ble_advdata.c’
      Preprocessor Definitions property has changed.
      Compiling ‘ble_advertising.c’
      Preprocessor Definitions property has changed.
      Compiling ‘ble_conn_params.c’
      Preprocessor Definitions property has changed.
      Compiling ‘ble_conn_state.c’
      Preprocessor Definitions property has changed.
      Compiling ‘ble_srv_common.c’
      Preprocessor Definitions property has changed.
      Compiling ‘gatt_cache_manager.c’
      Preprocessor Definitions property has changed.
      Compiling ‘gatts_cache_manager.c’
      Preprocessor Definitions property has changed.
      Compiling ‘id_manager.c’
      Preprocessor Definitions property has changed.
      Compiling ‘nrf_ble_gatt.c’
      Preprocessor Definitions property has changed.
      Compiling ‘nrf_ble_qwr.c’
      Preprocessor Definitions property has changed.
      Compiling ‘peer_data_storage.c’
      Preprocessor Definitions property has changed.
      Compiling ‘peer_database.c’
      Preprocessor Definitions property has changed.
      Compiling ‘peer_id.c’
      Preprocessor Definitions property has changed.
      Compiling ‘peer_manager.c’
      Preprocessor Definitions property has changed.
      Compiling ‘peer_manager_handler.c’
      Preprocessor Definitions property has changed.
      Compiling ‘pm_buffer.c’
      Preprocessor Definitions property has changed.
      Compiling ‘security_dispatcher.c’
      Preprocessor Definitions property has changed.
      Compiling ‘security_manager.c’
      Preprocessor Definitions property has changed.
      Compiling ‘ble_dfu.c’
      Preprocessor Definitions property has changed.
      Compiling ‘ble_dfu_bonded.c’
      Preprocessor Definitions property has changed.
      Compiling ‘ble_dfu_unbonded.c’
      Preprocessor Definitions property has changed.
      Compiling ‘nrf_sdh.c’
      Preprocessor Definitions property has changed.
      Compiling ‘nrf_sdh_ble.c’
      Preprocessor Definitions property has changed.
      Compiling ‘nrf_sdh_soc.c’
      Preprocessor Definitions property has changed.
      Compiling ‘main.c’
      Output/Debug/Exe/ble_app_buttonless_dfu_pca10100_s113.elf does not exist.
      Linking ble_app_buttonless_dfu_pca10100_s113.elf
        Output/Debug/Exe/ble_app_buttonless_dfu_pca10100_s113.elf section `.init' will not fit in region `UNPLACED_SECTIONS'
        region `UNPLACED_SECTIONS' overflowed by 97216 bytes
        Output/ble_app_buttonless_dfu_pca10100_s113 Debug/Obj/thumb_crt0.o: in function `memory_set':
        (.init+0xd8): undefined reference to `__stack_end__'
        (.init+0xdc): undefined reference to `__stack_start__'
        (.init+0xe0): undefined reference to `__stack_process_end__'
        (.init+0xe4): undefined reference to `__stack_process_start__'
        (.init+0xe8): undefined reference to `__data_load_start__'
        (.init+0xec): undefined reference to `__data_start__'
        (.init+0xf0): undefined reference to `__data_end__'
        (.init+0xf4): undefined reference to `__text_load_start__'
        (.init+0xf8): undefined reference to `__text_start__'
        (.init+0xfc): undefined reference to `__text_end__'
        (.init+0x100): undefined reference to `__fast_load_start__'
        (.init+0x104): undefined reference to `__fast_start__'
        (.init+0x108): undefined reference to `__fast_end__'
        (.init+0x10c): undefined reference to `__ctors_load_start__'
        (.init+0x110): undefined reference to `__ctors_start__'
        (.init+0x114): undefined reference to `__ctors_end__'
        (.init+0x118): undefined reference to `__dtors_load_start__'
        (.init+0x11c): undefined reference to `__dtors_start__'
        (.init+0x120): undefined reference to `__dtors_end__'
        (.init+0x124): undefined reference to `__rodata_load_start__'
        (.init+0x128): undefined reference to `__rodata_start__'
        (.init+0x12c): undefined reference to `__rodata_end__'
        (.init+0x130): undefined reference to `__tdata_load_start__'
        (.init+0x134): undefined reference to `__tdata_start__'
        (.init+0x138): undefined reference to `__tdata_end__'
        (.init+0x13c): undefined reference to `__bss_start__'
        (.init+0x140): undefined reference to `__bss_end__'
        (.init+0x144): undefined reference to `__tbss_start__'
        (.init+0x148): undefined reference to `__tbss_end__'
        (.init+0x14c): undefined reference to `__heap_start__'
        (.init+0x150): undefined reference to `__heap_end__'
        Output/ble_app_buttonless_dfu_pca10100_s113 Debug/Obj/ses_startup_nrf_common.o: in function `InitializeUserMemorySections':
        (.init+0x50): undefined reference to `__start_nrf_sections'
        (.init+0x54): undefined reference to `__start_nrf_sections_run'
        (.init+0x58): undefined reference to `__end_nrf_sections_run'
        Output/ble_app_buttonless_dfu_pca10100_s113 Debug/Obj/ses_startup_nrf52833.o: in function `_vectors':
        (.vectors+0x0): undefined reference to `__stack_end__'
        Output/ble_app_buttonless_dfu_pca10100_s113 Debug/Obj/drv_rtc.o: in function `drv_rtc_init':
        drv_rtc.c:(.text.drv_rtc_init+0xf0): undefined reference to `__start_log_const_data'
        Output/ble_app_buttonless_dfu_pca10100_s113 Debug/Obj/nrf_log_frontend.o: in function `nrf_log_init':
        nrf_log_frontend.c:(.text.nrf_log_init+0x6c): undefined reference to `__stop_log_const_data'
        nrf_log_frontend.c:(.text.nrf_log_init+0x70): undefined reference to `__start_log_const_data'
        Output/ble_app_buttonless_dfu_pca10100_s113 Debug/Obj/nrf_log_frontend.o: in function `nrf_log_module_cnt_get':
        nrf_log_frontend.c:(.text.nrf_log_module_cnt_get+0xc): undefined reference to `__stop_log_const_data'
        nrf_log_frontend.c:(.text.nrf_log_module_cnt_get+0x10): undefined reference to `__start_log_const_data'
        Output/ble_app_buttonless_dfu_pca10100_s113 Debug/Obj/nrf_log_frontend.o: in function `module_idx_get':
        nrf_log_frontend.c:(.text.module_idx_get+0x60): undefined reference to `__start_log_dynamic_data'
        Output/ble_app_buttonless_dfu_pca10100_s113 Debug/Obj/nrf_log_frontend.o: in function `nrf_log_module_name_get':
        nrf_log_frontend.c:(.text.nrf_log_module_name_get+0x3c): undefined reference to `__start_log_const_data'
        Output/ble_app_buttonless_dfu_pca10100_s113 Debug/Obj/nrf_log_frontend.o: in function `nrf_log_color_id_get':
        nrf_log_frontend.c:(.text.nrf_log_color_id_get+0x6c): undefined reference to `__start_log_const_data'
        Output/ble_app_buttonless_dfu_pca10100_s113 Debug/Obj/nrf_log_frontend.o: in function `nrf_log_frontend_dequeue':
        nrf_log_frontend.c:(.text.nrf_log_frontend_dequeue+0x3a0): undefined reference to `__start_log_const_data'
        Output/ble_app_buttonless_dfu_pca10100_s113 Debug/Obj/nrf_pwr_mgmt.o:(.rodata.pwr_mgmt_data+0x0): undefined reference to `__start_pwr_mgmt_data'
        Output/ble_app_buttonless_dfu_pca10100_s113 Debug/Obj/nrf_pwr_mgmt.o:(.rodata.pwr_mgmt_data+0x4): undefined reference to `__stop_pwr_mgmt_data'
        Output/ble_app_buttonless_dfu_pca10100_s113 Debug/Obj/app_error_weak.o: in function `app_error_fault_handler':
        app_error_weak.c:(.text.app_error_fault_handler+0x144): undefined reference to `__start_log_const_data'
        Output/ble_app_buttonless_dfu_pca10100_s113 Debug/Obj/nrf_sdh.o:(.rodata.sdh_req_observers+0x0): undefined reference to `__start_sdh_req_observers'
        Output/ble_app_buttonless_dfu_pca10100_s113 Debug/Obj/nrf_sdh.o:(.rodata.sdh_req_observers+0x4): undefined reference to `__stop_sdh_req_observers'
        Output/ble_app_buttonless_dfu_pca10100_s113 Debug/Obj/nrf_sdh.o:(.rodata.sdh_state_observers+0x0): undefined reference to `__start_sdh_state_observers'
        Output/ble_app_buttonless_dfu_pca10100_s113 Debug/Obj/nrf_sdh.o:(.rodata.sdh_state_observers+0x4): undefined reference to `__stop_sdh_state_observers'
        Output/ble_app_buttonless_dfu_pca10100_s113 Debug/Obj/nrf_sdh.o:(.rodata.sdh_stack_observers+0x0): undefined reference to `__start_sdh_stack_observers'
        Output/ble_app_buttonless_dfu_pca10100_s113 Debug/Obj/nrf_sdh.o:(.rodata.sdh_stack_observers+0x4): undefined reference to `__stop_sdh_stack_observers'
        Output/ble_app_buttonless_dfu_pca10100_s113 Debug/Obj/nrf_sdh.o: in function `sdh_request_observer_notify':
        nrf_sdh.c:(.text.sdh_request_observer_notify+0xb0): undefined reference to `__start_log_const_data'
        Output/ble_app_buttonless_dfu_pca10100_s113 Debug/Obj/nrf_sdh.o: in function `sdh_state_observer_notify':
        nrf_sdh.c:(.text.sdh_state_observer_notify+0x74): undefined reference to `__start_log_const_data'
        Output/ble_app_buttonless_dfu_pca10100_s113 Debug/Obj/nrf_fstorage.o: in function `nrf_fstorage_init':
        nrf_fstorage.c:(.text.nrf_fstorage_init+0x7c): undefined reference to `__start_log_const_data'
        Output/ble_app_buttonless_dfu_pca10100_s113 Debug/Obj/nrf_fstorage.o: in function `nrf_fstorage_write':
        nrf_fstorage.c:(.text.nrf_fstorage_write+0x198): undefined reference to `__start_log_const_data'
        Output/ble_app_buttonless_dfu_pca10100_s113 Debug/Obj/nrf_fstorage.o: in function `nrf_fstorage_erase':
        nrf_fstorage.c:(.text.nrf_fstorage_erase+0x110): undefined reference to `__start_log_const_data'
        Output/ble_app_buttonless_dfu_pca10100_s113 Debug/Obj/gatt_cache_manager.o:gatt_cache_manager.c:(.text.local_db_apply_in_evt+0x100): more undefined references to `__start_log_const_data' follow
        Output/ble_app_buttonless_dfu_pca10100_s113 Debug/Obj/nrf_sdh_ble.o: in function `nrf_sdh_ble_app_ram_start_get':
        nrf_sdh_ble.c:(.text.nrf_sdh_ble_app_ram_start_get+0x20): undefined reference to `__app_ram_start__'
        Output/ble_app_buttonless_dfu_pca10100_s113 Debug/Obj/nrf_sdh_ble.o: in function `nrf_sdh_ble_default_cfg_set':
        nrf_sdh_ble.c:(.text.nrf_sdh_ble_default_cfg_set+0x1a8): undefined reference to `__start_log_const_data'
        Output/ble_app_buttonless_dfu_pca10100_s113 Debug/Obj/nrf_sdh_ble.o: in function `nrf_sdh_ble_enable':
        nrf_sdh_ble.c:(.text.nrf_sdh_ble_enable+0x110): undefined reference to `__start_log_const_data'
    Build failed

  • Hi Florian

    "No where i speak about flash or ram size, does it correspond to the 512kB  128kB tht 52833 has ?" I'm having some trouble understanding this question, but the FLASH_PH_SIZE and RAM_PH_SIZE are the total Flash and RAM size available, so 512kB Flash and 128kB RAM is correct for the nRF52833.

    The PH parameters mean physical, this is where you define the physical limits of the start and size addresses. FLASH_PH_START would be the physical start address of the application, so 0 should be correct for most projects.

    You can check out the nRFConnect for Desktop Programmer app where you can upload .hex files and see the file memory layout to see what space the different parts (Application, SoftDevice, bootloader) of your project occupy.

    I believe the bootloader questions are answered in your other ticket.

    Best regards,

    Simon

Related