banner



How To Upload Code From Platformio To Esp8266

Learn how to program the ESP32 and ESP8266 NodeMCU boards using VS Code (Microsoft Visual Studio Code) with PlatformIO IDE extension. We encompass how to install the software on Windows, Mac OS X or Ubuntu operating systems.

Getting Started with VS Code and PlatformIO IDE for ESP32 and NodeMCU ESP8266 boards: Windows, Mac OS X, Linux Ubuntu

The Arduino IDE works great for small applications. However, for avant-garde projects with more than 200 lines of code, multiple files, and other advanced features like motorcar completion and mistake checking, VS Code with the PlatformIO IDE extension is the best culling.

In this tutorial, we'll encompass the post-obit topics:

  • Installing VS Code (Visual Studio Code):
    • A) Windows
    • B) Mac Os Ten
    • C) Linux Ubuntu
  • Installing PlatformIO IDE Extension on VS Code
  • Visual Studio Quick Interface Overview
  • PlatformIO IDE Overview
  • Uploading Code using PlatformIO IDE: ESP32/ESP8266
  • Irresolute the Series Monitor Baud Rate – PlatformIO IDE
  • Installing Libraries on PlatformIO IDE

A) Installing VS Code on Windows (Visual Studio Code)

Get to https://code.visualstudio.com/ and download the stable build for your operating system (Windows).

Microsoft Visual Studio Code VS Code Download Page for Windows PC

Click on the installation wizard to start the installation and follow all the steps to complete the installation. Accept the agreement and printing the Next button.

Microsoft Visual Studio Code VS Code Installation wizard

Select the following options and click Next.

Microsoft Visual Studio Code VS Code Installation wizard step 2

Press the Install button.

Microsoft Visual Studio Code VS Code Installation wizard step 3

Finally, click Finish to end the installation.

Microsoft Visual Studio Code VS Code Installation wizard final step

Open VS Code and yous'll be greeted by a Welcome tab with the released notes of the newest version.

Microsoft Visual Studio Code VS Code Installation wizard welcome screen on a Windows PC

That's it. Visual Studio Code was successfully installed.

Installing Python on Windows

To plan the ESP32 and ESP8266 boards with PlatformIO IDE you need Python 3.v or higher installed in your estimator. Nosotros're using Python three.8.5.

Go to python.org/download and download Python 3.viii.5 or a newest version.

Open up the downloaded file to first the Python installation wizard.

The following window shows up.

Installing Python 3.8.5 on a Windows PC and Add to Path

Of import: Make sure you lot check the selection Add Python iii.8 to PATH. Then, you can click on the Install Now push button.

When the installation is successful you'll get the following message.

Python Installation successful on Windows PC

You can click the Close push.

Now, go to this department to install PlatformIO IDE extension.


B) Installing VS Code on Mac Bone X (Visual Studio Code)

Get to https://code.visualstudio.com/ and download the stable build for your operating system (Mac Os X).

Microsoft Visual Studio Code VS Code Download Page for Mac OS X

Subsequently downloading the Visual Studio Code application file, you'll be prompted with the following message. Press the "Open" button.

Microsoft Visual Studio Code VS Code Downloading application file for Mac OS X

Or open up your Downloads binder and open Visual Studio Code.

Microsoft Visual Studio Code VS Code Downloading application file for Mac OS X

Later on that, y'all'll be greeted by a Welcome tab with the released notes of the newest version.

Microsoft Visual Studio Code VS Code Installation wizard welcome screen on Max OS X

That'south it. Visual Studio Code was successfully installed.

Installing Python on Mac Os X

To program the ESP32 and ESP8266 boards with PlatformIO IDE you need Python 3.5 or college installed in your reckoner. We're using Python 3.eight.5.

To install Python I'll be using Homebrew. If yous don't have the brew command available, type the next command:

          $ /bin/fustigate -c "$(gyre -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"                  
Microsoft Visual Studio Code VS Code installing homebrew

Then, run the mash command to install Python iii.X:

          $ mash install python3        
Microsoft Visual Studio Code VS Code installing Python 3 with brew command

Now, go to this department to install PlatformIO IDE extension.


C) Installing VS Lawmaking on Linux Ubuntu (Visual Studio Lawmaking)

Get to https://code.visualstudio.com/ and download the stable build for your operating arrangement (Linux Ubuntu).

Microsoft Visual Studio Code VS Code Download Page for Linux Ubuntu

Save the installation file:

Microsoft Visual Studio Code VS Code Save installation file for Linux Ubuntu

