ESP32 build "WiFi not declared in this scope"

Trying to compile EmonESP failes with ‘WiFi’ was not declared in this scope.
Arduino IDE and all libraries are updated right now.

The error message is:

C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\mqtt.cpp: In function 'void mqtt_publish(String)':
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\mqtt.cpp:152:15: error: 'WiFi' was not declared in this scope
  152 |   long rssi = WiFi.RSSI();
      |               ^~~~
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\wifi.cpp: In function 'void startAP()':
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\wifi.cpp:92:3: error: 'WiFi' was not declared in this scope
   92 |   WiFi.enableAP(true);
      |   ^~~~
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\wifi.cpp: In function 'void startClient()':
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\wifi.cpp:142:3: error: 'WiFi' was not declared in this scope
  142 |   WiFi.enableSTA(true);
      |   ^~~~
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\wifi.cpp: At global scope:
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\wifi.cpp:172:6: error: variable or field 'WiFiEvent' declared void
  172 | void WiFiEvent(WiFiEvent_t event)
      |      ^~~~~~~~~
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\wifi.cpp:172:16: error: 'WiFiEvent_t' was not declared in this scope
  172 | void WiFiEvent(WiFiEvent_t event)
      |                ^~~~~~~~~~~
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\wifi.cpp: In function 'void wifi_setup()':
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\wifi.cpp:338:3: error: 'WiFi' was not declared in this scope
  338 |   WiFi.onEvent(WiFiEvent);
      |   ^~~~
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\wifi.cpp:338:16: error: 'WiFiEvent' was not declared in this scope
  338 |   WiFi.onEvent(WiFiEvent);
      |                ^~~~~~~~~
