WiFi Probleme

Moin,
ich bin ein wenig am Verzweifeln. Leider möchte mein ESPuino nicht mehr so wirklich über WiFi kommunizieren. Die Webseite bekomme ich mit viel Mühe und Glück geladen. Jedoch bricht immer wieder die Websocket Verbindung ab oder requests werden nicht beantwortet. Mein Log sieht so aus:

23:25:59.042 > D [354184] ws[/ws][9] connect
23:26:04.515 > D [359659] ws[/ws][8] disconnect
23:26:24.732 > D [379875] ws[/ws][10] connect
23:26:30.020 > D [385167] ws[/ws][9] disconnect
23:26:34.768 > D [389910] ws[/ws][11] connect
23:26:40.029 > D [395177] ws[/ws][10] disconnect
23:26:49.719 > D [404861] ws[/ws][12] connect
23:26:55.046 > D [410193] ws[/ws][11] disconnect
23:27:18.082 > D [433225] ws[/ws][13] connect
23:27:23.569 > D [438713] ws[/ws][12] disconnect
23:27:30.688 > D [445830] ws[/ws][14] connect
23:27:36.083 > D [451226] ws[/ws][13] disconnect
23:27:43.683 > D [458825] ws[/ws][15] connect
23:27:49.086 > D [464235] ws[/ws][14] disconnect
23:27:53.718 > D [468860] ws[/ws][16] connect
23:27:59.094 > D [474247] ws[/ws][15] disconnect
23:28:08.772 > D [483913] ws[/ws][17] connect
23:28:14.116 > D [489261] ws[/ws][16] disconnect
23:28:19.728 > D [494869] ws[/ws][18] connect
23:28:25.116 > D [500273] ws[/ws][17] disconnect
23:28:30.691 > D [505832] ws[/ws][19] connect
23:28:36.144 > D [511286] ws[/ws][18] disconnect
23:28:42.771 > D [517911] ws[/ws][20] connect
23:28:48.151 > D [523302] ws[/ws][19] disconnect
23:29:00.689 > D [535830] ws[/ws][21] connect
23:29:06.182 > D [541324] ws[/ws][20] disconnect
23:29:26.702 > D [561842] ws[/ws][22] connect
23:29:32.204 > D [567346] ws[/ws][21] disconnect
23:29:42.777 > D [577917] ws[/ws][23] connect
23:29:48.216 > D [583357] ws[/ws][22] disconnect
23:30:14.872 > I [610017] Aktuelle Batteriespannung: 4.23 V
23:30:14.872 > I [610020] Aktuelle Batterieladung: 100.00 %
23:30:18.718 > D [613857] ws[/ws][24] connect
23:30:23.730 > D [618876] ws[/ws][23] disconnect
23:30:28.756 > D [623895] ws[/ws][25] connect
23:30:34.238 > D [629386] ws[/ws][24] disconnect
23:30:42.683 > D [637822] ws[/ws][26] connect
23:30:47.756 > D [642896] ws[/ws][25] disconnect
23:30:52.718 > D [647857] ws[/ws][27] connect
23:30:57.767 > D [652907] ws[/ws][26] disconnect
23:31:18.733 > D [673871] ws[/ws][28] connect
23:31:23.779 > D [678931] ws[/ws][27] disconnect
23:31:30.709 > D [685847] ws[/ws][29] connect
23:31:35.789 > D [690940] ws[/ws][28] disconnect
23:31:54.771 > D [709910] ws[/ws][30] connect
23:31:59.811 > D [714954] ws[/ws][29] disconnect
23:32:08.699 > D [723837] ws[/ws][31] connect
23:32:13.824 > D [728964] ws[/ws][30] disconnect

So ist das Webinterface leider nicht nutzbar. Auch FTP funktioniert folglich nicht.
In der Client-Liste meines Routers meldet sich der ESP auch mit falschem Hostname an. Alles sehr mysteriös.

Ich betreibe einen Lolin D32 pro auf dem ESPuino-miniD32-Board von @biologist .

Es lief alles super, seit ca 1,5 Jahren. Jetzt wollte ich mal updaten. Habe mir also den aktuellen Master gezogen, gebaut und geflasht. Auch da lief es dann wunderbar. Anschließend habe ich noch ein bisschen Features in der settings.h aktiviert und neu geflasht. Hat auch immer irgendwie geklappt. Aber dann auf einmal nach dem Upload einer Firmware hatte ich diese Probleme.
Da habe ich dann mal einen Flash Erase gemacht und Full Clean Build. Dann ging es wieder. Doch mittlerweile hilft auch das nicht weiter.
Habe eben dann gesehen, dass es ein neues Release gibt. Aber auch das hilft leider nicht. Ich weiß leider nicht was ich tun soll.
Eine Ursache, die in meinem Kopf rumschwirrt, weil es zeitlich koinzident auftrat, war das Ausprobieren des ESPuino als Bluetooth-Source. Das hat geklappt, aber auch nicht wirklich gut, was aber vermutlich an meinem „fancy“ Bose Kopfhörern liegt. Da ich vergessen hatte mir eine Karte zum deaktivieren des Bluetooth Modes zu machen und auch keinen Shortcut auf Tasten hatte (aktiviert habe ich das über das Webinterface) musste ich den ESP neu flashen um wieder WiFi zu haben. Dies schien mir zumindest die einzige Lösung. Und gefühlt habe ich seit dem diese Probleme. Keine Ahnung ob sich da was zerlegt hat, weil der BT-Mode nicht „ordentlich“ zurückgeschaltet wurde, aber kann ich mir irgendwie nicht vorstellen.

Im AP Modus funktioniert alles übrigens tadellos.

[Nebenbei: Das ist schon ein kleine Falle für den unbedarften Anwender, wenn man im Webinterface BT anmachen kann, da aber nie wieder raus kommt]

Hat vllt . jemand eine Idee, was ich noch versuchen könnte, um meine ESP wieder zum Laufen zu bekommen? Bin für jeden Hinweis dankbar.

Dafür gibt es eine Lösung

1 „Gefällt mir“

Ah. danke. Da hätte ich auch mal in die Doku schauen können :sweat_smile:

UPDATE:
Mit viel Geduld habe ich mir jetzt eine Karte für BT-Source gemacht. Und siehe da: Wenn ich diesen Modus aktiviere, lande ich in einem Bootloop:

