There was immense feedback on this forum regarding builds tips and tricks, and we'd like to provide some "official" points to save both your and our time while we're actively working on the project:
- The port is work in progress and still may undergo considerable changes.
- MicroPython ESP8266 port requires the latest (as in: today's) version of esp-open-sdk. Please make sure you always use the latest version of both micropython and esp-open-sdk. esp-open-sdk is itself regularly updated and some changes require complete rebuild of the toolchain. Use "make clean; make" for both projects if in doubt (i.e. this should be the first troubleshooting step if something doesn't work as expected).
- If you flash MicroPython for the first time, or after flashing any other firmware, make sure to erase flash completely: (this will of course clear any settings like configured access points too).
Code: Select all
- The official documentation for building is located in README files of MicroPython repository (both in esp8266 and top directories) and esp-open-sdk repository. Any other documentation you may find elsewhere may be out of date or limited-use. (The official documentation itself is work in progress, and we'll update it based on feedback.)
- If you report issue on github, please make sure to specify the exact git revisions of micropython and esp-open-sdk you used, and exact steps you followed (or where you got binary release from, e.g. received as a Kickstarter backer)
Currently, the best platform to build MicroPython ESP8266 is Linux. Results of building esp-open-sdk on MacOSX may vary. There seems to be problems with Cygwin. So, if you don't run Linux natively, and experience some issues, the best approach may be to install Linux in a VM. We also plan to look into addressing these issues (that's why esp-open-sdk will keep changing), but this will be at lower priority than MicroPython development itself.
If you intend to build MicroPython regularly, please subscribe to this thread to receive notifications of various updates related to build process.