Trying to get ESP8266 platform to work on PlatformIO.
Discussion with ESP8266 developers to resolve a connectivity problem, they told me to try the following options in Arduino SDK.
Select “generic esp8266 module”, keep default values except these for your nodeMCU:
Flash mode: QIO
Erase Flash: All Flash Content
Espressif FW: 2.2.1-Legacy
How do I set these options within PlatformIO. I’ve found an option for QIO, but I do not see an option in particular to choose the optional firmware to load.
If you execute the build in verbose mode (via VSCode “Verbose Build” or pio run -v) you can also double-check that by making sure the final linker command has
I’ve just added the SDK version flags to the documentation, so that should update shortly, for future reference. Made possible by Max’s comments above!
I assume from your earlier comment you found the example showing to add board_build.flash_mode = qio to your platformio.ini to configure the flash mode as qio.
To erase flash, PlatformIO only does that on demand. Either run pio run --target erase from a PIO Terminal (click the rightmost icon of the group on the left) or use the ‘Erase Flash’ project task in the PlatformIO extension sidebar.
Yes, between the lwIP and SSL headings. The extra section has been accepted, I’m just not sure how often the docs get regenerated. You can it here now if you’re impatient like me!
What you could try is stay with that old platform version and then use the CLI to trigger whatever you want.
Uploading and Building etc is still there so I can only image that you might want to do the “Upload filesystem image” task, which you can access by doing
I found the file described in @maxgerhardt post above for the Arduino version on my computer and went looking under the equivalent packages folder: framework-esp8266-nonos-sdk but found no platformio-build.py file.
The default SDK version that installed on my computer a few weeks ago was only at 2.1.0, while I see the Espressif is up to 3.0.5.
The info in this thread only applies to selecting the possible SDK versions contained in the Arduino core. The esp8266-nonos-sdk framework files (and builder script) are severely outdated in PlatformIO (Support for ESP-IDF style ESP8266_RTOS_SDK · Issue #125 · platformio/platform-espressif8266 · GitHub) and that cannot be easily changed by adding a define. The developers have to integrate the newest version into PlatformIO.