01:24:03.328 > 
01:24:03.329 >  _____   ____    ____            _
01:24:03.331 > | ____| / ___|  |  _ \   _   _  (_)  _ __     ___
01:24:03.331 > |  _|   \__  \  | |_) | | | | | | | | '_ \   / _ \
01:24:03.340 > | |___   ___) | |  __/  | |_| | | | | | | | | (_) |
01:24:03.342 > |_____| |____/  |_|      \__,_| |_| |_| |_|  \___/
01:24:03.346 >          Rfid-controlled musicplayer
01:24:03.346 >
01:24:03.346 >
01:24:03.346 > N [374] Software-revision: 20240117-1
01:24:03.346 > N [374] Git-revision: a1579ca-dirty
01:24:03.359 > N [374] Arduino version: 2.0.14
01:24:03.362 > N [385] ESP-IDF version: 4.4.6
01:24:03.363 > N [385] Wakeup was not caused by deepsleep: 0
01:24:03.363 > N [385] Versuche SD-Karte im SD_MMC-Modus (1 Bit) zu mounten...
01:24:03.373 > D [395] SD card type: SDHC
01:24:03.375 > N [396] SD-Kartengröße / freier Speicherplatz: 60906 MB / 36000 MB
01:24:03.380 > I [407] FTP-User wurde aus NVS geladen: esp32
01:24:03.380 > I [408] FTP-Passwort wurde aus NVS geladen: esp32
01:24:03.380 > I [409] Hostname aus NVS geladen: ESPuino
01:24:03.392 > N [411] SSID 0 von NVS geladen: FremdenNetz
01:24:03.397 > [   422][E][Preferences.cpp:483] getString(): nvs_get_str len fail: btPinCode NOT_FOUND
01:24:03.397 > Guru Meditation Error: Core  0 panic'ed (Unhandled debug exception).
01:24:03.412 > Debug exception reason: Stack canary watchpoint triggered (rfid) 
01:24:03.415 > Core  0 register dump:
01:24:03.415 > PC      : 0x40098a7f  PS      : 0x00060036  A0      : 0x80099c08  A1      : 0x3ffe1c20
01:24:03.425 > A2      : 0x3ffbf2f8  A3      : 0xb33fffff  A4      : 0x0000abab  A5      : 0x00060023  
01:24:03.430 > A6      : 0x00060023  A7      : 0x0000cdcd  A8      : 0xb33fffff  A9      : 0xffffffff
01:24:03.442 > A10     : 0x3ffbf2e4  A11     : 0x00000001  A12     : 0x00060021  A13     : 0x00000000  
01:24:03.446 > A14     : 0x007bf2f8  A15     : 0x003fffff  SAR     : 0x0000000a  EXCCAUSE: 0x00000001
01:24:03.459 > EXCVADDR: 0x00000000  LBEG    : 0x40085959  LEND    : 0x40085961  LCOUNT  : 0x00000027  
01:24:03.464 >
01:24:03.467 >
01:24:03.467 > Backtrace: 0x40098a7c:0x3ffe1c20 0x40099c05:0x3ffe1c60 0x40098554:0x3ffe1c90 0x40098504:0xa5a5a5a5 |<-CORRUPTED
01:24:03.475 >
01:24:03.475 >
01:24:03.475 >
01:24:03.475 >
01:24:03.475 > ELF file SHA256: 195d4d359e6948d2
01:24:03.478 >
01:24:03.480 > E (1221) esp_core_dump_flash: Core dump flash config is corrupted! CRC=0x7bd5c66f instead of 0x0
01:24:03.480 > Rebooting...
01:24:04.217 > E (729) esp_core_dump_flash: No core dump partition found!
01:24:04.217 > E (729) esp_core_dump_flash: No core dump partition found!
01:24:04.360 > I [147] Maximale Inaktivitätszeit wurde aus NVS geladen: 10 Minuten
01:24:04.413 > D [197] RFID-Tags koennen jetzt gescannt werden...
01:24:04.413 > N [198] Port-expander gefunden
01:24:04.413 > N [199] Interrupt für Port-Expander aktiviert
01:24:04.426 > I [201] Zyklus für Batteriemessung fuer Neopixel-Anzeige aus NVS geladen: 10 Minuten
01:24:04.427 > I [212] Unterer Spannungslevel (Batterie) fuer Neopixel-Anzeige aus NVS geladen: 3.00V
01:24:04.427 > I [214] Oberer Spannungslevel (Batterie) fuer Neopixel-Anzeige aus NVS geladen: 4.20V
01:24:04.446 > I [225] Spannungslevel (Batterie) fuer Niedrig-Warnung via Neopixel aus NVS geladen: 3.40V
01:24:04.446 > I [237] Spannungslevel (Batterie) fuer Kritisch-Warnung via Neopixel aus NVS geladen: 3.10V
01:24:04.462 > I [240] Initiale Lautstärke wurde aus NVS geladen: 3
01:24:04.463 > E [251] Maximale Lautstärke für Lautsprecher wurde ins NVS geschrieben.
01:24:04.468 > N [251] Lautsprecher eingeschaltet
01:24:04.512 > I [305] Initiale LED-Helligkeit wurde aus NVS geladen: 16
01:24:04.525 > I [305] LED-Helligkeit für Nachtmodus wurde aus NVS geladen: 2
01:24:04.563 > 
01:24:04.563 >  _____   ____    ____            _
01:24:04.563 > | ____| / ___|  |  _ \   _   _  (_)  _ __     ___
01:24:04.576 > |  _|   \__  \  | |_) | | | | | | | | '_ \   / _ \
01:24:04.581 > | |___   ___) | |  __/  | |_| | | | | | | | | (_) |
01:24:04.581 > |_____| |____/  |_|      \__,_| |_| |_| |_|  \___/
01:24:04.581 >          Rfid-controlled musicplayer
01:24:04.593 >
01:24:04.593 >
01:24:04.593 > N [373] Software-revision: 20240117-1
01:24:04.596 > N [373] Git-revision: a1579ca-dirty
01:24:04.597 > N [374] Arduino version: 2.0.14
01:24:04.597 > N [384] ESP-IDF version: 4.4.6
01:24:04.597 > N [384] Wakeup was not caused by deepsleep: 0
01:24:04.609 > N [384] Versuche SD-Karte im SD_MMC-Modus (1 Bit) zu mounten...
01:24:04.614 > D [395] SD card type: SDHC
01:24:04.614 > N [395] SD-Kartengröße / freier Speicherplatz: 60906 MB / 36000 MB
01:24:04.614 > I [406] FTP-User wurde aus NVS geladen: esp32
01:24:04.625 > I [407] FTP-Passwort wurde aus NVS geladen: esp32
01:24:04.631 > I [409] Hostname aus NVS geladen: ESPuino
01:24:04.631 > N [410] SSID 0 von NVS geladen: FremdenNetz
01:24:04.631 > [   421][E][Preferences.cpp:483] getString(): nvs_get_str len fail: btPinCode NOT_FOUND
01:24:04.648 > Guru Meditation Error: Core  0 panic'ed (Unhandled debug exception). 
01:24:04.648 > Debug exception reason: Stack canary watchpoint triggered (rfid)
01:24:04.659 > Core  0 register dump:
01:24:04.662 > PC      : 0x40098a7f  PS      : 0x00060036  A0      : 0x80099c08  A1      : 0x3ffe1c20  
01:24:04.663 > A2      : 0x3ffbf2f8  A3      : 0xb33fffff  A4      : 0x0000abab  A5      : 0x00060023
01:24:04.675 > A6      : 0x00060023  A7      : 0x0000cdcd  A8      : 0xb33fffff  A9      : 0xffffffff  
01:24:04.681 > A10     : 0x3ffbf2e4  A11     : 0x00000001  A12     : 0x00060021  A13     : 0x3ffb7450
01:24:04.693 > A14     : 0x007bf2f8  A15     : 0x003fffff  SAR     : 0x0000000a  EXCCAUSE: 0x00000001  
01:24:04.697 > EXCVADDR: 0x00000000  LBEG    : 0x40085959  LEND    : 0x40085961  LCOUNT  : 0x00000027
01:24:04.697 >
01:24:04.709 >
01:24:04.709 > Backtrace: 0x40098a7c:0x3ffe1c20 0x40099c05:0x3ffe1c60 0x40098554:0x3ffe1c90 0x40098504:0xa5a5a5a5 |<-CORRUPTED
01:24:04.714 >
01:24:04.714 >
01:24:04.714 >
01:24:04.714 >
01:24:04.714 > ELF file SHA256: 195d4d359e6948d2
01:24:04.714 >
01:24:04.714 > E (1221) esp_core_dump_flash: Core dump flash config is corrupted! CRC=0x7bd5c66f instead of 0x0
01:24:04.732 > Rebooting...
01:24:05.460 > E (729) esp_core_dump_flash: No core dump partition found!
01:24:05.464 > E (729) esp_core_dump_flash: No core dump partition found!
01:24:05.605 > I [147] Maximale Inaktivitätszeit wurde aus NVS geladen: 10 Minuten
01:24:05.650 > D [197] RFID-Tags koennen jetzt gescannt werden...
01:24:05.659 > N [198] Port-expander gefunden
01:24:05.662 > N [199] Interrupt für Port-Expander aktiviert
01:24:05.663 > I [201] Zyklus für Batteriemessung fuer Neopixel-Anzeige aus NVS geladen: 10 Minuten
01:24:05.672 > I [212] Unterer Spannungslevel (Batterie) fuer Neopixel-Anzeige aus NVS geladen: 3.00V
01:24:05.680 > I [214] Oberer Spannungslevel (Batterie) fuer Neopixel-Anzeige aus NVS geladen: 4.20V
01:24:05.680 > I [225] Spannungslevel (Batterie) fuer Niedrig-Warnung via Neopixel aus NVS geladen: 3.40V
01:24:05.697 > I [237] Spannungslevel (Batterie) fuer Kritisch-Warnung via Neopixel aus NVS geladen: 3.10V
01:24:05.702 > I [240] Initiale Lautstärke wurde aus NVS geladen: 3
01:24:05.710 > E [251] Maximale Lautstärke für Lautsprecher wurde ins NVS geschrieben.
01:24:05.715 > N [251] Lautsprecher eingeschaltet
01:24:05.764 > I [305] Initiale LED-Helligkeit wurde aus NVS geladen: 16
01:24:05.766 > I [305] LED-Helligkeit für Nachtmodus wurde aus NVS geladen: 2
01:24:05.813 > 

