Getting Started with MicroPyton and ESP32/ESP8266
In this part of the tutorial, we explain how to get started with MicroPyton and ESP32/ESP8266. This includes how to write the firmware image on the microcontroller and how to use the python shell to interactively program the ESP32/ESP8266.
- you have installed the uPyCraft IDE on your computer
- you have a serial line terminal working on your computer (e.g. Putty)
- you have written the firmware onto the ESP32 and the ESP8266 module
- you could connect via serial line to the ESP32 and the ESP8266 module and let the onboard LEDs blink from the python prompt
Setting Up Software on Your Computer
For developing we use in our class the following software:
- uPyCraft IDE which requires Python to be installed
- Putty terminal program on Windows or any other terminal program
There is a short video on Youtube (4:20) that shows the software: https://youtu.be/DnBBB8AcvBg
Alternatively you can use:
- Jetbrains Pycharm IDE or IntelliJ IDE with the Python plugin
- Micropython plugin to flash a file or a directory to the device and run the python terminal (REPL) on the device
Writing the MicroPython Firmware Image to the ESP32/ESP8266
- We use the uPyCraft IDE to write the images to the microcontroller, alternatively esptool.py can be used
- the firmware for the ESP32 is available at: http://micropython.org/download/esp32/
- the firmware for the ESP8266 is available at: http://micropython.org/download/esp8266/
Here is a version that shows how to burn the firmware onto the ESP8266 D1 Mini board
And how to control the on-board LED on the ESP8266 D1 Mini board
What could possibly go wrong when setting it up?
In the video on Youtube (10:32) we discuss different things that can go wrong when setting up MicroPython for ESP32/ESP8266: https://youtu.be/jhfURkMZVE
In this video (10:19), we have a look at the components that we are going to work in this course. We look a the selection of microcontrollers, input, and output components included the LMUBox: https://youtu.be/e3No4wGGQas
We also have a Hardware List where the components are described and where there are links to the individual pages.