-
Notifications
You must be signed in to change notification settings - Fork 7.4k
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
Volume command is doing nothing in esp_hid_device on esp-idf V4.4 (IDFGH-11233) #12397
Comments
Update: Also, I am getting an error on the Code:
Error:
I made a repo for the full code here: https://github.com/josh-gc/esp_selfie |
Update again: |
@josh-gc 0003-fix-bt-bluedroid-Fix-bugs-in-ble-service-change-char.patch If you continue to encounter issues, please let me know. thanks. |
@josh-gc After connecting to the esp32 (esp_hid_device), the volume on the iPhone 13 starts updating. When I disconnect the connection and open Bluetooth again, it automatically reconnects, and the volume continues to update. test.esp_hid_device.with.Iphone.13.mp4 |
@zhp0406 Thank you for responding. Sorry my bug was not clear, here is the process to reproduce with the patch:
Here is the process to reproduce before the patch:
Please let me know if that is not clear and I can make a video. I had the same experience with my code (esp_selfie) and the esp_hid_device example. I made another thread in the espressif forum to track the issue with bt/Android commands in my code. |
Other thread here: https://www.esp32.com/viewtopic.php?f=13&t=36330 |
@josh-gc iPhone 13 Is this observation similar to what you've experienced? |
@zhp0406 I don't think that the timing is the issue. Here is a screen capture from the iPhone where I:
Also, when I tried to do the screen capture over a cable from my computer I could not get it to work at all. Also, after about a minute I started getting these error messages: (This is on my code, not the esp_hid_device but I saw the same issues on both) BLE_HID_TEST.mov |
@josh-gc |
E (63398) BT_GATT: gatts_write_attr_perm_check - GATT_WRITE_NOT_PERMIT |
@zhp0406 I am still getting the 'E (94802) BT_GATT: gatts_write_attr_perm_check - GATT_WRITE_NOT_PERMIT' error though. It only happens when the iPhone goes to sleep so I had to modify the code to pause long enough to let it sleep. Here is my modified
and here is the error logs:
When I wake up the phone it works fine but the volume command does not wake it up on it's own. |
@josh-gc Furthermore, I have also addressed another compatibility issue with newer Android devices. If your product is intended for use on higher versions of Android devices, it is recommended to apply this patch as well. 0002-fix-bt-bluedroid-Optimize-compatibility-with-Android.patch If you encounter any other issues during usage, I will promptly resolve them for you. |
@josh-gc |
@zhp0406 I was having issues recreating the GATT_WRITE_NOT_PERMIT issue so I reset everything and went through all the steps. Here are my results: Update the IDF/submodules to: v4.4.6-98-g5f257494c5
All of my issues are solved. Thank you for your help! |
@josh-gc |
@josh-gc |
Closing issue (still waiting on merge to main branch) |
@josh-gc Alternatively, you can also use the following commits: Commit c73d7c0 improves the compatibility of the HID device on the Windows platform. |
Answers checklist.
IDF version.
v4.4.5-249-gcc71308e2f (also tried on v4.4.6-35-gcdd72ac1d4)
Espressif SoC revision.
ESP32-PICO-V3-02 (revision v3.0)
Operating System used.
macOS
How did you build your project?
VS Code IDE
If you are using Windows, please specify command line type.
None
Development Kit.
Custom PCB
Power Supply used.
External 3.3V
What is the expected behavior?
When the code sends the volume up and down commands this would be reflected on the connected device.
What is the actual behavior?
Nothing... The volume was not being adjusted by the esp32.
Steps to reproduce.
Debug Logs.
No response
More Information.
No response
The text was updated successfully, but these errors were encountered: