This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

I want to solve the problem that the characteristic value is not the set value.

Hello.


It is being developed using nrf52832 (S132 v7.0.1, SDK v17.0.0) as a peripheral device.

Previously, I inquired about how to add a value to the characteristic with this ticket, the error no longer occurs, I can connect, I can confirm that the value of the characteristic is set, and it is solved safely I was able to do it.

However, although no error now occurs, the characteristic value is no longer the set value.

I don't know why this is happening. Do you have any advice?

Also, I am currently inquiring with this ticket, but I am creating a process to switch the advertised UUID. Isn't this advertisement UUID and service UUID need to be linked? I searched for such a process, but couldn't find it.

Best regards.

  • Hello.

    I thought that by implementing it with reference to the post, the data could be sent correctly, so I added the code.
    However, I don't check the received data, so I'd like to have the stack process it all.

    I'm checking the process again, but I haven't solved the problem yet.

    One question is, in response to a Read Request, a Read Response is returned. Is there a way to confirm that this Read Response has been sent? Will any event occur?

    Best regards.

  • You do not get an even in the nRF indicating that the read response has been sent. But it will be, and if it is not being delivered for some reason, then after several attempted retransmissions, the link will be disconnected with timeout as disconnect reason. As long as this does not happen, the data has been exchanged.

  • Hello.

    I have confirmed that the response is returned when connecting with nRF Connect. However, the values are different.

    I haven't had time to create a minimal example.
    Is there an example in the SDK?

    Best regards.

  • Most of the BLE peripheral examples in the SDK includes a characteristic that is written to that you can read (though most also notify it, so you may want to disable notification if you pick for instance the Heart Rate Application example). 

  • Hello.

    As a result of repeated investigations, we were able to solve the problem.

    The cause is that the setting of "is_value_user" was wrong as described in the code example. Previously, I wasn't using "is_value_user", so it worked fine.

    The code said ".is_value_user = BLE_GATTS_VLOC_STACK", but ".is_value_user = false" was correct. Now that I've corrected the code, I can read the settings.

    Best regards.

Related