To install it, open a Terminal windows, navigate to your Downloads binder and run the following command to install VS Code.

          $ cd Downloads ~/Downloads $ sudo apt install ./code_1.49.1-1600299189_amd64.deb        

When the installation is finished, VS Lawmaking should be available in your applications carte du jour.

Microsoft Visual Studio Code VS Code Open application Linux Ubuntu

Open up VS Code and you'll be greeted by a Welcome tab with the released notes of the newest version.

Microsoft Visual Studio Code VS Code Installation wizard welcome screen on Linux Ubuntu

That's it. Visual Studio Code was successfully installed.

Installing Python on Linux Ubuntu

To programme the ESP32 and ESP8266 boards with PlatformIO IDE you need Python iii.5 or higher installed in your estimator. We're using Python 3.eight.

Open the Terminal window and cheque that you already have Python 3 installed.

          $ python3 --version python 3.8.2                  
Linux ubuntu installing Python3 testing version

As you tin can come across in the preceding figure, Python iii.8.2 is already installed.

If yous don't take Python iii.eight.10 installed, run the next control to install information technology:

          $ sudo apt install python3        

Whether you lot already have Python installed or not, you demand to run the following command to install Python utilities.

          $ sudo apt install python3-distutils        
Installing python3-distutils Linux Ubuntu for PlatformIO IDE

Now, get to this section to install PlatformIO IDE extension.


Installing PlatformIO IDE Extension on VS Code

It is possible to program the ESP32 and ESP8266 boards using VS Code with the PlatformIO IDE extension. Follow the next steps to install the PlatformIO IDE extension.

Open VS Code:

  1. Click on the Extensions icon or press Ctrl+Shift+X to open the Extensions tab
  2. Search for "PlatformIO IDE"
  3. Select the first selection
  4. Finally, click the Install button (Note: the installation may take a few minutes)
Install PlatformIO IDE Extension on VS Code

Later on installing, make sure that PlatformIO IDE extension is enabled equally shown below.

PlatformIO IDE Extension Enabled on VS Code

After that, the PlatformIO icon should show up on the left sidebar likewise every bit an Home icon that redirects y'all to PlatformIO home.

PlatformIO Extension Installed Successfully

That'southward information technology, PlatformIO IDE extension was successfully added to VS Code.

If yous don't see the PIO icon and the quick tools at the lesser, you lot may need to restart VS code for the changes to take effect.

Either way, nosotros recommend restarting VS Code before proceeding.

VS Code Quick Interface Overview

Open VS Code. The following print screen shows the pregnant of each icon on the left sidebar and its shortcuts:

VS Code Visual Studio Application Interface Overview
  • File explorer
  • Search across files
  • Source lawmaking management (using gist)
  • Launch and debug your code
  • Manage extensions

Additionally, you can printing Ctrl+Shift+P or become to View > Command Palette… to show all the available commands. If you're searching for a control and you lot don't know where it is or its shortcut, you merely demand to go to the Command Palette and search for it.

At the bottom, there's a blueish bar with PlatformIO commands.

PlatformIO IDE extension Quick Tools Icons

Here's the what icon does from left to right:

  • PlatformIO Home
  • Build/Compile
  • Upload
  • Clean
  • Serial Monitor
  • New Terminal

If you hover your mouse over the icons, it volition show what each icon does.

Alternatively, you can besides click on the PIO icon to meet all the PlatformIO tasks.

PlatformIO IDE extension Tasks menu

If the tasks don't show up on your IDE when you click the icon, you may need to click on the three dot icon at the pinnacle and enable PlatformIO tasks as shown beneath.

Enable PlatformIO IDE extension tasks

PlatformIO IDE Overview

For y'all to get an overview on how PlatformIO works on VS code, we'll bear witness you lot how to create, save and upload a "Blinking LED" sketch to your ESP32 or ESP8266 board.

Create a New Project

On VS Lawmaking, click on the PlartfomIO Abode icon. Click on + New Project to start a new projection.

Create New Project PlatformIO VS Code

Give your projection a name (for example Blink_LED) and select the board you're using. In our case, we're using the DOIT ESP32 DEVKIT V1. The Framework should be "Arduino" to use the Arduino core.

You lot tin choose the default location to save your project or a custom location.

The default location is in this path Documents >PlatformIO >Projects. For this examination, you can use the default location. Finally, click "End".

PlatformIO with VS Code Create New ESP32 Project

For this instance, we'll exist using the DOIT ESP32 DEVKIT board. If you lot are using an ESP8266 NodeMCU board the procedure is very similar, you simply need to select your ESP8266 board:

