Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

What is the behaviour of AT+BLEGATTCWR when the server supports both 'Write' and 'Write without Response' #903

Open
JHedgesBartec opened this issue Feb 18, 2025 · 7 comments

Comments

@JHedgesBartec
Copy link

If a third party device (non-espressif) hosts a service and characteristic which has both 'Write' and 'Write without Response', when the AT+BLEGATTCWR command is used to write to the characteristic, which method is used?

Does the command prioritise Write?
Is there a way to enforce the 'Write' method is used?

@JHedgesBartec
Copy link
Author

@Luxin812 or @ustccw are you able to clarify this as it is not present in the documentation?

@XionHsieh
Copy link

If 'Write' and 'Write without Response' are supported, ‘write’ is used by default.

@ustccw
Copy link
Collaborator

ustccw commented Mar 17, 2025

@Luxin812 PTAL

@Luxin812
Copy link
Contributor

@JHedgesBartec Do you have any more questions about this issue? If not, maybe you could close it, thanks.

@JHedgesBartec
Copy link
Author

@Luxin812 are you confirming the behaviour that @XionHsieh has reported?
It is not clear who is an employee of Espressif and such has access to the source code to confirm this issue.

@Luxin812
Copy link
Contributor

Luxin812 commented Mar 26, 2025

@JHedgesBartec Theoretically, it should default to using Write. You can verify this behavior by capturing packets. If the captured data does not show Write, we can discuss the issue further.

@JHedgesBartec
Copy link
Author

@Luxin812 how is it possible to capture the packets?

In this case we are using the ESP32 with BLE, BT Classic and WiFi, due to this we cannot enable logging on the build and we are unable to remove the unused the OTA partitioning to allow more flash space for the application.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants