NRF51822 peripheral UART example. SDK 12.1

Hi! I just want  to up uart example with BLE on softdev 130 using  sdk 12.1. On chip NRF51822.  I choose this example:  .../sdk_12_1\examples\peripheral\uart\pca10028\blank\arm5_no_packs.  (10028 use anothe chip 51422 but it close to 51822)

I change the target chip to nrf51822xxAA and adjust addreses ROM and RAM.  The project buit and uploaded without problems. 

In uart terminal i see  "UART Start!" many times. i suppouse that application can not initialize and reboot. Other examples 

built and work fine with this softdev and sdk (i try ble beacon and ble heart rate). Help please with advice - what did i do wrong?

More than week i try to run this example with no success-(.

  • i suppouse that application can not initialize and reboot

    So have you used the debugger to see what, exactly, is happening - and where?

  • i try to add this defines:  NRF_LOG_ENABLED  NRF_LOG_BACKEND_SERIAL_USES_RTT to use logger but build finished with errors:

    .\_build\nrf51422_xxac.axf: Error: L6218E: Undefined symbol nrf_log_blocking_backend_set (referred from app_error_weak.o).
    .\_build\nrf51422_xxac.axf: Error: L6218E: Undefined symbol nrf_log_frontend_dequeue (referred from app_error_weak.o).
    .\_build\nrf51422_xxac.axf: Error: L6218E: Undefined symbol nrf_log_frontend_std_0 (referred from app_error_weak.o).
    .\_build\nrf51422_xxac.axf: Error: L6218E: Undefined symbol nrf_log_frontend_std_1 (referred from softdevice_handler.o).
    .\_build\nrf51422_xxac.axf: Error: L6218E: Undefined symbol nrf_log_frontend_std_2 (referred from softdevice_handler.o).
    Not enough information to list image symbols.
    Not enough information to list load addresses in the image map.

  • Increasing memory give a good result. I see Nordic_uart device when scan with nrfConnect app. But service did not discovering.    Now RAM settings is : START:  0x20002000   Size: 0x2000

  • Start the J-Link RTT Viewer and connect with the controller. After this you can see what is happening in the controller.

  • Unfortunatelly example "peripherial - uart" compiled with errors if i turn On RTT logging   .  And i can not resolve it in this moment. 

    ..\..\..\..\..\..\components\libraries\log\src\nrf_log_backend_serial.c(31): error:  #20: identifier "NRF_LOG_BACKEND_MAX_STRING_LENGTH" is undefined

    I suppouse that this example can not use logger module.   In sdk config.h  no logger section ( i compare this file with hrs example in hrs example logger work fine)/ Does anybody have working example for nrf51822  uart peripherial service?

  • I don't use the nRF51822 , so I can't help you with that.
    But it looks like you enabled the NRF_LOG_BACKEND_UART_ENABLED option in sdk_config.h

  • In this example (UART) no option  for enable RTT log if i turn it ON manualy (add  NRF_LOG_BACKEND_SERIAL_USES_RTT  NRF_LOG_ENABLED ) i got many errors

Reply Children
No Data