0-ESP32-MicroPython ESP32 ESP8266 MicroPython Project Tech

Getting Started with Thonny MicroPython (Python) IDE for ESP32 and ESP8266

Getting Started with Thonny MicroPython (Python) IDE for ESP32 and ESP8266

If you wish to program your ESP32 and ESP8266 with MicroPython firmware, it’s very useful to make use of an IDE. On this information, we’ll introduce you to Thonny IDE. After finishing this information, you’ll have your first LED blinking utilizing MicroPython and Thonny IDE.

We experimented a number of IDEs to program the ESP32 and ESP8266 boards utilizing MicroPython, and Thonny appeared a sensible choice. Though there are some bugs, it’s continuously being up to date and improved.

It has a plugin to make use of ESP32 and ESP8266 with MicroPython, and it’s suitable with Home windows, Mac OS X, and Linux. It even comes put in by default with Raspbian OS for Raspberry Pi. Moreover, it’s straightforward to put in, so that you shouldn’t have issues with the set up course of.

Observe: we’ve additionally experimented with uPyCraft IDE and it labored wonderful for us. Nevertheless, some readers had hassle utilizing uPycraft IDE. So, right here we offer one other nice IDE to program your ESP32/ESP8266 boards utilizing MicroPython.

If you wish to use uPyCraft IDE as an alternative, comply with one of many set up tutorials under:

Downloading MicroPython Firmware

In contrast to different boards, MicroPython isn’t flashed onto the ESP32 or ESP8266 by default. That’s the very first thing it’s essential to do to start out programming your boards with MicroPython: flash/add the firmware.

To obtain the newest model of MicroPython firmware for the ESP32, go to the MicroPython Downloads web page and scroll all the best way right down to the ESP32 part.

It is best to see an identical net web page (see determine under) with the newest hyperlink to obtain the ESP32 .bin file – for instance: esp32-20181007-v1.9.Four-631-g338635ccc.bin.

Notice: when you’re utilizing a unique board, go to MicroPython Downloads web page and obtain the suitable firmware in your board.

Flashing MicroPython Firmware

Thonny has the choice to flash MicroPython firmware which is nice. Nevertheless, we had some issues flashing the firmware to the ESP8266 on Mac OS X. So, we offer directions to flash the MicroPython firmware utilizing esptool.py.

Comply with the subsequent tutorial to flash MicroPython firmware in your board utilizing esptool.py:

Observe: we offer directions on the right way to flash MicroPython firmware to the ESP32/ESP8266 utilizing Thonny later on this article.

Putting in Thonny – Home windows PC

To put in Thonny in your Home windows PC, comply with the subsequent directions:

1. Go to https://thonny.org

2. Obtain the model for Home windows and wait a number of seconds whereas it downloads.


three. Run the .exe file.

Four. Comply with the set up wizard to finish the set up course of. You simply have to click on “Subsequent” on the home windows that open.

5. After the set up is accomplished, open Thonny IDE. A window as proven within the following determine ought to open.


Putting in Thonny – Mac OS X

To put in Thonny on Mac OS X, comply with the subsequent directions:

1. Go to https://thonny.org

2. Obtain the model for Mac OS X and wait a couple of seconds whereas it downloads.

three. Open the .dmg file.

Four. Drag the “Thonny” software to your Desktop:

5. Thonny IDE is now put in and you may double-click to open it:

6. After the set up is accomplished, open Thonny IDE. A window as proven within the following determine ought to open.

Putting in Thonny – Linux

To put in Thonny in your Linux pc, it will depend on your Linux distribution and model, comply with the subsequent directions on your system:

You could set up these dependencies: python3, python3-pip, and python3-tk

In the event you’re in Ubuntu, you’ll be able to set up it like this:

$ sudo apt set up python3 python3-pip python3-tk

After having Python3, pip3, and Python3 Tkinter, you possibly can set up the Thonny IDE.

$ pip3 set up thonny
sudo apt set up thonny
sudo dnf set up thonny

  • Raspbian since Stretch (put in by default):

sudo apt set up python3-thonny

Putting in the thonny-esp Plugins

There’s a plugin for Thonny IDE that helps the ESP32 and ESP8266 boards. Putting in this plugin to program your boards with MicroPython is just not obligatory, however it is strongly recommended. Comply with the subsequent steps to put in the plug-in.

1. Open Thonny IDE and go to Instruments > Handle plug-ins…

2. The next window ought to open.

three. Within the search bar write “thonny-esp” after which click on “Discover package deal from PyPi”.

Four. Click on the “Set up” button to put in that plug-in. Shut the window and restart Thonny IDE for the modifications to take impact.


Word: we’ve already already put in, that’s why it’s greyed out.

Testing the Set up

IMPORTANT: Earlier than testing the set up you need to have flashed the MicroPython firmware in your ESP32 or ESP8266 boards.

Join the board to your pc utilizing an USB cable. To check the set up, you must inform Thonny that you simply need to run MicroPython and choose the board you’re utilizing.

1. Go to Instruments > Choices and choose the Interpreter tab.

2. You possibly can select MicroPython on ESP32, MicroPython on ESP8266, or MicroPython on a generic system. MicroPython on a generic system additionally works high-quality for ESP32 and ESP8266.

