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

Thingy:52 Mesh Network

Hello! I would like to implement a mesh network with some Thingy:52 boards. I have the following approach and I would need some general guidance for my next step, if it is possible. 

My idea: I want to implement a communication between my phone and a development kit through a mesh network, formed of Thingy:52 devices. 

My approach: For this, my idea would be the following: I started with a working example between my phone & the nRF 52840 board. I decided to go with the BLE Blinky Application, since it is quite straight-forward.

Question 1. Now, I am thinking how to integrate the Thingys:52 into my set-up, in order to build the mesh in-between. What kind of example should I start from? Do you have any suggestions?

Question 2. I read in some posts that the Thingys:52 should have this relay feature enabled by default, but I would like to know how is that made (i.e. in what function and/or what source code).

Thank you in advance and have a great week,

Marry

Parents Reply Children
  • Hi Joakim & thanks for replying me! 

    changes to the example

    - yes, exactly, but I was not sure how I should actually 'combine' them, because the codes are quite big and interdependent. 

    this site

    - ok, this looks very promising, I will try it and come back in a few days if I encounter some problems. 

    Thanks a lot! 

  • Hello! I followed your advice & this link. Thank you!! But there are a lot of things which are not clear to me:

    1. First:

    Including nRF5 SDK in an nRF5 SDK for Mesh example

    Depending on your toolchain:

    • When using Segger Embedded Studio, add code files and include paths to the corresponding SES project file.

    - I do not understand specifically what I actually have to do.

    2. Second, 

    Including nRF5 SDK for Mesh functionality in an nRF5 SDK example

    1. Include the following source files from nRF5 SDK for Mesh in the nRF5 SDK example's project file:

    - where should these files be "included"? Should I just copy paste the folders from the Mesh Folder to the main folder of the DK application? 

    3. Same question for  step 2:

    2. Add the following folders to the project include path of the nRF5 SDK example

    - should I do some modifications in the code or just move some folders?

    Sorry if the question is basic, but I am trying my best to understand this Slight smile

    Have a great day!

  • Hi.

    Marry said:
    Include the following source files from nRF5 SDK for Mesh in the nRF5 SDK example's project file

     The source files can be added directly to your project in the project explorer.

    This video on youtube explains how this can be done in SES:
    https://www.youtube.com/watch?v=t-kh1EbesvI&list=PLx_tBuQ_KSqGHmzdEL2GWEOeix-S5rgTV&index=7&t=0s

     

    Marry said:
    Add the following folders to the project include path of the nRF5 SDK example

     You can add the needed folders in the User include directories;
    Select your project -> Go to project -> Options -> Select Preprocessor and add the folders to the User include directories.

    I suggest that you take a look at the tutorial series that I linked above. It contains a lot of useful information about how to use the nRF5 SDK with SES.

    Br,
    Joakim

  • Hello 

    tutorial series that I linked above

    Thank you very much - I watched all of them and they are indeed life savers. 

    I have the following question now: after proceeding with all steps, I get this error 

    Building ‘ble_app_blinky_pca10056_s140’ from solution ‘ble_app_blinky_pca10056_s140’ in configuration ‘Release’
      Compiling ‘nrf_sdh_ble.c’
      Compiling ‘nrf_sdh.c’
      Compiling ‘access.c’
        nrf_mesh_config_core.h
        nrf_mesh.h
        device_state_manager.h
        access.h
        access.c
        #error "This file should be copied, not included."
        device_state_manager.h
        access.h
        access.c
        #error "This file should be copied, not included."
        utils.h
        access_internal.h
        access.c
        'ACCESS_FLASH_PAGE_COUNT' undeclared here (not in a function); did you mean 'NET_FLASH_PAGE_COUNT'?
        in definition of macro '_SELECT_ASSERT_FUNC'
        in expansion of macro 'STATIC_ASSERT_SIMPLE'
        in expansion of macro 'STATIC_ASSERT'
        in expansion of macro 'NRF_MESH_STATIC_ASSERT'
        expression in static assertion is not an integer
        in definition of macro '_SELECT_ASSERT_FUNC'
        in expansion of macro 'STATIC_ASSERT_SIMPLE'
        in expansion of macro 'STATIC_ASSERT'
        in expansion of macro 'NRF_MESH_STATIC_ASSERT'
        in expansion of macro 'FLASH_MANAGER_PAGE_COUNT_MINIMUM'
      Compiling ‘nrf_sdh_soc.c’
      Compiling ‘access_publish_retransmission.c’
        nrf_mesh_config_core.h
        nrf_mesh.h
        device_state_manager.h
        access.h
        access_publish_retransmission.h
        access_publish_retransmission.c
        #error "This file should be copied, not included."
        device_state_manager.h
        access.h
        access_publish_retransmission.h
        access_publish_retransmission.c
        #error "This file should be copied, not included."
      Compiling ‘access_reliable.c’
        nrf_mesh_config_core.h
        nrf_mesh.h
        device_state_manager.h
        access.h
        access_reliable.h
        access_reliable.c
        #error "This file should be copied, not included."
        device_state_manager.h
        access.h
        access_reliable.h
        access_reliable.c
        #error "This file should be copied, not included."
        access_reliable.c
        #error "This file should be copied, not included."
      Compiling ‘access_publish.c’
        nrf_mesh_config_core.h
        nrf_mesh.h
        device_state_manager.h
        access.h
        access_publish.h
        access_publish.c
        #error "This file should be copied, not included."
        device_state_manager.h
        access.h
        access_publish.h
        access_publish.c
        #error "This file should be copied, not included."
      Compiling ‘ad_listener.c’
        nrf_mesh_config_core.h
        nrf_mesh.h
        nrf_mesh_assert.h
        list.h
        ad_listener.h
        ad_listener.c
        #error "This file should be copied, not included."
    Build failed
    Do you know what I should look into? I am clueless. 

  • This error comes from nrf_mesh_config_app.h, in the first lines of code:

    #ifndef _lint
    #error "This file should be copied, not included."
    #endif

    But I cannot find where _lint is defined or set. 

Related