Und da hilft wieder kein Reset oder Stromlos schalten. Auch kein einfaches flashen. Ich muss nen Erase machen und dann neu flashen. Irgendwie ist da mächtig was kaputt an meinem ESP fürchte ich.

Webradio funktioniert natürlich auch nicht.

SD-Wiedergabe funktioniert einwandfrei, wenn ich es denn mal geschafft habe das Backup einzuspielen. Dann lasse ich das erstmal so, damit der Junior mir nicht aufs dach steigt und muss wohl mal einen neuen D32 pro bestellen ¯_(ツ)_/¯

Poste mal bitte die Optionen, die in deiner Settings.h aktiv sind.

Welchen RFID-Reader verwendest du?
Abhängig davon könntest du mal in RfidMfrc522.cpp oder RfidPn5180.cpp gehen und nach xTaskCreatePinnedToCore suchen. Dort gibt’s 2048 als Stacksize. Schau mal, ob’s besser wird, wenn du 3072 draus machst.

Welche URL?

// clang-format off

#ifndef __ESPUINO_SETTINGS_H__
    	#define __ESPUINO_SETTINGS_H__
        #include "Arduino.h"
        #include "values.h"
#if __has_include("settings-override.h")
    	#include "settings-override.h"
#else
	//######################### INFOS ####################################
	// This is the general configfile for ESPuino-configuration.

	//################## HARDWARE-PLATFORM ###############################
	/* Make sure to also edit the configfile, that is specific for your platform.
	If in doubts (your develboard is not listed) use HAL 1
	1: Wemos Lolin32                        => settings-lolin32.h
	2: ESP32-A1S Audiokit                   => settings-espa1s.h
	3: Wemos Lolin D32                      => settings-lolin_D32.h
	4: Wemos Lolin D32 pro                  => settings-lolin_D32_pro.h
	5: Lilygo T8 (V1.7)                     => settings-ttgo_t8.h
	6: ESPuino complete                     => settings-complete.h
	7: Lolin D32 pro SDMMC Port-Expander    => settings-lolin_d32_pro_sdmmc_pe.h
	8: AZDelivery ESP32 NodeMCU             => settings-azdelivery_sdmmc.h
	9: Lolin D32 SDMMC Port-Expander        => settings-lolin_d32_sdmmc_pe.h
	99: custom                              => settings-custom.h
	more to come...
	*/
	#ifndef HAL             // Will be set by platformio.ini. If using Arduino-IDE you have to set HAL according your needs!
		#define HAL 7      // HAL 1 = LoLin32, 2 = ESP32-A1S-AudioKit, 3 = Lolin D32, 4 = Lolin D32 pro; ... 99 = custom
	#endif


	//########################## MODULES #################################
	#define PORT_EXPANDER_ENABLE          // When enabled, buttons can be connected via port-expander PCA9555 (https://forum.espuino.de/t/einsatz-des-port-expanders-pca9555/306)
	//#define I2S_COMM_FMT_LSB_ENABLE       // Enables FMT instead of MSB for I2S-communication-format. Used e.g. by PT2811. Don't enable for MAX98357a, AC101 or PCM5102A)
	#define MDNS_ENABLE                     // When enabled, you don't have to handle with ESPuino's IP-address. If hostname is set to "ESPuino", you can reach it via ESPuino.local
	//#define MQTT_ENABLE                   // Make sure to configure mqtt-server and (optionally) username+pwd
	#define FTP_ENABLE                      // Enables FTP-server; DON'T FORGET TO ACTIVATE AFTER BOOT BY PRESSING PAUSE + NEXT-BUTTONS (IN PARALLEL)!
	#define NEOPIXEL_ENABLE                 // Don't forget configuration of NUM_LEDS if enabled
	//#define NEOPIXEL_REVERSE_ROTATION     // Some Neopixels are adressed/soldered counter-clockwise. This can be configured here.
	#define LANGUAGE DE                     // DE = deutsch; EN = english
	//#define STATIC_IP_ENABLE              // DEPRECATED: Enables static IP-configuration (change static ip-section accordingly)
	//#define HEADPHONE_ADJUST_ENABLE         // Used to adjust (lower) volume for optional headphone-pcb (refer maxVolumeSpeaker / maxVolumeHeadphone) and to enable stereo (if PLAY_MONO_SPEAKER is set)
	//#define PLAY_MONO_SPEAKER             // If only one speaker is used enabling mono should make sense. Please note: headphones is always stereo (if HEADPHONE_ADJUST_ENABLE is active)
	#define SHUTDOWN_IF_SD_BOOT_FAILS       // Will put ESP to deepsleep if boot fails due to SD. Really recommend this if there's in battery-mode no other way to restart ESP! Interval adjustable via deepsleepTimeAfterBootFails.
	#define MEASURE_BATTERY_VOLTAGE         // Enables battery-measurement via GPIO (ADC) and voltage-divider
	//#define MEASURE_BATTERY_MAX17055      // Enables battery-measurement via external fuel gauge (MAX17055)
	#define SHUTDOWN_ON_BAT_CRITICAL      // Whether to turn off on critical battery-level (only used if MEASURE_BATTERY_XXX is active)
	//#define PLAY_LAST_RFID_AFTER_REBOOT   // When restarting ESPuino, the last RFID that was active before, is recalled and played
	//#define USE_LAST_VOLUME_AFTER_REBOOT  // Remembers the volume used at last shutdown after reboot
	#define USEROTARY_ENABLE                // If rotary-encoder is used (don't forget to review WAKEUP_BUTTON if you disable this feature!)
	#define BLUETOOTH_ENABLE                // If enabled and bluetooth-mode is active, you can stream to your ESPuino or to a headset via bluetooth (a2dp-sink & a2dp-source). Note: This feature consumes a lot of resources and the available flash/ram might not be sufficient.
	//#define IR_CONTROL_ENABLE             // Enables remote control (https://forum.espuino.de/t/neues-feature-fernsteuerung-per-infrarot-fernbedienung/265)
	//#define PAUSE_WHEN_RFID_REMOVED       // Playback starts when card is applied and pauses automatically, when card is removed (https://forum.espuino.de/t/neues-feature-pausieren-wenn-rfid-karte-entfernt-wurde/541)
	#define PAUSE_ON_MIN_VOLUME           // When playback is active and volume is changed to zero, playback is paused automatically. Playback is continued if volume reaches 1. (https://forum.espuino.de/t/neues-feature-pausieren-wenn-rfid-karte-entfernt-wurde/541)
	#define DONT_ACCEPT_SAME_RFID_TWICE   // RFID-reader doesn't accept the same RFID-tag twice in a row (unless it's a modification-card or RFID-tag is unknown in NVS). Flag will be ignored silently if PAUSE_WHEN_RFID_REMOVED is active. (https://forum.espuino.de/t/neues-feature-dont-accept-same-rfid-twice/1247)
	//#define SAVE_PLAYPOS_BEFORE_SHUTDOWN  // When playback is active and mode audiobook was selected, last play-position is saved automatically when shutdown is initiated
	//#define SAVE_PLAYPOS_WHEN_RFID_CHANGE // When playback is active and mode audiobook was selected, last play-position is saved automatically for old playlist when new RFID-tag is applied
	//#define HALLEFFECT_SENSOR_ENABLE      // Support for hallsensor. For fine-tuning please adjust HallEffectSensor.h Please note: only user-support provided (https://forum.espuino.de/t/magnetische-hockey-tags/1449/35)
	#define VOLUMECURVE 1 					// 0=square, 1=logarithmic (1 is more flatten at lower volume)

	//################## set PAUSE_WHEN_RFID_REMOVED behaviour #############################
	#ifdef PAUSE_WHEN_RFID_REMOVED
		#define ACCEPT_SAME_RFID_AFTER_TRACK_END           // Accepts same RFID after playback has ended (https://forum.espuino.de/t/neues-feature-pausieren-wenn-rfid-karte-entfernt-wurde/541/2)
	#endif

	//################## select SD card mode #############################
	#define SD_MMC_1BIT_MODE              // run SD card in SD-MMC 1Bit mode (using GPIOs 15 + 14 + 2 is mandatory!)
	//#define SINGLE_SPI_ENABLE             // If only one SPI-instance should be used instead of two (not yet working!)
	//#define NO_SDCARD                     // enable to start without any SD card, e.g. for a webplayer only. SD card Settings above will be ignored


	//################## select RFID reader ##############################
	//#define RFID_READER_TYPE_MFRC522_SPI    // use MFRC522 via SPI
	//#define RFID_READER_TYPE_MFRC522_I2C  // use MFRC522 via I2C
	#define RFID_READER_TYPE_PN5180       // use PN5180 via SPI

	#ifdef RFID_READER_TYPE_MFRC522_I2C
		#define MFRC522_ADDR 0x28           // default I2C-address of MFRC522
	#endif

	#ifdef RFID_READER_TYPE_PN5180
		//#define PN5180_ENABLE_LPCD        // Wakes up ESPuino if RFID-tag was applied while deepsleep is active. Only ISO-14443-tags are supported for wakeup!
	#endif

	#if defined(RFID_READER_TYPE_MFRC522_I2C) || defined(RFID_READER_TYPE_MFRC522_SPI)
		constexpr uint8_t rfidGain = 0x07 << 4;      // Sensitivity of RC522. For possible values see reference: https://forum.espuino.de/uploads/default/original/1X/9de5f8d35cbc123c1378cad1beceb3f51035cec0.png
	#endif


	//############# Port-expander-configuration ######################
	#ifdef PORT_EXPANDER_ENABLE
		constexpr uint8_t expanderI2cAddress = 0x20;  // I2C-address of PCA9555 (0x20 is true if PCA's pins A0+A1+A2 are pulled to GND)
	#endif

	//################## BUTTON-Layout ##################################
	/* German documentation: https://forum.espuino.de/t/das-dynamische-button-layout/224
	Please note the following numbers as you need to know them in order to define actions for buttons.
	Even if you don't use all of them, their numbers won't change
		0: NEXT_BUTTON
		1: PREVIOUS_BUTTON
		2: PAUSEPLAY_BUTTON
		3: ROTARYENCODER_BUTTON
		4: BUTTON_4
		5: BUTTON_5

	Don't forget to enable/configure those buttons you want to use in your develboard-specific config (e.g. settings-custom.h)

	Single-buttons [can be long or short] (examples):
		BUTTON_0_SHORT => Button 0 (NEXT_BUTTON) pressed shortly
		BUTTON_3_SHORT => Button 3 (ROTARYENCODER_BUTTON) pressed shortly
		BUTTON_4_LONG => Button 4 (BUTTON_4) pressed long

	Multi-buttons [short only] (examples):
		BUTTON_MULTI_01 => Buttons 0+1 (NEXT_BUTTON + PREVIOUS_BUTTON) pressed in parallel
		BUTTON_MULTI_12 => Buttons 1+2 (PREV_BUTTON + PAUSEPLAY_BUTTON) pressed in parallel

	Actions:
		To all of those buttons, an action can be assigned freely.
		Please have a look at values.h to look up actions available (>=100 can be used)
		If you don't want to assign an action or you don't use a given button: CMD_NOTHING has to be set
	*/
	// *****BUTTON*****        *****ACTION*****
	#define BUTTON_0_SHORT    CMD_NEXTTRACK
	#define BUTTON_1_SHORT    CMD_PREVTRACK
	#define BUTTON_2_SHORT    CMD_PLAYPAUSE
	#define BUTTON_3_SHORT    CMD_MEASUREBATTERY
	#define BUTTON_4_SHORT    CMD_SEEK_BACKWARDS
	#define BUTTON_5_SHORT    CMD_SEEK_FORWARDS

	#define BUTTON_0_LONG     CMD_NOTHING //CMD_LASTTRACK
	#define BUTTON_1_LONG     CMD_NOTHING //CMD_FIRSTTRACK
	#define BUTTON_2_LONG     CMD_PLAYPAUSE
	#define BUTTON_3_LONG     CMD_SLEEPMODE
	#define BUTTON_4_LONG     CMD_VOLUMEUP
	#define BUTTON_5_LONG     CMD_VOLUMEDOWN

	#define BUTTON_MULTI_01   CMD_TOGGLE_WIFI_STATUS //(disabled now to prevent children from unwanted WiFi-disable)
	#define BUTTON_MULTI_02   CMD_ENABLE_FTP_SERVER
	#define BUTTON_MULTI_03   CMD_NOTHING
	#define BUTTON_MULTI_04   CMD_NOTHING
	#define BUTTON_MULTI_05   CMD_NOTHING
	#define BUTTON_MULTI_12   CMD_TELL_IP_ADDRESS
	#define BUTTON_MULTI_13   CMD_NOTHING
	#define BUTTON_MULTI_14   CMD_NOTHING
	#define BUTTON_MULTI_15   CMD_NOTHING
	#define BUTTON_MULTI_23   CMD_TOGGLE_BLUETOOTH_SOURCE_MODE
	#define BUTTON_MULTI_24   CMD_NOTHING
	#define BUTTON_MULTI_25   CMD_NOTHING
	#define BUTTON_MULTI_34   CMD_NOTHING
	#define BUTTON_MULTI_35   CMD_NOTHING
	#define BUTTON_MULTI_45   CMD_NOTHING

	//#################### Various settings ##############################

	// Serial-logging-configuration
	#define SERIAL_LOGLEVEL LOGLEVEL_DEBUG              // Current loglevel for serial console

    // DEPRECATED: This is now done using dynamic network configuration.
    //              If left, it is used for the automatic migration exactly once
	// Static ip-configuration
	#ifdef STATIC_IP_ENABLE
		#define LOCAL_IP   192,168,2,100                // ESPuino's IP
		#define GATEWAY_IP 192,168,2,1                  // IP of the gateway/router
		#define SUBNET_IP  255,255,255,0                // Netmask of your network (/24 => 255.255.255.0)
		#define DNS_IP     192,168,2,1                  // DNS-server of your network; in private networks it's usually the gatewy's IP
	#endif

	// Buttons (better leave unchanged if in doubts :-))
	constexpr uint8_t buttonDebounceInterval = 50;                // Interval in ms to software-debounce buttons
	constexpr uint16_t intervalToLongPress = 700;                 // Interval in ms to distinguish between short and long press of buttons

	// Buttons active state: Default 0 for active LOW, 1 for active HIGH e.g. for TTP223 Capacitive Touch Switch Button (FinnBox)
	#define BUTTON_0_ACTIVE_STATE 0
	#define BUTTON_1_ACTIVE_STATE 0
	#define BUTTON_2_ACTIVE_STATE 0
	#define BUTTON_3_ACTIVE_STATE 0
	#define BUTTON_4_ACTIVE_STATE 0
	#define BUTTON_5_ACTIVE_STATE 0

	//#define CONTROLS_LOCKED_BY_DEFAULT			// If set the controls are locked at boot
	#define INCLUDE_ROTARY_IN_CONTROLS_LOCK			// If set the rotary encoder is locked if controls are locked

	// RFID-RC522
	#define RFID_SCAN_INTERVAL 100                      // Interval-time in ms (how often is RFID read?)

	// Automatic restart
	#ifdef SHUTDOWN_IF_SD_BOOT_FAILS
		constexpr uint32_t deepsleepTimeAfterBootFails = 20;      // Automatic restart takes place if boot was not successful after this period (in seconds)
	#endif

	// FTP
	// Nothing to be configured here...
	// Default user/password is esp32/esp32 but can be changed via webgui

	// timezone
	// see list of valid timezones: https://github.com/nayarsystems/posix_tz_db/blob/3edd201fa1131db7d09fd90cbb66d2f33d8915b3/zones.csv
	// example for Europe/Berlin:	"CET-1CEST,M3.5.0,M10.5.0/3"
	// example for America/Toronto:	"EST5EDT,M3.2.0,M11.1.0"
	constexpr const char timeZone[] = "CET-1CEST,M3.5.0,M10.5.0/3"; // Europe/Berlin

	// ESPuino will create a WiFi if joing existing WiFi was not possible. Name and password can be configured here.
	constexpr const char accessPointNetworkSSID[] = "ESPuino";     // Access-point's SSID
	constexpr const char accessPointNetworkPassword[] = "";        // Access-point's Password, at least 8 characters! Set to an empty string to spawn an open WiFi.

	// Bluetooth
	constexpr const char nameBluetoothSinkDevice[] = "ESPuino";        // Name of your ESPuino as Bluetooth-device

	// Where to store the backup-file for NVS-records
	constexpr const char backupFile[] = "/backup.txt"; // File is written every time a (new) RFID-assignment via GUI is done

	//#################### Settings for optional Modules##############################
	// (optinal) Neopixel
	#ifdef NEOPIXEL_ENABLE
		#define NUM_INDICATOR_LEDS		24          	// number of Neopixel LEDs (formerly NUM_LEDS)
		#define NUM_CONTROL_LEDS		0		// optional control leds (https://forum.espuino.de/t/statische-ws2812-leds/1703)
                #define CONTROL_LEDS_COLORS		{}		// Colors for the control LEDs. Make sure it lists at least NUM_CONTROL_LEDS colors, e.g. for three control LEDs define: CONTROL_LEDS_COLORS {CRGB::Yellow, CRGB::Blue, 0xFFFFFF} (predefined colors: http://fastled.io/docs/3.1/struct_c_r_g_b.html)
		#define CHIPSET					WS2812B     	// type of Neopixel
		#define COLOR_ORDER				GRB
		#define NUM_LEDS_IDLE_DOTS		4           	// count of LEDs, which are shown when Idle
		#define OFFSET_PAUSE_LEDS		false		// if true the pause-leds are centered in the mid of the LED-Strip
		#define PROGRESS_HUE_START		85          	// Start and end hue of mulitple-LED progress indicator. Hue ranges from basically 0 - 255, but you can also set numbers outside this range to get the desired effect (e.g. 85-215 will go from green to purple via blue, 341-215 start and end at exactly the same color but go from green to purple via yellow and red)
		#define PROGRESS_HUE_END		-1
		#define DIMMABLE_STATES			50		// Number of dimmed values between two full LEDs (https://forum.espuino.de/t/led-verbesserungen-rework/1739)
		//#define LED_OFFSET                		0           	// shifts the starting LED in the original direction of the neopixel ring
	#endif

	#if defined(MEASURE_BATTERY_VOLTAGE) || defined(MEASURE_BATTERY_MAX17055)
		#define BATTERY_MEASURE_ENABLE                 // Don't change. Set automatically if any method of battery monitoring is selected.
		constexpr uint8_t s_batteryCheckInterval = 10; // How often battery is measured (in minutes) (can be changed via GUI!)
	#endif

	#ifdef MEASURE_BATTERY_VOLTAGE
		// (optional) Default-voltages for battery-monitoring via Neopixel; can be changed later via WebGUI
		constexpr float s_warningLowVoltage = 3.4;                      // If battery-voltage is <= this value, a cyclic warning will be indicated by Neopixel (can be changed via GUI!)
		constexpr float s_warningCriticalVoltage = 3.1;                 // If battery-voltage is <= this value, assume battery near-empty. Set to 0V to disable.
		constexpr float s_voltageIndicatorLow = 3.0;                    // Lower range for Neopixel-voltage-indication (0 leds) (can be changed via GUI!)
		constexpr float s_voltageIndicatorHigh = 4.2;                   // Upper range for Neopixel-voltage-indication (all leds) (can be changed via GUI!)
	#endif

	#ifdef MEASURE_BATTERY_MAX17055
		constexpr float s_batteryLow = 15.0;            // low percentage
		constexpr float s_batteryCritical = 5.0;        // critical percentage

		constexpr uint16_t s_batteryCapacity = 6000;    // design cap of battery (mAh)
		constexpr uint16_t s_emptyVoltage = 300;        // empty voltage in 10mV
		constexpr uint16_t s_recoveryVoltage = 360;     // recovery voltage in 10mV
		constexpr uint8_t  s_batteryChemistry = 0x60;   // 0 = Li-Ion, 0x20 = NCR, 0x60 = LiFePO4
		constexpr float s_resistSensor = 0.01;          // current sense resistor, currently non-default values might lead to problems
		constexpr bool s_vCharge = false;                   // true if charge voltage is greater than 4.275V
	#endif

	// enable I2C if necessary
	#if defined(RFID_READER_TYPE_MFRC522_I2C) || defined(PORT_EXPANDER_ENABLE) || defined(MEASURE_BATTERY_MAX17055)
		#define I2C_2_ENABLE
	#endif

	// (optinal) Headphone-detection (leave unchanged if in doubts...)
	#ifdef HEADPHONE_ADJUST_ENABLE
		constexpr uint16_t headphoneLastDetectionDebounce = 1000; // Debounce-interval in ms when plugging in headphone
	#endif

	// Seekmode-configuration
	constexpr uint8_t jumpOffset = 30;                            // Offset in seconds to jump for commands CMD_SEEK_FORWARDS / CMD_SEEK_BACKWARDS

	// (optional) Topics for MQTT
	#ifdef MQTT_ENABLE
		constexpr uint16_t mqttRetryInterval = 60;                // Try to reconnect to MQTT-server every (n) seconds if connection is broken
		constexpr uint8_t mqttMaxRetriesPerInterval = 1;          // Number of retries per time-interval (mqttRetryInterval). mqttRetryInterval 60 / mqttMaxRetriesPerInterval 1 => once every 60s
		#define DEVICE_HOSTNAME "ESP32-ESPuino"         // Name that is used for MQTT
		constexpr const char topicSleepCmnd[] = "Cmnd/ESPuino/Sleep";
		constexpr const char topicSleepState[] = "State/ESPuino/Sleep";
		constexpr const char topicRfidCmnd[] = "Cmnd/ESPuino/Rfid";
		constexpr const char topicRfidState[] = "State/ESPuino/Rfid";
		constexpr const char topicTrackState[] = "State/ESPuino/Track";
		constexpr const char topicTrackControlCmnd[] = "Cmnd/ESPuino/TrackControl";
		constexpr const char topicCoverChangedState[] = "State/ESPuino/CoverChanged";
		constexpr const char topicLoudnessCmnd[] = "Cmnd/ESPuino/Loudness";
		constexpr const char topicLoudnessState[] = "State/ESPuino/Loudness";
		constexpr const char topicSleepTimerCmnd[] = "Cmnd/ESPuino/SleepTimer";
		constexpr const char topicSleepTimerState[] = "State/ESPuino/SleepTimer";
		constexpr const char topicState[] = "State/ESPuino/State";
		constexpr const char topicCurrentIPv4IP[] = "State/ESPuino/IPv4";
		constexpr const char topicLockControlsCmnd[] ="Cmnd/ESPuino/LockControls";
		constexpr const char topicLockControlsState[] ="State/ESPuino/LockControls";
		constexpr const char topicPlaymodeState[] = "State/ESPuino/Playmode";
		constexpr const char topicRepeatModeCmnd[] = "Cmnd/ESPuino/RepeatMode";
		constexpr const char topicRepeatModeState[] = "State/ESPuino/RepeatMode";
		constexpr const char topicLedBrightnessCmnd[] = "Cmnd/ESPuino/LedBrightness";
		constexpr const char topicLedBrightnessState[] = "State/ESPuino/LedBrightness";
		constexpr const char topicWiFiRssiState[] = "State/ESPuino/WifiRssi";
		constexpr const char topicSRevisionState[] = "State/ESPuino/SoftwareRevision";
		#ifdef BATTERY_MEASURE_ENABLE
		constexpr const char topicBatteryVoltage[] = "State/ESPuino/Voltage";
		constexpr const char topicBatterySOC[]     = "State/ESPuino/Battery";
		#endif
	#endif

	// !!! MAKE SURE TO EDIT PLATFORM SPECIFIC settings-****.h !!!
	#if (HAL == 1)
		#include "settings-lolin32.h"                       // Contains all user-relevant settings for Wemos Lolin32
	#elif (HAL == 2)
		#include "settings-espa1s.h"                        // Contains all user-relevant settings for ESP32-A1S Audiokit
	#elif (HAL == 3)
		#include "settings-lolin_d32.h"                     // Contains all user-relevant settings for Wemos Lolin D32
	#elif (HAL == 4)
		#include "settings-lolin_d32_pro.h"                 // Contains all user-relevant settings for Wemos Lolin D32 pro
	#elif (HAL == 5)
		#include "settings-ttgo_t8.h"                       // Contains all user-relevant settings for Lilygo TTGO T8 1.7
	#elif (HAL == 6)
		#include "settings-complete.h"                      // Contains all user-relevant settings for ESPuino complete
	#elif (HAL == 7)
		#include "settings-lolin_d32_pro_sdmmc_pe.h"        // Pre-configured settings for ESPuino Lolin D32 pro with SDMMC + port-expander (https://forum.espuino.de/t/espuino-minid32pro-lolin-d32-pro-mit-sd-mmc-und-port-expander-smd/866)
	#elif (HAL == 8)
		#include "settings-azdelivery_sdmmc.h"              // Pre-configured settings for AZ Delivery ESP32 NodeMCU / Devkit C (https://forum.espuino.de/t/az-delivery-esp32-nodemcu-devkit-c-mit-sd-mmc-und-pn5180-als-rfid-leser/634)
	#elif (HAL == 9)
		#include "settings-lolin_d32_sdmmc_pe.h"            // Pre-configured settings for Lolin D32 (non-pro) with SDMMC + port-expander (https://forum.espuino.de/t/espuino-minid32-pro-lolin-d32-pro-mit-sd-mmc-und-port-expander-smd/866)
	#elif (HAL == 99)
		#include "settings-custom.h"                        // Contains all user-relevant settings custom-board
	#endif

	//#define ENABLE_ESPUINO_DEBUG                            // Needs modification of platformio.ini (https://forum.espuino.de/t/rfid-mit-oder-ohne-task/353/21); better don't enable unless you know what you're doing :-)
	#endif //settings_override