In file included from C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\wifi.cpp:29:
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\wifi.cpp: In function 'void wifi_loop()':
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\wifi.h:124:40: error: 'WIFI_STA' was not declared in this scope
  124 | #define wifi_mode_is_sta()            (WIFI_STA == (WiFi.getMode() & WIFI_STA))
      |                                        ^~~~~~~~
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\wifi.cpp:365:19: note: in expansion of macro 'wifi_mode_is_sta'
  365 |   bool isClient = wifi_mode_is_sta();
      |                   ^~~~~~~~~~~~~~~~
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\wifi.h:124:53: error: 'WiFi' was not declared in this scope
  124 | #define wifi_mode_is_sta()            (WIFI_STA == (WiFi.getMode() & WIFI_STA))
      |                                                     ^~~~
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\wifi.cpp:365:19: note: in expansion of macro 'wifi_mode_is_sta'
  365 |   bool isClient = wifi_mode_is_sta();
      |                   ^~~~~~~~~~~~~~~~
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\wifi.h:126:40: error: 'WIFI_AP' was not declared in this scope
  126 | #define wifi_mode_is_ap()             (WIFI_AP == (WiFi.getMode() & WIFI_AP))
      |                                        ^~~~~~~
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\wifi.cpp:367:15: note: in expansion of macro 'wifi_mode_is_ap'
  367 |   bool isAp = wifi_mode_is_ap();
      |               ^~~~~~~~~~~~~~~
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\wifi.h:131:41: error: 'WIFI_AP_STA' was not declared in this scope
  131 |                                        (WIFI_AP_STA == WiFi.getMode() && !wifi_is_client_configured()))
      |                                         ^~~~~~~~~~~
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\wifi.cpp:368:19: note: in expansion of macro 'wifi_mode_is_ap_only'
  368 |   bool isApOnly = wifi_mode_is_ap_only();
      |                   ^~~~~~~~~~~~~~~~~~~~
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\wifi.cpp: In function 'void wifi_scan()':
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\wifi.cpp:518:11: error: 'WiFi' was not declared in this scope
  518 |   int n = WiFi.scanNetworks();
      |           ^~~~
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\wifi.cpp: In function 'void wifi_disconnect()':
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\wifi.h:124:40: error: 'WIFI_STA' was not declared in this scope
  124 | #define wifi_mode_is_sta()            (WIFI_STA == (WiFi.getMode() & WIFI_STA))
      |                                        ^~~~~~~~
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\wifi.cpp:541:7: note: in expansion of macro 'wifi_mode_is_sta'
  541 |   if (wifi_mode_is_sta()) {
      |       ^~~~~~~~~~~~~~~~
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\wifi.h:124:53: error: 'WiFi' was not declared in this scope
  124 | #define wifi_mode_is_sta()            (WIFI_STA == (WiFi.getMode() & WIFI_STA))
      |                                                     ^~~~
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\wifi.cpp:541:7: note: in expansion of macro 'wifi_mode_is_sta'
  541 |   if (wifi_mode_is_sta()) {
      |       ^~~~~~~~~~~~~~~~
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\wifi.cpp: In function 'void wifi_turn_off_ap()':
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\wifi.h:126:40: error: 'WIFI_AP' was not declared in this scope
  126 | #define wifi_mode_is_ap()             (WIFI_AP == (WiFi.getMode() & WIFI_AP))
      |                                        ^~~~~~~
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\wifi.cpp:550:7: note: in expansion of macro 'wifi_mode_is_ap'
  550 |   if (wifi_mode_is_ap())  {
      |       ^~~~~~~~~~~~~~~
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\wifi.h:126:52: error: 'WiFi' was not declared in this scope
  126 | #define wifi_mode_is_ap()             (WIFI_AP == (WiFi.getMode() & WIFI_AP))
      |                                                    ^~~~
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\wifi.cpp:550:7: note: in expansion of macro 'wifi_mode_is_ap'
  550 |   if (wifi_mode_is_ap())  {
      |       ^~~~~~~~~~~~~~~
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\wifi.cpp: In function 'void wifi_turn_on_ap()':
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\wifi.h:126:40: error: 'WIFI_AP' was not declared in this scope
  126 | #define wifi_mode_is_ap()             (WIFI_AP == (WiFi.getMode() & WIFI_AP))
      |                                        ^~~~~~~
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\wifi.cpp:559:8: note: in expansion of macro 'wifi_mode_is_ap'
  559 |   if (!wifi_mode_is_ap()) {
      |        ^~~~~~~~~~~~~~~
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\wifi.h:126:52: error: 'WiFi' was not declared in this scope
  126 | #define wifi_mode_is_ap()             (WIFI_AP == (WiFi.getMode() & WIFI_AP))
      |                                                    ^~~~
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\wifi.cpp:559:8: note: in expansion of macro 'wifi_mode_is_ap'
  559 |   if (!wifi_mode_is_ap()) {
      |        ^~~~~~~~~~~~~~~
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\wifi.cpp: In function 'bool wifi_client_connected()':
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\wifi.cpp:566:10: error: 'WiFi' was not declared in this scope
  566 |   return WiFi.isConnected() && (WIFI_STA == (WiFi.getMode() & WIFI_STA));
      |          ^~~~
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\wifi.cpp:566:33: error: 'WIFI_STA' was not declared in this scope
  566 |   return WiFi.isConnected() && (WIFI_STA == (WiFi.getMode() & WIFI_STA));
      |                                 ^~~~~~~~
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\emoncms.cpp: In function 'void emoncms_publish(const char*)':
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\emoncms.cpp:49:5: error: 'WiFi' was not declared in this scope
   49 |     WiFi.RSSI(), emoncms_node.c_str(), emoncms_apikey.c_str());
      |     ^~~~
In file included from C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\web_server.h:35,
                 from C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\web_server.cpp:31:
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\web_server.cpp: In function 'bool requestPreProcess(AsyncWebServerRequest*, AsyncResponseStream*&, const char*)':
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src/WiFi.h:124:40: error: 'WIFI_STA' was not declared in this scope; did you mean 'WIFI_IF_STA'?
  124 | #define wifi_mode_is_sta()            (WIFI_STA == (WiFi.getMode() & WIFI_STA))
      |                                        ^~~~~~~~
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\web_server.cpp:109:7: note: in expansion of macro 'wifi_mode_is_sta'
  109 |   if (wifi_mode_is_sta() && www_username != "" &&
      |       ^~~~~~~~~~~~~~~~
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src/WiFi.h:124:53: error: 'WiFi' was not declared in this scope
  124 | #define wifi_mode_is_sta()            (WIFI_STA == (WiFi.getMode() & WIFI_STA))
      |                                                     ^~~~
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\web_server.cpp:109:7: note: in expansion of macro 'wifi_mode_is_sta'
  109 |   if (wifi_mode_is_sta() && www_username != "" &&
      |       ^~~~~~~~~~~~~~~~
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\web_server.cpp: In function 'void handleHome(AsyncWebServerRequest*)':
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src/WiFi.h:124:40: error: 'WIFI_STA' was not declared in this scope; did you mean 'WIFI_IF_STA'?
  124 | #define wifi_mode_is_sta()            (WIFI_STA == (WiFi.getMode() & WIFI_STA))
      |                                        ^~~~~~~~
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\web_server.cpp:133:10: note: in expansion of macro 'wifi_mode_is_sta'
  133 |       && wifi_mode_is_sta()) {
      |          ^~~~~~~~~~~~~~~~
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src/WiFi.h:124:53: error: 'WiFi' was not declared in this scope
  124 | #define wifi_mode_is_sta()            (WIFI_STA == (WiFi.getMode() & WIFI_STA))
      |                                                     ^~~~
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\web_server.cpp:133:10: note: in expansion of macro 'wifi_mode_is_sta'
  133 |       && wifi_mode_is_sta()) {
      |          ^~~~~~~~~~~~~~~~
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\web_server.cpp: In function 'void handleScan(AsyncWebServerRequest*)':
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\web_server.cpp:159:11: error: 'WiFi' was not declared in this scope
  159 |   int n = WiFi.scanComplete();
      |           ^~~~
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\web_server.cpp: In function 'void handleStatus(AsyncWebServerRequest*)':
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src/WiFi.h:125:40: error: 'WIFI_STA' was not declared in this scope; did you mean 'WIFI_IF_STA'?
  125 | #define wifi_mode_is_sta_only()       (WIFI_STA == WiFi.getMode())
      |                                        ^~~~~~~~
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\web_server.cpp:400:7: note: in expansion of macro 'wifi_mode_is_sta_only'
  400 |   if (wifi_mode_is_sta_only()) {
      |       ^~~~~~~~~~~~~~~~~~~~~
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src/WiFi.h:125:52: error: 'WiFi' was not declared in this scope
  125 | #define wifi_mode_is_sta_only()       (WIFI_STA == WiFi.getMode())
      |                                                    ^~~~
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\web_server.cpp:400:7: note: in expansion of macro 'wifi_mode_is_sta_only'
  400 |   if (wifi_mode_is_sta_only()) {
      |       ^~~~~~~~~~~~~~~~~~~~~
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src/WiFi.h:130:41: error: 'WIFI_AP' was not declared in this scope; did you mean 'WIFI_IF_AP'?
  130 | #define wifi_mode_is_ap_only()        ((WIFI_AP == WiFi.getMode()) || \
      |                                         ^~~~~~~
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\web_server.cpp:402:14: note: in expansion of macro 'wifi_mode_is_ap_only'
  402 |   } else if (wifi_mode_is_ap_only()) {
      |              ^~~~~~~~~~~~~~~~~~~~
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src/WiFi.h:131:41: error: 'WIFI_AP_STA' was not declared in this scope; did you mean 'WIFI_IF_STA'?
  131 |                                        (WIFI_AP_STA == WiFi.getMode() && !wifi_is_client_configured()))
      |                                         ^~~~~~~~~~~
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\web_server.cpp:402:14: note: in expansion of macro 'wifi_mode_is_ap_only'
  402 |   } else if (wifi_mode_is_ap_only()) {
      |              ^~~~~~~~~~~~~~~~~~~~
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\web_server.cpp:410:32: error: 'WiFi' was not declared in this scope
  410 |   s += "\"srssi\":\"" + String(WiFi.RSSI()) + "\",";
      |                                ^~~~
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\web_server.cpp: In function 'void handleRst(AsyncWebServerRequest*)':
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\web_server.cpp:532:3: error: 'WiFi' was not declared in this scope
  532 |   WiFi.disconnect(false, true);
      |   ^~~~
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\web_server.cpp: In function 'void handleNotFound(AsyncWebServerRequest*)':
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src/WiFi.h:130:41: error: 'WIFI_AP' was not declared in this scope; did you mean 'WIFI_IF_AP'?
  130 | #define wifi_mode_is_ap_only()        ((WIFI_AP == WiFi.getMode()) || \
      |                                         ^~~~~~~
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\web_server.cpp:725:7: note: in expansion of macro 'wifi_mode_is_ap_only'
  725 |   if (wifi_mode_is_ap_only()) {
      |       ^~~~~~~~~~~~~~~~~~~~
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src/WiFi.h:130:52: error: 'WiFi' was not declared in this scope
  130 | #define wifi_mode_is_ap_only()        ((WIFI_AP == WiFi.getMode()) || \
      |                                                    ^~~~
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\web_server.cpp:725:7: note: in expansion of macro 'wifi_mode_is_ap_only'
  725 |   if (wifi_mode_is_ap_only()) {
      |       ^~~~~~~~~~~~~~~~~~~~
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src/WiFi.h:131:41: error: 'WIFI_AP_STA' was not declared in this scope; did you mean 'WIFI_IF_STA'?
  131 |                                        (WIFI_AP_STA == WiFi.getMode() && !wifi_is_client_configured()))
      |                                         ^~~~~~~~~~~
C:\Users\UNSERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\web_server.cpp:725:7: note: in expansion of macro 'wifi_mode_is_ap_only'
  725 |   if (wifi_mode_is_ap_only()) {
      |       ^~~~~~~~~~~~~~~~~~~~

exit status 1

Compilation error: 'WiFi' was not declared in this scope

Any idea what to do?

You are missing a file in which the various WiFi variables are defined.

Are these the first errors listed?
Was there an earlier error about a missing file?
Do you have the files “wifi.cpp” & “wifi.h” - if you have, are they in the correct place?
Is the full path to those files correct? Should it be “C:\Users\USERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\Software\EmonESP\src\mqtt.cpp”
and not “…UNSERNAME…”?

Thats what I thought at first too - but unfortunately the path seems to be OK. UNSERNAME was a typo by replacing the real profilename…
And yes, the errors are the first (and only) errors I get.
C:\Users\USERNAME\Documents\Arduino\Split-Single-Phase-Energy-Meter-master\ contains the expanded zip file from https://github.com/CircuitSetup/Split-Single-Phase-Energy-Meter?tab=readme-ov-file#software-setup with all files containing.

Just to be sure - thats the content of the directory:

Mode                 LastWriteTime         Length Name                                                                 
----                 -------------         ------ ----                                                                 
d-----        03.01.2024     21:29                data                                                                 
------        03.01.2024     21:29          14059 config.cpp                                                           
------        03.01.2024     21:29           4369 config.h                                                             
------        03.01.2024     21:29           1999 debug.h                                                              
------        03.01.2024     21:29           2830 emoncms.cpp                                                          
------        03.01.2024     21:29           1920 emoncms.h                                                            
------        03.01.2024     21:29           1570 emonesp.h                                                            
------        03.01.2024     21:29          16577 energy_meter.cpp                                                     
------        03.01.2024     21:29           2551 energy_meter.h                                                       
-a----        26.12.2024     16:13              0 filelist                                                             
------        03.01.2024     21:29           3053 http.cpp                                                             
------        03.01.2024     21:29           1946 http.h                                                               
------        03.01.2024     21:29           2143 input.cpp                                                            
------        03.01.2024     21:29           1930 input.h                                                              
------        03.01.2024     21:29           5807 mqtt.cpp                                                             
------        03.01.2024     21:29           2805 mqtt.h                                                               
------        03.01.2024     21:29           2511 ota.cpp                                                              
------        03.01.2024     21:29           1943 ota.h                                                                
------        03.01.2024     21:29           3396 src.ino                                                              
------        03.01.2024     21:29        1063984 src.ino.esp32.bin                                                    
------        03.01.2024     21:29        1064592 src.ino.esp32_metering.bin                                           
------        03.01.2024     21:29        1507328 src.spiffs.bin                                                       
------        03.01.2024     21:29          25416 web_server.cpp                                                       
------        03.01.2024     21:29           1884 web_server.h                                                         
------        03.01.2024     21:29          18217 wifi.cpp                                                             
------        03.01.2024     21:29           3729 wifi.h                

Crosscheck:
I deleted mqtt.h & mqtt.cpp and got Compilation error: mqtt.h: No such file or directory as expected.

Is this the very first error message?
For a reason, it is not seeing the definition of ‘WiFiEvent’

It’s true - I have loaded all the files from Github into Notepad++, and I can’t find the definition of “WiFi”.
I see the Installation note says “EmonESP uses ESP8266 core, Arduino framework”. Do you have the first of these? (The link is GitHub - esp8266/Arduino: ESP8266 core for Arduino)
I cannot remember compiling the emonESP software, so I don’t know if this is required.

I really thank you for your effort, but it seems to be useless…
The guys from circuitsetup.us pointing for the installation on their GitHub site site to an another site.
Unfortunately on that side you should just read the instructions and not download the software, because the software is for another board.
So, long story short - I was using the whloe time a totaly wrong software not made for my target platform.

However, the “right” software for the 6x meter doesn’t compile either. 1000nds of error messages for wrong (because of outdated) declarations, missused variables and so on. Unfortunately this all seems to be unmaintained crap which cannot be used with reasonable effort.
May there was sometimes a working/compiling version but with the current libraries it doesn’t compile.

OK, let us start from the beginning. What hardware do you have?

(The emonESP software is specifically for the Huzzah ESP 8266, when used with our emonTx3.)

So, I’ve bought this one: Expandable 6 Channel ESP32 Energy Meter Main Board – CircuitSetup (and two daughterboards).
They are advertising their customized software for EmonESP. Even EmonCSP is a very interesting approach, I’ll use the boards at first as a simple MQTT collecting point for forwarding to a central database.
The software ist found here.

May the board was a total waste of time and I’ve to look the Huzzah version a bit closer :rofl:

I’ll look at what you have later. We use the ESP8266 only to send the serial data by WiFi - nothing else. Do not try to use it for analogue measurements – many people have tried, I don’t know of one who has found it satisfactory.