platform = espressif32
Espressif Systems is a privately held fabless semiconductor company. They provide wireless communications and Wi-Fi chips which are widely used in mobile devices and the Internet of Things applications.
For more detailed information please visit vendor site.
See board_f_cpu option from Project Configuration File platformio.ini
[env:myenv]
; set frequency to 160MHz
board_f_cpu = 160000000L
See board_f_flash option from Project Configuration File platformio.ini. Possible values:
40000000L
(default)
80000000L
[env:myenv]
; set frequency to 80MHz
board_f_flash = 80000000L
Flash chip interface mode. This parameter is stored in the binary image header, along with the flash size and flash frequency. The ROM bootloader in the ESP chip uses the value of these parameters in order to know how to talk to the flash chip.
See board_flash_mode option from Project Configuration File platformio.ini. Possible values:
qio
qout
dio
dout
[env:myenv]
board_flash_mode = qio
You can set custom upload speed using upload_speed option from Project Configuration File platformio.ini
[env:myenv]
upload_speed = 9600
There are 2 options:
Directly specify platformio run --upload-port
in command line
platformio run --target upload --upload-port IP_ADDRESS_HERE or mDNS_NAME.local
Specify upload_port
option in Project Configuration File platformio.ini
[env:myenv]
upload_port = IP_ADDRESS_HERE or mDNS_NAME.local
For example,
platformio run -t upload --upload-port 192.168.0.255
platformio run -t upload --upload-port myesp8266.local
You can pass additional options/flags to OTA uploader using
upload_flags
option in Project Configuration File platformio.ini
[env:myenv]
upload_flags = --port=8266
Available flags
--port=ESP_PORT
ESP8266 OTA Port. Default 8266
--auth=AUTH
Set authentication password
--spiffs
Use this option to transmit a SPIFFS image and do not flash
the module
For the full list with available options please run
~/.platformio/packages/tool-espotapy/espota.py -h
Usage: espota.py [options]
Transmit image over the air to the esp8266 module with OTA support.
Options:
-h, --help show this help message and exit
Destination:
-i ESP_IP, --ip=ESP_IP
ESP8266 IP Address.
-p ESP_PORT, --port=ESP_PORT
ESP8266 ota Port. Default 8266
Authentication:
-a AUTH, --auth=AUTH
Set authentication password.
Image:
-f FILE, --file=FILE
Image file.
-s, --spiffs Use this option to transmit a SPIFFS image and do not
flash the module.
Output:
-d, --debug Show debug output. And override loglevel with debug.
-r, --progress Show progress output. Does not work for ArduinoIDE
PlatformIO will install the latest Arduino Core for ESP32 from
https://github.com/espressif/arduino-esp32. The Git
should be installed in a system. To update Arduino Core to the latest revision,
please open PlatformIO IDE and navigate to PIO Home > Platforms > Updates
.
Please install PlatformIO IDE
Initialize a new project, open Project Configuration File platformio.ini and set
platform to
https://github.com/platformio/platform-espressif32.git#feature/stage
.
For example,
[env:esp32dev]
platform = https://github.com/platformio/platform-espressif32.git#feature/stage
board = esp32dev
framework = arduino
Try to build project
If you see build errors, then try to build this project using the same
stage
with Arduino IDE
If it works with Arduino IDE but doesn’t work with PlatformIO, then please file new issue with attached information:
test project/files
detailed log of build process from Arduino IDE (please copy it from console to https://hastebin.com)
detailed log of build process from PlatformIO Build System (please copy it from console to https://hastebin.com)
Tips, tricks and common problems: http://desire.giesecke.tk/index.php/2018/01/30/esp32-wiki-entries/
Examples are listed from Espressif 32 development platform repository:
You can switch between stable releases of Espressif 32 development platform and the latest upstream version using platform option as described below:
; Custom stable version
[env:stable]
platform =espressif32@x.y.z
board = ...
...
; The latest upstream/development version
[env:upstream]
platform = https://github.com/platformio/platform-espressif32.git
board = ...
...
Name |
Description |
---|---|
Arduino Wiring-based Framework (ESP32 Core) |
|
Espressif IoT Development Framework |
|
Pumbaa Framework |
|
Simba Framework |
|
ESP8266 OTA utility |
|
ESP8266 and ESP32 serial bootloader utility |
|
xtensa32-gcc |
Warning
Linux Users:
Install “udev” rules 99-platformio-udev.rules
Raspberry Pi users, please read this article Enable serial port on Raspberry Pi.
Windows Users:
Please check that you have a correctly installed USB driver from board manufacturer
Name |
Description |
---|---|
Arduino Wiring-based Framework allows writing cross-platform software to control devices attached to a wide range of Arduino boards to create all kinds of creative coding, interactive objects, spaces or physical experiences. |
|
Espressif IoT Development Framework. Official development framework for ESP32. |
|
Pumbaa is Python on top of Simba. The implementation is a port of MicroPython, designed for embedded devices with limited amount of RAM and code memory. |
|
Simba is an RTOS and build framework. It aims to make embedded programming easy and portable. |
Note
You can list pre-configured boards by platformio boards command or PlatformIO Boards Explorer
For more detailed board
information please scroll tables below by
horizontal.
ID |
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
---|---|---|---|---|---|---|
|
No |
ESP32 |
240MHz |
1.25MB |
288KB |
ID |
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
---|---|---|---|---|---|---|
|
No |
ESP32 |
240MHz |
1.25MB |
288KB |
ID |
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
---|---|---|---|---|---|---|
|
No |
ESP32 |
240MHz |
1.25MB |
288KB |
ID |
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
---|---|---|---|---|---|---|
|
No |
ESP32 |
240MHz |
1.25MB |
288KB |
ID |
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
---|---|---|---|---|---|---|
|
No |
ESP32 |
240MHz |
1.25MB |
288KB |
ID |
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
---|---|---|---|---|---|---|
|
No |
ESP32 |
240MHz |
1.25MB |
288KB |
ID |
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
---|---|---|---|---|---|---|
|
No |
ESP32 |
240MHz |
1.25MB |
288KB |
ID |
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
---|---|---|---|---|---|---|
|
No |
ESP32 |
240MHz |
1.25MB |
288KB |
ID |
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
---|---|---|---|---|---|---|
|
No |
ESP32 |
240MHz |
1.25MB |
288KB |
ID |
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
---|---|---|---|---|---|---|
|
No |
ESP32 |
240MHz |
1.25MB |
288KB |
|
|
No |
ESP32 |
240MHz |
1.25MB |
288KB |
ID |
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
---|---|---|---|---|---|---|
|
No |
ESP32 |
240MHz |
1.25MB |
288KB |
|
|
No |
ESP32 |
240MHz |
1.25MB |
288KB |
ID |
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
---|---|---|---|---|---|---|
|
No |
ESP32 |
240MHz |
1.25MB |
288KB |
|
|
No |
ESP32 |
240MHz |
1.25MB |
288KB |
ID |
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
---|---|---|---|---|---|---|
|
No |
ESP32 |
240MHz |
1.25MB |
288KB |
ID |
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
---|---|---|---|---|---|---|
|
No |
ESP32 |
240MHz |
1.25MB |
288KB |
ID |
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
---|---|---|---|---|---|---|
|
No |
ESP32 |
240MHz |
1.25MB |
288KB |
|
|
No |
ESP32 |
240MHz |
1.25MB |
288KB |
ID |
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
---|---|---|---|---|---|---|
|
No |
ESP32 |
240MHz |
1.25MB |
288KB |
ID |
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
---|---|---|---|---|---|---|
|
No |
ESP32 |
240MHz |
1.25MB |
288KB |
ID |
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
---|---|---|---|---|---|---|
|
No |
ESP32 |
240MHz |
1.25MB |
288KB |
ID |
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
---|---|---|---|---|---|---|
|
No |
ESP32 |
240MHz |
1.25MB |
288KB |
ID |
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
---|---|---|---|---|---|---|
|
No |
ESP32 |
240MHz |
1.25MB |
288KB |
|
|
No |
ESP32 |
240MHz |
1.25MB |
288KB |
ID |
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
---|---|---|---|---|---|---|
|
No |
ESP32 |
240MHz |
1.25MB |
288KB |
ID |
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
---|---|---|---|---|---|---|
|
No |
ESP32 |
240MHz |
1.25MB |
288KB |
ID |
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
---|---|---|---|---|---|---|
|
No |
ESP32 |
240MHz |
1.25MB |
288KB |
ID |
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
---|---|---|---|---|---|---|
|
No |
ESP32 |
240MHz |
1.25MB |
288KB |
|
|
No |
ESP32 |
240MHz |
1.25MB |
288KB |
ID |
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
---|---|---|---|---|---|---|
|
No |
ESP32 |
240MHz |
1.25MB |
288KB |
ID |
Name |
Debug |
MCU |
Frequency |
Flash |
RAM |
---|---|---|---|---|---|---|
|
No |
ESP32 |
240MHz |
1.25MB |
288KB |