BLE Mesh Sensor Model issue 2

Hi everyone,


I have a preblem for BLE Mesh 5.0 version (board is nrf52840),

I found that in the Setting set function of the Sensor Model, it seems that the data is transmitted  by client to the server, but the server cannot receive it.

Does anyone have the same problem? How to solve it?

Process:

I'm using unmodified example when testing, but 

I using client model button(1) trigger sensor_client_setting_set (P1)

 (P1)

set data is 

static uint16_t length;
static sensor_setting_set_msg_pkt_t set_data;
set_data.property_id = SENSOR_MOTION_SENSED_PROPERTY_ID;
set_data.setting_property_id = SENSOR_MOTION_SENSED_PROPERTY_ID;
set_data.setting_raw[0] = 0x01;
set_data.setting_raw[1] = 0x20;

sensor_client_setting_set is timeout for Client. (P2) 

Client:

But I using sensor_client_setting_get with Client, server has response.

Client: (P3) 

 (P3)

Server: (P4)

  (P4)

By the way, provisioner configuration was successful.

Best regards.

Parents
  • Hi,

    I noticed that you have created 3 similar cases about the same issue. Could you let me know why you want to create multiple tickets, do you have any issue reply and continue on the other cases? 

  • Sorry, because the description of the first one may be unclear, the second one was sent, but the second one mistakenly touched the verify button, so it was resent.


    This is the third posted.

  • Hi Guanting-Lai, 
    I  would suggest to continue on the other 2 cases. I have changed the status of the Verified case to Open. You can add the information there. 


    One tip for you to debug this is to have a look at mesh_msg_handle() function inside access.c file. This is where the access layer processes incoming messages. You can print out more log information about incoming message in this function (look for where we print "RX: " ) from there you can printout the opcode used and can check if the sensor_client_setting_set  message from the client has reached the server or not. And why the server didn't reply the client. You can compare it with when you send sensor_client_setting_get () command. 

    On the client's side you can also printout what is sending out inside packet_tx() function, in the same file. 

Reply
  • Hi Guanting-Lai, 
    I  would suggest to continue on the other 2 cases. I have changed the status of the Verified case to Open. You can add the information there. 


    One tip for you to debug this is to have a look at mesh_msg_handle() function inside access.c file. This is where the access layer processes incoming messages. You can print out more log information about incoming message in this function (look for where we print "RX: " ) from there you can printout the opcode used and can check if the sensor_client_setting_set  message from the client has reached the server or not. And why the server didn't reply the client. You can compare it with when you send sensor_client_setting_get () command. 

    On the client's side you can also printout what is sending out inside packet_tx() function, in the same file. 

Children
Related