Installing ESP32 Board in Arduino IDE 2.0 (Windows, Mac OS X, Linux)

There is a new Arduino IDE—Arduino IDE 2.0 (beta version). In this tutorial, you’ll learn how to install the ESP32 boards in Arduino IDE 2.0 and upload code to the board. This tutorial is compatible with Windows, Mac OS X, and Linux operating systems.

Installing Programming ESP32 Board in Arduino IDE 2.0 Windows Mac OS X Linux

Arduino IDE 2.0 is an experimental software—it is still in beta version. This means that you may find some bugs and some features may not be fully developed.

If you want to install the ESP32 boards on the “classic” Arduino IDE, follow the next tutorial instead:

If you prefer programming the ESP32 using VS Code + PlatformIO, go to the following tutorial:

You migh also like reading the ESP8266 Guide: Installing ESP8266 NodeMCU Board in Arduino 2.0 (Windows, Mac OS X, Linux)

Prerequisites: Arduino IDE 2.0 Installed

Before proceeding make sure you have Arduino IDE 2.0 installed in your computer.

Go to the Arduino website and download the version for your operating system.

Arduino IDE 2.0 Downloads Page downloading software
  • Windows: run the file downloaded and follow the instructions in the installation guide.
  • Mac OS X: copy the downloaded file into your application folder.
  • Linux: extract the downloaded file, and open the arduino-ide file that will launch the IDE.
Arduino IDE 2.0 installation successful Windows Mac OS X Linux

If you have doubts, you can go to the Arduino Installation Guide.

Do you need an ESP32 board? You can buy it here.

Recommended reading: ESP32 Development Boards Review and Comparison

Install ESP32 Add-on in Arduino IDE

To install the ESP32 board in your Arduino IDE, follow these next instructions:

1. In your Arduino IDE 2.0, go to File > Preferences.

Arduino IDE 2.0 open preferences menu to install ESP32 boards

2. Copy and paste the following line to the Additional Boards Manager URLs field.
Additional URLs Field ESP32 Arduino IDE 2.0

Note: if you already have the ESP8266 boards URL, you can separate the URLs with a comma, as follows:,

3. Open the Boards Manager. You can go to Tools > Board > Boards Manager… or you can simply click the Boards Manager icon at the left-side corner.

Arduino IDE 2.0 Boards Manager select test

4. Search for ESP32 and press the install button for esp32 by Espressif Systems.

Install ESP32 boards Arduino IDE 2.0

That’s it. It should be installed after a few seconds.

Testing the Installation

To test the ESP32 add-on installation, we’ll upload a simple code that blinks the on-board LED (GPIO 2).

Copy the following code to your Arduino IDE:

  Rui Santos
  Complete project details at

#include <Arduino.h>

#define LED 2

