Can't compile in vscode using platformio

Hello,
For the life of me, I can not get my project to compile…I select my m5core 2, set the com port ect…All plugins are good (no red lines) and this sketch just built in arduino ide no problem. However I really want to use vscode.

The error:
collect2.exe: error: ld returned 1 exit status
*** [.pio\build\m5stack-core2\firmware.elf] Error 1
================================== [FAILED] Took 61.98 seconds ===
I am unsure what to do at this stage. Any advice would be greatly appreciated.

The real error would have been above that line. That just says “Could not link :(”.

Please post your full platformio.ini and code that you’re using.

Here is the ini file.
[env:m5stack-core2]
platform = espressif32
board = m5stack-core2

Here is the output of the terminal NOTE: There were no red entries in the terminal except the last line about firmware.elf

C:/Users/Administrator.MYTDS/.platformio/packages/framework-arduinoespressif32/cores/esp32/esp32-hal-spi.c: In function ‘spiTransferBytesNL’:
C:/Users/Administrator.MYTDS/.platformio/packages/framework-arduinoespressif32/cores/esp32/esp32-hal-spi.c:922:39: warning: initialization from incompatible pointer type [-Wincompatible-pointer-types]
uint8_t * last_out8 = &result[c_longs-1];
^
C:/Users/Administrator.MYTDS/.platformio/packages/framework-arduinoespressif32/cores/esp32/esp32-hal-spi.c:923:40: warning: initialization from incompatible pointer type [-Wincompatible-pointer-types]
uint8_t * last_data8 = &last_data;
^
Compiling .pio\build\m5stack-core2\FrameworkArduino\esp32-hal-timer.c.o
Compiling .pio\build\m5stack-core2\FrameworkArduino\esp32-hal-touch.c.o
Compiling .pio\build\m5stack-core2\FrameworkArduino\esp32-hal-uart.c.o
Compiling .pio\build\m5stack-core2\FrameworkArduino\libb64\cdecode.c.o
Compiling .pio\build\m5stack-core2\FrameworkArduino\libb64\cencode.c.o
Compiling .pio\build\m5stack-core2\FrameworkArduino\main.cpp.o
Compiling .pio\build\m5stack-core2\FrameworkArduino\stdlib_noniso.c.o
Compiling .pio\build\m5stack-core2\FrameworkArduino\wiring_pulse.c.o
Compiling .pio\build\m5stack-core2\FrameworkArduino\wiring_shift.c.o
Archiving .pio\build\m5stack-core2\libFrameworkArduino.a
Linking .pio\build\m5stack-core2\firmware.elf
.pio\build\m5stack-core2\libFrameworkArduino.a(main.cpp.o):(.literal._Z8loopTaskPv+0x8): undefined reference to setup()' .pio\build\m5stack-core2\libFrameworkArduino.a(main.cpp.o):(.literal._Z8loopTaskPv+0xc): undefined reference to loop()’
.pio\build\m5stack-core2\libFrameworkArduino.a(main.cpp.o): In function loopTask(void*)': C:/Users/Administrator.MYTDS/.platformio/packages/framework-arduinoespressif32/cores/esp32/main.cpp:18: undefined reference to setup()’
C:/Users/Administrator.MYTDS/.platformio/packages/framework-arduinoespressif32/cores/esp32/main.cpp:21: undefined reference to `loop()’
collect2.exe: error: ld returned 1 exit status
*** [.pio\build\m5stack-core2\firmware.elf] Error 1
========================= [FAILED] Took 59.55 seconds =========================
The terminal process “C:\Users\Administrator.MYTDS.platformio\penv\Scripts\platformio.exe ‘run’” terminated with exit code: 1.

I would post my script but the main ino file is over 4k lines long lol. but if you want snippets please let me know.

This says there is no loop() and setup() functions in the project.

What is the content of the src\main.cpp file?

If you have multiple projects in your workspace, did you correctly switch to it with the project environment switcher?

There is certianly loop and setup in the project (how could arduino ide compile without?)

Looking in the src folder there is no main.cpp file at all.

You as the programmer must implement the setup() and loop() function in your source code.

If there is no source code in src/, where is the code?

Sorre posted the wrong ini file

[env:m5stack-core2]
platform = espressif32
board = m5stack-core2
framework = arduino
lib_extra_dirs = ~/Documents/Arduino/libraries

The code is there with the name n512.ino, but there is no cpp file with that name. There never has been for some reason…

Setup:

void setup() {

  Serial.begin(115200);

 LEDS.addLeds<NEOPIXEL, PIN>(leds, NUM_LEDS);

  

    // initialize the M5Stack object

    M5.begin(true, true, true, true, kMBusModeOutput);

    #ifdef ARDUINO_M5STACK_Core2

      M5.Axp.SetSpkEnable(true);

//      InitI2SSpeakOrMic(MODE_SPK);

    #else

      M5.Power.begin();

    #endif

FastLED.addLeds<NEOPIXEL, PIN>(leds, NUM_LEDS);

  pinMode(2,INPUT_PULLUP);  // internal pull-up resistor

    // prevent button A "ghost" random presses on older versions

    Wire.begin();

    SPIFFS.begin();

    SD.begin();

    // M5.Speaker.mute();
(additional code goes on)


Loop:
oid loop() {

  if (!playing) {

    mainLoop();

    longMainLoop += 1;

    if (!printed && playedOnce) {

      /*String mainLoopString = "xx";

        String wavLoopString = "xx";

        mainLoopString = "mainLoop:" + longMainLoop;

        wavLoopString = "wavLoop:" + longWaveLoop;*/

      Serial.println(longMainLoop);

      Serial.println(longWaveLoop);

      printed = true;

    }

    delay(40);

  }

  else

  {

    finalizeWAVInstance();

    longWaveLoop += 1;

    //Serial.println("mainLoop:" + longWaveLoop);

  }

An .ino file is okay, but it would be better if it was a .cpp file.

Where is that n512.ino file located? In src/?

yes. it is located in C:\Users\Administrator.MYTDS\Documents\PlatformIO\Projects\211002-155957-m5stack-core2\src

Use the project tasks “Clean”, then “Build”. Post the full output of the “Build” task. Use markdown code formatting to format it correctly with three backticks.

Well that is interesting. I had no errors except the firmware.elf, after i cleaned it i now have a bunch of errors…


Processing m5stack-core2 (platform: espressif32; board: m5stack-core2; framework: arduino)
--------------------------------------------------------------------------------Verbose mode can be enabled via `-v, --verbose` option
CONFIGURATION: https://docs.platformio.org/page/boards/espressif32/m5stack-core2.html
PLATFORM: Espressif 32 (3.3.2) > M5Stack Core2
HARDWARE: ESP32 240MHz, 4.31MB 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:
 - framework-arduinoespressif32 3.10006.210326 (1.0.6)
 - tool-esptoolpy 1.30100.210531 (3.1.0)
 - toolchain-xtensa32 2.50200.97 (5.2.0)
Converting n512.ino
LDF: Library Dependency Finder -> http://bit.ly/configure-pio-ldf
LDF Modes: Finder ~ chain, Compatibility ~ soft
Found 65 compatible libraries
Scanning dependencies...
Dependency Graph
|-- <Wire> 1.0.1
|-- <SD(esp32)> 1.0.5
|   |-- <FS> 1.0
|   |-- <SPI> 1.0
|-- <ArduinoJson> 6.18.4
|-- <ESPmDNS> 1.0
|   |-- <WiFi> 1.0
|-- <HTTPClient> 1.2
|   |-- <WiFi> 1.0
|   |-- <WiFiClientSecure> 1.0
|   |   |-- <WiFi> 1.0
|-- <HTTPUpdate> 1.3
|   |-- <HTTPClient> 1.2
|   |   |-- <WiFi> 1.0
|   |   |-- <WiFiClientSecure> 1.0
|   |   |   |-- <WiFi> 1.0
|   |-- <Update> 1.0
|   |-- <WiFi> 1.0
|-- <M5Core2> 0.0.5
|   |-- <Wire> 1.0.1
|   |-- <SPIFFS> 1.0
|   |   |-- <FS> 1.0
|   |-- <FS> 1.0
|   |-- <SPI> 1.0
|   |-- <HTTPClient> 1.2
|   |   |-- <WiFi> 1.0
|   |   |-- <WiFiClientSecure> 1.0
|   |   |   |-- <WiFi> 1.0
|   |-- <M5Stack> 0.3.6
|   |   |-- <FS> 1.0
|   |   |-- <SPIFFS> 1.0
|   |   |   |-- <FS> 1.0
|   |   |-- <SPI> 1.0
|   |   |-- <HTTPClient> 1.2
|   |   |   |-- <WiFi> 1.0
|   |   |   |-- <WiFiClientSecure> 1.0
|   |   |   |   |-- <WiFi> 1.0
|   |   |-- <Wire> 1.0.1
|   |   |-- <SD(esp32)> 1.0.5
|   |   |   |-- <FS> 1.0
|   |   |   |-- <SPI> 1.0
|   |-- <SD(esp32)> 1.0.5
|   |   |-- <FS> 1.0
|   |   |-- <SPI> 1.0
|-- <M5Stack> 0.3.6
|   |-- <FS> 1.0
|   |-- <SPIFFS> 1.0
|   |   |-- <FS> 1.0
|   |-- <SPI> 1.0
|   |-- <HTTPClient> 1.2
|   |   |-- <WiFi> 1.0
|   |   |-- <WiFiClientSecure> 1.0
|   |   |   |-- <WiFi> 1.0
|   |-- <Wire> 1.0.1
|   |-- <SD(esp32)> 1.0.5
|   |   |-- <FS> 1.0
|   |   |-- <SPI> 1.0
|-- <Preferences> 1.0
|-- <WebServer> 1.0
|   |-- <WiFi> 1.0
|   |-- <FS> 1.0
|-- <WiFi> 1.0
|-- <Adafruit NeoPixel> 1.8.7
|-- <ESP8266Audio> 1.9.2
|   |-- <FS> 1.0
|   |-- <SPIFFS> 1.0
|   |   |-- <FS> 1.0
|   |-- <SD(esp32)> 1.0.5
|   |   |-- <FS> 1.0
|   |   |-- <SPI> 1.0
|   |-- <HTTPClient> 1.2
|   |   |-- <WiFi> 1.0
|   |   |-- <WiFiClientSecure> 1.0
|   |   |   |-- <WiFi> 1.0
|   |-- <SPI> 1.0
|-- <FastLED> 3.4.0
|   |-- <SPI> 1.0
|-- <SPIFFS> 1.0
|   |-- <FS> 1.0
|-- <DNSServer> 1.1.0
|   |-- <WiFi> 1.0
|-- <EEPROM> 1.0.3
Building in release mode
Compiling .pio\build\m5stack-core2\lib016\FastLED\FastLED.cpp.o
Compiling .pio\build\m5stack-core2\lib016\FastLED\bitswap.cpp.o
Compiling .pio\build\m5stack-core2\lib016\FastLED\colorpalettes.cpp.o
Compiling .pio\build\m5stack-core2\lib016\FastLED\colorutils.cpp.o
Compiling .pio\build\m5stack-core2\lib016\FastLED\hsv2rgb.cpp.o
Compiling .pio\build\m5stack-core2\lib016\FastLED\lib8tion.cpp.o
Compiling .pio\build\m5stack-core2\lib016\FastLED\noise.cpp.o
Compiling .pio\build\m5stack-core2\lib016\FastLED\platforms.cpp.o
Compiling .pio\build\m5stack-core2\lib016\FastLED\platforms\esp\32\clockless_rmt_esp32.cpp.o
Compiling .pio\build\m5stack-core2\lib016\FastLED\power_mgt.cpp.o
Compiling .pio\build\m5stack-core2\lib016\FastLED\wiring.cpp.o
Compiling .pio\build\m5stack-core2\src\DHT12.cpp.o
Compiling .pio\build\m5stack-core2\src\IniFile.cpp.o
C:/Users/Administrator.MYTDS/Documents/Arduino/libraries/FastLED/src/platforms/esp/32/clockless_rmt_esp32.cpp: In static member function 'static void ESP32RMTController::interruptHandler(void*)':
C:/Users/Administrator.MYTDS/Documents/Arduino/libraries/FastLED/src/platforms/esp/32/clockless_rmt_esp32.cpp:318:10: warning: unused variable 'stuff_to_do' [-Wunused-variable]
     bool stuff_to_do = false;
          ^
Compiling .pio\build\m5stack-core2\src\M5NSWebConfig.cpp.o
Compiling .pio\build\m5stack-core2\src\M5NSconfig.cpp.o
Compiling .pio\build\m5stack-core2\src\SHT3X.cpp.o
Compiling .pio\build\m5stack-core2\src\iot_iconset_16x16.c.o
Compiling .pio\build\m5stack-core2\src\microdot.cpp.o
Compiling .pio\build\m5stack-core2\src\n512.ino.cpp.o
Generating partitions .pio\build\m5stack-core2\partitions.bin
Compiling .pio\build\m5stack-core2\lib1b6\Wire\Wire.cpp.o
Compiling .pio\build\m5stack-core2\libeb1\FS\FS.cpp.o
Compiling .pio\build\m5stack-core2\libeb1\FS\vfs_api.cpp.o
Compiling .pio\build\m5stack-core2\libacc\SPI\SPI.cpp.o
Compiling .pio\build\m5stack-core2\libe73\SD\SD.cpp.o
Compiling .pio\build\m5stack-core2\libe73\SD\sd_diskio.cpp.o
Compiling .pio\build\m5stack-core2\libe73\SD\sd_diskio_crc.c.o
Compiling .pio\build\m5stack-core2\lib28f\WiFi\ETH.cpp.o
Compiling .pio\build\m5stack-core2\lib28f\WiFi\WiFi.cpp.o
Archiving .pio\build\m5stack-core2\libacc\libSPI.a
Compiling .pio\build\m5stack-core2\lib28f\WiFi\WiFiAP.cpp.o
Compiling .pio\build\m5stack-core2\lib28f\WiFi\WiFiClient.cpp.o
Compiling .pio\build\m5stack-core2\lib28f\WiFi\WiFiGeneric.cpp.o
Compiling .pio\build\m5stack-core2\lib28f\WiFi\WiFiMulti.cpp.o
Compiling .pio\build\m5stack-core2\lib28f\WiFi\WiFiSTA.cpp.o
Compiling .pio\build\m5stack-core2\lib28f\WiFi\WiFiScan.cpp.o
Archiving .pio\build\m5stack-core2\lib1b6\libWire.a
Compiling .pio\build\m5stack-core2\lib28f\WiFi\WiFiServer.cpp.o
In file included from C:/Users/Administrator.MYTDS/Documents/PlatformIO/Projects/211002-155957-m5stack-core2/src/n512.ino:1:0:
C:/Users/Administrator.MYTDS/Documents/Arduino/libraries/FastLED/src/FastLED.h:14:21: note: #pragma message: FastLED version 3.004.000
 #    pragma message "FastLED version 3.004.000"
                     ^
In file included from C:/Users/Administrator.MYTDS/Documents/Arduino/libraries/FastLED/src/FastLED.h:65:0,
                 from C:/Users/Administrator.MYTDS/Documents/PlatformIO/Projects/211002-155957-m5stack-core2/src/n512.ino:1:
C:/Users/Administrator.MYTDS/Documents/Arduino/libraries/FastLED/src/fastspi.h:135: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"
                       ^
Compiling .pio\build\m5stack-core2\lib28f\WiFi\WiFiUdp.cpp.o
src/M5NSconfig.cpp: In function 'void readConfiguration(const char*, tConfig*)':src/M5NSconfig.cpp:213:8: warning: unused variable 'iniFileRead' [-Wunused-variable]
   bool iniFileRead = false;
        ^
Archiving .pio\build\m5stack-core2\libeb1\libFS.a
Compiling .pio\build\m5stack-core2\lib651\ESPmDNS\ESPmDNS.cpp.o
Compiling .pio\build\m5stack-core2\lib105\WiFiClientSecure\WiFiClientSecure.cpp.o
Archiving .pio\build\m5stack-core2\libe73\libSD.a
Compiling .pio\build\m5stack-core2\lib105\WiFiClientSecure\ssl_client.cpp.o
Compiling .pio\build\m5stack-core2\lib056\HTTPClient\HTTPClient.cpp.o
In file included from C:/Users/Administrator.MYTDS/Documents/Arduino/libraries/M5Stack/src/M5Stack.h:110:0,
                 from C:/Users/Administrator.MYTDS/Documents/PlatformIO/Projects/211002-155957-m5stack-core2/src/n512.ino:22:
C:/Users/Administrator.MYTDS/Documents/Arduino/libraries/M5Stack/src/utility/Button.h:18:7: error: redefinition of 'class Button'
 class Button {
       ^
In file included from C:/Users/Administrator.MYTDS/Documents/Arduino/libraries/M5Core2/src/M5Core2.h:78:0,
                 from C:/Users/Administrator.MYTDS/Documents/PlatformIO/Projects/211002-155957-m5stack-core2/src/n512.ino:17:
C:/Users/Administrator.MYTDS/Documents/Arduino/libraries/M5Core2/src/utility/M5Button.h:804:7: error: previous definition of 'class Button'
 class Button : public Zone {
       ^
In file included from C:/Users/Administrator.MYTDS/Documents/PlatformIO/Projects/211002-155957-m5stack-core2/src/n512.ino:22:0:
C:/Users/Administrator.MYTDS/Documents/Arduino/libraries/M5Stack/src/M5Stack.h:130:30: error: 'BUTTON_A_PIN' was not declared in this scope
         Button BtnA = Button(BUTTON_A_PIN, true, DEBOUNCE_MS);
                              ^
C:/Users/Administrator.MYTDS/Documents/Arduino/libraries/M5Stack/src/M5Stack.h:131:30: error: 'BUTTON_B_PIN' was not declared in this scope
         Button BtnB = Button(BUTTON_B_PIN, true, DEBOUNCE_MS);
                              ^
C:/Users/Administrator.MYTDS/Documents/Arduino/libraries/M5Stack/src/M5Stack.h:132:30: error: 'BUTTON_C_PIN' was not declared in this scope
         Button BtnC = Button(BUTTON_C_PIN, true, DEBOUNCE_MS);
                              ^
C:/Users/Administrator.MYTDS/Documents/Arduino/libraries/M5Stack/src/M5Stack.h:168:20: error: conflicting declaration 'M5Stack M5'
     extern M5Stack M5;
                    ^
In file included from C:/Users/Administrator.MYTDS/Documents/PlatformIO/Projects/211002-155957-m5stack-core2/src/n512.ino:17:0:
C:/Users/Administrator.MYTDS/Documents/Arduino/libraries/M5Core2/src/M5Core2.h:138:20: note: previous declaration as 'M5Core2 M5'
     extern M5Core2 M5;
                    ^
Compiling .pio\build\m5stack-core2\lib484\Update\HttpsOTAUpdate.cpp.o
Compiling .pio\build\m5stack-core2\lib484\Update\Updater.cpp.o
C:/Users/Administrator.MYTDS/Documents/PlatformIO/Projects/211002-155957-m5stack-core2/src/n512.ino: In function 'void play_tone(uint16_t, uint32_t, uint8_t)': 
C:/Users/Administrator.MYTDS/Documents/PlatformIO/Projects/211002-155957-m5stack-core2/src/n512.ino:414:10: warning: unused variable 'bytes_written' [-Wunused-variable]
   size_t bytes_written = 0;
          ^
C:/Users/Administrator.MYTDS/Documents/PlatformIO/Projects/211002-155957-m5stack-core2/src/LED.ino: At global scope:
C:/Users/Administrator.MYTDS/Documents/PlatformIO/Projects/211002-155957-m5stack-core2/src/LED.ino:2:19: error: redefinition of 'CRGB leds [10]'
 CRGB leds[NUM_LEDS];
                   ^
C:/Users/Administrator.MYTDS/Documents/PlatformIO/Projects/211002-155957-m5stack-core2/src/n512.ino:58:6: note: 'CRGB leds [10]' previously declared here       
 CRGB leds[NUM_LEDS];
      ^
In file included from C:/Users/Administrator.MYTDS/Documents/PlatformIO/Projects/211002-155957-m5stack-core2/src/n512.ino:1:0:
C:/Users/Administrator.MYTDS/Documents/Arduino/libraries/FastLED/src/FastLED.h:578:14: error: 'FastLED' does not name a type
 #define LEDS FastLED
              ^
C:/Users/Administrator.MYTDS/Documents/PlatformIO/Projects/211002-155957-m5stack-core2/src/LED.ino:6:2: note: in expansion of macro 'LEDS'
  LEDS.addLeds<NEOPIXEL, PIN>(leds, NUM_LEDS);
  ^
C:/Users/Administrator.MYTDS/Documents/PlatformIO/Projects/211002-155957-m5stack-core2/src/LED.ino:8:1: error: 'M5' does not name a type
 M5.begin(true, true, true, true, kMBusModeOutput);
 ^
C:/Users/Administrator.MYTDS/Documents/PlatformIO/Projects/211002-155957-m5stack-core2/src/LED.ino:9:5: error: 'FastLED' does not name a type
     FastLED.setBrightness(MAX_BRIGHT);
     ^
C:/Users/Administrator.MYTDS/Documents/PlatformIO/Projects/211002-155957-m5stack-core2/src/LED.ino: In function 'void loop()':
C:/Users/Administrator.MYTDS/Documents/PlatformIO/Projects/211002-155957-m5stack-core2/src/LED.ino:11:6: error: redefinition of 'void loop()'
 void loop () {
      ^
C:/Users/Administrator.MYTDS/Documents/PlatformIO/Projects/211002-155957-m5stack-core2/src/n512.ino:3002:6: note: 'void loop()' previously defined here
 void loop() {
      ^
Compiling .pio\build\m5stack-core2\libb1f\HTTPUpdate\HTTPUpdate.cpp.o
Compiling .pio\build\m5stack-core2\lib36e\SPIFFS\SPIFFS.cpp.o
Compiling .pio\build\m5stack-core2\liba83\M5Stack\Fonts\Font16.c.o
Compiling .pio\build\m5stack-core2\liba83\M5Stack\Fonts\Font32rle.c.o
Compiling .pio\build\m5stack-core2\liba83\M5Stack\Fonts\Font64rle.c.o
*** [.pio\build\m5stack-core2\src\n512.ino.cpp.o] Error 1
========================= [FAILED] Took 11.97 seconds =========================
The terminal process "C:\Users\Administrator.MYTDS\.platformio\penv\Scripts\platformio.exe 'run'" terminated with exit code: 1.

Terminal will be reused by tasks, press any key to close it.

…there are two .ino files in the src/ folder, is this wanted? They’re trying to override the global setup() and loop() function each.

Yes there is an LED.ino file, I have a bunch of different effects used for different things and i looked around and people suggested using an ino file to hold them instead of having a huge main ino file.

wait a minute. the led file wasnt supposed to have setup or loop. i just removed those lines…i just removed the ino file, but still have problems now

Verbose mode can be enabled via `-v, --verbose` option
CONFIGURATION: https://docs.platformio.org/page/boards/espressif32/m5stack-core2.html
PLATFORM: Espressif 32 (3.3.2) > M5Stack Core2
HARDWARE: ESP32 240MHz, 4.31MB 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:
 - framework-arduinoespressif32 3.10006.210326 (1.0.6)
 - tool-esptoolpy 1.30100.210531 (3.1.0)
 - toolchain-xtensa32 2.50200.97 (5.2.0)
Converting n512.ino
LDF: Library Dependency Finder -> http://bit.ly/configure-pio-ldf
LDF Modes: Finder ~ chain, Compatibility ~ soft
Found 65 compatible libraries
Scanning dependencies...
Dependency Graph
|-- <Wire> 1.0.1
|-- <SD(esp32)> 1.0.5
|   |-- <FS> 1.0
|   |-- <SPI> 1.0
|-- <ArduinoJson> 6.18.4
|-- <ESPmDNS> 1.0
|   |-- <WiFi> 1.0
|-- <HTTPClient> 1.2
|   |-- <WiFi> 1.0
|   |-- <WiFiClientSecure> 1.0
|   |   |-- <WiFi> 1.0
|-- <HTTPUpdate> 1.3
|   |-- <HTTPClient> 1.2
|   |   |-- <WiFi> 1.0
|   |   |-- <WiFiClientSecure> 1.0
|   |   |   |-- <WiFi> 1.0
|   |-- <Update> 1.0
|   |-- <WiFi> 1.0
|-- <M5Core2> 0.0.5
|   |-- <Wire> 1.0.1
|   |-- <SPIFFS> 1.0
|   |   |-- <FS> 1.0
|   |-- <FS> 1.0
|   |-- <SPI> 1.0
|   |-- <HTTPClient> 1.2
|   |   |-- <WiFi> 1.0
|   |   |-- <WiFiClientSecure> 1.0
|   |   |   |-- <WiFi> 1.0
|   |-- <M5Stack> 0.3.6
|   |   |-- <FS> 1.0
|   |   |-- <SPIFFS> 1.0
|   |   |   |-- <FS> 1.0
|   |   |-- <SPI> 1.0
|   |   |-- <HTTPClient> 1.2
|   |   |   |-- <WiFi> 1.0
|   |   |   |-- <WiFiClientSecure> 1.0
|   |   |   |   |-- <WiFi> 1.0
|   |   |-- <Wire> 1.0.1
|   |   |-- <SD(esp32)> 1.0.5
|   |   |   |-- <FS> 1.0
|   |   |   |-- <SPI> 1.0
|   |-- <SD(esp32)> 1.0.5
|   |   |-- <FS> 1.0
|   |   |-- <SPI> 1.0
|-- <M5Stack> 0.3.6
|   |-- <FS> 1.0
|   |-- <SPIFFS> 1.0
|   |   |-- <FS> 1.0
|   |-- <SPI> 1.0
|   |-- <HTTPClient> 1.2
|   |   |-- <WiFi> 1.0
|   |   |-- <WiFiClientSecure> 1.0
|   |   |   |-- <WiFi> 1.0
|   |-- <Wire> 1.0.1
|   |-- <SD(esp32)> 1.0.5
|   |   |-- <FS> 1.0
|   |   |-- <SPI> 1.0
|-- <Preferences> 1.0
|-- <WebServer> 1.0
|   |-- <WiFi> 1.0
|   |-- <FS> 1.0
|-- <WiFi> 1.0
|-- <Adafruit NeoPixel> 1.8.7
|-- <ESP8266Audio> 1.9.2
|   |-- <FS> 1.0
|   |-- <SPIFFS> 1.0
|   |   |-- <FS> 1.0
|   |-- <SD(esp32)> 1.0.5
|   |   |-- <FS> 1.0
|   |   |-- <SPI> 1.0
|   |-- <HTTPClient> 1.2
|   |   |-- <WiFi> 1.0
|   |   |-- <WiFiClientSecure> 1.0
|   |   |   |-- <WiFi> 1.0
|   |-- <SPI> 1.0
|-- <FastLED> 3.4.0
|   |-- <SPI> 1.0
|-- <SPIFFS> 1.0
|   |-- <FS> 1.0
|-- <DNSServer> 1.1.0
|   |-- <WiFi> 1.0
|-- <EEPROM> 1.0.3
Building in release mode
Compiling .pio\build\m5stack-core2\src\n512.ino.cpp.o
In file included from C:/Users/Administrator.MYTDS/Documents/PlatformIO/Projects/211002-155957-m5stack-core2/src/n512.ino:1:0:
C:/Users/Administrator.MYTDS/Documents/Arduino/libraries/FastLED/src/FastLED.h:14:21: note: #pragma message: FastLED version 3.004.000
 #    pragma message "FastLED version 3.004.000"
                     ^
In file included from C:/Users/Administrator.MYTDS/Documents/Arduino/libraries/FastLED/src/FastLED.h:65:0,
                 from C:/Users/Administrator.MYTDS/Documents/PlatformIO/Projects/211002-155957-m5stack-core2/src/n512.ino:1:
C:/Users/Administrator.MYTDS/Documents/Arduino/libraries/FastLED/src/fastspi.h:135: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"
                       ^
Compiling .pio\build\m5stack-core2\liba83\M5Stack\utility\Sprite.cpp.o
Compiling .pio\build\m5stack-core2\liba83\M5Stack\utility\pngle.c.o
Compiling .pio\build\m5stack-core2\liba83\M5Stack\utility\qrcode.c.o
Compiling .pio\build\m5stack-core2\liba83\M5Stack\utility\quaternionFilters.cpp.o
In file included from C:/Users/Administrator.MYTDS/Documents/Arduino/libraries/M5Stack/src/M5Stack.h:110:0,
                 from C:/Users/Administrator.MYTDS/Documents/PlatformIO/Projects/211002-155957-m5stack-core2/src/n512.ino:22:
C:/Users/Administrator.MYTDS/Documents/Arduino/libraries/M5Stack/src/utility/Button.h:18:7: error: redefinition of 'class Button'
 class Button {
       ^
In file included from C:/Users/Administrator.MYTDS/Documents/Arduino/libraries/M5Core2/src/M5Core2.h:78:0,
                 from C:/Users/Administrator.MYTDS/Documents/PlatformIO/Projects/211002-155957-m5stack-core2/src/n512.ino:17:
C:/Users/Administrator.MYTDS/Documents/Arduino/libraries/M5Core2/src/utility/M5Button.h:804:7: error: previous definition of 'class Button'
 class Button : public Zone {
       ^
In file included from C:/Users/Administrator.MYTDS/Documents/PlatformIO/Projects/211002-155957-m5stack-core2/src/n512.ino:22:0:
C:/Users/Administrator.MYTDS/Documents/Arduino/libraries/M5Stack/src/M5Stack.h:130:30: error: 'BUTTON_A_PIN' was not declared in this scope
         Button BtnA = Button(BUTTON_A_PIN, true, DEBOUNCE_MS);
                              ^
C:/Users/Administrator.MYTDS/Documents/Arduino/libraries/M5Stack/src/M5Stack.h:131:30: error: 'BUTTON_B_PIN' was not declared in this scope
         Button BtnB = Button(BUTTON_B_PIN, true, DEBOUNCE_MS);
                              ^
C:/Users/Administrator.MYTDS/Documents/Arduino/libraries/M5Stack/src/M5Stack.h:132:30: error: 'BUTTON_C_PIN' was not declared in this scope
         Button BtnC = Button(BUTTON_C_PIN, true, DEBOUNCE_MS);
                              ^
C:/Users/Administrator.MYTDS/Documents/Arduino/libraries/M5Stack/src/M5Stack.h:168:20: error: conflicting declaration 'M5Stack M5'
     extern M5Stack M5;
                    ^
In file included from C:/Users/Administrator.MYTDS/Documents/PlatformIO/Projects/211002-155957-m5stack-core2/src/n512.ino:17:0:
C:/Users/Administrator.MYTDS/Documents/Arduino/libraries/M5Core2/src/M5Core2.h:138:20: note: previous declaration as 'M5Core2 M5'
     extern M5Core2 M5;
                    ^
Compiling .pio\build\m5stack-core2\libe4f\M5Core2\AXP192.cpp.o
Compiling .pio\build\m5stack-core2\libe4f\M5Core2\Fonts\Font16.c.o
Compiling .pio\build\m5stack-core2\libe4f\M5Core2\Fonts\Font32rle.c.o
Compiling .pio\build\m5stack-core2\libe4f\M5Core2\Fonts\Font64rle.c.o
Compiling .pio\build\m5stack-core2\libe4f\M5Core2\Fonts\Font72rle.c.o
Compiling .pio\build\m5stack-core2\libe4f\M5Core2\Fonts\Font7srle.c.o
Compiling .pio\build\m5stack-core2\libe4f\M5Core2\Fonts\glcdfont.c.o
C:/Users/Administrator.MYTDS/Documents/PlatformIO/Projects/211002-155957-m5stack-core2/src/n512.ino: In function 'void play_tone(uint16_t, uint32_t, uint8_t)': 
C:/Users/Administrator.MYTDS/Documents/PlatformIO/Projects/211002-155957-m5stack-core2/src/n512.ino:414:10: warning: unused variable 'bytes_written' [-Wunused-variable]
   size_t bytes_written = 0;
          ^
Compiling .pio\build\m5stack-core2\libe4f\M5Core2\M5Core2.cpp.o
Compiling .pio\build\m5stack-core2\libe4f\M5Core2\M5Display.cpp.o
Compiling .pio\build\m5stack-core2\libe4f\M5Core2\M5Touch.cpp.o
Compiling .pio\build\m5stack-core2\libe4f\M5Core2\RTC.cpp.o
Compiling .pio\build\m5stack-core2\libe4f\M5Core2\utility\CommUtil.cpp.o
Compiling .pio\build\m5stack-core2\libe4f\M5Core2\utility\In_eSPI.cpp.o
Compiling .pio\build\m5stack-core2\libe4f\M5Core2\utility\M5Button.cpp.o
Compiling .pio\build\m5stack-core2\libe4f\M5Core2\utility\M5Timer.cpp.o
Compiling .pio\build\m5stack-core2\libe4f\M5Core2\utility\MPU6886.cpp.o
*** [.pio\build\m5stack-core2\src\n512.ino.cpp.o] Error 1
========================= [FAILED] Took 11.63 seconds =========================
The terminal process "C:\Users\Administrator.MYTDS\.platformio\penv\Scripts\platformio.exe 'run'" terminated with exit code: 1.

Remove (or move) all src/*.ino files and place a known-good Blink.cpp (platform-espressif32/Blink.cpp at develop · platformio/platform-espressif32 · GitHub) in the src/ directory.

Does it compile? If yes, the problem is the code.

No, it did not compile…


Processing m5stack-core2 (platform: espressif32; board: m5stack-core2; framework: arduino)
--------------------------------------------------------------------------------Verbose mode can be enabled via `-v, --verbose` option
CONFIGURATION: https://docs.platformio.org/page/boards/espressif32/m5stack-core2.html
PLATFORM: Espressif 32 (3.3.2) > M5Stack Core2
HARDWARE: ESP32 240MHz, 4.31MB 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: 
 - framework-arduinoespressif32 3.10006.210326 (1.0.6)
 - tool-esptoolpy 1.30100.210531 (3.1.0)
 - toolchain-xtensa32 2.50200.97 (5.2.0)
LDF: Library Dependency Finder -> http://bit.ly/configure-pio-ldf
LDF Modes: Finder ~ chain, Compatibility ~ soft
Found 65 compatible libraries
Scanning dependencies...
Dependency Graph
|-- <Wire> 1.0.1
|-- <SD(esp32)> 1.0.5
|   |-- <FS> 1.0
|   |-- <SPI> 1.0
|-- <ArduinoJson> 6.18.4
|-- <ESPmDNS> 1.0
|   |-- <WiFi> 1.0
|-- <HTTPClient> 1.2
|   |-- <WiFi> 1.0
|   |-- <WiFiClientSecure> 1.0
|   |   |-- <WiFi> 1.0
|-- <HTTPUpdate> 1.3
|   |-- <HTTPClient> 1.2
|   |   |-- <WiFi> 1.0
|   |   |-- <WiFiClientSecure> 1.0
|   |   |   |-- <WiFi> 1.0
|   |-- <Update> 1.0
|   |-- <WiFi> 1.0
|-- <M5Core2> 0.0.5
|   |-- <Wire> 1.0.1
|   |-- <SPIFFS> 1.0
|   |   |-- <FS> 1.0
|   |-- <FS> 1.0
|   |-- <SPI> 1.0
|   |-- <HTTPClient> 1.2
|   |   |-- <WiFi> 1.0
|   |   |-- <WiFiClientSecure> 1.0
|   |   |   |-- <WiFi> 1.0
|   |-- <M5Stack> 0.3.6
|   |   |-- <FS> 1.0
|   |   |-- <SPIFFS> 1.0
|   |   |   |-- <FS> 1.0
|   |   |-- <SPI> 1.0
|   |   |-- <HTTPClient> 1.2
|   |   |   |-- <WiFi> 1.0
|   |   |   |-- <WiFiClientSecure> 1.0
|   |   |   |   |-- <WiFi> 1.0
|   |   |-- <Wire> 1.0.1
|   |   |-- <SD(esp32)> 1.0.5
|   |   |   |-- <FS> 1.0
|   |   |   |-- <SPI> 1.0
|   |-- <SD(esp32)> 1.0.5
|   |   |-- <FS> 1.0
|   |   |-- <SPI> 1.0
|-- <M5Stack> 0.3.6
|   |-- <FS> 1.0
|   |-- <SPIFFS> 1.0
|   |   |-- <FS> 1.0
|   |-- <SPI> 1.0
|   |-- <HTTPClient> 1.2
|   |   |-- <WiFi> 1.0
|   |   |-- <WiFiClientSecure> 1.0
|   |   |   |-- <WiFi> 1.0
|   |-- <Wire> 1.0.1
|   |-- <SD(esp32)> 1.0.5
|   |   |-- <FS> 1.0
|   |   |-- <SPI> 1.0
|-- <Preferences> 1.0
|-- <WebServer> 1.0
|   |-- <WiFi> 1.0
|   |-- <FS> 1.0
|-- <WiFi> 1.0
|-- <Adafruit NeoPixel> 1.8.7
Building in release mode
Compiling .pio\build\m5stack-core2\src\DHT12.cpp.o
Compiling .pio\build\m5stack-core2\src\IniFile.cpp.o
Compiling .pio\build\m5stack-core2\src\M5NSWebConfig.cpp.o
Compiling .pio\build\m5stack-core2\src\M5NSconfig.cpp.o
Compiling .pio\build\m5stack-core2\src\SHT3X.cpp.o
Compiling .pio\build\m5stack-core2\src\blink.cpp.o
Compiling .pio\build\m5stack-core2\src\iot_iconset_16x16.c.o
Compiling .pio\build\m5stack-core2\src\microdot.cpp.o
Generating partitions .pio\build\m5stack-core2\partitions.bin
Compiling .pio\build\m5stack-core2\lib1b6\Wire\Wire.cpp.o
Compiling .pio\build\m5stack-core2\libeb1\FS\FS.cpp.o
Compiling .pio\build\m5stack-core2\libeb1\FS\vfs_api.cpp.o
Compiling .pio\build\m5stack-core2\libacc\SPI\SPI.cpp.o
Compiling .pio\build\m5stack-core2\libe73\SD\SD.cpp.o
Compiling .pio\build\m5stack-core2\libe73\SD\sd_diskio.cpp.o
Compiling .pio\build\m5stack-core2\libe73\SD\sd_diskio_crc.c.o
Compiling .pio\build\m5stack-core2\lib28f\WiFi\ETH.cpp.o
Compiling .pio\build\m5stack-core2\lib28f\WiFi\WiFi.cpp.o
Compiling .pio\build\m5stack-core2\lib28f\WiFi\WiFiAP.cpp.o
Archiving .pio\build\m5stack-core2\libacc\libSPI.a
Compiling .pio\build\m5stack-core2\lib28f\WiFi\WiFiClient.cpp.o
Compiling .pio\build\m5stack-core2\lib28f\WiFi\WiFiGeneric.cpp.o
Compiling .pio\build\m5stack-core2\lib28f\WiFi\WiFiMulti.cpp.o
src/blink.cpp: In function 'void setup()':
src/blink.cpp:15:11: error: 'LED_BUILTIN' was not declared in this scope
   pinMode(LED_BUILTIN, OUTPUT);
           ^
src/blink.cpp: In function 'void loop()':
src/blink.cpp:21:16: error: 'LED_BUILTIN' was not declared in this scope        
   digitalWrite(LED_BUILTIN, HIGH);
                ^
*** [.pio\build\m5stack-core2\src\blink.cpp.o] Error 1
src/M5NSconfig.cpp: In function 'void readConfiguration(const char*, tConfig*)':src/M5NSconfig.cpp:213:8: warning: unused variable 'iniFileRead' [-Wunused-variable]
   bool iniFileRead = false;
        ^
========================== [FAILED] Took 8.10 seconds ==========================The terminal process "C:\Users\Administrator.MYTDS\.platformio\penv\Scripts\platformio.exe 'run'" terminated with exit code: 1.

Terminal will be reused by tasks, press any key to close it.

Okay, but because LED_BUILTIN wasn’t defined, the examples does that through the platformio.ini

Add that and it should compile.

You should avoid adding all your Arduino libraries. Do library management through the intended lib_deps, e.g.,

lib_deps =
     m5stack/M5Stack @ ^0.3.6

(PlatformIO Registry)

Yes after adding that it did compile correctly. Does that mean my code is messed up? or am i just missing a build flag somewhere?