PlatformIO IDE extension with VS Code Create New ESP8266 Project

The Blink_LED projection should exist accessible from the Explorer tab.

PlatformIO IDE Extension Project Folder Structure

VS Code and PlatformIO have a folder structure that is different from the standard .ino project. If you click on the Explorer tab, you'll come across all the files information technology created under your project folder. It may seem a lot of files to work with. Just, don't worry, unremarkably yous'll just demand to deal with one or 2 of those files.

Warning: you shouldn't delete, modify or move the folders and the platformio.ini file. Otherwise, y'all will no longer be able to compile your project using PlatformIO.

platformio.ini file

The platformio.ini file is the PlatformIO Configuration File for your projection. Information technology shows the platform, lath, and framework for your project. Yous can also add together other configurations like libraries to be included, upload options, changing the Serial Monitor baud charge per unit and other configurations.

PlatformIO IDE extension Configuration File for ESP32
  • platform: which corresponds to the SoC used by the lath.
  • board: the development board you lot're using.
  • framework: the software surroundings that will run the project lawmaking.

With the ESP32 and ESP8266, if yous want to use a baud rate of 115200 in your Series Monitor, you merely need to add the post-obit line to your platformio.ini file.

          monitor_speed = 115200        

After that, make sure you salve the changes made to the file by pressing Ctrl+S.

In this file, yous can also include the identifier of libraries you'll apply in your projection using the lib_deps directive, equally we'll run across after.

src folder

The src binder is your working folder. Nether the src binder, there'due south a chief.cpp file. That's where yous write your lawmaking. Click on that file. The structure of an Arduino program should open with the setup() and loop() functions.

PlatformIO IDE extension main.cpp file under src folder

In PlatformIO, all your Arduino sketches should start with the #include <Arduino.h>.

Uploading Code using PlatformIO IDE: ESP32/ESP8266

Copy the following code to your main.cpp file.

          /*********   Rui Santos   Complete project details at https://RandomNerdTutorials.com/vs-code-platformio-ide-esp32-esp8266-arduino/ *********/  #include <Arduino.h>  #define LED ii  void setup() {   // put your setup code here, to run once:   Serial.brainstorm(115200);   pinMode(LED, OUTPUT); }  void loop() {   // put your main code hither, to run repeatedly:   digitalWrite(LED, HIGH);   Series.println("LED is on");   filibuster(m);   digitalWrite(LED, LOW);   Serial.println("LED is off");   delay(1000); }                  

View raw code

This code blinks the on-board LED every second. It works with the ESP32 and ESP8266 boards (both have the on-board LED continued to GPIO 2).

Nosotros recommend that you copy this code manually, and so that you see the autocompletion and other interesting features of the IDE in action. Additionally, if you lot have a syntax error somewhere in your program, it volition underline it in blood-red even before compiling.

After that, press Ctrl+S or get to File > Salvage to salvage the file.

Now, you tin can click on the Upload icon to compile and upload the lawmaking. Alternatively, y'all can go to the PIO Project Tasks menu and select Upload.

Upload Code ESP32 board PlatformIO VS Code Visual Studio

If the code is successfully uploaded, you should become the following message.

Upload Code to ESP32 PlatformIO VS Code Success

Afterwards uploading the lawmaking, the ESP32 or ESP8266 should be blinking its on-board LED every second.

ESP32 board Built in LED turned on HIGH

At present, click on the Serial Monitor icon and you should see it printing the current LED land.

PlatformIO IDE VS Code Visual Studio Serial Monitor ESP32 board

Annotation: if you lot don't see the Final window, go to the menu Terminal > New Terminal.

Observe COM Port

PlatformIO will automatically detect the port your board is continued to. To check the connected devices you tin can go to the PIO Home and click the Devices icon.

PlatformIO IDE extension VS Code Visual Studio Connected Devices COM Port Serial

Troubleshooting

If when trying to upload code you lot get the following mistake: "Failed to connect to ESP32: Timed out waiting for packet header" information technology commonly means that your board is not in flashing manner when you're uploading the code.

When this happens you need to printing the ESP32 on-board BOOT push button when you start seeing a lot of dots in the debugging window.

If you don't want to accept to printing the BOOT button every fourth dimension you upload new code, you can follow this guide: [SOLVED] Failed to connect to ESP32: Timed out waiting for packet header.

Changing the Serial Monitor Baud Rate – PlatformIO IDE

