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

Including nRF5 SDK for Mesh functionality in an nRF5 SDK example

Hello,


I'm integrating Nordic Mesh SDK into nRF5_SDK_15.2. I have following following guide for this:


https://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.meshsdk.v3.2.0%2Fmd_doc_getting_started_how_to_nordicSDK.html


After completing all the steps, the compiler shows following errors. I'm unable to locate the cause of error. It seems there are several constants related to
flash storage that are declared somewhere (or need to be declared). I'm not sure where they are declared or where to declare them. Can anybody please guide me?

Fullscreen
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
Building ‘project’ from solution ‘project’ in configuration ‘Debug’
'Output/project Debug/Obj/thumb_crt0.o' is up to date
'Output/project Debug/Obj/nrf_log_backend_rtt.o' is up to date
'Output/project Debug/Obj/nrf_log_backend_serial.o' is up to date
'Output/project Debug/Obj/nrf_log_backend_uart.o' is up to date
'Output/project Debug/Obj/nrf_log_default_backends.o' is up to date
'Output/project Debug/Obj/nrf_log_frontend.o' is up to date
'Output/project Debug/Obj/nrf_log_str_formatter.o' is up to date
'Output/project Debug/Obj/app_button.o' is up to date
'Output/project Debug/Obj/app_error.o' is up to date
'Output/project Debug/Obj/app_error_handler_gcc.o' is up to date
'Output/project Debug/Obj/app_error_weak.o' is up to date
'Output/project Debug/Obj/app_scheduler.o' is up to date
'Output/project Debug/Obj/app_timer.o' is up to date
'Output/project Debug/Obj/app_util_platform.o' is up to date
'Output/project Debug/Obj/crc16.o' is up to date
'Output/project Debug/Obj/fds.o' is up to date
'Output/project Debug/Obj/hardfault_implementation.o' is up to date
'Output/project Debug/Obj/nrf_assert.o' is up to date
'Output/project Debug/Obj/nrf_atfifo.o' is up to date
'Output/project Debug/Obj/nrf_atflags.o' is up to date
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Parents
  • Hi Aftab, 

    Maybe it's easier that you use our ready made example in the Mesh SDK ? 

    We provided co-exist example located in \Mesh_v3.2.0\examples\sdk_coexist . You can find the documentation here

  • I have tested the "ble_app_uart_coexist" successfully. But I want to integrate mesh into our previously developed app based on nRF5_SDK_15. So basically I followed the above mentioned guide to add mesh into my app. However, having issues detailed above. I wonder what am I missing, may not mentioned in the said guide?

  • Hi Aftab, 

    Unfortunately we don't have an example to provide you that has both proxy and BLE feature. 

    When you get an error, you would need to look into the error log and fix the error.

    For example the nrf_mesh_prov_bearer_gatt_interface_get() function is defined in nrf_mesh_prov_bearer_gatt.c , you need to include the file. 

  • Hi Hung, a friendly feedback- Please include the coexist example for nRF52840 and with PB-Gatt & proxy features enabled by default. Going by the devzone posts that I recently came across, it looks like developers(including me) are looking for that option. Are there plans to include such an example given that it is not a straight-forward process?

    Thank you

    -Kunal

  • Hi Kunal, 

    Thanks for your feedback. I will report request to the team to add this feature to the example in future SDK. 

    Will try to add the feature myself, I can't guarantee when it will be ready though. 

  • Yes, please. Thank you Hung

  • Hi again, 

    I just modified the example in nRF Mesh SDK v4.0 (nRF5 SDK v16) to allow PBGATT provisioning and GATT proxy with UART. It's simply a quick modification, not properly tested. What I did beside adding proxy is to remove the nrf_ble_gatt library (MTU is handled by the mesh gatt library) and adding the NUS service re-initialization after provisioning ( check the call NUS_init() inside sd_state_evt_handler() in mesh_provisionee.c)

    It's for nRF52832 but it shouldn't be difficult to convert to nRF52840 (use any text editor to compare the NRF52840 project file and nRF52832 project file (in other mesh example) using notepad++ for example and apply the same to the current project). 

    https://devzone.nordicsemi.com/cfs-file/__key/support-attachments/beef5d1b77644c448dabff31668f3a47-ae434737da144730ba1ede90f6896562/4784.ble_5F00_app_5F00_uart_5F00_coexist_5F00_GATT.zip



    Update: here is the same application but updated for Mesh SDK v5.0 and nRF5 SDK v17.x

    3755.ble_app_uart_coexist_GATT_SDK5.0.zip

Reply Children
  • What should be the values of following variables, the compiler was giving undefined variable error in the mesh_main.c file, so I define in the file. But what should be the values:

    #define APP_CONFIG_ONOFF_DELAY_MS 1
    #define APP_CONFIG_ONOFF_TRANSITION_TIME_MS 1

  • Moreover, I have converted it for nRF52840, the project compiles but code does not run on hardware. Here is my project:

    ble_app_uart_coexist_GATT.zip

  • APP_CONFIG_ONOFF_DELAY_MS  and APP_CONFIG_ONOFF_TRANSITION_TIME_MS is defined inside app_config.h in \examples\light_switch\client\include

    When you see it doesn't work, you need to debug it. It's not a black box.