Beware that this post is related to an SDK in maintenance mode
More Info: Consider nRF Connect SDK for new designs

ble_app_uart won't advertise as coded from example set

Hello, I am currently trying to program the uart example code from the nRF5_SDK_12.3.0_d7731ad zip file. After dealing with various reference address and device package issues, I am now able to flash the softdevice and progam sets to the chip. However, the chip is not advertising and it does work with the premade hex file. At this point I have no idea what could be wrong, the only noticible difference between the hex file layout in nRF Connect and the flashed softdevice and code from Kiel 5 is shown in the attached image, with hex file on the left covers the register address from 0 to 0x0001E3F7 while the flashed program from Keil goes from 0 to 0x0001E3FF. Other than that the recovery error is shown in the command window, but this occured even for the hex file which would advertise so I am unsure how to proceed.

  • Hello Simonr,

    I have downloaded a new SDK file, updated the packs and paths as needed and still no results. Still shows no errors and downloads fine. I had tried it before but did it again in hopes that would solve it. I really have no idea whats going on with it at this point. attahed are the flash and build logs for the newest attempt.

    µVision Build Log
    
    Tool Versions:
    
    IDE-Version: µVision V5.37.0.0
    Copyright (C) 2022 ARM Ltd and ARM Germany GmbH. All rights reserved.
    License Information: Alexandre Tessier, Queen's University, LIC=----
     
    Tool Versions:
    Toolchain:       MDK-Lite  Version: 5.37.0.0
    Toolchain Path:  C:\ncs\ARM\ARM_Compiler_5.06u7\Bin
    C Compiler:      Armcc.exe V5.06 update 7 (build 960)
    Assembler:       Armasm.exe V5.06 update 7 (build 960)
    Linker/Locator:  ArmLink.exe V5.06 update 7 (build 960)
    Library Manager: ArmAr.exe V5.06 update 7 (build 960)
    Hex Converter:   FromElf.exe V5.06 update 7 (build 960)
    CPU DLL:         SARMCM3.DLL V5.37.0.0
    Dialog DLL:      DARMCM1.DLL V1.19.6.0
    Target DLL:      Segger\JL2CM3.dll V2.99.42.0
    Dialog DLL:      TARMCM1.DLL V1.14.6.0
     
    Project:
    
    C:\ncs\nRF5_SDK_12.3.0_d7731ad\examples\ble_peripheral\ble_app_uart\pca10028\s130\arm5_no_packs\ble_app_uart_pca10028_s130.uvprojx
    Project File Date:  09/15/2022
    
    Output:
    
    *** Using Compiler 'V5.06 update 7 (build 960)', folder: 'C:\ncs\ARM\ARM_Compiler_5.06u7\Bin'
    Rebuild target 'nrf51422_xxac'
    compiling bsp_nfc.c...
    compiling boards.c...
    compiling bsp_btn_ble.c...
    compiling ble_nus.c...
    compiling bsp.c...
    compiling ble_srv_common.c...
    compiling ble_conn_params.c...
    compiling ble_advdata.c...
    compiling ble_advertising.c...
    compiling nrf_drv_clock.c...
    compiling main.c...
    compiling nrf_drv_common.c...
    compiling app_error_weak.c...
    compiling app_fifo.c...
    compiling app_error.c...
    compiling app_util_platform.c...
    compiling app_button.c...
    compiling sdk_errors.c...
    compiling app_uart_fifo.c...
    compiling nrf_drv_gpiote.c...
    compiling app_timer.c...
    compiling RTT_Syscalls_KEIL.c...
    compiling nrf_drv_uart.c...
    compiling fstorage.c...
    compiling SEGGER_RTT_printf.c...
    compiling hardfault_implementation.c...
    assembling arm_startup_nrf51.s...
    compiling nrf_assert.c...
    compiling nrf_log_backend_serial.c...
    compiling nrf_log_frontend.c...
    compiling retarget.c...
    compiling SEGGER_RTT.c...
    compiling system_nrf51.c...
    compiling softdevice_handler.c...
    linking...
    Program Size: Code=12748 RO-data=368 RW-data=212 ZI-data=3684  
    FromELF: creating hex file...
    ".\_build\nrf51422_xxac.axf" - 0 Error(s), 0 Warning(s).
    
    Software Packages used:
    
    
    Package Vendor: ARM
                    http://www.keil.com/pack/ARM.CMSIS.4.5.0.pack
                    ARM.CMSIS.4.5.0
                    CMSIS (Cortex Microcontroller Software Interface Standard)
       * Component: CORE Version: 4.3.0
    
    Package Vendor: NordicSemiconductor
                    http://developer.nordicsemi.com/nRF5_SDK/pieces/nRF_DeviceFamilyPack/NordicSemiconductor.nRF_DeviceFamilyPack.8.44.1.pack
                    NordicSemiconductor.nRF_DeviceFamilyPack.8.44.1
                    Nordic Semiconductor nRF ARM devices Device Family Pack with BSD license.
       * Component: Startup Version: 8.44.1
       * Component: StartupConfig Version: 8.44.1
    
    Collection of Component include folders:
    
      ./RTE/Device/nRF51422_xxAC
      ./RTE/_nrf51422_xxac
      C:/Users/Alexa/AppData/Local/Arm/Packs/ARM/CMSIS/4.5.0/CMSIS/Include
      C:/Users/Alexa/AppData/Local/Arm/Packs/NordicSemiconductor/nRF_DeviceFamilyPack/8.44.1/Device/Include
    
    Collection of Component Files used:
    
    
       * Component: ARM::CMSIS:CORE:4.3.0
    
       * Component: NordicSemiconductor::Device:Startup:8.44.1
          Source file:   Device/Source/system_nrf51.c
          Include file:  Device/Include/system_nrf51.h
          Include file:  Device/Include/system_nrf.h
          Source file:   Device/Source/arm/arm_startup_nrf51.s
    
       * Component: NordicSemiconductor::Device:StartupConfig:8.44.1
          Include file:  Device/Source/startup_config.h
    Build Time Elapsed:  00:00:02
    Load "C:\\ncs\\nRF5_SDK_12.3.0_d7731ad\\examples\\ble_peripheral\\ble_app_uart\\pca10028\\s130\\arm5_no_packs\\_build\\nrf51422_xxac.axf" 
    Set JLink Project File to "C:\ncs\nRF5_SDK_12.3.0_d7731ad\examples\ble_peripheral\ble_app_uart\pca10028\s130\arm5_no_packs\JLinkSettings.ini"
    * JLink Info: Device "NRF51422_XXAC" selected.
     
    JLink info:
    ------------
    DLL: V7.66a, compiled May 19 2022 15:13:27
    Firmware: J-Link OB-SAM3U128-V2-NordicSemi compiled Jan 20 2022 16:43:31
    Hardware: V1.00
    S/N : 681222439 
    Feature(s) : RDI, FlashBP, FlashDL, JFlash, GDB 
     
    * JLink Info: Found SW-DP with ID 0x0BB11477
    * JLink Info: DPIDR: 0x0BB11477
    * JLink Info: CoreSight SoC-400 or earlier
    * JLink Info: Scanning AP map to find all available APs
    * JLink Info: AP[1]: Stopped AP scan as end of AP map has been reached
    * JLink Info: AP[0]: AHB-AP (IDR: 0x04770021)
    * JLink Info: Iterating through AP map to find AHB-AP to use
    * JLink Info: AP[0]: Core found
    * JLink Info: AP[0]: AHB-AP ROM base: 0xF0000000
    * JLink Info: CPUID register: 0x410CC200. Implementer code: 0x41 (ARM)
    * JLink Info: Found Cortex-M0 r0p0, Little endian.
    * JLink Info: FPUnit: 4 code (BP) slots and 0 literal slots
    * JLink Info: CoreSight components:
    * JLink Info: ROMTbl[0] @ F0000000
    * JLink Info: [0][0]: E00FF000 CID B105100D PID 000BB471 ROM Table
    * JLink Info: ROMTbl[1] @ E00FF000
    * JLink Info: [1][0]: E000E000 CID B105E00D PID 000BB008 SCS
    * JLink Info: [1][1]: E0001000 CID B105E00D PID 000BB00A DWT
    * JLink Info: [1][2]: E0002000 CID B105E00D PID 000BB00B FPB
    * JLink Info: [0][1]: F0002000 CID B105900D PID 000BB9A3 ???
    ROMTableAddr = 0xF0000000
    * JLink Info: Reset: Halt core after reset via DEMCR.VC_CORERESET.
    * JLink Info: Reset: Reset device via AIRCR.SYSRESETREQ.
     
    Target info:
    ------------
    Device: nRF51422_xxAC
    VTarget = 3.300V
    State of Pins: 
    TCK: 0, TDI: 1, TDO: 1, TMS: 1, TRES: 1, TRST: 1
    Hardware-Breakpoints: 4
    Software-Breakpoints: 8192
    Watchpoints:          2
    JTAG speed: 1000 kHz
     
    Erase Done.
    Programming Done.
    Verify OK.
    * JLink Info: Reset: Halt core after reset via DEMCR.VC_CORERESET.
    * JLink Info: Reset: Reset device via AIRCR.SYSRESETREQ.
    Application running ...
    Flash Load finished at 15:07:59
    Load "..\\..\\..\\..\\..\\..\\components\\softdevice\\s130\\hex\\s130_nrf51_2.0.1_softdevice.hex" 
    Set JLink Project File to "C:\ncs\nRF5_SDK_12.3.0_d7731ad\examples\ble_peripheral\ble_app_uart\pca10028\s130\arm5_no_packs\JLinkSettings.ini"
    * JLink Info: Device "NRF51422_XXAC" selected.
     
    JLink info:
    ------------
    DLL: V7.66a, compiled May 19 2022 15:13:27
    Firmware: J-Link OB-SAM3U128-V2-NordicSemi compiled Jan 20 2022 16:43:31
    Hardware: V1.00
    S/N : 681222439 
    Feature(s) : RDI, FlashBP, FlashDL, JFlash, GDB 
     
    * JLink Info: Found SW-DP with ID 0x0BB11477
    * JLink Info: DPIDR: 0x0BB11477
    * JLink Info: CoreSight SoC-400 or earlier
    * JLink Info: Scanning AP map to find all available APs
    * JLink Info: AP[1]: Stopped AP scan as end of AP map has been reached
    * JLink Info: AP[0]: AHB-AP (IDR: 0x04770021)
    * JLink Info: Iterating through AP map to find AHB-AP to use
    * JLink Info: AP[0]: Core found
    * JLink Info: AP[0]: AHB-AP ROM base: 0xF0000000
    * JLink Info: CPUID register: 0x410CC200. Implementer code: 0x41 (ARM)
    * JLink Info: Found Cortex-M0 r0p0, Little endian.
    * JLink Info: FPUnit: 4 code (BP) slots and 0 literal slots
    * JLink Info: CoreSight components:
    * JLink Info: ROMTbl[0] @ F0000000
    * JLink Info: [0][0]: E00FF000 CID B105100D PID 000BB471 ROM Table
    * JLink Info: ROMTbl[1] @ E00FF000
    * JLink Info: [1][0]: E000E000 CID B105E00D PID 000BB008 SCS
    * JLink Info: [1][1]: E0001000 CID B105E00D PID 000BB00A DWT
    * JLink Info: [1][2]: E0002000 CID B105E00D PID 000BB00B FPB
    * JLink Info: [0][1]: F0002000 CID B105900D PID 000BB9A3 ???
    ROMTableAddr = 0xF0000000
    * JLink Info: Reset: Halt core after reset via DEMCR.VC_CORERESET.
    * JLink Info: Reset: Reset device via AIRCR.SYSRESETREQ.
     
    Target info:
    ------------
    Device: nRF51422_xxAC
    VTarget = 3.300V
    State of Pins: 
    TCK: 0, TDI: 1, TDO: 1, TMS: 1, TRES: 1, TRST: 1
    Hardware-Breakpoints: 4
    Software-Breakpoints: 8192
    Watchpoints:          2
    JTAG speed: 1000 kHz
     
    Erase Done.
    Programming Done.
    Verify OK.
    * JLink Info: Reset: Halt core after reset via DEMCR.VC_CORERESET.
    * JLink Info: Reset: Reset device via AIRCR.SYSRESETREQ.
    Application running ...
    Flash Load finished at 15:08:55

    Sincerely,

    Alexandre Tessier

  • Hi again

    I have discussed this issue with my colleagues and we're not sure what could cause this.

    I think you will have to debug this on your end since we're able to run the ble_app_uart project on our end programmed with Keil. Make sure that logging is enabled in the sdk_config.h header file so you're sure you can see the debug log either over UART or RTT. There must be a crash somewhere before the advertising starts since you're not able to see it sniffing when flashing it. As far as I can see both build and flash logs are correct in your latest attempt.

    You can also try flashing the SoftDevice before the application if you haven't although I don't think the order should affect the application.

    Best regards,

    Simon

  • Hello Simonr,

    Still working on it, will try a different computer to see if that helps. In passing, if I pass an anolog signal with a positive to negative bias, has that been known to cause the system to crash?

    Sincerely,

    Alexandre Tessier

  • Hi

    No, an analog signal from positive to negative bias should not crash an nRF5x DK, so that should not be it. Let me know how it goes with this new computer. Did you not have any luck debugging on your end?

    Best regards,

    Simon

  • Hello Simon,

    Still no luck, however I have started up the process on the lab computer and an potentially intersting development has arose. Following the setup instructions, I used the perliphery example Blinky hex file blinky_pca10028.hex. This worked as intended with the cycling of the four LEDs. However, I then changed the file to blinky_pca10028_s130.hex to include the Softdevice. This caused the LED's to stop working. Is this a different program similar to the experimental_ble_app_blinky_pca10028_s130.hex or should it still run like the previous hex file?

    Sincerely,

    Alexandre Tessier

Related