#endif

PN5180 mit FW 3.5

http://streams.regenbogen.de/rr-kinderlieder-128-mp3
Das hat auch immer einwandfrei funktioniert bis die WiFi Probleme auftraten.

Um das ganze nochmal zu entwirren. Es scheint um zwei Probleme zu gehen. Ich weiß nicht ob sie miteinander zutun haben. Einmal ist die WiFi Verbindung instabil (oder der Webserver und FTP). Und als zweites bekomme ich einen Bootloop, wenn ich in den BT-Source Modus schalte.

Das mit der Bootloop hat sich damit erledigt. Scheint wieder zu funktionieren.

WiFi / Webseite / FTP hingegen nicht.

Ich habe jetzt mal Debug Level 6 angemacht und sehe folgendes während ich im Browser das Webinterface offen habe:

08:53:57.581 > D [134113] ws[/ws][4] connect
08:53:57.581 > [134115][V][Preferences.cpp:400] getUInt(): nvs_get_u32 fail: maxVolumeHp NOT_FOUND
08:54:02.762 > [139294][W][AsyncTCP.cpp:962] _poll(): ack timeout 4
08:54:02.762 > D [139296] ws[/ws][4] disconnect
08:54:02.762 > [139297][W][AsyncTCP.cpp:962] _poll(): ack timeout 4
08:54:02.770 > D [139299] ws[/ws][3] disconnect
08:55:17.557 > D [214087] ws[/ws][5] connect
08:55:17.558 > [214090][V][Preferences.cpp:400] getUInt(): nvs_get_u32 fail: maxVolumeHp NOT_FOUND
08:55:22.782 > [219312][W][AsyncTCP.cpp:962] _poll(): ack timeout 4
08:55:22.782 > D [219314] ws[/ws][5] disconnect
08:55:31.479 > D [228010] ws[/ws][6] connect
08:55:31.479 > [228013][V][Preferences.cpp:400] getUInt(): nvs_get_u32 fail: maxVolumeHp NOT_FOUND
08:55:42.545 > D [239078] ws[/ws][7] connect
08:55:42.545 > [239080][V][Preferences.cpp:400] getUInt(): nvs_get_u32 fail: maxVolumeHp NOT_FOUND
08:55:47.789 > [244326][W][AsyncTCP.cpp:962] _poll(): ack timeout 4
08:55:47.797 > D [244328] ws[/ws][7] disconnect
08:55:47.797 > [244329][W][AsyncTCP.cpp:962] _poll(): ack timeout 4
08:55:47.805 > D [244330] ws[/ws][6] disconnect

