Closed meldraknailo closed 10 months ago
Hi @meldraknailo, it seems that the problem is releated to the installed version of PlatformIO and the releated Python version. Could you please specify the version of PlatformIO and Python you are using?
If you are using the latest version of PlatformIO (3.3.2) I would suggest to follow the steps described into the changelog to start the transition to the latest Python 3.11.
Let me know if the transition will solve the problem.
Hi! I just tried this on my windows machine. I just installed a fresh copy of visual studio and platformio core 6.1.11 home 3.4.4
I get these errors on windows:
Verbose mode can be enabled via -v, --verbose
option
CONFIGURATION: https://docs.platformio.org/page/boards/espressif32/m5stack-fire.html
PLATFORM: Espressif 32 (6.5.0) > M5Stack FIRE
HARDWARE: ESP32 240MHz, 4.31MB RAM, 16MB Flash
DEBUG: Current (cmsis-dap) External (cmsis-dap, esp-bridge, esp-prog, iot-bus-jtag, jlink, minimo
dule, olimex-arm-usb-ocd, olimex-arm-usb-ocd-h, olimex-arm-usb-tiny-h, olimex-jtag-tiny, tumpa) PACKAGES:
framework-arduinoespressif32 @ 3.20014.231204 (2.0.14)
tool-esptoolpy @ 1.40501.0 (4.5.1)
toolchain-xtensa-esp32 @ 8.4.0+2021r2-patch5
LDF: Library Dependency Finder -> https://bit.ly/configure-pio-ldf
LDF Modes: Finder ~ chain, Compatibility ~ soft
Found 38 compatible libraries
Scanning dependencies...
Dependency Graph
|-- M5EPD @ 0.1.5
|-- ArduinoJson @ 6.21.4
|-- MoonRise @ 2.0.4
|-- Time @ 1.6.1
|-- JsonStreamingParser @ 1.0.5
|-- WiFi @ 2.0.0
|-- HTTPClient @ 2.0.0
Building in release mode
Compiling .pio\build\m5stack-fire\src\Controller\EPDController\EPDController.cpp.o
Compiling .pio\build\m5stack-fire\src\Controller\WeatherController\WeatherController.cpp.o
Compiling .pio\build\m5stack-fire\src\View\WeatherView.cpp.o
Compiling .pio\build\m5stack-fire\src\main.cpp.o
Building .pio\build\m5stack-fire\bootloader.bin
Generating partitions .pio\build\m5stack-fire\partitions.bin
Compiling .pio\build\m5stack-fire\libfb6\FS\FS.cpp.o
Compiling .pio\build\m5stack-fire\libfb6\FS\vfs_api.cpp.o
Compiling .pio\build\m5stack-fire\lib28b\WiFi\WiFi.cpp.o
Compiling .pio\build\m5stack-fire\lib28b\WiFi\WiFiAP.cpp.o
Compiling .pio\build\m5stack-fire\lib28b\WiFi\WiFiClient.cpp.o
Compiling .pio\build\m5stack-fire\lib28b\WiFi\WiFiGeneric.cpp.o
Compiling .pio\build\m5stack-fire\lib28b\WiFi\WiFiMulti.cpp.o
Compiling .pio\build\m5stack-fire\lib28b\WiFi\WiFiSTA.cpp.o
Compiling .pio\build\m5stack-fire\lib28b\WiFi\WiFiScan.cpp.o
Compiling .pio\build\m5stack-fire\lib28b\WiFi\WiFiServer.cpp.o
Compiling .pio\build\m5stack-fire\lib28b\WiFi\WiFiUdp.cpp.o
esptool.py v4.5.1
Creating esp32 image...
Merged 1 ELF section
Successfully created esp32 image.
In file included from c:\users\meldr.platformio\packages\toolchain-xtensa-esp32\xtensa-esp32-elf
\sys-include\string.h:24, from C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp3
2/Arduino.h:29, from src/Controller/EPDController/EPDController.h:2,
from src/Controller/EPDController/EPDController.cpp:1:
src/strings.h:5:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_weather_title = "Weather";
^~
stdin
src/strings.h:6:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_last_update = "Last Update: ";
^~
stdin
src/strings.h:7:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_sunrise_sunset = "Sunset - Sunrise";
^~
stdin
src/strings.h:8:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_moonrise_moonset = "Moonset - Moonrise";
^~
stdin
src/strings.h:9:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_forecast_title = "Next Week Forecast";
^~
stdin
src/strings.h:10:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_forecast_min = "Min: ";
^~
stdin
src/strings.h:11:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_forecast_max = "Max: ";
^~
stdin
src/strings.h:12:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_temperature_chart = "Temperature (°C)";
^~
stdin
src/strings.h:13:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_rain_chart = "Rain (mm)";
^~
stdin
src/strings.h:14:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_humidity_chart = "Humidity (%)";
^~
stdin
src/strings.h:15:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_wind_chart = "Wind (m/s)";
^~
stdin
src/strings.h:16:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_weekday_1 = "Sunday";
^~
stdin
src/strings.h:17:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_weekday_2 = "Monday";
^~
stdin
src/strings.h:18:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_weekday_3 = "Tuesday";
^~
stdin
src/strings.h:19:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_weekday_4 = "Wednesday";
^~
stdin
src/strings.h:20:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_weekday_5 = "Thursday";
^~
stdin
src/strings.h:21:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_weekday_6 = "Friday";
^~
stdin
src/strings.h:22:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_weekday_7 = "Saturday";
^~
stdin
src/strings.h:23:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_loading = "Loading...";
^~
stdin
src/strings.h:24:7: error: 'String' does not name a type; did you mean 'stdin'?
const String string_api_error = "Error while fetching data from API";
^~
stdin
Compiling .pio\build\m5stack-fire\lib123\WiFiClientSecure\WiFiClientSecure.cpp.o
Compiling .pio\build\m5stack-fire\lib123\WiFiClientSecure\esp_crt_bundle.c.o
Compiling .pio\build\m5stack-fire\lib123\WiFiClientSecure\ssl_client.cpp.o
Compiling .pio\build\m5stack-fire\lib582\HTTPClient\HTTPClient.cpp.o
Compiling .pio\build\m5stack-fire\lib635\Wire\Wire.cpp.o
Compiling .pio\build\m5stack-fire\libce1\SPI\SPI.cpp.o
In file included from c:\users\meldr.platformio\packages\toolchain-xtensa-esp32\xtensa-esp32-elf
\sys-include\string.h:24, from C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp3
2/Arduino.h:29, from src/Controller/WeatherController/WeatherController.h:2,
from src/Controller/WeatherController/WeatherController.cpp:1:
src/strings.h:5:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_weather_title = "Weather";
^~
stdin
src/strings.h:6:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_last_update = "Last Update: ";
^~
stdin
src/strings.h:7:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_sunrise_sunset = "Sunset - Sunrise";
^~
stdin
src/strings.h:8:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_moonrise_moonset = "Moonset - Moonrise";
^~
stdin
src/strings.h:9:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_forecast_title = "Next Week Forecast";
^~
stdin
src/strings.h:10:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_forecast_min = "Min: ";
^~
stdin
src/strings.h:11:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_forecast_max = "Max: ";
^~
stdin
src/strings.h:12:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_temperature_chart = "Temperature (°C)";
^~
stdin
src/strings.h:13:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_rain_chart = "Rain (mm)";
^~
stdin
src/strings.h:14:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_humidity_chart = "Humidity (%)";
^~
stdin
src/strings.h:15:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_wind_chart = "Wind (m/s)";
^~
stdin
src/strings.h:16:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_weekday_1 = "Sunday";
^~
stdin
src/strings.h:17:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_weekday_2 = "Monday";
^~
stdin
src/strings.h:18:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_weekday_3 = "Tuesday";
^~
stdin
src/strings.h:19:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_weekday_4 = "Wednesday";
^~
stdin
src/strings.h:20:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_weekday_5 = "Thursday";
^~
stdin
src/strings.h:21:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_weekday_6 = "Friday";
^~
stdin
src/strings.h:22:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_weekday_7 = "Saturday";
^~
stdin
src/strings.h:23:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_loading = "Loading...";
^~
stdin
src/strings.h:24:7: error: 'String' does not name a type; did you mean 'stdin'?
const String string_api_error = "Error while fetching data from API";
^~
stdin
In file included from c:\users\meldr.platformio\packages\toolchain-xtensa-esp32\xtensa-esp32-elf
\sys-include\string.h:24, from C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp3
2/Arduino.h:29, from src/View/WeatherView.h:3,
from src/View/WeatherView.cpp:1:
src/strings.h:5:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_weather_title = "Weather";
^~
stdin
src/strings.h:6:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_last_update = "Last Update: ";
^~
stdin
src/strings.h:7:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_sunrise_sunset = "Sunset - Sunrise";
^~
stdin
src/strings.h:8:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_moonrise_moonset = "Moonset - Moonrise";
^~
stdin
src/strings.h:9:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_forecast_title = "Next Week Forecast";
^~
stdin
src/strings.h:10:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_forecast_min = "Min: ";
^~
stdin
src/strings.h:11:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_forecast_max = "Max: ";
^~
stdin
src/strings.h:12:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_temperature_chart = "Temperature (°C)";
^~
stdin
src/strings.h:13:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_rain_chart = "Rain (mm)";
^~
stdin
src/strings.h:14:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_humidity_chart = "Humidity (%)";
^~
stdin
src/strings.h:15:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_wind_chart = "Wind (m/s)";
^~
stdin
src/strings.h:16:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_weekday_1 = "Sunday";
^~
stdin
src/strings.h:17:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_weekday_2 = "Monday";
^~
stdin
src/strings.h:18:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_weekday_3 = "Tuesday";
^~
stdin
src/strings.h:19:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_weekday_4 = "Wednesday";
^~
stdin
src/strings.h:20:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_weekday_5 = "Thursday";
^~
stdin
src/strings.h:21:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_weekday_6 = "Friday";
^~
stdin
src/strings.h:22:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_weekday_7 = "Saturday";
^~
stdin
src/strings.h:23:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_loading = "Loading...";
^~
stdin
src/strings.h:24:7: error: 'String' does not name a type; did you mean 'stdin'?
const String string_api_error = "Error while fetching data from API";
^~
stdin
In file included from c:\users\meldr.platformio\packages\toolchain-xtensa-esp32\xtensa-esp32-elf
\sys-include\string.h:24, from C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp3
2/Arduino.h:29, from src/main.cpp:1:
src/strings.h:5:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_weather_title = "Weather";
^~
stdin
src/strings.h:6:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_last_update = "Last Update: ";
^~
stdin
src/strings.h:7:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_sunrise_sunset = "Sunset - Sunrise";
^~
stdin
Compiling .pio\build\m5stack-fire\libfca\SD\SD.cpp.o
src/strings.h:8:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_moonrise_moonset = "Moonset - Moonrise";
^~
stdin
src/strings.h:9:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_forecast_title = "Next Week Forecast";
^~
stdin
src/strings.h:10:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_forecast_min = "Min: ";
^~
stdin
src/strings.h:11:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_forecast_max = "Max: ";
^~
stdin
src/strings.h:12:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_temperature_chart = "Temperature (°C)";
^~
stdin
src/strings.h:13:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_rain_chart = "Rain (mm)";
^~
stdin
src/strings.h:14:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_humidity_chart = "Humidity (%)";
^~
stdin
src/strings.h:15:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_wind_chart = "Wind (m/s)";
^~
stdin
src/strings.h:16:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_weekday_1 = "Sunday";
^~
stdin
src/strings.h:17:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_weekday_2 = "Monday";
^~
stdin
src/strings.h:18:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_weekday_3 = "Tuesday";
^~
stdin
src/strings.h:19:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_weekday_4 = "Wednesday";
^~
stdin
src/strings.h:20:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_weekday_5 = "Thursday";
^~
stdin
src/strings.h:21:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_weekday_6 = "Friday";
^~
stdin
src/strings.h:22:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_weekday_7 = "Saturday";
^~
stdin
[.pio\build\m5stack-fire\src\Controller\EPDController\EPDController.cpp.o] Error 1
src/strings.h:23:7: error: 'String' does not name a type; did you mean 'stdin'?
const String strings_loading = "Loading...";
^~
stdin
src/strings.h:24:7: error: 'String' does not name a type; did you mean 'stdin'?
const String string_api_error = "Error while fetching data from API";
^~
stdin
src/Controller/WeatherController/WeatherController.cpp: In member function 'bool WeatherControlle
r::postToWeatherAPI(ArduinoJson::V6214PB2::DynamicJsonDocument&)': src/Controller/WeatherController/WeatherController.cpp:59:47: error: no matching function for cal
l to 'String::String(float, int, int)' uri += "?lat=" + String((float)LATITUDE, 5);
^
In file included from C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp3
2/Arduino.h:176, from src/Controller/WeatherController/WeatherController.h:2,
from src/Controller/WeatherController/WeatherController.cpp:1:
C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:79:18: not
e: candidate: 'String::String(long long unsigned int, unsigned char)' explicit String(unsigned long long, unsigned char base = 10);
^~
C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:79:18: not
e: candidate expects 2 arguments, 3 provided C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:78:18: not
e: candidate: 'String::String(long long int, unsigned char)' explicit String(long long, unsigned char base = 10);
^~
C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:78:18: not
e: candidate expects 2 arguments, 3 provided C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:77:18: not
e: candidate: 'String::String(double, unsigned int)' explicit String(double, unsigned int decimalPlaces = 2);
^~
C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:77:18: not
e: candidate expects 2 arguments, 3 provided C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:76:18: not
e: candidate: 'String::String(float, unsigned int)' explicit String(float, unsigned int decimalPlaces = 2);
^~
C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:76:18: not
e: candidate expects 2 arguments, 3 provided C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:75:18: not
e: candidate: 'String::String(long unsigned int, unsigned char)' explicit String(unsigned long, unsigned char base = 10);
^~
C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:75:18: not
e: candidate expects 2 arguments, 3 provided C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:74:18: not
e: candidate: 'String::String(long int, unsigned char)' explicit String(long, unsigned char base = 10);
^~
C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:74:18: not
e: candidate expects 2 arguments, 3 provided C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:73:18: not
e: candidate: 'String::String(unsigned int, unsigned char)' explicit String(unsigned int, unsigned char base = 10);
^~
C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:73:18: not
e: candidate expects 2 arguments, 3 provided C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:72:18: not
e: candidate: 'String::String(int, unsigned char)' explicit String(int, unsigned char base = 10);
^~
C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:72:18: not
e: candidate expects 2 arguments, 3 provided C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:71:18: not
e: candidate: 'String::String(unsigned char, unsigned char)' explicit String(unsigned char, unsigned char base = 10);
^~
C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:71:18: not
e: candidate expects 2 arguments, 3 provided C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:70:18: not
e: candidate: 'String::String(char)' explicit String(char c);
^~
C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:70:18: not
e: candidate expects 1 argument, 3 provided C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:68:9: note
: candidate: 'String::String(StringSumHelper&&)' String(StringSumHelper &&rval);
^~
C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:68:9: note
: candidate expects 1 argument, 3 provided C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:67:9: note
: candidate: 'String::String(String&&)' String(String &&rval);
^~
C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:67:9: note
: candidate expects 1 argument, 3 provided C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:65:9: note
: candidate: 'String::String(const __FlashStringHelper)' String(const FlashStringHelper str) : String(reinterpret_cast<const char>(str)) {}
^~
C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:65:9: note
: candidate expects 1 argument, 3 provided C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:64:9: note
: candidate: 'String::String(const String&)' String(const String &str);
^~
C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:64:9: note
: candidate expects 1 argument, 3 provided C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:62:9: note
: candidate: 'String::String(const uint8_t, unsigned int)' String(const uint8_t cstr, unsigned int length) : String(reinterpret_cast<const char>(
cstr), length) {} ^~
C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:62:9: note
: candidate expects 2 arguments, 3 provided C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:60:9: note
: candidate: 'String::String(const char, unsigned int)' String(const char cstr, unsigned int length);
^~
C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:60:9: note
: candidate expects 2 arguments, 3 provided C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:59:9: note
: candidate: 'String::String(const char)' String(const char *cstr = "");
^~
C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:59:9: note
: candidate expects 1 argument, 3 provided src/Controller/WeatherController/WeatherController.cpp: In member function 'bool WeatherControlle
r::postToGeocodingAPI(ArduinoJson::V6214PB2::DynamicJsonDocument&)': src/Controller/WeatherController/WeatherController.cpp:105:47: error: no matching function for ca
ll to 'String::String(float, int, int)' uri += "?lat=" + String((float)LATITUDE, 5);
^
In file included from C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp3
2/Arduino.h:176, from src/Controller/WeatherController/WeatherController.h:2,
from src/Controller/WeatherController/WeatherController.cpp:1:
C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:79:18: not
e: candidate: 'String::String(long long unsigned int, unsigned char)' explicit String(unsigned long long, unsigned char base = 10);
^~
C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:79:18: not
e: candidate expects 2 arguments, 3 provided C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:78:18: not
e: candidate: 'String::String(long long int, unsigned char)' explicit String(long long, unsigned char base = 10);
^~
C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:78:18: not
e: candidate expects 2 arguments, 3 provided C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:77:18: not
e: candidate: 'String::String(double, unsigned int)' explicit String(double, unsigned int decimalPlaces = 2);
^~
C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:77:18: not
e: candidate expects 2 arguments, 3 provided C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:76:18: not
e: candidate: 'String::String(float, unsigned int)' explicit String(float, unsigned int decimalPlaces = 2);
^~
C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:76:18: not
e: candidate expects 2 arguments, 3 provided C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:75:18: not
e: candidate: 'String::String(long unsigned int, unsigned char)' explicit String(unsigned long, unsigned char base = 10);
^~
C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:75:18: not
e: candidate expects 2 arguments, 3 provided C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:74:18: not
e: candidate: 'String::String(long int, unsigned char)' explicit String(long, unsigned char base = 10);
^~
C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:74:18: not
e: candidate expects 2 arguments, 3 provided C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:73:18: not
e: candidate: 'String::String(unsigned int, unsigned char)' explicit String(unsigned int, unsigned char base = 10);
^~
C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:73:18: not
e: candidate expects 2 arguments, 3 provided C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:72:18: not
e: candidate: 'String::String(int, unsigned char)' explicit String(int, unsigned char base = 10);
^~
C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:72:18: not
e: candidate expects 2 arguments, 3 provided C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:71:18: not
e: candidate: 'String::String(unsigned char, unsigned char)' explicit String(unsigned char, unsigned char base = 10);
^~
C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:71:18: not
e: candidate expects 2 arguments, 3 provided C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:70:18: not
e: candidate: 'String::String(char)' explicit String(char c);
^~
C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:70:18: not
e: candidate expects 1 argument, 3 provided C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:68:9: note
: candidate: 'String::String(StringSumHelper&&)' String(StringSumHelper &&rval);
^~
C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:68:9: note
: candidate expects 1 argument, 3 provided C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:67:9: note
: candidate: 'String::String(String&&)' String(String &&rval);
^~
C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:67:9: note
: candidate expects 1 argument, 3 provided C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:65:9: note
: candidate: 'String::String(const FlashStringHelper)' String(const __FlashStringHelper str) : String(reinterpret_cast<const char>(str)) {}
^~
C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:65:9: note
: candidate expects 1 argument, 3 provided C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:64:9: note
: candidate: 'String::String(const String&)' String(const String &str);
^~
C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:64:9: note
: candidate expects 1 argument, 3 provided C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:62:9: note
: candidate: 'String::String(const uint8_t, unsigned int)' String(const uint8_t cstr, unsigned int length) : String(reinterpret_cast<const char>(
cstr), length) {} ^~
src/View/WeatherView.cpp: In member function 'void WeatherView::show()':
src/View/WeatherView.cpp:8:29: error: 'strings_weather_title' was not declared in this scope
drawBaseNavBarWithTitle(strings_weather_title);
^~~~~
C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:62:9: note
: candidate expects 2 arguments, 3 provided C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:60:9: note
: candidate: 'String::String(const char, unsigned int)' String(const char cstr, unsigned int length);
^~
C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:60:9: note
: candidate expects 2 arguments, 3 provided C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:59:9: note
: candidate: 'String::String(const char)' String(const char cstr = "");
^~
C:/Users/meldr/.platformio/packages/framework-arduinoespressif32/cores/esp32/WString.h:59:9: note
: candidate expects 1 argument, 3 provided src/Controller/WeatherController/WeatherController.cpp: In member function 'bool WeatherControlle
r::parseWeatherDoc(const ArduinoJson::V6214PB2::JsonObject&)': src/Controller/WeatherController/WeatherController.cpp:163:50: error: no matching function for ca
ll to 'MoonRise::calculate(int, int, double, time_t&)' mr.calculate(LATITUDE, LONGITUDE, currentTime);
^
In file included from src/Controller/WeatherController/WeatherController.h:6,
from src/Controller/WeatherController/WeatherController.cpp:1:
.pio/libdeps/m5stack-fire/MoonRise/MoonRise.h:26:10: note: candidate: 'void MoonRise::calculate(d
ouble, double, time_t)' void calculate(double latitude, double longitude, time_t t);
^~~~~
.pio/libdeps/m5stack-fire/MoonRise/MoonRise.h:26:10: note: candidate expects 3 arguments, 4 pro
vided src/View/WeatherView.cpp: In member function 'void WeatherView::drawTodayWidget(int, int)':
src/View/WeatherView.cpp:40:9: error: 'strings_last_update' was not declared in this scope
strings_last_update + getTimeString(weatherController.data.lastUpdate);
^~~~~~~
src/View/WeatherView.cpp:40:9: note: suggested alternative: 'ets_sha_update'
strings_last_update + getTimeString(weatherController.data.lastUpdate);
^~~~~~~
ets_sha_update
src/View/WeatherView.cpp: In member function 'void WeatherView::drawSetRiseWidget(int, int)':
src/View/WeatherView.cpp:83:29: error: 'strings_sunrise_sunset' was not declared in this scope
canvas.drawCentreString(strings_sunrise_sunset, w / 2,
^~~~~~
src/View/WeatherView.cpp:87:29: error: 'strings_moonrise_moonset' was not declared in this scope
canvas.drawCentreString(strings_moonrise_moonset, w / 2,
^~~~~~~~
src/main.cpp: In function 'void setup()':
src/main.cpp:13:41: error: 'strings_weather_title' was not declared in this scope
weatherView.drawBaseNavBarWithTitle(strings_weather_title, false);
^~~~~
src/View/WeatherView.cpp: In member function 'void WeatherView::drawForecastWidget(int, int)':
src/View/WeatherView.cpp:124:23: error: 'strings_forecast_title' was not declared in this scope
canvas.drawString(strings_forecast_title, 20, 36 - textSize20H / 2);
^~~~~~
src/View/WeatherView.cpp:131:13: error: 'strings_forecast_min' was not declared in this scope
strings_forecast_min + String((int)forecastMinTemps[i - 1]) + "° " +
^~~~~~~~
src/View/WeatherView.cpp:132:13: error: 'strings_forecast_max' was not declared in this scope
strings_forecast_max + String((int)forecastMaxTemps[i - 1]) + "°";
^~~~~~~~
src/View/WeatherView.cpp: In member function 'void WeatherView::drawChartsWidget(int, int)':
src/View/WeatherView.cpp:173:30: error: 'strings_temperature_chart' was not declared in this scop
e String chartLabels[4] = {strings_temperature_chart, strings_rain_chart,
^~~~~~~~~
* [.pio\build\m5stack-fire\src\Controller\WeatherController\WeatherController.cpp.o] Error 1
src/View/WeatherView.cpp:173:57: error: 'strings_rain_chart' was not declared in this scope
String chartLabels[4] = {strings_temperature_chart, strings_rain_chart,
^~~~~~
[.pio\build\m5stack-fire\src\main.cpp.o] Error 1
src/View/WeatherView.cpp:174:30: error: 'strings_humidity_chart' was not declared in this scope
strings_humidity_chart, strings_wind_chart};
^~~~~~
src/View/WeatherView.cpp:174:54: error: 'strings_wind_chart' was not declared in this scope
strings_humidity_chart, strings_wind_chart};
^~~~~~
src/View/WeatherView.cpp: In member function 'void WeatherView::drawLoadingData(int, int)':
src/View/WeatherView.cpp:250:29: error: 'strings_loading' was not declared in this scope
canvas.drawCentreString(strings_loading, dim / 2, dim + 15, 1);
^~~~~~~
src/View/WeatherView.cpp: In member function 'void WeatherView::drawErrorMessage()':
src/View/WeatherView.cpp:302:29: error: 'string_api_error' was not declared in this scope
canvas.drawCentreString(string_api_error, (maxX - 60) / 2,
^~~~
src/View/WeatherView.cpp:302:29: note: suggested alternative: 'strerror'
canvas.drawCentreString(string_api_error, (maxX - 60) / 2,
^~~~
strerror
src/View/WeatherView.cpp: In member function 'String WeatherView::getWeekDayString(time_t)':
src/View/WeatherView.cpp:333:16: error: 'strings_weekday_2' was not declared in this scope
return strings_weekday_2;
^~~~~
src/View/WeatherView.cpp:335:16: error: 'strings_weekday_3' was not declared in this scope
return strings_weekday_3;
^~~~~
src/View/WeatherView.cpp:337:16: error: 'strings_weekday_4' was not declared in this scope
return strings_weekday_4;
^~~~~
src/View/WeatherView.cpp:339:16: error: 'strings_weekday_5' was not declared in this scope
return strings_weekday_5;
^~~~~
src/View/WeatherView.cpp:341:16: error: 'strings_weekday_6' was not declared in this scope
return strings_weekday_6;
^~~~~
src/View/WeatherView.cpp:343:16: error: 'strings_weekday_7' was not declared in this scope
return strings_weekday_7;
^~~~~
src/View/WeatherView.cpp:345:16: error: 'strings_weekday_1' was not declared in this scope
return strings_weekday_1;
^~~~~
[.pio\build\m5stack-fire\src\View\WeatherView.cpp.o] Error 1
================================== [FAILED] Took 4.84 seconds ==================================
The terminal process "C:\Users\meldr.platformio\penv\Scripts\platformio.exe 'run'" terminate d with exit code: 1.
I followed the instructions in the changelog and get the same exact issues. I really appreciate your help.
Thank to you to help improving the project; I'm currently unable to replicare the problem but I notice different version of espressif32 platform. I just created a temporary branch that force the platform version at this link link. Could you please try to build the project from the "fix-issue-2" branch?
Dude!!!! That worked and I was able to compile the code without any errors. Let me send it to the device and see what happens
It uploaded to the device and initialized. It shows a circle, a battery indicator and weather at the top of the screen and thats it. It showed a loading icon in the middle of the screen for a few seconds. I did put the SD card contents onto an SD card before uploading the code to the device.
Verbose mode can be enabled via -v, --verbose
option
CONFIGURATION: https://docs.platformio.org/page/boards/espressif32/m5stack-fire.html
PLATFORM: Espressif 32 (1.12.4) > M5Stack FIRE
HARDWARE: ESP32 240MHz, 6.25MB RAM, 16MB Flash
DEBUG: Current (esp-prog) External (esp-prog, iot-bus-jtag, jlink, minimodule, olimex-arm-usb-ocd, olimex-arm-usb-ocd-h, olimex-arm-usb
-tiny-h, olimex-jtag-tiny, tumpa) PACKAGES:
@meldraknailo got it, just released and tested a new fix on "fix-issue-2" branch, could you please try to pull and upload onto device to check if everything works well?
Okay so I deleted all of the repository files and downloaded the fix-issue-2 branch. I compiled it and got two yellow lines. I made them bold and italic below:
Verbose mode can be enabled via -v, --verbose
option
CONFIGURATION: https://docs.platformio.org/page/boards/espressif32/m5stack-fire.html
PLATFORM: Espressif 32 (6.5.0) > M5Stack FIRE
HARDWARE: ESP32 240MHz, 4.31MB RAM, 16MB Flash
DEBUG: Current (cmsis-dap) External (cmsis-dap, esp-bridge, esp-prog, iot-bus-jtag, jlink, minimodule, olimex-arm-usb-ocd, olimex-arm-usb-ocd-h, olimex
-arm-usb-tiny-h, olimex-jtag-tiny, tumpa) PACKAGES:
I uploaded it anyways and this is what I get.
I totally understand if you can't solve this issue right now. I'm super appreciative of you trying to help me. I got the M5Paper just to use it as a weather display.😀
my lat/long is N 30.xxxx and W -95.xxxx. I put 30.xxxx and -95.xxxx. Do I need to put a N or W or remove the negative?
Progress! I unplugged it from the pc and into a charger and when it rebooted it looked better:
By the way, my API key works for a similar albeit much simpler weather dashboard. Not sure if that info helps.
Okay success! I changed it to run on my guest network with a simple password and it worked! The only issue I am having now is that it wants to show me weather somewhere else. It is definitely not -23 here. Do you know how I should format my location?
my lat/long is N 30.xxxxxx and W -95.xxxxxx. I put 30.xxxxxx and -95.xxxxxx. Do I need to put a N or W or remove the negative?
I got it to work! I used the info above and changed the units to imperial in the weathercontroller.cpp on line 66 and it works fantastic! For some reason it gives me "null" as my city name. Other than that its perfect, You rock dude. Question: does "#define REFRESH_INTERVAL 60 * 60 // in seconds" mean it will refresh once per hour?
Amazing! Thanks a lot. Yes, the default refresh rate is 1 hour 😉
Thank you so much for all of your help. If I want this to refresh every 10 minutes then it would be 60 * 10 right? Man, I cant thank you enough for your help and for this repository!
Yes, correct! Just released new version in "fix-issue-2" with "units" field in config file for an easy configurability
Hi! I really want to try this out. Here are the errors I encountered when trying to compile the project:
/Users/X/.platformio/penv/lib/python3.9/site-packages/urllib3/init.py:34: NotOpenSSLWarning: urllib3 v2 only supports OpenSSL 1.1.1+, currently the 'ssl' module is compiled with 'LibreSSL 2.8.3'. See: https://github.com/urllib3/urllib3/issues/3020 warnings.warn( Processing m5stack-fire (platform: espressif32; board: m5stack-fire; framework: arduino)
/Users/X/.platformio/penv/lib/python3.9/site-packages/urllib3/init.py:34: NotOpenSSLWarning: urllib3 v2 only supports OpenSSL 1.1.1+, currently the 'ssl' module is compiled with 'LibreSSL 2.8.3'. See: https://github.com/urllib3/urllib3/issues/3020 warnings.warn( Verbose mode can be enabled via
-v, --verbose
option CONFIGURATION: https://docs.platformio.org/page/boards/espressif32/m5stack-fire.html PLATFORM: Espressif 32 (6.4.0) > M5Stack FIRE HARDWARE: ESP32 240MHz, 4.31MB RAM, 16MB Flash DEBUG: Current (cmsis-dap) External (cmsis-dap, esp-bridge, esp-prog, iot-bus-jtag, jlink, minimodule, olimex-arm-usb-ocd, olimex-arm-usb-ocd-h, olimex-arm-usb-tiny-h, olimex-jtag-tiny, tumpa) PACKAGES:framework-arduinoespressif32 @ 3.20011.230801 (2.0.11)
tool-esptoolpy @ 1.40501.0 (4.5.1)
toolchain-xtensa-esp32 @ 8.4.0+2021r2-patch5 LDF: Library Dependency Finder -> https://bit.ly/configure-pio-ldf LDF Modes: Finder ~ chain, Compatibility ~ soft Found 38 compatible libraries Scanning dependencies... Dependency Graph |-- M5EPD @ 0.1.5 |-- ArduinoJson @ 6.21.4 |-- MoonRise @ 2.0.4 |-- Time @ 1.6.1 |-- JsonStreamingParser @ 1.0.5 |-- WiFi @ 2.0.0 |-- HTTPClient @ 2.0.0 Building in release mode Compiling .pio/build/m5stack-fire/src/Controller/EPDController/EPDController.cpp.o Compiling .pio/build/m5stack-fire/src/Controller/WeatherController/WeatherController.cpp.o Compiling .pio/build/m5stack-fire/src/View/WeatherView.cpp.o Compiling .pio/build/m5stack-fire/src/main.cpp.o In file included from /Users/X/.platformio/packages/toolchain-xtensa-esp32@8.4.0+2021r2-patch5/xtensa-esp32-elf/sys-include/string.h:24, from /Users/X/.platformio/packages/framework-arduinoespressif32/cores/esp32/Arduino.h:29, from src/Controller/EPDController/EPDController.h:2, from src/Controller/EPDController/EPDController.cpp:1: src/strings.h:5:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_weather_title = "Weather"; ^
~stdin src/strings.h:6:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_last_update = "Last Update: "; ^~stdin src/strings.h:7:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_sunrise_sunset = "Sunset - Sunrise"; ^~stdin src/strings.h:8:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_moonrise_moonset = "Moonset - Moonrise"; ^~stdin src/strings.h:9:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_forecast_title = "Next Week Forecast"; ^~stdin src/strings.h:10:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_forecast_min = "Min: "; ^~stdin src/strings.h:11:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_forecast_max = "Max: "; ^~stdin src/strings.h:12:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_temperature_chart = "Temperature (°C)"; ^~stdin src/strings.h:13:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_rain_chart = "Rain (mm)"; ^~stdin src/strings.h:14:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_humidity_chart = "Humidity (%)"; ^~stdin src/strings.h:15:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_wind_chart = "Wind (m/s)"; ^~stdin src/strings.h:16:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_weekday_1 = "Sunday"; ^~stdin src/strings.h:17:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_weekday_2 = "Monday"; ^~stdin src/strings.h:18:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_weekday_3 = "Tuesday"; ^~stdin src/strings.h:19:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_weekday_4 = "Wednesday"; ^~stdin src/strings.h:20:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_weekday_5 = "Thursday"; ^~stdin src/strings.h:21:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_weekday_6 = "Friday"; ^~stdin src/strings.h:22:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_weekday_7 = "Saturday"; ^~stdin src/strings.h:23:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_loading = "Loading..."; ^~stdin src/strings.h:24:7: error: 'String' does not name a type; did you mean 'stdin'? const String string_api_error = "Error while fetching data from API"; ^~stdin Compiling .pio/build/m5stack-fire/lib83f/WiFi/WiFiScan.cpp.o Compiling .pio/build/m5stack-fire/lib83f/WiFi/WiFiServer.cpp.o Compiling .pio/build/m5stack-fire/lib83f/WiFi/WiFiUdp.cpp.o Compiling .pio/build/m5stack-fire/libf43/WiFiClientSecure/WiFiClientSecure.cpp.o In file included from /Users/X/.platformio/packages/toolchain-xtensa-esp32@8.4.0+2021r2-patch5/xtensa-esp32-elf/sys-include/string.h:24, from /Users/X/.platformio/packages/framework-arduinoespressif32/cores/esp32/Arduino.h:29, from src/main.cpp:1: src/strings.h:5:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_weather_title = "Weather"; ^~stdin src/strings.h:6:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_last_update = "Last Update: "; ^~stdin src/strings.h:7:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_sunrise_sunset = "Sunset - Sunrise"; ^~stdin src/strings.h:8:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_moonrise_moonset = "Moonset - Moonrise"; ^~stdin src/strings.h:9:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_forecast_title = "Next Week Forecast"; ^~stdin src/strings.h:10:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_forecast_min = "Min: "; ^~stdin src/strings.h:11:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_forecast_max = "Max: "; ^~stdin src/strings.h:12:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_temperature_chart = "Temperature (°C)"; ^~stdin src/strings.h:13:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_rain_chart = "Rain (mm)"; ^~stdin src/strings.h:14:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_humidity_chart = "Humidity (%)"; ^~stdin src/strings.h:15:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_wind_chart = "Wind (m/s)"; ^~stdin src/strings.h:16:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_weekday_1 = "Sunday"; ^~stdin src/strings.h:17:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_weekday_2 = "Monday"; ^~stdin src/strings.h:18:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_weekday_3 = "Tuesday"; ^~stdin src/strings.h:19:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_weekday_4 = "Wednesday"; ^~stdin src/strings.h:20:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_weekday_5 = "Thursday"; ^~stdin src/strings.h:21:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_weekday_6 = "Friday"; ^~stdin src/strings.h:22:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_weekday_7 = "Saturday"; ^~stdin src/strings.h:23:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_loading = "Loading..."; ^~stdin src/strings.h:24:7: error: 'String' does not name a type; did you mean 'stdin'? const String string_api_error = "Error while fetching data from API"; ^~stdin [.pio/build/m5stack-fire/src/Controller/EPDController/EPDController.cpp.o] Error 1 In file included from /Users/X/.platformio/packages/toolchain-xtensa-esp32@8.4.0+2021r2-patch5/xtensa-esp32-elf/sys-include/string.h:24, from /Users/X/.platformio/packages/framework-arduinoespressif32/cores/esp32/Arduino.h:29, from src/Controller/WeatherController/WeatherController.h:2, from src/Controller/WeatherController/WeatherController.cpp:1: src/strings.h:5:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_weather_title = "Weather"; ^~stdin src/strings.h:6:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_last_update = "Last Update: "; ^~stdin In file included from /Users/X/.platformio/packages/toolchain-xtensa-esp32@8.4.0+2021r2-patch5/xtensa-esp32-elf/sys-include/string.h:24, from /Users/X/.platformio/packages/framework-arduinoespressif32/cores/esp32/Arduino.h:29, from src/View/WeatherView.h:3, from src/View/WeatherView.cpp:1: src/strings.h:5:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_weather_title = "Weather"; ^~stdin src/strings.h:7:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_sunrise_sunset = "Sunset - Sunrise"; ^~stdin src/strings.h:8:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_moonrise_moonset = "Moonset - Moonrise"; ^~stdin src/strings.h:6:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_last_update = "Last Update: "; ^~stdin src/strings.h:7:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_sunrise_sunset = "Sunset - Sunrise"; ^~stdin src/strings.h:9:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_forecast_title = "Next Week Forecast"; ^~stdin src/strings.h:8:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_moonrise_moonset = "Moonset - Moonrise"; ^~stdin src/strings.h:10:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_forecast_min = "Min: "; ^~stdin src/strings.h:9:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_forecast_title = "Next Week Forecast"; ^~stdin src/strings.h:10:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_forecast_min = "Min: "; ^~stdin src/strings.h:11:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_forecast_max = "Max: "; ^~stdin src/strings.h:11:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_forecast_max = "Max: "; ^~stdin src/strings.h:12:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_temperature_chart = "Temperature (°C)"; ^~stdin src/strings.h:12:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_temperature_chart = "Temperature (°C)"; ^~stdin src/strings.h:13:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_rain_chart = "Rain (mm)"; ^~stdin src/strings.h:14:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_humidity_chart = "Humidity (%)"; ^~stdin src/strings.h:13:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_rain_chart = "Rain (mm)"; ^~stdin src/strings.h:15:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_wind_chart = "Wind (m/s)"; ^~stdin src/strings.h:14:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_humidity_chart = "Humidity (%)"; ^~stdin src/strings.h:15:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_wind_chart = "Wind (m/s)"; ^~stdin src/strings.h:16:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_weekday_1 = "Sunday"; ^~stdin src/strings.h:17:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_weekday_2 = "Monday"; ^~stdin src/strings.h:16:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_weekday_1 = "Sunday"; ^~stdin src/strings.h:18:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_weekday_3 = "Tuesday"; ^~stdin src/strings.h:17:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_weekday_2 = "Monday"; ^~stdin src/strings.h:19:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_weekday_4 = "Wednesday"; ^~stdin src/strings.h:18:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_weekday_3 = "Tuesday"; ^~stdin src/strings.h:20:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_weekday_5 = "Thursday"; ^~stdin src/strings.h:19:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_weekday_4 = "Wednesday"; ^~stdin src/strings.h:21:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_weekday_6 = "Friday"; ^~stdin src/strings.h:20:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_weekday_5 = "Thursday"; ^~stdin src/strings.h:22:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_weekday_7 = "Saturday"; ^~stdin src/strings.h:21:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_weekday_6 = "Friday"; ^~stdin src/strings.h:23:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_loading = "Loading..."; ^~stdin src/strings.h:24:7: error: 'String' does not name a type; did you mean 'stdin'? const String string_api_error = "Error while fetching data from API"; ^~stdin src/strings.h:22:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_weekday_7 = "Saturday"; ^~stdin src/strings.h:23:7: error: 'String' does not name a type; did you mean 'stdin'? const String strings_loading = "Loading..."; ^~stdin src/strings.h:24:7: error: 'String' does not name a type; did you mean 'stdin'? const String string_api_error = "Error while fetching data from API"; ^~stdin src/main.cpp: In function 'void setup()': src/main.cpp:13:41: error: 'strings_weather_title' was not declared in this scope weatherView.drawBaseNavBarWithTitle(strings_weather_title, false); ^~~~~[.pio/build/m5stack-fire/src/main.cpp.o] Error 1 src/View/WeatherView.cpp: In member function 'void WeatherView::show()': src/View/WeatherView.cpp:8:29: error: 'strings_weather_title' was not declared in this scope drawBaseNavBarWithTitle(strings_weather_title); ^~~~~src/View/WeatherView.cpp: In member function 'void WeatherView::drawTodayWidget(int, int)': src/View/WeatherView.cpp:40:9: error: 'strings_last_update' was not declared in this scope strings_last_update + getTimeString(weatherController.data.lastUpdate); ^~~~~~~ src/View/WeatherView.cpp:40:9: note: suggested alternative: 'ets_sha_update' strings_last_update + getTimeString(weatherController.data.lastUpdate); ^~~~~~~ ets_sha_update src/View/WeatherView.cpp: In member function 'void WeatherView::drawSetRiseWidget(int, int)': src/View/WeatherView.cpp:83:29: error: 'strings_sunrise_sunset' was not declared in this scope canvas.drawCentreString(strings_sunrise_sunset, w / 2, ^~~~~~ src/View/WeatherView.cpp:87:29: error: 'strings_moonrise_moonset' was not declared in this scope canvas.drawCentreString(strings_moonrise_moonset, w / 2, ^~~~~~~~ [.pio/build/m5stack-fire/src/Controller/WeatherController/WeatherController.cpp.o] Error 1 src/View/WeatherView.cpp: In member function 'void WeatherView::drawForecastWidget(int, int)': src/View/WeatherView.cpp:124:23: error: 'strings_forecast_title' was not declared in this scope canvas.drawString(strings_forecast_title, 20, 36 - textSize20H / 2); ^~~~~~ src/View/WeatherView.cpp:131:13: error: 'strings_forecast_min' was not declared in this scope strings_forecast_min + String((int)forecastMinTemps[i - 1]) + "° " + ^~~~~~~~ src/View/WeatherView.cpp:132:13: error: 'strings_forecast_max' was not declared in this scope strings_forecast_max + String((int)forecastMaxTemps[i - 1]) + "°"; ^~~~~~~~ src/View/WeatherView.cpp: In member function 'void WeatherView::drawChartsWidget(int, int)': src/View/WeatherView.cpp:173:30: error: 'strings_temperature_chart' was not declared in this scope String chartLabels[4] = {strings_temperature_chart, strings_rain_chart, ^~~~~~~~~ src/View/WeatherView.cpp:173:57: error: 'strings_rain_chart' was not declared in this scope String chartLabels[4] = {strings_temperature_chart, strings_rain_chart, ^~~~~~ src/View/WeatherView.cpp:174:30: error: 'strings_humidity_chart' was not declared in this scope strings_humidity_chart, strings_wind_chart}; ^~~~~~ src/View/WeatherView.cpp:174:54: error: 'strings_wind_chart' was not declared in this scope strings_humidity_chart, strings_wind_chart}; ^~~~~~ src/View/WeatherView.cpp: In member function 'void WeatherView::drawLoadingData(int, int)': src/View/WeatherView.cpp:250:29: error: 'strings_loading' was not declared in this scope canvas.drawCentreString(strings_loading, dim / 2, dim + 15, 1); ^~~~~~~ src/View/WeatherView.cpp: In member function 'void WeatherView::drawErrorMessage()': src/View/WeatherView.cpp:302:29: error: 'string_api_error' was not declared in this scope canvas.drawCentreString(string_api_error, (maxX - 60) / 2, ^~~~src/View/WeatherView.cpp:302:29: note: suggested alternative: 'strerror' canvas.drawCentreString(string_api_error, (maxX - 60) / 2, ^~~~strerror src/View/WeatherView.cpp: In member function 'String WeatherView::getWeekDayString(time_t)': src/View/WeatherView.cpp:333:16: error: 'strings_weekday_2' was not declared in this scope return strings_weekday_2; ^~~~~ src/View/WeatherView.cpp:335:16: error: 'strings_weekday_3' was not declared in this scope return strings_weekday_3; ^~~~~ src/View/WeatherView.cpp:337:16: error: 'strings_weekday_4' was not declared in this scope return strings_weekday_4; ^~~~~ src/View/WeatherView.cpp:339:16: error: 'strings_weekday_5' was not declared in this scope return strings_weekday_5; ^~~~~ src/View/WeatherView.cpp:341:16: error: 'strings_weekday_6' was not declared in this scope return strings_weekday_6; ^~~~~ src/View/WeatherView.cpp:343:16: error: 'strings_weekday_7' was not declared in this scope return strings_weekday_7; ^~~~~ src/View/WeatherView.cpp:345:16: error: 'strings_weekday_1' was not declared in this scope return strings_weekday_1; ^~~~~ [.pio/build/m5stack-fire/src/View/WeatherView.cpp.o] Error 1 ================================== [FAILED] Took 2.95 seconds ==================================The terminal process "platformio 'run', '--environment', 'm5stack-fire'" terminated with exit code: 1.
Terminal will be reused by tasks, press any key to close it.