espressif / arduino-esp32

Arduino core for the ESP32
GNU Lesser General Public License v2.1
13.08k stars 7.31k forks source link

Implement OpenThread in Arduino #9486

Open SuGlider opened 3 months ago

SuGlider commented 3 months ago

Related area

Create an API for OpenThread within Arduino

Hardware specification

ESP32-C6 and ESP32-H2 as Standalone Nodes. Other SoC can be used as Open Thread Host mode attached to a RPC (802.15.4 radio layer).

Is your feature request related to a problem?

This is an issue to track the progress of developing OpenThread , a new API for Arduino.

Describe the solution you'd like

There are some macro tasks, split in 4 main areas, necessary in order to enable OpenThread in ESP32 Arduino:

1- Add Openthread to Lib Builder scripts and sdkconfig.

2- Create OpenThread CLI API:

3- Create a set of Classes that allow the user to write a sketch for Thread Network.

4- Examples and Documentation

Describe alternatives you've considered

Instead of mapping all OpenThread Library functions to Arduino, limit it to the set of functions that CLI supports. Maybe using CLI as main source of interaction given that it will be maintained by OpenThread development team. This may reduce the effort for maintainance and make it easier for supporting both Standalone Nodes and Host + RPC Nodes configuration.

Additional context

No response

I have checked existing list of Feature requests and the Contribution Guide

SuGlider commented 3 months ago

@VojtechBartoska - this is the Openthread feature request.

SuGlider commented 1 month ago

PR https://github.com/espressif/arduino-esp32/pull/9908 Adds OpenThread CLI API for Arduino Core 3.0.2 Item (3) Create a set of Classes that allow the user to write a sketch for Thread Network of the list will be postponed.

SuGlider commented 1 month ago

Documentation in the Library folder.

SuGlider commented 1 month ago

The following features from (3) Create a set of Classes that allow the user to write a sketch for Thread Network are also available using the ESP32 Arduino OpenThread API:

3- Create a set of Classes that allow the user to write a sketch for Thread Network.