three. Then, you possibly can choose the serial port or you can also make Thonny routinely detect the port. We advocate that you choose the “Attempt to detect routinely” choice, however provided that you simply have one board related to your pc at a time. In any other case, choose the precise port for the board you’re utilizing.

Four. Thonny IDE ought to now be related to your board and it is best to see the immediate on the Shell.

5. Sort the command assist() within the Shell and see if it responds again.

If it responded again, the whole lot is working high-quality. Now, you possibly can ship a couple of extra instructions to check.

Ship the next instructions to mild up the on-board LED

>>> from machine import Pin
>>> Pin(2, Pin.OUT).worth(1)

Word: when you’re utilizing an ESP8266, the logic to activate the LED works the opposite approach round, so you need to ship the next command as an alternative:

>>> Pin(2, Pin.OUT).worth(zero)

The on-board LED ought to mild up.

Then, flip off the led with the next:

>>> Pin(2, Pin.OUT).worth(zero)

Congratulations! Your set up was profitable!

Flashing firmware with Thonny

Essential: we examined these directions they usually labored nice on an ESP32 and typically labored on ESP8266 and others didn’t. These have been imagined to work on each ESP32 and ESP8266.

It might be some bug with the software program or with some settings on our computer systems. So, if these directions don’t work, don’t get annoyed. Use these directions with esptool.py as an alternative. This bug ought to be fastened quickly.

1. Join your ESP32/ESP8266 to your pc

2. Go to System > Erase ESP32/ESP8266 flash

When you’re utilizing an ESP32, you might want to press the on-board “BOOT/FLASH” button.

You must get a hit message.

three. After erasing flash, go to Gadget and choose Set up MicroPython to ESP8266/ESP32… Select the MicroPython .bin file you’ve downloaded beforehand.

Four. When the “Importing firmware” window opens, that you must press the BOOT/FLASH button when you’re utilizing an ESP32. Wait a number of seconds whereas it flashes the firmware.

5. Then, press Ctrl+F2 or press the Cease button. After a couple of seconds, you need to see the immediate on the Shell once more.

Congratulations. You’ve efficiently flashed MicroPython firmware utilizing Thonny IDE.

Word: as we’ve talked about earlier, jf you’re having hassle flashing MicroPython firmware utilizing Thonny IDE, we advocate utilizing esptool.py.

 Thonny IDE Overview

At this level, you must have:

  • Thonny IDE put in in your pc and the thonny-esp plugin
  • ESP32/ESP8266 flashed with MicroPython firmware

Open Thonny IDE. You possibly can see two totally different sections: the Editor and the MicroPython Shell/Terminal:

  • The Editor part is the place you write your code and edit your .py information. You possibly can open multiple file, and the Editor will open a brand new tab for every file.
  • On the MicroPython Shell you possibly can sort instructions to be executed instantly by your ESP board with out the necessity to add new information. The terminal additionally offers details about the state of an executing program, exhibits errors associated with add, syntax errors, prints messages, and so on…

It’s also possible to customise Thonny IDE to point out different helpful tabs. Go to View and you may choose a number of tabs that present extra info.

One thing that might be very helpful is the Variables tab. It lists all out there variables in your program and its worth.

Operating Your First Script

To get you conversant in the method of writing a file and executing code in your ESP32/ESP8266 boards, we’ll add a brand new script that merely blinks the on-board LED of your ESP32 or ESP8266.

Creating the primary.py file in your board

1. If you open Thonny IDE for the primary time, the Editor exhibits an untitled file. Save that file as primary.py. Merely, click on the save icon and identify the file major.py.

2. The Editor ought to now have a tab referred to as principal.py.

three. Copy the next code to the Editor on the primary.py file:

from machine import Pin
from time import sleep
led = Pin(2, Pin.OUT)
whereas True:
led.worth(not led.worth())

Importing the Script

Go to Gadget and choose Add present script as essential script.

It ought to write the next on the Shell.

Notice: importing the code as essential script will save the present file with the identify foremost.py on the ESP, even when you’ve got saved it in your pc with one other identify. The identical occurs for the boot.py file. If you wish to add the file with the present identify, needed if you wish to add libraries, you simply want to pick the opposite choice.

After importing the script, press the ESP EN/RESET button.

The ESP on-board LED ought to be blinking now.

Congratulations, you’ve efficiently uploaded a brand new script to your ESP32/ESP8266 utilizing Thonny IDE.

Record Information Saved on ESP32/ESP8266

To listing all information saved on the ESP board, within the Shell sort:


To point out the content material of a file, you simply want to make use of %cat adopted by the file path. For instance:

%cat /important.py

Alternatively, to point out the boot.py and most important.py scripts, you may as well go to Gadget and choose one of many choices: Present gadget’s fundamental script or Present gadget’s boot script

Wrapping Up

Thonny IDE is a superb IDE to program the ESP32 and ESP8266 boards utilizing MicroPython. It’s suitable with Home windows, Mac OS X, and Linux and it straightforward to put in. As talked about all through the article, Thonny IDE has the choice to flash firmware too.

We’ve different tutorials to program the ESP32 and ESP8266 boards with MicroPython utilizing uPyCraft IDE. If you wish to experiment with uPyCraft IDE, you’ll be able to check out a few of the following tutorials:

Extra tutorials about MicroPython with ESP32 and ESP8266:

Thanks for studying.

Advisable Assets