Wemos D1 Mini unable to compile. Missing pins_arduino.h

Hi,

I’m new to Platform IO and am having trouble getting it to work with a Wemos D1 mini. I am trying to compile some basic code to blink the onboard LED I wrote in Visual Studio in a fresh PIO project, but i constantly get errors referring to pins_arduino.h as shown below.
I have tried the same code in the Arduino IDE and it compiles and uploads without errors. I have also tried the same code in Platform IO with an Arduino Uno and it works fine too.

Here’s the platformio.ini:

[env:d1_mini]
platform = espressif8266
board = d1_mini
framework = arduino

Here’s the compiler output with errors:

Processing d1_mini (platform: espressif8266; board: d1_mini; framework: arduino)
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Verbose mode can be enabled via `-v, --verbose` option
CONFIGURATION: https://docs.platformio.org/page/boards/espressif8266/d1_mini.html
PLATFORM: Espressif 8266 (2.6.3) > WeMos D1 R2 and mini
HARDWARE: ESP8266 80MHz, 80KB RAM, 4MB Flash
PACKAGES:
 - framework-arduinoespressif8266 3.20704.0 (2.7.4)
 - tool-esptool 1.413.0 (4.13)
 - tool-esptoolpy 1.30000.201119 (3.0.0)
 - toolchain-xtensa 2.40802.200502 (4.8.2)
LDF: Library Dependency Finder -> http://bit.ly/configure-pio-ldf
LDF Modes: Finder ~ chain, Compatibility ~ soft
Found 29 compatible libraries
Scanning dependencies...
No dependencies
Building in release mode
Compiling .pio\build\d1_mini\src\main.cpp.o
In file included from src\main.cpp:1:0:
C:\Users\james\.platformio\packages\framework-arduinoespressif8266\cores\esp8266/Arduino.h:296:26: fatal error: pins_arduino.h: No such file or directory

**********************************************************************
* Looking for pins_arduino.h dependency? Check our library registry!
*
* CLI  > platformio lib search "header:pins_arduino.h"
* Web  > https://platformio.org/lib/search?query=header:pins_arduino.h
*
**********************************************************************

 #include "pins_arduino.h"
Compiling .pio\build\d1_mini\FrameworkArduino\Crypto.cpp.o
                          ^
compilation terminated.
Compiling .pio\build\d1_mini\FrameworkArduino\Esp-frag.cpp.o
In file included from C:\Users\james\.platformio\packages\framework-arduinoespressif8266\cores\esp8266\Crypto.h:29:0,
Compiling .pio\build\d1_mini\FrameworkArduino\Esp-version.cpp.o
                 from C:\Users\james\.platformio\packages\framework-arduinoespressif8266\cores\esp8266\Crypto.cpp:26:
C:\Users\james\.platformio\packages\framework-arduinoespressif8266\cores\esp8266/Arduino.h:296:26: fatal error: pins_arduino.h: No such file or directory

**********************************************************************
* Looking for pins_arduino.h dependency? Check our library registry!
*
* CLI  > platformio lib search "header:pins_arduino.h"
* Web  > https://platformio.org/lib/search?query=header:pins_arduino.h
*
**********************************************************************

 #include "pins_arduino.h"
                          ^
compilation terminated.
Compiling .pio\build\d1_mini\FrameworkArduino\Esp.cpp.o
In file included from C:\Users\james\.platformio\packages\framework-arduinoespressif8266\cores\esp8266\Esp.h:24:0,
                 from C:\Users\james\.platformio\packages\framework-arduinoespressif8266\cores\esp8266\Esp-frag.cpp:24:
C:\Users\james\.platformio\packages\framework-arduinoespressif8266\cores\esp8266/Arduino.h:296:26: fatal error: pins_arduino.h: No such file or directory

**********************************************************************
* Looking for pins_arduino.h dependency? Check our library registry!
*
* CLI  > platformio lib search "header:pins_arduino.h"
* Web  > https://platformio.org/lib/search?query=header:pins_arduino.h
*
**********************************************************************

 #include "pins_arduino.h"
                          ^
compilation terminated.
Compiling .pio\build\d1_mini\FrameworkArduino\FS.cpp.o
Compiling .pio\build\d1_mini\FrameworkArduino\FSnoop.cpp.o
In file included from C:\Users\james\.platformio\packages\framework-arduinoespressif8266\cores\esp8266\Esp-version.cpp:21:0:
C:\Users\james\.platformio\packages\framework-arduinoespressif8266\cores\esp8266/Arduino.h:296:26: fatal error: pins_arduino.h: No such file or directory

