Arduino core for the ESP32
Go to file
Me No Dev f2026f1e34
3.0.0 Network Refactoring (#8760)
* Create ESP_NetworkInterface class and have Ethernet extending it

* Update CMakeLists.txt

* Split networking from WiFi (H2 can now use Ethernet)

Now all libs have been checked yet. More to do on WiFi side

* Fix build errors

* Guard WiFi classes and fix RMII ETH examples

* Decouple network related libraries from WiFi

* Fix examples and WiFiUpdate

* Guard WiFiProv lib to compile only on WiFi chips

* Add periman string for network and "fix" mdns on the first ETH

* Revert back location of Client/Server/Udp in order to accept some PRs

* Fix periman

* Some fixes from merging master

* Fix web server missing fs.h

* Move Client, Server and Udp out of WiFi

* More fixes

* more fixes

* Fix CMakekLists and rework lib menu dependencies

* Fix CMake issues

* move back WiFiClient to rebase with master

* Update ETH_TLK110.ino

* Move back WiFiClient

* Update progress

* Update WiFiGeneric.cpp

* More fixes

* Switch AP to the new interface

* Cleanup

* Rename AP methods

* Add extra interface info for Printable

* Rename IPv6 getters to clarify that they are returning LinkLocal address

cc @sgryphon

* Rename network classes

cc @sgryphon

* Update NetworkManager.h

* Rename WiFi Server and UDP

* Rename WiFiClient and WiFiClientSecure

* Update CMakeLists.txt

* Update on-push.sh

* Rename Network library

* Remove unnecessary guard

* Get the correct interface MAC address for mDND Workstation service

* Apply suggestions from code review

Co-authored-by: Lucas Saavedra Vaz <32426024+lucasssvaz@users.noreply.github.com>

---------

Co-authored-by: Lucas Saavedra Vaz <32426024+lucasssvaz@users.noreply.github.com>
2024-03-26 23:31:23 +02:00
.github 3.0.0 Network Refactoring (#8760) 2024-03-26 23:31:23 +02:00
cores/esp32 Add: make digitalRead() for RGB_BUILTIN work (#9419) 2024-03-26 17:46:59 +02:00
docs 3.0.0 Network Refactoring (#8760) 2024-03-26 23:31:23 +02:00
idf_component_examples/Hello_world Add Arduino as Component examples (#8878) 2023-11-29 12:09:43 +02:00
libraries 3.0.0 Network Refactoring (#8760) 2024-03-26 23:31:23 +02:00
package 3.0.0 Network Refactoring (#8760) 2024-03-26 23:31:23 +02:00
tests CI: Add peripheral manager test (#8811) 2024-01-16 16:05:22 +02:00
tools add f_boot (#9380) 2024-03-18 15:44:32 +02:00
variants Add variant for Waveshare ESP32-S3-Touch-LCD-1.28 (#9386) 2024-03-26 12:20:39 +02:00
.gitignore ESP-IDF v5.1 (#7733) 2023-10-05 14:54:25 +03:00
.gitmodules v2.0.0 Add support for ESP32S2 and update ESP-IDF to 4.4 (#4996) 2021-04-05 14:23:58 +03:00
.readthedocs.yaml Removed YML wron file and changed the YAML (#8785) 2023-10-20 16:35:06 +03:00
boards.txt Add variant for Waveshare ESP32-S3-Touch-LCD-1.28 (#9386) 2024-03-26 12:20:39 +02:00
CMakeLists.txt 3.0.0 Network Refactoring (#8760) 2024-03-26 23:31:23 +02:00
CODE_OF_CONDUCT.md Create CODE_OF_CONDUCT.md (#7528) 2022-12-13 12:20:36 +02:00
idf_component.yml Update mdns version. (#9295) 2024-02-27 18:14:42 +02:00
Kconfig.projbuild 3.0.0 Network Refactoring (#8760) 2024-03-26 23:31:23 +02:00
LICENSE.md Add LGPL 2.1 License 2019-04-16 03:08:50 +02:00
package.json ESP-IDF v5.1 (#7733) 2023-10-05 14:54:25 +03:00
platform.txt Remove -Werror=all from build flags, but enable it in CI (#9273) 2024-02-21 14:57:39 +02:00
programmers.txt Add support for ArduinoIDE 2.0.0 (#6506) 2022-04-04 17:19:23 +03:00
README.md Add hardware tests results (#9332) 2024-03-05 14:23:17 +02:00

Arduino core for the ESP32, ESP32-S2, ESP32-S3, ESP32-C3, ESP32-C6 and ESP32-H2

Build Status External Libraries Test Hardware Tests

Need help or have a question? Join the chat at Gitter or open a new Discussion

Contents

Development Status

Latest Stable Release Release Version Release Date Downloads

Latest Development Release Release Version Release Date Downloads

Development Planning

Our Development is fully tracked on this public Roadmap 🎉

For even more information you can join our Monthly Community Meetings 🔔.

Documentation

You can use the Arduino-ESP32 Online Documentation to get all information about this project.


Migration guide from version 2.x to 3.x is available here.


APIs compatibility with ESP8266 and Arduino-CORE (Arduino.cc) is explained here.


Supported Chips

Here are the ESP32 series supported by the Arduino-ESP32 project:

SoC Stable Development Datasheet
ESP32 Yes Yes ESP32
ESP32-S2 Yes Yes ESP32-S2
ESP32-C3 Yes Yes ESP32-C3
ESP32-S3 Yes Yes ESP32-S3
ESP32-C6 No Yes ESP32-C6
ESP32-H2 No Yes ESP32-H2

For more details visit the supported chips documentation page.

Decoding exceptions

You can use EspExceptionDecoder to get meaningful call trace.

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 labelled as Type: For reference.

Finally, if you are sure no one else had the issue, follow the Issue template or Feature request template while reporting any new Issue.

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. For more information and how to add your library to the test see external library testing in the documentation.

Contributing

We welcome contributions to the Arduino ESP32 project!

See contributing 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.