schreibfaul1 / ESP32-MiniWebRadio

Internetradio with ESP32, I2S DAC and SPI TFT Display with Touchpad
https://www.youtube.com/watch?v=6QbPee2583o
289 stars 76 forks source link

ESP32 configuration only, Error: 'BT_EMITTER_CONNECT' was not declared in this scope (common.h) #441

Open TubaFonse opened 4 weeks ago

TubaFonse commented 4 weeks ago

Hallo Wolle, nur in der ESP32 Konfiguration common.h erhalte ich Compiler-Error, weil hier die Zeile

define BT_EMITTER_CONNECT … fehlt.

Ich habe diese versuchsweise aus der ESP32-S3 Konfiguration kopiert und auf -1 gesetzt. Frage: Kann CONNECT mit ESP32 nicht benutzt werden - oder musst Du das nur noch ergänzen, da laut Deiner Beschreibung / Schematic "CONNECT" nur beim ESP32-S3 angeschlossen ist? Schematic ESP32: grafik

Schematic ESP32-S3: grafik

Grüße, Alfons.

Fehlermeldung: Building in release mode Compiling .pio\build\esp32\src\audiotask.cpp.o Compiling .pio\build\esp32\src\main.cpp.o src/main.cpp: In function 'void setup()': src/main.cpp:1579:8: error: 'BT_EMITTER_CONNECT' was not declared in this scope if(BT_EMITTER_CONNECT != -1){ ^~~~~~ src/main.cpp:1579:8: note: suggested alternative: 'BT_EMITTER_MODE' if(BT_EMITTER_CONNECT != -1){ ^~~~~~ BT_EMITTER_MODE src/main.cpp: In function 'void fall_asleep()': src/main.cpp:1882:8: error: 'BT_EMITTER_CONNECT' was not declared in this scope if(BT_EMITTER_CONNECT != -1){digitalWrite(BT_EMITTER_CONNECT, HIGH); bt_emitter.cmd_PowerOff();} ^~~~~~ src/main.cpp:1882:8: note: suggested alternative: 'BT_EMITTER_MODE' if(BT_EMITTER_CONNECT != -1){digitalWrite(BT_EMITTER_CONNECT, HIGH); bt_emitter.cmd_PowerOff();} ^~~~~~ BT_EMITTER_MODE src/main.cpp: In function 'void wake_up()': src/main.cpp:1905:12: error: 'BT_EMITTER_CONNECT' was not declared in this scope if(BT_EMITTER_CONNECT != -1){digitalWrite(BT_EMITTER_CONNECT, LOW); vTaskDelay(100); digitalWrite(BT_EMITTER_CONNECT, HIGH);} // POWER_ON ^~~~~~ src/main.cpp:1905:12: note: suggested alternative: 'BT_EMITTER_MODE' if(BT_EMITTER_CONNECT != -1){digitalWrite(BT_EMITTER_CONNECT, LOW); vTaskDelay(100); digitalWrite(BT_EMITTER_CONNECT, HIGH);} // POWER_ON ^~~~~~ BT_EMITTER_MODE *** [.pio\build\esp32\src\main.cpp.o] Error 1 Environment Status Duration


esp32 FAILED 00:00:19.289

schreibfaul1 commented 4 weeks ago

Das ist total schwierig. Dem ESP32 gehen die Pins aus. Was noch frei wäre ist GPIO12. Das ist ein "strapping pin" der beim Start auf Masse gezogen werden muss, bzw. auf dem Board befindet sich dafür ein geeignete Komponente die das erledigt, das kann eine LED oder ein Widerstand sein. Versuchsweise kannst du GPIO12 für die Display Hintergrundbeleuchtung verwenden. Dann wäre Pin32 frei für "Connect". Ich hab es nicht getestet, aber es könnte funktionieren. Hintergrund: Es gibt ein AT+POWER_OFF Kommando, welches den BT-Emitter deaktiviert. Die Reaktivierung ist nur mit der Taste oder über "Connect" möglich.

TubaFonse commented 4 weeks ago

Hallo Wolle, im #ifdef CONFIG_IDF_TARGET_ESP32 -Zweig in der common.h musst Du aber den BT_EMITTER_CONNECT trotzdem definieren (ich hab nach Zeile 85 eingefügt:

define BT_EMITTER_CONNECT -1

Gruß, Alfons.