Closed Staacks closed 1 year ago
Update: I have bought several ESP32-DevKitC-32E and ESP32-Wroom-32E-N4 and none of them exhibit the issue. Therefore I would say that this issue can be closed here and I have to discuss this with AZ-Delivery.
@Staacks I have EXACTLY the same problem as you. I have TWO "ESP-32 Dev Kit C V4 (with revision 3 ESP32)" boards from AZ-Delivery. One with ESP32-D0WDQ6 and the other with a ESP32-D0WDQ5, both use ESP32-D0WD-V3. I lost days to figure what happened here, the ESP32-D0WDQ6 work perfectly in BLE (Arduino example), the other, the ESP32-D0WDQ5, appear and disappear while PC is scanning BLE, and connection never succeed ! To be SURE, I built and used raw example from the Espressif SDK 5.0.1 (ble/gatt_server), and SAME behaviour !
I guess there is a VERY problematic PCB/Antenna adaptation with ESP32-D0WDQ5 in this design !
Here a shot of linux "bluetoothctl" while scanning. The board appear/disappear even without any interaction.
Board
ESP-32 Dev Kit C V4 (with revision 3 ESP32)
Device Description
ESP-32 Dev Kit C V4 recently bought from az-delivery with a revision 3 chip, tested on about 50 of these boards. Same code was tested on an older dev board by az-delivery (https://www.az-delivery.de/products/esp32-developmentboard) as well as the older Dev Kit C board without any issue. The obvious difference of the newer board is that it has an ESP32-D0WD-V3 (revision 3), while the older ones all have an ESP32-D0WDQ6 (revision 1).
Hardware Configuration
The boards were tested bare - just a USB connection to the PC.
Version
v2.0.5
IDE Name
Arduino IDE
Operating System
Linux Mint
Flash frequency
80MHz
PSRAM enabled
no
Upload speed
921600
Description
Uploaded the BLE_server.ino example to a new ESP-32 Dev Kit C V4 with ESP32-D0WD-V3 and tryed to connect with nRF Connect after its reset. nRF connect can see the board, but after a connection attempt, it immediately disconnects with the (rather generic) error 133 GATT error. The behavior is slightly erratic as retries sometimes succeed, but failure is the more common outcome.
The same code was uploaded to another ESP-32 Dev Kit C (identical board layout as far as I can tell) with an ESP32-D0WDQ6 (revision 1) and the BLE connection works like a charm. Same goes for an even older dev board by az-delivery (hardware details section).
This behavior was observed with about 50 of these boards during a workshop in which we wanted to teach the use of our Arduino library (phyphoxBLE) to teachers, so while not all occurrences have been investigated, we can certainly say that it is not only affecting the one board I am testing more thoroughly now after the workshop failed spectacularly.
On the phone side I have observed this behavior on a Pixel 3 (Android 12), Pixel 6 (Android 13) and Samsung Galaxy S10 5G (Android 12). On iPhones (iPhone 8 and iPhone 14 Pro) the success rate is higher, but disconnects are common and the initial connect in nRF connect can easily take 10 seconds while the older boards connect immediately (I suspect that iOS does some fallback reconnect work in the background or is just more patient).
Sketch
Debug Message
Other Steps to Reproduce
No response
I have checked existing issues, online documentation and the Troubleshooting Guide