The default baud rate used by PlatformIO is 9600. Notwithstanding, it is possible to prepare a dissimilar value as mentioned previously. On the File Explorer, under your projection folder, open the platformio.ini file and add together the post-obit line:

          monitor_speed = baud_rate        

For example:

          monitor_speed = 115200        
PlatformIO IDE extesion Change Serial Monitor Baud Rate 115200

Later on that, save that file.

Installing ESP32/ESP8266 Libraries on PlatformIO IDE

Follow the next process if y'all need to install libraries in PlatformIO IDE.

Click the Home icon to become to PlatformIO Home. Click on the Libraries icon on the left side bar.

Search for the library you desire to install. For instance Adafruit_BME280.

PlatformIO IDE extension VS Code Visual Studio Search for BME280 Library

Click on the library you desire to include in your project. Then, click Add to Project.

PlatformIO with VS Code Add Library to Project

Select the project were you lot want to use the library.

PlatformIO with VS Code Add Library to Project Choose Project

This will add together the library identifier using the lid_deps directive on the platformio.ini file. If y'all open your projection'due south platformio.ini file, it should look as shown in the following image.

Add Library Identifier to Configuration File PlatformIO

Alternatively, on the library window, if yous select the Installation tab and coil a scrap, you'll run into the identifier for the library. You can cull any of those identifiers depending on the options y'all want to use. The library identifiers are highlighted in red.

PlatformIO IDE Extension Library Registry menu

And so, go to the platformio.ini file of your projection and paste the library identifier into that file, similar this:

          lib_deps = adafruit/Adafruit BME280 [email protected]^2.1.0        

If you need multiple libraries, you can separate their name by a coma or put them on different lines. For example:

          lib_deps =   arduino-libraries/Arduino_JSON @ 0.1.0   adafruit/Adafruit BME280 Library @ ^2.1.0   adafruit/Adafruit Unified Sensor @ ^1.1.iv        

PlatformIO has a built-in powerful Library Manager, that allows you to specify custom dependencies per projection in the Project Configuration File platformio.ini using lib_deps. This will tell PlatformIO to automatically download the library and all its dependencies when you save the configuration file or when you compile your project.

Open a Project Binder

To open an existing projection binder on PlatformIO, open up VS Code, go to PlatformIO Home and click on Open Project. Navigate through the files and select your projection binder.

VS Code with PlatformIO Open Project Folder

PlatformIO will open up all the files within the projection folder.

VS Code Color Themes

VS Lawmaking lets you cull between different colour themes. Go to the Manage icon and select Color Theme. You can then select from several dissimilar light and dark themes.

VS Code Visual Studio Change Color Themes Dark Light

Shortcuts' List

For a complete listing of VS Code shortcuts for Windows, Mac OS X or Linux, check the side by side link:

  • VS Code Keyboard Shortcuts Reference.

Wrapping Up

In this tutorial you've learned how to install and prepare Visual Studio Code to work with the ESP32 and ESP8266 boards. VS Lawmaking with the PlatformIO IDE extension is a neat alternative to the classical Arduino IDE, especially when y'all're working on more advanced sketches for larger applications.

Here'south some of the advantages of using VS Code with PlatformIO IDE over Arduino IDE:

  • It detects the COM port your board is continued to automatically;
  • VS Code IntelliSense: Car-Complete. IntelliSense code completion tries to guess what you want to write, displaying the unlike possibilities and provides insight into the parameters that a function may expect;
  • Error Highlights: VS Code + PIO underlines errors in your lawmaking before compiling;
  • Multiple open tabs: you tin can have several code tabs open at once;
  • Yous can hide certain parts of the code;
  • Avant-garde code navigation;
  • And much more than…

If you're looking for a more than advanced IDE to write your applications for the ESP32 and ESP8266 boards, VS Code with the PlatformIO IDE extension is a not bad pick.

We hope you've found this tutorial useful. If you like ESP32 and ESP8266, check the following resource:

  • Learn ESP32 with Arduino IDE (eBook + course)
  • Dwelling Automation using ESP8266 (eBook)
  • More ESP32 Projects and Tutorials…
  • More ESP8266 Projects and Tutorials…

Source: https://randomnerdtutorials.com/vs-code-platformio-ide-esp32-esp8266-arduino/

Posted by: gladneysatond1937.blogspot.com

0 Response to "How To Upload Code From Platformio To Esp8266"

Post a Comment

Iklan Atas Artikel

Iklan Tengah Artikel 1

Iklan Tengah Artikel 2

Iklan Bawah Artikel