void setup() {
  // put your setup code here, to run once:
  pinMode(LED, OUTPUT);

void loop() {
  // put your main code here, to run repeatedly:
  digitalWrite(LED, HIGH);
  Serial.println("LED is on");
  digitalWrite(LED, LOW);
  Serial.println("LED is off");

View raw code

Uploading the Sketch

On the top drop-down menu, select the “unknown” board. A new window, as shown below, will open.

Arduino IDE 2.0 Select ESP32 Board and COM Port

You should select your ESP32 board model and the COM port. In our example, we’re using the DOIT ESP32 DEVKIT V1 board. Click OK when you’re done.

Now, you just need to click on the Upload button.

Arduino 2.0 Upload Button

After a few seconds, the upload should be complete.

Programming ESP32 Arduino IDE 2.0 Upload Successful

Note: some ESP32 development boards don’t go into flashing/uploading mode automatically when uploading a new code and you’ll see a lot of dots on the debugging window followed by an error message. If that’s the case, you need to press the ESP32 BOOT button when you start seeing the dots on the debugging window.

The ESP32 on-board LED should be blinking every second.

ESP32 board Built in LED turned on HIGH Arduino IDE 2.0 demonstration

Serial Monitor

You can click on the Serial Monitor icon to open the Serial Monitor tab.

Open Arduino IDE Serial Monitor Arduino IDE 2.0 ESP32

That’s it! You’ve installed the ESP32 Boards successfully in Arduino IDE 2.0.

Wrapping Up

This is a quick guide that shows how to prepare Arduino IDE 2.0 for the ESP32 Boards on a Windows PC, Mac OS X, or Linux computer.

Remember that Arduino IDE 2.0 is an experimental software, so it might have some bugs, and some features might not be fully functional.

Next, you might want to read: Getting started with ESP32 or learn more about the ESP32 board with our resources:

Thank you for reading.

Build Web Server projects with the ESP32 and ESP8266 boards to control outputs and monitor sensors remotely. Learn HTML, CSS, JavaScript and client-server communication protocols DOWNLOAD »

Build Web Server projects with the ESP32 and ESP8266 boards to control outputs and monitor sensors remotely. Learn HTML, CSS, JavaScript and client-server communication protocols DOWNLOAD »

Recommended Resources

Build a Home Automation System from Scratch » With Raspberry Pi, ESP8266, Arduino, and Node-RED.

Home Automation using ESP8266 eBook and video course » Build IoT and home automation projects.

Arduino Step-by-Step Projects » Build 25 Arduino projects with our course, even with no prior experience!

What to Read Next…

Enjoyed this project? Stay updated by subscribing our newsletter!

27 thoughts on “Installing ESP32 Board in Arduino IDE 2.0 (Windows, Mac OS X, Linux)”

  1. Hi

    Can this be installed as an independent stand-alone entity, leaving the existing IDE in place and still operational ? Will it pick up the existing sketch folder and have access to all the libraries already installed ? I only ask because my past experience of installing updates to the existing IDE has been less than happy. I have ended up having to reinstal libraries and boards as updating has always seemed to be a case of installing a new version over the top of an existing version, rather than just running an ‘invisible’ update file …

    • Hi Geoff.
      I think you can have both Arduinos installed without conflicts. Just make sure you install the new Arduino 2.0 on a different location.

      • Thanks Sara. That makes sense. A little while ago, a colleague sent me this :

        which details another IDE for use with Arduino called Visual Micro. I’ve not tried it yet, just watched the video, but I have to say that it looks very good and does at least what the new beta Arduino IDE does, and maybe better yet. Might be worth you taking a look to see what you think ?

    • Hi.
      At the moment, as the IDE is still in beta version, I prefer to use the “old” Arduino IDE or VS Code + PlatformIO at the moment.
      Andreas Spiess has done a great video explaining and comparing the differences.

  2. I loaded but could not locate the tools folder to put in the hooks for SPIFFS uploading to the Tools Tab. I had tool folders all over the place in an attempt to get it to appear.
    Have you guys installed that option?

  3. Hi Dave,
    I had that problem a while back and raised a query. Their reply is that the tools were probably implemented in Java whereas the Theia IDE framework Arduino IDE 2.x is based on supports VS Code extensions.
    The full reply is at
    I got around this by using OTA updates, as described by Sara and Rui at
    Good luck, Martin
    P.S. Geoff, I have both versions of the IDE installed and running against the same sketch base.
    P.P.S Said, the major usage difference is that you can only have one sketch open at a time which makes copy/paste between sketches difficult.

    • Hi Said,
      seems like the one sketch issue may be related to my Mac running Big Sur. Other OSes don’t have that problem.
      You can run both so give it a go.
      Regards, Martin.

  4. Have they done anything to fix the Wemos-lolin32-oled board code uploading issues? I’ve spent hours on hours this week trying to get code loaded on this board without success using both Arduino IDE and VS code platformio on Win 10. Any combination of pressing/holding/releasing the EN and Boot buttons does not help.

      • I started with that tutorial as soon as I had issues. No joy. What is odd is that every once and a while I can get the board to appear on the platformio device list under com12, but then it disappears again. I don’t find any pattern as to when it appears. The board otherwise functions fine with the code already running on it but I am trying to change that code. There is no EN pin on this board, like other ESP32 boards, to which to ad a capacitor. I cannot find a board schematic either or I would figure out another way to attach a capacitor from the EN pin to ground.

  5. hi Rui.

    do you have tutorial about tensorflow lite run on ESP32?
    since I read from this
    esp32 is one of the boards that supports tensorflow. i want to make something about ai on esp32. such as recognizing the sound to run or turn on something. but still don’t know where to start. hope you make a simple project using esp32 and tensorflow in the near future.

    best regards,

      • hi.
        I hope you could make some tutorial about tensorflow in the near future, since AI especially deep learning become hot topic in the last few years. btw, I really enjoy all of your tutorials, easy to understand for beginner like me.


  6. Hello, the arduino ide2.0 does not recognize the esp32 wrover kit while the arduino ide 1.8.5 works with the wrover kit as an esp32 wrover module The wrover kit is simply and esp32 wrover module with ili9341 lcd ,sd card reader/writer, camera bus expansion ,as well as I/O headers and much more for an experimenter it is the ideal playgroundas it is ready out of the box to program /plug and play why this unit is being ignored or skipped over does not make sense,Why it does not work in arduino 2.0 I do not know???Please lets get it fixed.

  7. Hi
    I see the arduino beta 2.11 works with my ESP32 🙂
    Do you know how or are you going to investigate using a JTAG debugger with the new arduino IDE?

  8. Hello Sara,
    Im new to arduino and im trying to get a handle on how to use unix time on an Uno board.
    Is the information posted above valid for the Uno and Nano boards?
    And while I have your attention, is there a hidden ‘find’ function in the Arduino IDE to simply replacing text in the sketch.
    Now Im using MS Word.
    Is there such a function in Visual Micro?
    Im in the process of moving into Visual.

    • Hi.
      To replace text in an Arduino sketch, you just need to press CTRL+F and a new window will open to find/replace text.

  9. Hello,
    I always have to hold the ESP32 “boot” button during upload of the sketch to my ESP32 DEV1 board, using Arduino 1.8.16. Its not mentioned in your tutorial.
    Is that boot holding still the case with Arduino v2?


  10. My post that politely pointed out your omission of pressing the ESP32 boot button during sketch upload, was deleted by moderator it seems.
    No problem. My participation/signup to this site is now also being deleted.

    • Hi.
      It was not deleted. You can see the comment above and you can also see that I answered your comment.
      We receive tons of comments every day on different blog posts.
      It is very difficult to keep up with all the comments.
      If a user never commented before, its comment will be subjected to moderation, which may take some time depending on the load of work we have.
      I never delete any comments.
      I’m sorry for the misunderstanding.

  11. I run an ESPduino32. But I have occasionally noticed choosing the board DOIT ESPduino32 results in compilation or upload errors. However choosing DOIT ESP32 DEVKIT V1 does not suffer from these issues. So you may want to choose DEVKIT for the ESPduino.


Leave a Comment

Download our Free eBooks and Resources

Get instant access to our FREE eBooks, Resources, and Exclusive Electronics Projects by entering your email address below.