**********************************************************************
* Looking for pins_arduino.h dependency? Check our library registry!
*
* CLI  > platformio lib search "header:pins_arduino.h"
* Web  > https://platformio.org/lib/search?query=header:pins_arduino.h
*
**********************************************************************

 #include "pins_arduino.h"
                          ^
compilation terminated.
Compiling .pio\build\d1_mini\FrameworkArduino\FunctionalInterrupt.cpp.o
Compiling .pio\build\d1_mini\FrameworkArduino\HardwareSerial.cpp.o
In file included from C:\Users\james\.platformio\packages\framework-arduinoespressif8266\cores\esp8266\Esp.h:24:0,
                 from C:\Users\james\.platformio\packages\framework-arduinoespressif8266\cores\esp8266\Esp.cpp:21:
C:\Users\james\.platformio\packages\framework-arduinoespressif8266\cores\esp8266/Arduino.h:296:26: fatal error: pins_arduino.h: No such file or directory

**********************************************************************
* Looking for pins_arduino.h dependency? Check our library registry!
*
* CLI  > platformio lib search "header:pins_arduino.h"
* Web  > https://platformio.org/lib/search?query=header:pins_arduino.h
*
**********************************************************************

 #include "pins_arduino.h"
                          ^
compilation terminated.
Compiling .pio\build\d1_mini\FrameworkArduino\IPAddress.cpp.o
Compiling .pio\build\d1_mini\FrameworkArduino\MD5Builder.cpp.o
Compiling .pio\build\d1_mini\FrameworkArduino\Print.cpp.o
*** [.pio\build\d1_mini\src\main.cpp.o] Error 1
*** [.pio\build\d1_mini\FrameworkArduino\Crypto.cpp.o] Error 1
*** [.pio\build\d1_mini\FrameworkArduino\Esp-frag.cpp.o] Error 1
*** [.pio\build\d1_mini\FrameworkArduino\Esp-version.cpp.o] Error 1
*** [.pio\build\d1_mini\FrameworkArduino\Esp.cpp.o] Error 1
In file included from C:\Users\james\.platformio\packages\framework-arduinoespressif8266\cores\esp8266\FunctionalInterrupt.cpp:3:0:
C:\Users\james\.platformio\packages\framework-arduinoespressif8266\cores\esp8266\Arduino.h:296:26: fatal error: pins_arduino.h: No such file or directory

**********************************************************************
* Looking for pins_arduino.h dependency? Check our library registry!
*
* CLI  > platformio lib search "header:pins_arduino.h"
* Web  > https://platformio.org/lib/search?query=header:pins_arduino.h
*
**********************************************************************

 #include "pins_arduino.h"
                          ^
compilation terminated.
In file included from C:\Users\james\.platformio\packages\framework-arduinoespressif8266\cores\esp8266\FS.h:25:0,
                 from C:\Users\james\.platformio\packages\framework-arduinoespressif8266\cores\esp8266\FS.cpp:21:
C:\Users\james\.platformio\packages\framework-arduinoespressif8266\cores\esp8266/Arduino.h:296:26: fatal error: pins_arduino.h: No such file or directory

**********************************************************************
* Looking for pins_arduino.h dependency? Check our library registry!
*
* CLI  > platformio lib search "header:pins_arduino.h"
* Web  > https://platformio.org/lib/search?query=header:pins_arduino.h
*
**********************************************************************

 #include "pins_arduino.h"
                          ^
compilation terminated.
In file included from C:\Users\james\.platformio\packages\framework-arduinoespressif8266\cores\esp8266/FS.h:25:0,
                 from C:\Users\james\.platformio\packages\framework-arduinoespressif8266\cores\esp8266\FSnoop.cpp:6:
C:\Users\james\.platformio\packages\framework-arduinoespressif8266\cores\esp8266/Arduino.h:296:26: fatal error: pins_arduino.h: No such file or directory

**********************************************************************
* Looking for pins_arduino.h dependency? Check our library registry!
*
* CLI  > platformio lib search "header:pins_arduino.h"
* Web  > https://platformio.org/lib/search?query=header:pins_arduino.h
*
**********************************************************************

 #include "pins_arduino.h"
                          ^
