FYI: Für mich ist der dev branch aktuell broken - ich baue das lolin_d32_pro_sdmmc_pe:
Compiling .pio\build\lolin_d32_pro_sdmmc_pe\src\System.cpp.o
src/Bluetooth.cpp: In function 'void Bluetooth_VolumeChanged(int)':
src/Bluetooth.cpp:153:18: warning: comparison of unsigned expression < 0 is always false [-Wtype-limits]
if (_newVolume < BLUETOOTHPLAYER_VOLUME_MIN) {
^
src/Bluetooth.cpp: In function 'void Bluetooth_Init()':
src/Bluetooth.cpp:176:37: warning: missing initializer for member 'i2s_pin_config_t::mck_io_num' [-Wmissing-field-initializers]
.data_in_num = I2S_PIN_NO_CHANGE};
^
src/Bluetooth.cpp: In function 'void Bluetooth_SetVolume(int32_t, bool)':
src/Bluetooth.cpp:283:18: warning: comparison of unsigned expression < 0 is always false [-Wtype-limits]
if (_newVolume < BLUETOOTHPLAYER_VOLUME_MIN) {
^
Compiling .pio\build\lolin_d32_pro_sdmmc_pe\src\Web.cpp.o
Compiling .pio\build\lolin_d32_pro_sdmmc_pe\src\Wlan.cpp.o
Compiling .pio\build\lolin_d32_pro_sdmmc_pe\src\main.cpp.o
Building .pio\build\lolin_d32_pro_sdmmc_pe\bootloader.bin
Generating partitions .pio\build\lolin_d32_pro_sdmmc_pe\partitions.bin
In file included from src/AudioPlayer.cpp:7:
src/Common.h: In function 'bool isNumber(const char*)':
src/Common.h:11:2: error: reference to 'byte' is ambiguous
byte i = 0;
^~~~
In file included from c:\users\uli\.platformio\packages\toolchain-xtensa-esp32@8.4.0+2021r2-patch5\xtensa-esp32-elf\include\c++\8.4.0\cmath:42,
from c:\users\uli\.platformio\packages\toolchain-xtensa-esp32@8.4.0+2021r2-patch5\xtensa-esp32-elf\include\c++\8.4.0\math.h:36,
from C:/Users/Uli/.platformio/packages/framework-arduinoespressif32/cores/esp32/esp32-hal.h:30,
from C:/Users/Uli/.platformio/packages/framework-arduinoespressif32/cores/esp32/Arduino.h:36,
from src/AudioPlayer.cpp:1:
c:\users\uli\.platformio\packages\toolchain-xtensa-esp32@8.4.0+2021r2-patch5\xtensa-esp32-elf\include\c++\8.4.0\bits\cpp_type_traits.h:395:30: note: candidates are: 'enum class std::byte'
enum class byte : unsigned char;
^~~~
In file included from src/AudioPlayer.cpp:1:
C:/Users/Uli/.platformio/packages/framework-arduinoespressif32/cores/esp32/Arduino.h:133:17: note: 'typedef uint8_t byte'
typedef uint8_t byte;
^~~~
In file included from src/AudioPlayer.cpp:7:
src/Common.h:13:17: error: 'i' was not declared in this scope
while (*(str + i) != '\0') {
^
src/Common.h:19:6: error: 'i' was not declared in this scope
if (i > 0) {
^
In file included from .pio/libdeps/lolin_d32_pro_sdmmc_pe/FastLED/src/FastLED.h:75,
from src/Led.cpp:16:
.pio/libdeps/lolin_d32_pro_sdmmc_pe/FastLED/src/fastspi.h:157:23: note: #pragma message: No hardware SPI pins defined. All SPI access will default to bitbanged output
# pragma message "No hardware SPI pins defined. All SPI access will default to bitbanged output"
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
esptool.py v4.5
Creating esp32 image...
Merged 1 ELF section
Successfully created esp32 image.
Compiling .pio\build\lolin_d32_pro_sdmmc_pe\lib56e\FS\FS.cpp.o
Compiling .pio\build\lolin_d32_pro_sdmmc_pe\lib56e\FS\vfs_api.cpp.o
Compiling .pio\build\lolin_d32_pro_sdmmc_pe\libbfc\FFat\FFat.cpp.o
Compiling .pio\build\lolin_d32_pro_sdmmc_pe\lib455\SPI\SPI.cpp.o
Compiling .pio\build\lolin_d32_pro_sdmmc_pe\libb94\SD\SD.cpp.o
*** [.pio\build\lolin_d32_pro_sdmmc_pe\src\AudioPlayer.cpp.o] Error 1
src/Port.cpp: In function 'void Port_Write(uint8_t, bool, bool)':
src/Port.cpp:100:16: warning: comparison is always true due to limited range of data type [-Wtype-limits]
if (_channel >= 0 && _channel <= MAX_GPIO) {
~~~~~~~~~^~~~
src/RfidMfrc522.cpp: In function 'void Rfid_Task(void*)':
src/RfidMfrc522.cpp:61:11: warning: unused variable 'control' [-Wunused-variable]
uint8_t control = 0x00;
^~~~~~~
src/SdCard.cpp: In function 'char** SdCard_ReturnPlaylist(const char*, uint32_t)':
src/SdCard.cpp:292:83: warning: comparison of unsigned expression >= 0 is always true [-Wtype-limits]
if (fileOrDirectory && !fileOrDirectory.isDirectory() && fileOrDirectory.size() >= 0) {
~~~~~~~~~~~~~~~~~~~~~~~^~~~
src/Mqtt.cpp:289:6: warning: 'void Mqtt_ClientCallback(const char*, const byte*, uint32_t)' defined but not used [-Wunused-function]
void Mqtt_ClientCallback(const char *topic, const byte *payload, uint32_t length) {
^~~~~~~~~~~~~~~~~~~
src/Mqtt.cpp:203:6: warning: 'bool Mqtt_Reconnect()' defined but not used [-Wunused-function]
bool Mqtt_Reconnect() {
^~~~~~~~~~~~~~
src/Mqtt.cpp:189:6: warning: 'void Mqtt_PostWiFiRssi()' defined but not used [-Wunused-function]
void Mqtt_PostWiFiRssi(void) {
^~~~~~~~~~~~~~~~~
src/Web.cpp: In function 'void Web_DeleteCachefile(const char*)':
src/Web.cpp:1025:43: warning: '%s' directive output may be truncated writing up to 255 bytes into a region of size 253 [-Wformat-truncation=]
snprintf(Log_Buffer, Log_BufferLength, "%s: %s", (char *) FPSTR(erasePlaylistCachefile), cacheFile);
^~~~~~~~ ~~~~~~~~~
src/Web.cpp:1025:12: note: 'snprintf' output 3 or more bytes (assuming 258) into a destination of size 255
snprintf(Log_Buffer, Log_BufferLength, "%s: %s", (char *) FPSTR(erasePlaylistCachefile), cacheFile);
~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/Web.cpp: In function 'void explorerHandleRenameRequest(AsyncWebServerRequest*)':
src/Web.cpp:1167:46: warning: '%s' directive output may be truncated writing 18 bytes into a region of size between 0 and 255 [-Wformat-truncation=]
snprintf(cacheFile, MAX_FILEPATH_LENTGH, "%s/%s", dstFullFilePath, playlistCacheFile);
^~~~~~~ ~~~~~~~~~~~~~~~~~
src/Web.cpp:1167:13: note: 'snprintf' output between 20 and 275 bytes into a destination of size 256
snprintf(cacheFile, MAX_FILEPATH_LENTGH, "%s/%s", dstFullFilePath, playlistCacheFile);
~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/Web.cpp: In function 'void Web_DumpSdToNvs(const char*)':
src/Web.cpp:1279:44: warning: '%s' directive output may be truncated writing up to 274 bytes into a region of size between 229 and 245 [-Wformat-truncation=]
snprintf(Log_Buffer, Log_BufferLength, "[%u] %s: %s => %s", ++importCount, (char *) FPSTR(writeEntryToNvs), nvsEntry[0].nvsKey, nvsEntry[0].nvsEntry);
^~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~
src/Web.cpp:1279:13: note: 'snprintf' output 11 or more bytes (assuming 301) into a destination of size 255
snprintf(Log_Buffer, Log_BufferLength, "[%u] %s: %s => %s", ++importCount, (char *) FPSTR(writeEntryToNvs), nvsEntry[0].nvsKey, nvsEntry[0].nvsEntry);
~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/Web.cpp: In function 'void handleCoverImageRequest(AsyncWebServerRequest*)':
src/Web.cpp:1397:41: warning: '%s' directive output may be truncated writing up to 254 bytes into a region of size 236 [-Wformat-truncation=]
snprintf(Log_Buffer, Log_BufferLength, "serve cover image (%s): %s", (char *) mimeType, coverFileName);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/Web.cpp:1397:10: note: 'snprintf' output 23 or more bytes (assuming 277) into a destination of size 255
snprintf(Log_Buffer, Log_BufferLength, "serve cover image (%s): %s", (char *) mimeType, coverFileName);
~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Ich weiss es ist nur der dev branch (und den soll man ja nicht produktiv nutzen) aber ich vermute dass das so nicht gedacht ist
Ich bin gerade auf der Suche warum mein Akku eigentlich dauernd leer ist - daher wars einen Versuch wert. Leider bin ich in C++ nicht so richtig firm - das überlasse ich euch Profis 
Vermutlich sind alle Fehler mit dem error: reference to 'byte' is ambiguous
verbunden. Dort soll man sich zwischen enum class byte : unsigned char;
und typedef uint8_t byte;
wohl entscheiden.