MESH CHAT

Hi nordic:

    I use two NRF52DKs and download MESH CHAT separately, hoping to achieve communication between the two NRF52DKs:

   SOFT VER: NCS2.8

  The specific process is as follows: 

  NRF MESH Network Add Node, select mesh chat:

Elements Disp No elements were found

Where did I not set it correctly?

 best regards

jermi

Parents Reply
  • I am using:

    A custom PCB board that includes RAK4630, nrf52840 with NCS Version 2.2.0

    I edit the code in a way to remove the DK functions and lib so I can run the mesh and provisioning but it returns a Get Composition Data Timeout.

    I also have an nrf52840-Dongle that I used to sniff the packets with Wireshark and noticed some errors. See the log attached.

    Thank you for your help  

    #include <ncs_version.h>
    printk("NCS Version: %s\n", NCS_VERSION_STRING);
    // NCS Version: 2.2.0


    https://we.tl/t-Jdve90ix0q

Children
  • I am not able to reproduce it on my DK, even with the hex file from your build folder. Can you check the logs from the nRF52832/nRF52840? Does that say anything when it fails?

    Dazz_ said:
    I also have an nrf52840-Dongle that I used to sniff the packets with Wireshark and noticed some errors

    What errors specifically? What packet numbers are you referring to?

    BR,
    Edvin

  • Hi  ,

    Did you try to use my same NCS version? 

    This is the link in which you can download the log relative to the sniffed packets using WireShark: https://we.tl/t-Jdve90ix0q

    If you do not want to download it I can attach some screenshot at the end of this message.

    Also, this is my prj.conf file:

    Which logs options do you want me to enable that will help you to understand better the issue?

    # # Enable East sensors
    CONFIG_SENSOR=y
    
    # Enable RTT logging and logs
    CONFIG_USE_SEGGER_RTT=y
    CONFIG_RTT_CONSOLE=y
    CONFIG_LOG=y
    CONFIG_CONSOLE=y
    
    # Config file from zaphyr/samples/bluetooth/mesh
    # CONFIG_MAIN_STACK_SIZE=2048
    CONFIG_SYSTEM_WORKQUEUE_STACK_SIZE=2048
    
    CONFIG_BT_SETTINGS=y
    CONFIG_FLASH=y
    CONFIG_FLASH_MAP=y
    CONFIG_NVS=y
    CONFIG_SETTINGS_NVS=y
    CONFIG_SETTINGS=y
    CONFIG_HWINFO=y
    
    CONFIG_BT=y
    CONFIG_BT_DEVICE_NAME="Node"
    CONFIG_BT_L2CAP_TX_BUF_COUNT=8
    CONFIG_BT_PERIPHERAL=y
    CONFIG_BT_OBSERVER=y
    CONFIG_BT_BROADCASTER=y
    
    CONFIG_BT_CTLR_DUP_FILTER_LEN=0
    CONFIG_BT_CTLR_LE_ENC=n
    CONFIG_BT_CTLR_LE_PING=n
    CONFIG_BT_DATA_LEN_UPDATE=n
    CONFIG_BT_PHY_UPDATE=n
    CONFIG_BT_CTLR_MIN_USED_CHAN=n
    CONFIG_BT_CTLR_PRIVACY=n
    CONFIG_BT_CTLR_CHAN_SEL_2=n
    
    CONFIG_BT_MESH=y
    CONFIG_BT_MESH_MODEL_EXTENSIONS=y
    CONFIG_BT_MESH_RELAY=y
    CONFIG_BT_MESH_FRIEND=y
    CONFIG_BT_MESH_PB_ADV=y
    
    CONFIG_BT_MESH_PB_GATT=y
    CONFIG_BT_MESH_GATT_PROXY=y
    CONFIG_BT_MESH_GATT_PROXY_ENABLED=y
    CONFIG_BT_MESH_PB_GATT_CLIENT=y
    
    CONFIG_BT_MAX_CONN=3
    CONFIG_BT_MESH_TX_SEG_MAX=10
    # CONFIG_BT_MESH_RX_SEG_MAX=10
    CONFIG_BT_MESH_ADV_BUF_COUNT=13
    
    CONFIG_BT_EXT_ADV=y
    CONFIG_BT_EXT_ADV_MAX_ADV_SET=5
    
    CONFIG_BT_MESH_PROXY_USE_DEVICE_NAME=y
    CONFIG_BT_MESH_CFG_CLI=y
    CONFIG_BT_MESH_DEFAULT_TTL=3
    
    
    # CONFIG_BT_MESH_SUBNET_COUNT=2
    # CONFIG_BT_MESH_APP_KEY_COUNT=2
    # CONFIG_BT_MESH_MODEL_GROUP_COUNT=2
    # CONFIG_BT_MESH_LABEL_COUNT=3
    
    ## LOGS OPTIONS:
    #CONFIG_BT_MESH_LOG_LEVEL_DBG=y
    #CONFIG_BT_MESH_NET_LOG_LEVEL_DBG=y
    #CONFIG_BT_MESH_PROXY_LOG_LEVEL_DBG=y
    #CONFIG_BT_MESH_TRANS_LOG_LEVEL_DBG=y
    #CONFIG_BT_MESH_LOG_LEVEL_DBG=y
    #CONFIG_BT_MESH_BEACON_LOG_LEVEL_DBG=y
    #CONFIG_BT_MESH_CRYPTO_LOG_LEVEL_DBG=y
    #CONFIG_BT_MESH_ADV_LOG_LEVEL_DBG=y
    #CONFIG_BT_MESH_ACCESS_LOG_LEVEL_DBG=y
    CONFIG_BT_DEBUG_LOG=y
    CONFIG_BT_MESH_DEBUG=y
    CONFIG_BT_MESH_DEBUG_PROXY=y
    # CONFIG_BT_DEBUG_CONN=y
    # CONFIG_BT_DEBUG_ATT=y
    # CONFIG_BT_DEBUG_GATT=y
    # CONFIG_BT_LOG_LEVEL_DBG=y
    CONFIG_BT_DEBUG_SMP=y
    # CONFIG_BT_MESH_DEBUG_TRANS=y
    # CONFIG_BT_MESH_DEBUG_PROV=y
    



    Pics legend:
    1. Before Confirm Provisioning

    2. After Provisioned complete

    3. Request Composition data timeout

    The network provisioner is my iPhone (iOS 18.3) with nRF Mesh App (v4.2.0)








    Thank you for your time!

  • Hi Edvin:

        What version of NRF MESH are you using ,The version I am using。

    jermi

  • Dazz_ said:
    Did you try to use my same NCS version? 

    I tested both v2.2.0 and v2.8.0. 

    jermi said:
    What version of NRF MESH are you using

    I am using nRF Mesh version 4.2.0 (iOS), but my colleague also tested using 3.3.3 on Android, without issues. 

    The sniffer trace packets that you refer to are:

    177: Just a malformed advertisement packet. Lost probably due to noisy environment. No big deal, and it happens all the time. This was before connecting to the phone.

    1903: Just some BLE packet with mesh information. Nothing wrong with that packet (just that the sniffer doesn't have the correct keys to decrypt the content). 

    1922: That may be a bug in the sniffer. However, it is just a channel map update from the phone. Since the devices are still connected after this, it seems that both devices uses the new channel map. The same is the case for the 1290 packet, so I believe this is fine. 

    I do believe that what you are seeing is an issue, but I am not sure how to reproduce it, and hence not able to investigate it. I remember seeing something similar at one point, but then the issue was to make sure the phone was connected to a node in the network. In the iOS app, this is configured in the "proxy" tab. "Automatic Connection" was not turned on for some reason. When it fails, look in this tab to see if you are still connected to a node in the network. 

    Best regards,

    Edvin

  • Hi  

    Thank you for your explanation.

    Yes after seeing "Provisioning Success" on the app I get stuck on "Status: Requesting Composition Data" and after a bit fail with the "Error: Requested Timed Out", but if I go to the "Proxy" tab, the node is connected. And if I remove the automatic connection, click on Disconnect, and then search for a Proxy node, using the + symbol, I can see the previous provisioned node. But it still cannot get the Composition Data, nor associate an Application Key.

    I also tried to go on the Node tab and then select Reset Node, it returned "Status: Resetting node...", and after a bit, I got "Error: Requested Timed Out". Thinking

    Which configuration should I enable on the node to help troubleshoot this issue? Thank you again! 

    This is a snippet from the code in the past message:

    ## LOGS OPTIONS:
    #CONFIG_BT_MESH_LOG_LEVEL_DBG=y
    #CONFIG_BT_MESH_NET_LOG_LEVEL_DBG=y
    #CONFIG_BT_MESH_PROXY_LOG_LEVEL_DBG=y
    #CONFIG_BT_MESH_TRANS_LOG_LEVEL_DBG=y
    #CONFIG_BT_MESH_LOG_LEVEL_DBG=y
    #CONFIG_BT_MESH_BEACON_LOG_LEVEL_DBG=y
    #CONFIG_BT_MESH_CRYPTO_LOG_LEVEL_DBG=y
    #CONFIG_BT_MESH_ADV_LOG_LEVEL_DBG=y
    #CONFIG_BT_MESH_ACCESS_LOG_LEVEL_DBG=y
    CONFIG_BT_DEBUG_LOG=y
    CONFIG_BT_MESH_DEBUG=y
    CONFIG_BT_MESH_DEBUG_PROXY=y
    # CONFIG_BT_DEBUG_CONN=y
    # CONFIG_BT_DEBUG_ATT=y
    # CONFIG_BT_DEBUG_GATT=y
    # CONFIG_BT_LOG_LEVEL_DBG=y
    CONFIG_BT_DEBUG_SMP=y
    # CONFIG_BT_MESH_DEBUG_TRANS=y
    # CONFIG_BT_MESH_DEBUG_PROV=y


              



Related