I am trying to send data from icm20948 sensor from the sensor node to the observer node using ble mesh. Due to the data from icm20948 is too large (9 uint16_t, 18bytes) for the given sensor types from nordic sample, so I created a custom sensor server to send them. The sensor server structure looks like this:
and it successfully sent 18 bytes data by putting them into 3 custom sensor instances each of which contains 3 sensor channels. I could then see data getting sent on nrf mesh mobile app by configuring the sensor server.
After that, I tried to get those data by sensor client sample on another board. I changed the sensor_client sample to read the PROP_ID I set for my custom sensor types, like this:
and the sensor_cli_data_cb() function like this:
Then I built and flashed the board, configured the sensor server and sensor client on app, then I found that I can see data being sent from sensor server on the sensor node board, and get_data function of my sensor client run correctly, but the sensor_cli_data_cb() function cannot get called.
I tried to use the given sensor type from the sample (like people count sensor), the sensor_cli_data_cb() function can get called correctly after receiving message; but once I changed to my custom sensor server and sensor client, I cannot see the sensor_cli_data_cb() function getting called.