Nachdem ich in den Settings #define HEADPHONE_ADJUST_ENABLE eingeschaltet habe, sind die beiden nvs_get fails weg. aber das _poll(): ack timeout 4 bleibt.

Wenn ich im Browser nach einem Neustart des ESP die Seite aufrufe, kann ich in der Entwicklerconsole folgendes sehen. Ich mache dabei nichts. Die Seite ist einafch nur geöffnet. Sobald die Fehler beginnen, sehe ich dann im ESP Log auch wieder die _poll(): ack timeout 4 Meldungen

bootstrap-slider.min.js:5 bootstrap-slider.js - WARNING: $.fn.slider namespace is already bound. Use the $.fn.bootstrapSlider namespace instead.
09:20:32.756 i18nextHttpBackend.min.js:1 Fetch finished loading: GET 
09:20:32.759 i18next.min.js:1 i18next::backendConnector: loaded namespace 
09:20:32.760 i18next.min.js:1 i18next: languageChanged en
09:20:32.760 i18next.min.js:1 i18next: initialized {debug: true, initImmediate: true, 
09:20:32.768 jquery.min.js:2 XHR finished loading: GET 
09:20:32.791 (index):1546 {"settings":{"current":{"volume":3,"rfidTagId":""},"general":{"initVolume":3,"maxVolumeSp":0,"maxVolumeHp":0,"sleepInactivity":10},"wifi":{"hostname":"ESPuino","scanOnStart":false},"led":{"initBrightness":16,"nightBrightness":2},"battery":{"warnLowVoltage":3.400000095,"indicatorLow":3,"indicatorHi":4.199999809,"criticalVoltage":3.099999905,"voltageCheckInterval":10},"ftp":{"username":"esp32","password":"esp32","maxUserLength":9,"maxPwdLength":9},"bluetooth":{"deviceName":"","pinCode":""}}}
09:20:32.812 i18next.min.js:1 i18next::backendConnector: loaded namespace translation for language de {submit: 'Absenden', restart: 'Neustart', reset: 'Reset', execute: 'Ausführen', title: 'ESPuino-Konfiguration', …}
09:20:32.827 i18next.min.js:1 i18next: languageChanged de
09:20:32.828 i18nextHttpBackend.min.js:1 Fetch finished loading: GET 
09:20:32.830 (index):1546 {"status":"ok"}
09:20:32.881 (index):1546 {"settings":{"ssids":{"savedSSIDs":["FremdenNetz"],"active":"FremdenNetz"}}}
09:20:32.882 (index):1727 appending ssid FremdenNetz
09:20:32.882 (index):1734 comparing ssid vs active: FremdenNetz FremdenNetz
09:20:32.935 (index):1546 {"status":"ok"}
09:20:33.002 (index):1546 {"trackinfo":{"pausePlay":false,"currentTrackNumber":1,"numberOfTracks":0,"volume":3,"name":"","posPercent":0,"playMode":0}}
09:20:33.049 (index):1546 {"coverimg":"coverimg"}
09:20:33.100 (index):1546 {"status":"ok"}
09:20:49.871 (index):1534 Socket is closed. Reconnect will be attempted in 5 seconds. 
09:20:58.001 (index):1546 {"settings":{"current":{"volume":3,"rfidTagId":""},"general":{"initVolume":3,"maxVolumeSp":0,"maxVolumeHp":0,"sleepInactivity":10},"wifi":{"hostname":"ESPuino","scanOnStart":false},"led":{"initBrightness":16,"nightBrightness":2},"battery":{"warnLowVoltage":3.400000095,"indicatorLow":3,"indicatorHi":4.199999809,"criticalVoltage":3.099999905,"voltageCheckInterval":10},"ftp":{"username":"esp32","password":"esp32","maxUserLength":9,"maxPwdLength":9},"bluetooth":{"deviceName":"","pinCode":""}}}
09:21:03.123 (index):1534 Socket is closed. Reconnect will be attempted in 5 seconds. 
09:21:08.179 (index):1546 {"settings":{"current":{"volume":3,"rfidTagId":""},"general":{"initVolume":3,"maxVolumeSp":0,"maxVolumeHp":0,"sleepInactivity":10},"wifi":{"hostname":"ESPuino","scanOnStart":false},"led":{"initBrightness":16,"nightBrightness":2},"battery":{"warnLowVoltage":3.400000095,"indicatorLow":3,"indicatorHi":4.199999809,"criticalVoltage":3.099999905,"voltageCheckInterval":10},"ftp":{"username":"esp32","password":"esp32","maxUserLength":9,"maxPwdLength":9},"bluetooth":{"deviceName":"","pinCode":""}}}
09:21:08.230 (index):1546 {"status":"ok"}
09:21:13.633 (index):1534 Socket is closed. Reconnect will be attempted in 5 seconds. 
09:21:17.760 (index):1888 Uncaught TypeError: Cannot read properties of null (reading 'send')
    at ping ((index):1888:10)
ping @ (index):1888
setInterval (async)
socket.onopen @ (index):1523
09:21:23.165 (index):1888 Uncaught DOMException: Failed to execute 'send' on 'WebSocket': Still in CONNECTING state.
    at ping (http://192.168.1.82/:1888:10)
ping @ (index):1888
setInterval (async)
socket.onopen @ (index):1523
09:21:27.987 (index):1888 Uncaught DOMException: Failed to execute 'send' on 'WebSocket': Still in CONNECTING state.
    at ping (http://192.168.1.82/:1888:10)
ping @ (index):1888
setInterval (async)
socket.onopen @ (index):1523
09:21:32.758 (index):1888 Uncaught DOMException: Failed to execute 'send' on 'WebSocket': Still in CONNECTING state.
    at ping (http://192.168.1.82/:1888:10)
ping @ (index):1888
setInterval (async)
socket.onopen @ (index):1523
09:21:38.177 (index):1888 Uncaught DOMException: Failed to execute 'send' on 'WebSocket': Still in CONNECTING state.
    at ping (http://192.168.1.82/:1888:10)
ping @ (index):1888
setInterval (async)
socket.onopen @ (index):1523
09:21:39.679 (index):1520 WebSocket connection to 'ws://192.168.1.82/ws' failed: 
connect @ (index):1520
(anonymous) @ (index):1537
09:21:39.680 (index):1542 Socket encountered error:  undefined Closing socket
socket.onerror @ (index):1542
error (async)
connect @ (index):1541
(anonymous) @ (index):1537
setTimeout (async)
socket.onclose @ (index):1536
09:21:39.681 (index):1534 Socket is closed. Reconnect will be attempted in 5 seconds. 
09:21:42.998 (index):1888 Uncaught TypeError: Cannot read properties of null (reading 'send')
    at ping ((index):1888:10)
ping @ (index):1888
setInterval (async)
socket.onopen @ (index):1523
09:21:47.753 (index):1888 Uncaught DOMException: Failed to execute 'send' on 'WebSocket': Still in CONNECTING state.
    at ping (http://192.168.1.82/:1888:10)
ping @ (index):1888
setInterval (async)
socket.onopen @ (index):1523
09:21:53.173 (index):1888 Uncaught DOMException: Failed to execute 'send' on 'WebSocket': Still in CONNECTING state.
    at ping (http://192.168.1.82/:1888:10)
ping @ (index):1888
setInterval (async)
socket.onopen @ (index):1523
09:21:57.992 (index):1888 Uncaught DOMException: Failed to execute 'send' on 'WebSocket': Still in CONNECTING state.
    at ping (http://192.168.1.82/:1888:10)
ping @ (index):1888
setInterval (async)
socket.onopen @ (index):1523
09:22:02.749 (index):1888 Uncaught DOMException: Failed to execute 'send' on 'WebSocket': Still in CONNECTING state.
    at ping (http://192.168.1.82/:1888:10)
ping @ (index):1888
setInterval (async)
socket.onopen @ (index):1523
09:22:05.819 (index):1520 WebSocket connection to 'ws://192.168.1.82/ws' failed: 
connect @ (index):1520
(anonymous) @ (index):1537
09:22:05.819 (index):1542 Socket encountered error:  undefined Closing socket
socket.onerror @ (index):1542
error (async)
connect @ (index):1541
(anonymous) @ (index):1537
setTimeout (async)
socket.onclose @ (index):1536
09:22:05.820 (index):1534 Socket is closed. Reconnect will be attempted in 5 seconds. 
09:22:08.386 (index):1888 Uncaught TypeError: Cannot read properties of null (reading 'send')
    at ping ((index):1888:10)
ping @ (index):1888
setInterval (async)
socket.onopen @ (index):1523
09:22:12.987 (index):1888 Uncaught DOMException: Failed to execute 'send' on 'WebSocket': Still in CONNECTING state.
    at ping (http://192.168.1.82/:1888:10)
ping @ (index):1888
setInterval (async)
socket.onopen @ (index):1523
09:22:17.752 (index):1888 Uncaught DOMException: Failed to execute 'send' on 'WebSocket': Still in CONNECTING state.
    at ping (http://192.168.1.82/:1888:10)

Ich hatte gerade noch eine Eingebung.
Ich habe den ESPuino nun mal mit dem Hotspot meines Smartphones verbunden. Und siehe da, alles läuft. Das Problem liegt also vermutlich an meinem Netzwerk -.-
Dann mache ich mich mal auf die Suche nach dem Problem in meinem Unifi Controller.

Oh man. Da hätte ich ja auch mal drauf kommen können. Ich habe jetzt mal meinen AP (Unifi U6 LR) neu gestartet und siehe da, es funktioniert wieder alles. Hatte gestern schon den Rest des Equipments neu gestartet (Glasfasermodem, Gateway, Switch). Den AP habe ich natürlich ausgelassen -.-

1 „Gefällt mir“

Ich hatte erst vor kurzem Bluetooth-Kopfhörer erfolgreich getestet, Frage warum der RFID-Taskspeicher bei Dir zu klein bemessen ist. Weil evt. müssten wir den Speicher hier vergrößern.

Dein PN5180 läuft reibungslos?
Ich hatte letztens so einen Fehler, am Ende lag es aber an meiner schlechten Lötstelle an der RFID-Buchse. Prüfe das auch noch mal um Hardware als Ursache auszuschließen.