Commit Graph
90 Commits
Author SHA1 Message Date
Jiacheng Guo 905856a054 openthread: add NAT64 and DNS64 support
* Add required configs and headers for NAT64 and DNS64
* Add hook for DNS name resolution
* Add NAT64 and DNS64 example commands
2022-08-01 15:31:49 +08:00
Jiacheng Guo 558ce70f40 openthread: use managed component for extension commands 2022-07-18 16:39:30 +08:00
Guo Jia Cheng fb181e0482 Merge branch 'bugfix/timer-overflow' into 'master'
openthread: update library to fix timer overflow

See merge request espressif/esp-idf!18889
2022-07-06 12:21:25 +08:00
Jiacheng Guo d02de327b5 openthread: update library to fix timer overflow
Closes https://github.com/espressif/esp-idf/issues/9278
2022-07-05 19:28:07 +08:00
Jiacheng Guo 9f47861019 openthread: update OpenThread submodule
* Update OpenThread to latest master
* Add required lwIP configurations to border router examples
* Fix build warnings
2022-06-23 11:33:17 +08:00
Jiacheng Guo ebcd922d53 fix review comments 2022-05-17 12:56:22 +08:00
Jiacheng Guo a080a41b41 openthread: support automatic RCP update upon boot in border router 2022-05-17 12:55:48 +08:00
Jiacheng Guo 323b35af58 openthread: Update OpenThread submodule
* Remove log region macros and move to the new OpenThread logging module
* Remove TREL support
2022-03-07 15:45:16 +08:00
Jiacheng Guo a271753a6a openthread: enable 1.2 multicast routing
This MR enables Thread 1.2 Backbone Border Router(BBR) feature and
multicast routing.
2022-01-27 15:22:27 +08:00
Jiacheng Guo 0a46c6a3ee openthread: update README 2022-01-13 12:25:15 +08:00
Jiacheng Guo d6c4e2cb34 lwip: add ip6 input hook
The MR adds Kconfig options and a default weak implementation for the
lwIP ip6 input hook.
2022-01-13 12:23:38 +08:00
Guo Jia Cheng fa8364a544 Merge branch 'bugfix/openthread-socket-multicast' into 'master'
openthread: sync lwip multicast groups to Thread stack

See merge request espressif/esp-idf!16490
2022-01-05 07:04:30 +00:00
Jiacheng Guo d610282742 openthread: sync lwip multicast groups to Thread stack
This MR synchornizes the lwIP multicast groups to the Thread stack. This
will fix sockets failing to receive messages sent to multicast groups
issue.
2022-01-04 20:08:15 +08:00
Guo Jia Cheng f79602c65b Merge branch 'feature/update_openthread_lib' into 'master'
openthread: fix rcp version, update openthread lib and submodule

See merge request espressif/esp-idf!16544
2021-12-28 02:00:57 +00:00
Guo Jia Cheng cfd2d177be Merge branch 'feature/mdns-always-announce-address' into 'master'
mdns: always send A/AAAA records in announcements

See merge request espressif/esp-idf!16254
2021-12-21 04:09:29 +00:00
Guo Jia Cheng 5fdbd40404 Merge branch 'bugfix/mdns-query-instance-filter' into 'master'
mdns: filter instance name for ANY queries

See merge request espressif/esp-idf!16255
2021-12-20 10:38:19 +00:00
Jiacheng Guo 85ea4947dc openthread: fix wrong panid range in border router example 2021-12-20 16:56:42 +08:00
Jiacheng Guo 456f80b754 mdns: always send A/AAAA records in announcements 2021-12-07 11:44:49 +08:00
Guo Jia Cheng 120b0ba2af Merge branch 'feature/update_openthread_components' into 'master'
openthread: update libs

See merge request espressif/esp-idf!16247
2021-12-06 08:56:53 +00:00
Jiacheng Guo 5d0c47303d mdns: filter instance name for ANY queries
The instance name in ANY quries was ignored. The MR fixes the issue.
2021-12-03 19:20:14 +08:00
Jiacheng Guo b00d6d0a95 vfs: reduce lock in vfs_select 2021-11-29 14:09:07 +08:00
Guo Jia Cheng 2a97578ce0 Merge branch 'bugfix/mdns-ptr-record-cnt' into 'master'
mdns: fix wrong PTR record count