compilation terminated.
*** [.pio\build\d1_mini\FrameworkArduino\FunctionalInterrupt.cpp.o] Error 1
*** [.pio\build\d1_mini\FrameworkArduino\FS.cpp.o] Error 1
*** [.pio\build\d1_mini\FrameworkArduino\FSnoop.cpp.o] Error 1
In file included from C:\Users\james\.platformio\packages\framework-arduinoespressif8266\cores\esp8266/PolledTimeout.h:28:0,
                 from C:\Users\james\.platformio\packages\framework-arduinoespressif8266\cores\esp8266\HardwareSerial.cpp:30:
C:\Users\james\.platformio\packages\framework-arduinoespressif8266\cores\esp8266/Arduino.h:296:26: fatal error: pins_arduino.h: No such file or directory

**********************************************************************
* Looking for pins_arduino.h dependency? Check our library registry!
*
* CLI  > platformio lib search "header:pins_arduino.h"
* Web  > https://platformio.org/lib/search?query=header:pins_arduino.h
*
**********************************************************************

 #include "pins_arduino.h"
                          ^
compilation terminated.
*** [.pio\build\d1_mini\FrameworkArduino\HardwareSerial.cpp.o] Error 1
In file included from C:\Users\james\.platformio\packages\framework-arduinoespressif8266\cores\esp8266\IPAddress.cpp:20:0:
C:\Users\james\.platformio\packages\framework-arduinoespressif8266\cores\esp8266/Arduino.h:296:26: fatal error: pins_arduino.h: No such file or directory

**********************************************************************
* Looking for pins_arduino.h dependency? Check our library registry!
*
* CLI  > platformio lib search "header:pins_arduino.h"
* Web  > https://platformio.org/lib/search?query=header:pins_arduino.h
*
**********************************************************************

 #include "pins_arduino.h"
                          ^
compilation terminated.
In file included from C:\Users\james\.platformio\packages\framework-arduinoespressif8266\cores\esp8266\MD5Builder.cpp:1:0:
C:\Users\james\.platformio\packages\framework-arduinoespressif8266\cores\esp8266/Arduino.h:296:26: fatal error: pins_arduino.h: No such file or directory

**********************************************************************
* Looking for pins_arduino.h dependency? Check our library registry!
*
* CLI  > platformio lib search "header:pins_arduino.h"
* Web  > https://platformio.org/lib/search?query=header:pins_arduino.h
*
**********************************************************************

 #include "pins_arduino.h"
                          ^
compilation terminated.
*** [.pio\build\d1_mini\FrameworkArduino\IPAddress.cpp.o] Error 1
*** [.pio\build\d1_mini\FrameworkArduino\MD5Builder.cpp.o] Error 1
In file included from C:\Users\james\.platformio\packages\framework-arduinoespressif8266\cores\esp8266\Print.cpp:28:0:
C:\Users\james\.platformio\packages\framework-arduinoespressif8266\cores\esp8266/Arduino.h:296:26: fatal error: pins_arduino.h: No such file or directory

**********************************************************************
* Looking for pins_arduino.h dependency? Check our library registry!
*
* CLI  > platformio lib search "header:pins_arduino.h"
* Web  > https://platformio.org/lib/search?query=header:pins_arduino.h
*
**********************************************************************

 #include "pins_arduino.h"
                          ^
compilation terminated.
*** [.pio\build\d1_mini\FrameworkArduino\Print.cpp.o] Error 1
================================================================================================== [FAILED] Took 1.19 seconds ==================================================================================================
The terminal process "C:\Users\james\.platformio\penv\Scripts\pio.exe 'run'" terminated with exit code: 1.

Possibly related

  • #include <Arduino.h> gives an includePath error.
  • c_pp_properties.json has 2 errors:
    Cannot find “C:/Users/james/.platformio/packages/framework-arduinoespressif8266/tools/sdk/lwip2/include”,
    Cannot find “C:/Users/james/.platformio/packages/framework-arduinoespressif8266/variants/d1_mini”,

Can anyone help with this issue? Thanks.

Please delete this folder plus the C:\Users\james\.platformio\.cache folder, then rebuild the project. Seems like a broken toolchain to me.

Hi Max, That solved the issue. Thanks.