PlatformIO Community

Testing ESP8266 platform without a board connected to the PC/Server

is it possible to test a code written for the ESP8266 platform without having a board connected to the desktop/server?

Is there a “software emulation” of the board?
How can I test a “real platformio” project on the server without having an ESP device connected to the server?
Ok Platformio remote can do this but in that case I need a PC with an ESP connected and it is the same plus or minus.


If you want to go down this route of pain that is hardware emulation, the things I found are:

All of this seems rather hacky and unstandardized. If I had to weigh the cost of “using an existing solution and one ESP8266” versus “researching hardware emulation for the ESP8266 and its XTensa LX6 core, expanding / fixing it, integrating it into PlatformIO”, I’d use the first.

1 Like

I also came across espsim, which looks like it at least allows for some simple debugging, but is also a pain to use. I vote for a ~US$4 Wemos D1 Mini + PIO Remote … much less pain and suffering involved! :laughing:

@pfeerick I don’t like the pain, probably is better to use a wemos d1 mini + pio remote :smiley:
but I don’t like the fact to have a PC always on for the purpose.

I don’t understand the “sense of PIO Remote”.
if I need to return home to my personal PC to run the test from the CI server.

This is not remote to me, at this point, why not launch the test from my PC directly? :smiley:

Where do you read that you have to do something from your personal PC so that the CI server does a test?

probably I don’t understood how this thing work.
I have some esp8266 and I program them via OTA thanks for ESPOTA and platformio, this “ota update” requires wifi.
I have CI using github actions that it build my project and it does static analysis of the code, but how can I run tests from github actions if I have no ESP8266 connected to the server?


PIO Remote = access a device REMOTE from the system you are currently on. From the perspective of github actions, using PIO remote would allow you to run some sort of test via the github actions server that does have physical access to the ESP8266.

i.e. If I have a raspberry pi at home, with a ESP8266 connected to it, a github action could use PIO remote to access it - be it to upload code to it, run unit tests, etc. Since you would be running in a remote setting, even if you can do programming OTA using PIO remote, I would have a preference of at least having a hard-wired connection for when the OTA fails (for whatever reason) so that remote recovery is possible.

1 Like