See merge request espressif/esp-idf!15891
2021-11-23 03:13:02 +00:00
Jiacheng Guo 5d3f8157e0 mdns: fix wrong PTR record count 2021-11-10 17:29:09 +08:00
Guo Jia Cheng 7fcebe7a23 Merge branch 'feature/rcp-ota' into 'master'
openthread: support updating RCP with OTA over spinel

See merge request espressif/esp-idf!15601
2021-11-05 11:25:43 +00:00
Jiacheng Guo 674a3ff878 openthread: support updating RCP with OTA over spinel 2021-11-05 16:47:30 +08:00
Guo Jia Cheng a928411ab3 Merge branch 'feature/mdns-subtype' into 'master'
mdns: support service subtype

Closes IDFGH-3560

See merge request espressif/esp-idf!15467
2021-10-25 07:50:49 +00:00
Guo Jia Cheng c1d3b295e8 Merge branch 'feature/trel' into 'master'
br: support Thread Radio Encapsulation Link (TREL)

See merge request espressif/esp-idf!15106
2021-10-22 03:31:41 +00:00
Jiacheng Guo 1e5c5f38d9 br: support Thread Radio Encapsulation Link (TREL)
TREL allows sending 15.4 frames on the backbone link by encapsulating it
in an UDP packet.
2021-10-21 19:55:58 +08:00
Jiacheng Guo e7e8610f56 mdns: support service subtype
* Closes https://github.com/espressif/esp-idf/issues/5508
2021-10-19 17:54:17 +08:00
Jiacheng Guo be4a45ab70 openthread: Use esp console for CLI 2021-10-18 12:27:50 +08:00
Guo Jia Cheng 484457f02c Merge branch 'bugfix/ot-log-verbosity' into 'master'
openthread: reduce default log verbosity

See merge request espressif/esp-idf!15326
2021-10-14 09:46:49 +00:00
Jiacheng Guo b7fd68c438 openthread: reduce default log verbosity
Packet logging increases latency and packet drop rate significantly.
2021-10-14 12:14:17 +08:00
Jiacheng Guo c23357d4aa openthread: fix RCP example build 2021-10-12 12:35:37 +08:00
Guo Jia Cheng a1187d879f Merge branch 'feature/update-openthread-4641b16158' into 'master'
openthread: update openthread

See merge request espressif/esp-idf!15469
2021-10-11 12:32:40 +00:00
Jiacheng Guo a3c30a9515 openthread: update openthread 2021-10-11 18:17:46 +08:00
Guo Jia Cheng 1e67cf1ec5 Merge branch 'feature/mdns-multiple-instance' into 'master'
mdns: allow mutiple instances with same service type

See merge request espressif/esp-idf!15180
2021-10-11 02:49:16 +00:00
Jiacheng Guo b7a99f4658 mdns: allow mutiple instances with same service type 2021-09-22 13:07:31 +08:00
Guo Jia Cheng 0d4126b755 Merge branch 'bugfix/eventfd-isr-mismatch' into 'master'
vfs: fix occasional ISR context mismatch in event fd

See merge request espressif/esp-idf!15240
2021-09-18 02:56:11 +00:00
Jiacheng Guo 7eafcb0372 vfs: fix occasional ISR context mismatch in event fd 2021-09-17 17:31:20 +08:00
Guo Jia Cheng 8d51f554db Merge branch 'feature/otbr-discovery-delegate' into 'master'
openthread: support discovery delegate in border router

See merge request espressif/esp-idf!15041
2021-09-06 09:29:09 +00:00
Jiacheng Guo 51372704bf openthread: support discovery delegate in border router 2021-09-03 19:07:59 +08:00
Jiacheng Guo 2213a35156 openthread: fix mesh local prefix missing in border agent example 2021-08-27 14:21:47 +08:00
Guo Jia Cheng e5766eb3d3 Merge branch 'feature/mdns-async-callback' into 'master'
mdns: add notification callback for async APIs

