Hallo zusammen,
hatte bis jetzt noch nie Kontakt mit einem Arduino. Dadurch das ich über folgenden GitHub gestolpert bin habe ich mir die Einzelteile bestellt und das ganze nachgebaut:
Leider stellt sich jetzt heraus das es nur mit IPhone funktioniert da bei Android der BLE mit Guru Meditation abstürzt.
Ich habe jetzt verschiedene Android Handys und verschiedene Arduino Librarys für BLE versucht aber es bleibt beim Absturz und ich bin mit meinem Latein am Ende.
Vielleicht kann mich jemand hier unterstützen?
Anbei die Debug Ausgabe:
11:56:41.428 -> [V][BLEUtils.cpp:951] gattClientEventTypeToString(): Unknown GATT Client event type: 6
11:56:41.476 -> [V][BLEUtils.cpp:1283] dumpGattClientEvent(): GATT Event: Unknown
11:56:41.476 -> [V][BLEUtils.cpp:951] gattClientEventTypeToString(): Unknown GATT Client event type: 6
11:56:41.476 -> [D][BLEClient.cpp:158] gattClientEventHandler(): gattClientEventHandler [esp_gatt_if: 4] ... Unknown
11:56:41.476 -> [V][FreeRTOS.cpp:143] give(): Semaphore giving: name: SearchCmplEvt (0x3ffde0f4), owner: getServices
11:56:41.476 -> [W][Connection.cpp:175] my_gattc_event_handler(): custom gattc event handler, event: 6
11:56:41.476 -> [V][FreeRTOS.cpp:77] wait(): << wait: Semaphore released: name: SearchCmplEvt (0x3ffde0f4), owner: <N/A>
11:56:41.476 -> [V][BLEUtils.cpp:951] gattClientEventTypeToString(): Unknown GATT Client event type: 18
11:56:41.476 -> [V][BLEClient.cpp:430] getServices(): << getServices
11:56:41.476 -> [D][BLEDevice.cpp:154] gattClientEventHandler(): gattClientEventHandler [esp_gatt_if: 4] ... Unknown
11:56:41.476 -> [V][BLEClient.cpp:390] getService(): << getService: found the service with uuid: 71c1e128-d92f-4fa8-a2b2-0f171db343
11:56:41.476 -> [V][BLEUtils.cpp:951] gattClientEventTypeToString(): Unknown GATT Client event type: 18
11:56:41.476 -> [V][BLEUtils.cpp:1283] dumpGattClientEvent(): GATT Event: Unknown
11:56:41.520 -> [V][BLERemoteService.cpp:162] retrieveCharacteristics(): >> getCharacteristics() for service: 71c1e128-d92f-4fa8-a2b2-0f171db343
11:56:41.520 -> [V][BLEUtils.cpp:951] gattClientEventTypeToString(): Unknown GATT Client event type: 18
11:56:41.520 -> [D][BLERemoteService.cpp:193] retrieveCharacteristics(): Found a characteristic: Handle: 56, UUID: 503dd605-9bcb-4f6e-b235-270a574830
11:56:41.520 -> [D][BLEClient.cpp:158] gattClientEventHandler(): gattClientEventHandler [esp_gatt_if: 4] ... Unknown
11:56:41.599 -> [V][BLERemoteCharacteristic.cpp:36] BLERemoteCharacteristic(): >> BLERemoteCharacteristic: handle: 56 0x56, uuid: 503dd605-9bcb-4f6e-b235-270a574830
11:56:41.599 -> [V][BLERemoteCharacteristic.cpp:250] retrieveDescriptors(): >> retrieveDescriptors() for characteristic: 503dd605-9bcb-4f6e-b235-270a574830
11:56:41.599 -> [W][Connection.cpp:175] my_gattc_event_handler(): custom gattc event handler, event: 18
11:56:41.599 -> [D][BLERemoteCharacteristic.cpp:280] retrieveDescriptors(): Found a descriptor: Handle: 57, UUID: 4a982902-1cc4-e7c1-c757-f1267dd021
11:56:41.640 -> [V][BLERemoteCharacteristic.cpp:294] retrieveDescriptors(): << retrieveDescriptors(): Found 1 descriptors.
11:56:41.640 -> [V][BLERemoteCharacteristic.cpp:45] BLERemoteCharacteristic(): << BLERemoteCharacteristic
11:56:41.640 -> [V][BLERemoteService.cpp:209] retrieveCharacteristics(): << getCharacteristics()
11:56:41.640 -> - Found our characteristic
11:56:41.640 -> CanRead : 1
11:56:41.640 -> CanWrite : 0
11:56:41.640 -> CanNotify : 1
11:56:41.640 -> CanIndicate : 0
11:56:41.640 -> [V][BLERemoteCharacteristic.cpp:323] getDescriptor(): >> getDescriptor: uuid: 2902-0000-1000-8000-00805f9b34fb
11:56:41.640 -> [V][BLERemoteCharacteristic.cpp:331] getDescriptor(): << getDescriptor: Not found
11:56:41.678 -> Guru Meditation Error: Core 1 panic'ed (LoadProhibited). Exception was unhandled.
11:56:41.678 -> Core 1 register dump:
11:56:41.678 -> PC : 0x400d7efc PS : 0x00060530 A0 : 0x800d7ff1 A1 : 0x3ffc8920
11:56:41.678 -> A2 : 0x3ffc6378 A3 : 0x00000000 A4 : 0x3ffc89b4 A5 : 0x3ffbee78
11:56:41.678 -> A6 : 0x3ffc554c A7 : 0x00000038 A8 : 0x00000000 A9 : 0x00000000
11:56:41.678 -> A10 : 0x0000004b A11 : 0x00000062 A12 : 0x00000001 A13 : 0x00000000
11:56:41.736 -> A14 : 0x00000000 A15 : 0xffffffac SAR : 0x00000004 EXCCAUSE: 0x0000001c
11:56:41.736 -> EXCVADDR: 0x00000000 LBEG : 0x400014fd LEND : 0x4000150d LCOUNT : 0xfffffffc
11:56:41.736 ->
11:56:41.736 -> Backtrace: 0x400d7efc:0x3ffc8920 0x400d7fee:0x3ffc8990 0x400d2082:0x3ffc89f0 0x400d23c7:0x3ffc8a40 0x400d24a3:0x3ffc8a60 0x400d3817:0x3ffc8aa0 0x400dd08f:0x3ffc8af0 0x4008e5f1:0x3ffc8b10
11:56:41.736 ->
11:56:41.736 -> Rebooting...
11:56:41.736 -> ets Jun 8 2016 00:22:57
Musste Ausgabe etwas kürzen wegen Maximaler Länge...
Wie kann ich den Fehler eingrenzen?
Hier noch die Ausgabe vom ExceptionDecoder:
PC: 0x400d7efc: BLERemoteDescriptor::toString[abi:cxx11]() at C:\Users\User\Documents\Arduino\hardware\Espressif\esp32\libraries\BLE\src\BLERemoteDescriptor.cpp line 117
EXCVADDR: 0x00000000
Decoding stack results
0x400d7efc: BLERemoteDescriptor::toString[abi:cxx11]() at C:\Users\User\Documents\Arduino\hardware\Espressif\esp32\libraries\BLE\src\BLERemoteDescriptor.cpp line 117
0x400d7fee: BLERemoteDescriptor::writeValue(unsigned char*, unsigned int, bool) at C:\Users\User\Documents\Arduino\hardware\Espressif\esp32\libraries\BLE\src\BLERemoteDescriptor.cpp line 132
0x400d2082: connectToServer() at C:\Users\User\AppData\Local\Temp\arduino_build_877457\sketch\Connection.cpp line 91
0x400d23c7: connect() at C:\Users\User\AppData\Local\Temp\arduino_build_877457\sketch\Connection.cpp line 163
0x400d24a3: scan() at C:\Users\User\AppData\Local\Temp\arduino_build_877457\sketch\Connection.cpp line 108
0x400d3817: setup() at C:\Users\User\Documents\Arduino\esp32_komoot_ble/esp32_komoot_ble.ino line 65
0x400dd08f: loopTask(void*) at C:\Users\User\Documents\Arduino\hardware\Espressif\esp32\cores\esp32\main.cpp line 14
0x4008e5f1: vPortTaskWrapper at /Users/ficeto/Desktop/ESP32/ESP32/esp-idf-public/components/freertos/port.c line 143