arduino-esp32/README.md

91 lines
6.9 KiB
Markdown
Raw Permalink Normal View History

2023-10-06 10:43:59 +00:00
# Arduino core for the ESP32, ESP32-S2, ESP32-S3, ESP32-C3, ESP32-C6 and ESP32-H2
[![Build Status](https://github.com/espressif/arduino-esp32/actions/workflows/push.yml/badge.svg?branch=master&event=push)](https://github.com/espressif/arduino-esp32/actions/workflows/push.yml) [![External Libraries Test](https://github.com/espressif/arduino-esp32/actions/workflows/lib.yml/badge.svg?branch=master&event=schedule)](https://github.com/espressif/arduino-esp32/blob/gh-pages/LIBRARIES_TEST.md) [![Hardware Tests](https://github.com/espressif/arduino-esp32/blob/gh-pages/runtime-tests-results/badge.svg)](https://github.com/espressif/arduino-esp32/actions/workflows/tests_results.yml)
### Need help or have a question? Join the chat at [Gitter](https://gitter.im/espressif/arduino-esp32) or [open a new Discussion](https://github.com/espressif/arduino-esp32/discussions)
2016-12-13 10:12:44 +00:00
## Contents
- [Development Status](#development-status)
- [Development Planning](#development-planning)
- [Documentation](#documentation)
- [Supported Chips](#supported-chips)
- [Decoding exceptions](#decoding-exceptions)
- [Issue/Bug report template](#issuebug-report-template)
- [Contributing](#contributing)
2019-09-24 20:32:13 +00:00
### Development Status
Latest Stable Release [![Release Version](https://img.shields.io/github/release/espressif/arduino-esp32.svg?style=plastic)](https://github.com/espressif/arduino-esp32/releases/latest/) [![Release Date](https://img.shields.io/github/release-date/espressif/arduino-esp32.svg?style=plastic)](https://github.com/espressif/arduino-esp32/releases/latest/) [![Downloads](https://img.shields.io/github/downloads/espressif/arduino-esp32/latest/total.svg?style=plastic)](https://github.com/espressif/arduino-esp32/releases/latest/)
2021-07-22 14:05:54 +00:00
Latest Development Release [![Release Version](https://img.shields.io/github/release/espressif/arduino-esp32/all.svg?style=plastic)](https://github.com/espressif/arduino-esp32/releases/) [![Release Date](https://img.shields.io/github/release-date-pre/espressif/arduino-esp32.svg?style=plastic)](https://github.com/espressif/arduino-esp32/releases/) [![Downloads](https://img.shields.io/github/downloads-pre/espressif/arduino-esp32/latest/total.svg?style=plastic)](https://github.com/espressif/arduino-esp32/releases/)
### Development Planning
Our Development is fully tracked on this public **[Roadmap 🎉](https://github.com/orgs/espressif/projects/3)**
2023-11-08 12:55:32 +00:00
For even more information you can join our **[Monthly Community Meetings 🔔](https://github.com/espressif/arduino-esp32/discussions/categories/monthly-community-meetings).**
### Documentation
2019-09-24 20:32:13 +00:00
You can use the [Arduino-ESP32 Online Documentation](https://docs.espressif.com/projects/arduino-esp32/en/latest/) to get all information about this project.
2023-11-08 14:35:25 +00:00
---
2023-11-08 12:55:32 +00:00
**Migration guide from version 2.x to 3.x is available [here](https://docs.espressif.com/projects/arduino-esp32/en/latest/migration_guides/2.x_to_3.0.html).**
2023-11-08 14:35:25 +00:00
---
2024-01-18 08:33:38 +00:00
**APIs compatibility with ESP8266 and Arduino-CORE (Arduino.cc) is explained [here](https://docs.espressif.com/projects/arduino-esp32/en/latest/libraries.html#apis).**
---
* [Getting Started](https://docs.espressif.com/projects/arduino-esp32/en/latest/getting_started.html)
* [Installing (Windows, Linux and macOS)](https://docs.espressif.com/projects/arduino-esp32/en/latest/installing.html)
* [Libraries](https://docs.espressif.com/projects/arduino-esp32/en/latest/libraries.html)
* [Arduino as an ESP-IDF component](https://docs.espressif.com/projects/arduino-esp32/en/latest/esp-idf_component.html)
* [FAQ](https://docs.espressif.com/projects/arduino-esp32/en/latest/faq.html)
* [Troubleshooting](https://docs.espressif.com/projects/arduino-esp32/en/latest/troubleshooting.html)
2017-06-02 16:21:54 +00:00
### Supported Chips
2023-11-08 12:55:32 +00:00
Here are the ESP32 series supported by the Arduino-ESP32 project:
2023-11-08 14:35:25 +00:00
| **SoC** | **Stable** | **Development** | **Datasheet** |
|----------|:----------:|:---------------:|:-------------------------------------------------------------------------------------------------:|
| ESP32 | Yes | Yes | [ESP32](https://www.espressif.com/sites/default/files/documentation/esp32_datasheet_en.pdf) |
| ESP32-S2 | Yes | Yes | [ESP32-S2](https://www.espressif.com/sites/default/files/documentation/esp32-s2_datasheet_en.pdf) |
| ESP32-C3 | Yes | Yes | [ESP32-C3](https://www.espressif.com/sites/default/files/documentation/esp32-c3_datasheet_en.pdf) |
| ESP32-S3 | Yes | Yes | [ESP32-S3](https://www.espressif.com/sites/default/files/documentation/esp32-s3_datasheet_en.pdf) |
| ESP32-C6 | Yes | Yes | [ESP32-C6](https://www.espressif.com/sites/default/files/documentation/esp32-c6_datasheet_en.pdf) |
| ESP32-H2 | Yes | Yes | [ESP32-H2](https://www.espressif.com/sites/default/files/documentation/esp32-h2_datasheet_en.pdf) |
2023-11-08 12:55:32 +00:00
> [!NOTE]
> ESP32-C2 is also supported by Arduino-ESP32 but requires rebuilding the static libraries. This is not trivial and requires a good understanding of the ESP-IDF
> build system. For more information, see the [Lib Builder documentation](https://docs.espressif.com/projects/arduino-esp32/en/latest/lib_builder.html).
2023-11-08 14:35:25 +00:00
For more details visit the [supported chips](https://docs.espressif.com/projects/arduino-esp32/en/latest/getting_started.html#supported-soc-s) documentation page.
2019-09-24 20:32:13 +00:00
### Decoding exceptions
You can use [EspExceptionDecoder](https://github.com/me-no-dev/EspExceptionDecoder) to get meaningful call trace.
2019-09-24 20:32:13 +00:00
### Issue/Bug report template
Before reporting an issue, make sure you've searched for similar one that was already created. Also make sure to go through all the issues labeled as [Type: For reference](https://github.com/espressif/arduino-esp32/issues?q=is%3Aissue+label%3A%22Type%3A+For+reference%22+).
Finally, if you are sure no one else had the issue, follow the **Issue template** or **Feature request template** while reporting any [new Issue](https://github.com/espressif/arduino-esp32/issues/new/choose).
2021-04-05 13:54:40 +00:00
[CI] External libraries compilation test (#8003) * Workflow final + docs added Delete LIBRARY_TEST.md Update readme + documentation Generated External Libraries Test Results Updated docs Generated External Libraries Test Results revert last commit DOnt install arduino-core manually Update external_libraries_test.rst Generated External Libraries Test Results Align FQBNs to platform name use manula platform installation Generated External Libraries Test Results remove verbose remove - before sketch path Add libs and examples for specific chip Generated External Libraries Test Results Generated External Libraries Test Results Update README.md Generated External Libraries Test Results Update README.md Update README.md Generated External Libraries Test Results change name of GH action replace - for / Generated External Libraries Test Results Generated External Libraries Test Results Update lib.yml Update lib.yml Generated External Libraries Test Results remove types from pull_rewuest add pull to lib.yml Generated External Libraries Test Results add back deltas_report Update LIBRARY_TEST.md add verbose logs remove deltas report Generated External Libraries Test Results Change from schedule to push for testing add P-R-O-C-H-Y repo to cron job rename workflow Update LIBRARY_TEST.md Update LIBRARY_TEST.md Edit URL Generated External Libraries Test Results remove unused ymls + run job on schedule generated Add action link push only result file generated fix names fix workflow run workflow on push Add report to file action remove separator fix example paths fix library name yaml list of examples edit update universal sketches examples path fix update example paths Add ESP32Servo warnings -> all change warnings to "default" fix library name fix list add matrix to compile sketches test compile for only 1 chip remove GPIO example use edited action Add Blynk library use v1 print arduino cli version fix listing update libs list fix remove if fix typo fix path path test list fix fix folder creating add install IDE list fix fix missing run command Added V3 lib test + script for lib install fix typo add platform updated on: Lib testing v2 fix fqbn test all chips typo fix replace blynk with Adafruit Neopixel change blynk example fix yml format add action name Add report for PR Enable warnings report changed position typo test remove dbg level add log level option split command typo typo add empty space change position of cli flags fix typo cli compile flags not marking warning as error Add new lib+example install core manually Install core by compile-sketch fix url->path fix typo Install core from repo remove external lib checkout add lib example update board change platform name change platform name use BoardManager update example update example use repo as platform Initial commit Update README.md Update README.md * fix readme links * added JSON + lib_v2 YAML * Update lib_v2.yml * Update lib_v2.yml * Update lib_v2.yml * Update lib_v2.yml * Update lib_v2.yml * Update lib_v2.yml * Update lib_v2.yml * update JSON file * Added json file * Update lib.yml * Update lib_v2.yml * Update lib_v2.yml * change JSON * edit json + add version * edit json * update version * fix path * update fqbn platform name * add empty test result file * Add latest changes * Update docs * Update docs + clean YAML fifle * Add ESPAsyncWebServer library * Add test multiple required libs (will revert) * Update docs + json * Update lib.yml * Fix typos in docs * fix readme links
2023-04-04 09:54:42 +00:00
### External libraries compilation test
We have set-up CI testing for external libraries for ESP32 Arduino core. You can check test results in the file [LIBRARIES_TEST](https://github.com/espressif/arduino-esp32/blob/gh-pages/LIBRARIES_TEST.md).
For more information and how to add your library to the test see [external library testing](https://docs.espressif.com/projects/arduino-esp32/en/latest/external_libraries_test.html) in the documentation.
[CI] External libraries compilation test (#8003) * Workflow final + docs added Delete LIBRARY_TEST.md Update readme + documentation Generated External Libraries Test Results Updated docs Generated External Libraries Test Results revert last commit DOnt install arduino-core manually Update external_libraries_test.rst Generated External Libraries Test Results Align FQBNs to platform name use manula platform installation Generated External Libraries Test Results remove verbose remove - before sketch path Add libs and examples for specific chip Generated External Libraries Test Results Generated External Libraries Test Results Update README.md Generated External Libraries Test Results Update README.md Update README.md Generated External Libraries Test Results change name of GH action replace - for / Generated External Libraries Test Results Generated External Libraries Test Results Update lib.yml Update lib.yml Generated External Libraries Test Results remove types from pull_rewuest add pull to lib.yml Generated External Libraries Test Results add back deltas_report Update LIBRARY_TEST.md add verbose logs remove deltas report Generated External Libraries Test Results Change from schedule to push for testing add P-R-O-C-H-Y repo to cron job rename workflow Update LIBRARY_TEST.md Update LIBRARY_TEST.md Edit URL Generated External Libraries Test Results remove unused ymls + run job on schedule generated Add action link push only result file generated fix names fix workflow run workflow on push Add report to file action remove separator fix example paths fix library name yaml list of examples edit update universal sketches examples path fix update example paths Add ESP32Servo warnings -> all change warnings to "default" fix library name fix list add matrix to compile sketches test compile for only 1 chip remove GPIO example use edited action Add Blynk library use v1 print arduino cli version fix listing update libs list fix remove if fix typo fix path path test list fix fix folder creating add install IDE list fix fix missing run command Added V3 lib test + script for lib install fix typo add platform updated on: Lib testing v2 fix fqbn test all chips typo fix replace blynk with Adafruit Neopixel change blynk example fix yml format add action name Add report for PR Enable warnings report changed position typo test remove dbg level add log level option split command typo typo add empty space change position of cli flags fix typo cli compile flags not marking warning as error Add new lib+example install core manually Install core by compile-sketch fix url->path fix typo Install core from repo remove external lib checkout add lib example update board change platform name change platform name use BoardManager update example update example use repo as platform Initial commit Update README.md Update README.md * fix readme links * added JSON + lib_v2 YAML * Update lib_v2.yml * Update lib_v2.yml * Update lib_v2.yml * Update lib_v2.yml * Update lib_v2.yml * Update lib_v2.yml * Update lib_v2.yml * update JSON file * Added json file * Update lib.yml * Update lib_v2.yml * Update lib_v2.yml * change JSON * edit json + add version * edit json * update version * fix path * update fqbn platform name * add empty test result file * Add latest changes * Update docs * Update docs + clean YAML fifle * Add ESPAsyncWebServer library * Add test multiple required libs (will revert) * Update docs + json * Update lib.yml * Fix typos in docs * fix readme links
2023-04-04 09:54:42 +00:00
### Contributing
We welcome contributions to the Arduino ESP32 project!
See [contributing](https://docs.espressif.com/projects/arduino-esp32/en/latest/contributing.html) in the documentation for more information on how to contribute to the project.
> We would like to have this repository in a polite and friendly atmosphere, so please be kind and respectful to others. For more details, look at [Code of Conduct](https://github.com/espressif/arduino-esp32/blob/master/CODE_OF_CONDUCT.md).