See merge request espressif/esp-idf!14760
2021-08-25 03:34:00 +00:00
Guo Jia Cheng 139bf4af64 Merge branch 'feature/add-mdns-result-attributes' into 'master'
mdns: add more mdns result attributes

See merge request espressif/esp-idf!14674
2021-08-23 09:28:19 +00:00
Jiacheng Guo 986603cf07 mdns: add notification callback for async APIs 2021-08-17 16:53:37 +08:00
Guo Jia Cheng 9b3b89017f Merge branch 'bugfix/select-close-return' into 'master'
vfs: fix select return value when non-permanent fd closed

Closes IDFCI-612

See merge request espressif/esp-idf!14684
2021-08-17 02:58:20 +00:00
Jiacheng Guo f20fb57871 vfs: fix select return value when non-permanent fd closed 2021-08-16 10:49:31 +08:00
Jiacheng Guo 76ec76c12c mdns: add more mdns result attributes 2021-08-11 19:02:05 +08:00
Guo Jia Cheng b8c2825b21 Merge branch 'bugfix/mdns-null-hostname' into 'master'
mdns: fix crash when adding services without hostname set

Closes WIFI-3964

See merge request espressif/esp-idf!14519
2021-08-03 02:47:36 +00:00
Jiacheng Guo ba5b7ddded docs: add OpenThread docs 2021-08-02 17:17:38 +08:00
Jiacheng Guo 5e98772eaf mdns: fix crash when adding services without hostname set 2021-07-29 10:45:10 +08:00
Jiacheng Guo a74bbde9c5 openthread: support 1.3 border routing features
- Support ICMPv6 auto config
- Support SRP service delegation
- Publish _meshcop._mdns service
2021-07-21 10:44:10 +08:00
Jiacheng Guo 71fd44f6ab openthread: enable lwip multicast ping in examples
Multicast ping reply is required for OpenThread certification.
2021-07-15 17:28:28 +08:00
Jiacheng Guo 0050248918 openthread: provide prebuilt libopenthread libraries 2021-07-07 15:27:47 +08:00
Jiacheng Guo 2386113972 mdns: return ESP_OK rather than ERR_OK in API functions 2021-06-29 17:35:45 +08:00
Jiacheng Guo 0baee93211 mdns: fix memory leak in mdns_free when adding delegated hostnames 2021-06-29 17:35:45 +08:00
Jiacheng Guo 68ce4f1404 openthread: add platform UDP and border router example
This MR adds the OpenThread border router example and supports the
Thread 1.1 border agent feature.

