WeMos D1 Mini 8266

Is there any reason we would want a designated board for the D1 Mini with the 8266 chip instead of the 32?

It’s uploading and working fine with 8266-12.

The chips are different, for example, different clock frequencies. This might help, it compares the two: ESP32 vs ESP8266 - Pros and Cons - Maker Advisor.

One thing the article does say is: Although you can program both boards using Arduino IDE, they might not be compatible with the same libraries and functions. Some libraries are just compatible with one of the boards. This means that most of the times your ESP8266 code will not be compatible with the ESP32.


I’m asking if having a Platformio profile for this 8266 WeMos would be useful.
In Boards, when I type ‘WeMos’, WeMos D1 Mini 32 comes up.

Does “board = wemos_d1_mini32” include special configuration data that affects the compile for this specific board?

Is there “board = wemos_d1_mini8266” ?

1 Like

I’m pretty familiar with the differences between them.

All available board = x values are the board JSON files as listed in the platform.

So you can see that there is wemos_d1_mini32 in the Espressif32 repo and d1_mini in the Espressif8266 repo.

Yes, PlatformIO uses the information contained in the board’s JSON definition throughout the build process to be able to behave correctly in regards to the board. E.g., select the correct Arduino variant folder, know about the flash size and configuration, select upload parameters, etc. The (python) builder code is all open source on the above linked websites plus in some other places, like the Arduino-ESP8266 build script. You can see things like env.BoardConfig().get("build.ldscript") being used there to get info from the JSON file.

Cool. My first .json files were hardware addresses for Arduino.
I’m trying to get an ISS tracker to run, that uses json.

json looks like I should learn it before I try to make a library.
Don’t worry, I won’t try to make a library for a while.