* Adds the OPENTHREAD_BORDER_ROUTER Kconfig option.
* Adds platform UDP and task queue port for the border agent feature.
* Adds `esp_openthread_border_router_*` api.
* Adds the `esp_otbr` example.
2021-06-17 17:29:16 +08:00
Jiacheng Guo b4e0088b68 mdns: allow explicit txt value length 2021-06-16 17:47:07 +08:00
Jiacheng Guo 8e0af4267b openthread: move implementation-specific functions to private headers 2021-06-11 18:02:03 +08:00
Jiacheng Guo dea281a48e openthread: simplify esp_openthread initialization
The current OpenThread initialization is too verbose and error-prone.
Using a simple flow will be more user friendly and paves way for
introducing more border router features.
2021-06-11 12:13:02 +08:00
Jiacheng Guo c88e1e3712 openthread: fix wrong OpenThread uart read return value handling 2021-06-08 19:49:37 +08:00
Jiacheng Guo a4f263948c mdns: fix test script delayed response 2021-06-04 10:44:36 +08:00
Jiacheng Guo e6135552d2 mdns: fix wrong SRV/PTR record handling 2021-06-04 10:44:36 +08:00
Jiacheng Guo 439b31d065 mdns: fix wrong service hostname after mangling 2021-06-04 10:44:36 +08:00
Jiacheng Guo 7bbb72d865 mdns: fix empty address change announce packets 2021-06-04 10:44:36 +08:00
Jiacheng Guo d2a5d25984 mdns: fix mdns probe/reply behavior
* send correct hostnames when probing.
* add test for mdns host delegation.
2021-06-04 10:44:36 +08:00
Jiacheng Guo 2d34352f3d mdns: make delegate host address a list
Also adds unit test and doc string for new apis.
2021-06-04 10:44:36 +08:00
Jiacheng Guo 2174693096 mdns: add remove delegate host api 2021-06-04 10:44:36 +08:00
Jiacheng Guo 401ff56cc1 mdns: add mdns delegation
This allows publishing mdns services for other devices.
2021-06-04 10:44:36 +08:00
Jiacheng Guo 5f244c86f2 mdns: fix memory free issue when repeating the query in reply
The repeated query will be copied in the next event loop while the
memory is freed instantly. Delay the free to fix this issue.
2021-06-04 10:44:36 +08:00
Jiacheng Guo 84cc1b8e96 openthread: update openthread version
Uprev OpenThread to check in TCP message leak fix.
2021-06-03 12:02:17 +08:00
Jiacheng Guo 52a68cb7fe openthread: integrate OpenThread network interface with esp_netif 2021-06-02 17:03:54 +08:00
Jiacheng Guo 71be904cf1 openthread: add lwIP network interface
This allows the applications to use the socket and raw api in lwIP to
send packets via OpenThread.
2021-05-17 17:18:20 +08:00
Jiacheng Guo fd3553b66d lwip: add config options for Thread IPv6 border routing 2021-04-22 06:13:47 +00:00
Jiacheng Guo 64c498a584 openthread: update openthread submodule
Roll OpenThread submodule and rename OpenThread config macros and api
calls accordingly.
2021-04-20 20:26:19 +08:00
Jiacheng Guo 9c9838f229 tools: Add /*error*.o and /*error*.d to allowed build lines 2021-04-20 18:09:40 +08:00
Jiacheng Guo 4253d9ee49 tools: Add *error*.cpp to allowed build lines 2021-04-19 10:19:59 +08:00
Jiacheng Guo 6374946cc5 examples: update README for the openthread examples 2021-04-16 16:21:42 +08:00
Jiacheng Guo bbb0e7a573 vfs: fix build & ci errors 2021-04-15 15:19:00 +08:00
Jiacheng Guo 0d986de363 vfs: add default initializer for vfs_eventfd 2021-04-15 15:19:00 +08:00
Jiacheng Guo 40035edcac vfs: add doc links 2021-04-15 15:19:00 +08:00
Jiacheng Guo 7c64d1530a vfs: modify copyright header 2021-04-15 15:18:59 +08:00
Jiacheng Guo 37a992bbde vfs: add example for eventfd 2021-04-15 15:18:59 +08:00
Jiacheng Guo 7b911e4641 vfs: add support for mutiple selects in eventfd 2021-04-15 15:18:59 +08:00
Jiacheng Guo 30e9345bc7 vfs: add unit tests for eventfd 2021-04-15 15:18:59 +08:00
Jiacheng Guo f6fd2eb164 vfs: add eventfd support
eventfd imitates the behavior of POSIX api `man(2) eventfd`. This api
can be used to pass events to a select based message loop.
2021-04-15 15:18:59 +08:00
Jiacheng Guo 3630099d29 openthread: add radio api for Thread 1.2 to work 2021-04-08 17:49:16 +08:00
Jiacheng Guo 12152c6272 OpenThread: exclude OpenThread submodule from python style check 2021-04-02 15:18:14 +08:00
Guo Jia Cheng 7c38989309 OpenThread: add OpenThread and porting
* Adds the OpenThread submodule.
* Adds porting on ESP32.
* Adds the OpenThread cli example.
2021-04-02 14:49:49 +08:00
Jiacheng Guo b14830c5c0 vfs: use sys/dirent.h from newlib
The dirent.h shipped with the risc-v compiler lacks `extern "C"`
declartion and causes linkage declartion conflict when included in C++
files. Use the dirent.h from newlib only to avoid this issue.
2021-03-04 14:58:43 +08:00