Commit graph

1168 commits

Author SHA1 Message Date
me-no-dev
20a28b58bc fix(net): Do not use netif_index_to_name
Causes error on recent IDF builds
2024-10-22 12:13:04 +03:00
Rodrigo Garcia
8ac076c44c
fix(matter): empty line removing - style 2024-10-21 19:26:34 -03:00
Rodrigo Garcia
7a33a9eeff
fix(matter): change the place of wifi credentials in the code 2024-10-21 19:25:20 -03:00
Rodrigo Garcia
0045cfa658
fix(matter): change place of wifi credentials in code 2024-10-21 19:23:28 -03:00
Rodrigo Garcia
f1f0e4d4f3
Update MatterOnOffLight.ino 2024-10-21 14:43:54 -03:00
Rodrigo Garcia
c40444ab33
feat(matter): initial commit with arduino matter lib (#10467)
* feat(matter): initial commit with arduino matter lib

* feat(matter): add matter library to cmakelists.txt

* fix(matter): add correct guard for ci

* fix(matter): using correct ci requirements in ci.json

* fix(matter): using correct ci requirements in header files

* fix(matter): using correct ci requirements header and examples

* fix(typo): typo and commentaries

* fix(typo): typo and commentaries

* fix(typo): typo and commentaries

* fix(commentary): longer explanation

* feat(matter): api simplification with begin

* feat(matter): testing flashmode=qio in CI

* feat(matter): testing flashmode=qio in CI

* fix(matter): changes CI FQBN

* fix(matte): include all fqbn in ci.json using qio

* fix(matter): revert ci and guard changes

* fix(matter): typo and commentaties

* feat(matter): adds a light toggle switch button

* feat(matter): improved the button control

* feat(matter): using switch instead of if() for attibute change

* fix(matter): switch/case scope

* fix(matter): problems found after pressing reset

* feat(matter): improve example using preferences

* fix(pre-commit): Fix and apply pre-commit hooks

---------

Co-authored-by: Lucas Saavedra Vaz <32426024+lucasssvaz@users.noreply.github.com>
2024-10-21 16:42:43 +03:00
Jan Procházka
83d35683c3
feat(sdmmc): Add SDMMC support for P4 + remove BUILTIN LED (#10460)
* feat(sdmmc): Add support for P4

* fix(board): Remove builtin led

* Update libraries/SD_MMC/examples/SDMMC_Test/SDMMC_Test.ino

Add missing note about power pin for P4

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

* ci(pre-commit): Apply automatic fixes

* feat(sdmmc): Option to set power channel

* feat(sdmmc): Update pins_arduino.h

* feat(sdmmc): remove sdmmc power from periman

* fix(sdmmc): use corrent variable

* fix(sdmmc): Remove periman

* feat(sdmmc): Toggle power pin if defined

* feat(sdmmc): setPowerChannel available only when supported

* feat(sdmmc): Toggle sd power pin for 200ms

* fix(example): Remove p4 pins as they are listed already

* feat(sdmmc): Check if power channel is specified

* ci(pre-commit): Apply automatic fixes

* fix(ci): codespell fix

---------

Co-authored-by: Lucas Saavedra Vaz <32426024+lucasssvaz@users.noreply.github.com>
Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
2024-10-21 15:03:44 +03:00
Jan Procházka
7cfe470d8d
feat(touch): Support NG touch driver for P4 (#10448)
* feat(touch): Support NG touch driver for P4

* fix(ci): Touch test + IDF compilation fixes

* fix(ci): remove debug prints from touch test

* fix(ci): Fix touch test for esp32

* ci(pre-commit): Apply automatic fixes

---------

Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
2024-10-21 13:29:01 +03:00
Me No Dev
59ca4e2d3d
Merge branch 'master' into release/v3.1.x 2024-10-18 20:32:08 +03:00
Lucas Saavedra Vaz
8570b3d270
Fix formatting in ETH and USB 2024-10-17 10:21:08 -03:00
Me No Dev
ee1bc6ba0a
Add RMII Ethernet support for ESP32-P4 (#10479)
* fix(eth): Add ETH support for ESP32-P4

Also adds configuration to pins_arduino.h

* fix(eth): Enable TLK110 Example on P4

* fix(eth): Fix Ethernet examples

* ci(pre-commit): Apply automatic fixes

---------

Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
2024-10-17 14:30:48 +03:00
Jan Procházka
955b277497
fix(example): print correct fade direction (#10450)
* fix(example): print correct fade direction

* fix(example): Change to fade in out

* fix(example): Codespell fix
2024-10-17 10:43:47 +03:00
me-no-dev
c676ce7dc0 fix(p4): Move ESP-HOSTED init to WiFiGeneric
@P-R-O-C-H-Y will add the configured pins to periman, so that they can not be assigned to anything else
2024-10-15 21:06:31 +03:00
Me No Dev
3edf518825
Add support for WiFi to ESP32-P4 (#10463)
* feat(p4): Add support for WiFi to ESP32-P4

Implements support for external MCU connected through SDIO

* fix(p4): Init SDIO host properly on Network boot

esp-hosted has one function marked as "constructor" that did not run in the boot phase of the chip. This calls the function when network is started
2024-10-15 17:25:45 +03:00
Jason2866
3733c87c83
replace outdated wrong SOC_I2C_NUM and use SOC_HP_I2C_NUM (#10452)
* SOC_HP_I2C_NUM

* SOC_HP_I2C_NUM
2024-10-11 16:33:49 +03:00
Me No Dev
774f2756f1
Merge branch 'master' into release/v3.1.x 2024-10-10 18:38:27 +03:00
Me No Dev
af4099202d
IDF release/v5.3 (#10444)
* IDF release/v5.3 707d097b

* fix(camera): Remove support for face detection and recognition
2024-10-10 17:22:39 +03:00
Hamza Hajeir
f083e2df8d
fix(asyncudp): Fixes and implements tcpip thread locking (#10415)
* fix(asyncudp): Fixes and implements tcpip thread locking

* fix(asyncudp): Adds missing unlock

* ci(pre-commit): Apply automatic fixes

---------

Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
2024-10-07 19:15:42 +03:00
Lucas Saavedra Vaz
4d1c9bcfa3
Fix partitions for examples 2024-10-07 09:54:13 -03:00
Lucas Saavedra Vaz
e12e33c581
Merge branch 'master' into release/v3.1.x 2024-10-04 11:14:57 -03:00
Lucas Saavedra Vaz
8ce5f775fe
ci(compilation): Use default partition and add append to FQBN option (#10392)
* ci(partitions): Use default partition for compilation in CI

* fix(ci): Fix paths for sdkconfig

* Fix build of camera web server

* fix(ci): Fix test requirements check

* ci(append): Add option to append to all FQBNs

* fix(json): Fix JSON files to compile examples

* fix(example): Use requires instead of target in ci.json

fix(zigbee): Improve JSON files

Co-authored-by: Jan Prochazka <90197375+P-R-O-C-H-Y@users.noreply.github.com>

* fix(regex): Trim argument before grep

* docs(ci): Add documentation about FQBNs in CI

* fix(json): Remove redundant FQBNs

* fix(json): Skip requirements if libs are not installed

* fix(partitions): Use rainmaker specific partitions

---------

Co-authored-by: me-no-dev <hristo@espressif.com>
Co-authored-by: Jan Prochazka <90197375+P-R-O-C-H-Y@users.noreply.github.com>
2024-10-04 16:57:08 +03:00
sivar2311
5d873c0787
Add conditional compilation for second I2C interface based on SOC_I2C_NUM (#10408)
The ESP32, ESP32-S and ESP32-H series have two I2C interfaces, while the ESP32-C series has only one.
2024-10-04 13:49:55 +03:00
me-no-dev
341dc18079 fix(usb): Add support for HighSpeed USB
This commit adds support for HighSpeed USB as present on ESP32-P4
2024-10-03 13:47:24 +03:00
Rodrigo Garcia
733373a049
Update FreeRTOS Symbols in OThreadCLI (#10412)
* Update OThreadCLI.cpp

* feat(openthread): change FreeRTOS names and types

* feat(openthread): change FreeRTOS names and types

QueueHandle_t instead of xQueueHandle
2024-10-03 09:37:44 +03:00
Jan Procházka
c5047286a1 fix(example): Use requires instead of target in ci.json 2024-10-02 18:40:04 +02:00
Jan Procházka
b067cd6d7f fix(example): Skip zigbee build for P4 2024-10-02 17:25:15 +02:00
me-no-dev
264c858830 Merge branch 'master' into release/v3.1.x 2024-10-02 17:07:42 +03:00
Jan Procházka
473b8515ac
feat(zigbee): Add Zigbee library (#10265)
* Initial commit - light bulb + switch working

* Add Thermostat + fix enum

* Dev update: roles, cb removal, handlers

Fixed ep_thermostat to compile successfully
Removed cb from all EP, as it have been removed, virtual methods will be used instead.
Moved zigbee handlers out of Zigbee_core to Zigbee_handlers for better readability.
Fixed zigbeeInit to be bool and return status of initialization for begin function.
Updated examples with edited roles and custom method for on_off light

* Dev update: implement on/off light and switch methods

Implemented basic function calls of switch commands to on/off light:
  lightToggle, lightOn, lightOff, ...
Implemented virtual methods for on/off light that have to be override in user code:
  setOnOff, sceneControl, setOnOffTime, setOffWaitTime
APIs can be changed, still early development.

* Dev update: Factory reset, names, multiple EPs

Implemented Factory reset of Zigbee device, in order to connect to new network without reflashing/erasing flash
Implemented optional setting for Manufacturer and Model names
Added option to allow endpoint to have multiple endpoint connected -> switch - 2 lights (tested)
Minor sketches update

* Dev update: Device ID to string

Implemented easy transfer from device it to Device type (0x0000 = ESP_ZB_HA_ON_OFF_SWITCH_DEVICE_ID  -> "General On/Off switch".

* Implement cmd default response handler

* Remove unused _identify_cluster

* Dev Update: Color DImmable light + switch implemented

Implemeted color dimmable light and color dimmer switch HA devices + examples.
Removed unnecessary stored attribute cluster
Renamed on/off light and switch examples

* Implement Network Scanning

Implemented Zigbee network scanning (async) to mostly match WiFi scan APIs.
Added Zigbee_Scan_Networks example

* Dev Update: Thermostat and Temperature sensor EP

Implemeted thermostat and temperature sensor HA devices + examples.
Implemented configure report handler.
Updated READMEs and description of examples.
Minor code updates

* fix(): Replace deprecated function

* Remove ported IDF examples

* Update Zigbee examples with new APIs

* Dev Update: Version setting, Thermostat fix, ...

Simplified bounded device print as the structure is common for any EP type
Allowed setting custom app version for EP, default is 0
Small fixes and code updates

* Remove EP template + add lib to CMakeLists

* Rename classes to have proper naming

* Add check for SOC_IEEE802154_SUPPORTED

* Ignore false positive unused variable/function

* Fix compilation errors in examples

* Fill keyworkds.txt, remove unnecessary defines

* Rename methods, variables + make private/protected

* Remove unnecesary defaults defines

* Remove outdated comments

* Update Scan networks Readme

* fix(example): Use proper naming of func and variables

* Change virtual methods to callbacks (TODO)

* Refactor classes methods + implement Identify command

* Apply suggestions from code review by @lucasssvaz

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

* Update READMEs + add openNetwork fucntion

* Use [[maybe_unused]] instead of #pragma

* Use gpio calls for OnOff Light example

* ci(pre-commit): Apply automatic fixes

* fix(): Codespell issues

---------

Co-authored-by: Lucas Saavedra Vaz <32426024+lucasssvaz@users.noreply.github.com>
2024-10-02 17:00:39 +03:00
me-no-dev
8af91fb4a7 Fix build of camera web server 2024-10-02 15:38:57 +03:00
Me No Dev
e3499bc4b7
Merge branch 'master' into release/v3.1.x 2024-10-02 15:36:56 +03:00
Me No Dev
2ec5584d06
fix(hid): Fix OUTPUT report not received (#10398)
Fixes an issue where the keyboard LEDs will not trigger the proper event
2024-10-02 15:34:27 +03:00
Me No Dev
cd971319cb
Fix WPS example config initialization (#10399)
* fix(wps): fixes wps struct initialization

C99 complaint

* fix(wps): adds memset to 0

---------

Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com>
2024-10-02 15:26:32 +03:00
Lucas Saavedra Vaz
a76b22881a
Fix ethernet examples JSON for P4 2024-09-30 19:21:46 -03:00
Lucas Saavedra Vaz
8422b745c2
Fix touch examples JSON for P4 2024-09-30 09:27:10 -03:00
Lucas Saavedra Vaz
69351312e5
Merge branch 'master' into release/v3.1.x 2024-09-30 09:13:12 -03:00
Lucas Saavedra Vaz
e403f0b481
ci(json): Add configuration requirements to ci.json files (#10385)
* ci(json): Add support for checking sdkconfig before running tests

* docs(ci): Add explanation about requires field in JSON

* fix(json): Ignore comments when searching requirements

* feat(json): Add extended regex support to requires field

* change(json): Move to using requirements in JSON

* fix(json): Fix requirements for touch tests

* refactor(json): Fix formatting of JSON files

* fix(spi): Fix SPI example and JSON
2024-09-30 13:43:50 +03:00
Me No Dev
7a0138462d
Merge branch 'master' into release/v3.1.x 2024-09-26 01:37:46 +03:00
vortigont
b05f18dad5
fix: DNSServer Lib - improper startup code in WiFi mode (#10366)
* DNSServer: fix improper startup code in WiFi mode

When running on WiFi-AP mode server's start() method returned true while in fact UDP listening socket was never created
Regression introduced in #8760
Closes #10330

* ci(pre-commit): Apply automatic fixes

---------

Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
2024-09-26 01:37:00 +03:00
Lucas Saavedra Vaz
4bb287eaf6
fix(esp32p4): Fix compilation errors (#10371)
* fix(esp32p4): Add missing touchpad definitions

* fix(esp32p4): Add missing target in SPI example

* fix(esp32p4): Start touch driver fix

* fix(esp32p4): Skip touch examples while it is not implemented

* fix(esp32p4): Add missing analog pin definitions

* refactor(formatting): Fix formatting that was broken in P4 PR

* fix(openthread): Add missing targets to skip

* fix(esp32p4): Skip ethernet sketches

* fix(esp32p4): Disable periman test while touch is not implemented

* fix(esp32p4): Disable touch test while touch is not implemented

* fix(esp32p4): Fix UART test

* fix(esp32p4): Skip Wi-Fi test

* fix(esp32): Skip unsupported example

* fix(esp32p4): Fix skip files

* ci(pre-commit): Apply automatic fixes

---------

Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
2024-09-25 23:38:21 +03:00
Lucas Saavedra Vaz
a4c33e3897
feat(esp32p4): Add initial ESP32-P4 support (#10358)
* feat(esp32p4): Initial changes required for ESP32-P4

* esp32-p4: Initial changes to build with Arduino

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

* fix(esp32p4): Fix lib builder errors

* change(esp32p4): Unhide board

* ci(esp32p4): Add ESP32-P4 to workflow

* change(esptool): Update esptool to 4.8.0

* fix(build): Fix redefinition errors

* fix(build): Remove old commands

* change(esptool): Remove unsupported 32-bit tools

* fix(get.py): Force exe generation

* Revert "fix(get.py): Force exe generation"

This reverts commit 979b16b3b19d02917ddccf0139c6913cca618714.

* fix(get.py): Fix system check

* change(tools): Push generated binaries to PR

* ci(esp32p4): Add missing ESP32-P4 entries

* fix(esp32p4): Add chip info

* fix(esp32p4): Fix build commands

* docs(esp32p4): Add missing references to P4

* fix(esp32p4): Fix clock sources definitions

* fix(esp32p4): Set CPU frequency to 360 MHz so it is stable in all chips

* refactor(esp32p4): Change preprocessor conditionals for maintainability

Co-authored-by: me-no-dev <hristo@espressif.com>

* fix(esp32p4): Add missing menu options

* fix(esp32p4): Mark as not in development json in readme

* fix(esp32p4): Add P4 to ci.json files

* ci(pre-commit): Apply automatic fixes

* fix(get.py): Remove unused include

* ci(pre-commit): Apply automatic fixes

* change(tools): Push generated binaries to PR

* ci(pre-commit): Apply automatic fixes

* fix(ci.json): Fix formatting

---------

Signed-off-by: Lucas Saavedra Vaz <32426024+lucasssvaz@users.noreply.github.com>
Co-authored-by: Jason2866 <24528715+Jason2866@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: me-no-dev <hristo@espressif.com>
Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
2024-09-24 21:18:28 +03:00
me-no-dev
e68b1cca09 Merge branch 'master' into release/v3.1.x 2024-09-18 15:06:31 +03:00
me-no-dev
7018cd114d Update core version to 3.0.5 2024-09-18 14:54:00 +03:00
TD-er
100b3c67cf
Reduce copy of Strings in WebServer RequestHandler (#10345)
* Reduce copy of Strings in WebServer RequestHandler

* ci(pre-commit): Apply automatic fixes

---------

Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
2024-09-18 11:20:19 +03:00
ClockeNessMnstr
c55f5aa506
change(esp_now_serial): No teardown on retry limit (#10293)
* change(ESP_NOW_Serial): No teardown on retry limit

After max retries is met once the ESP_NOW_Serial_Class performs "end()". 
This removes the peer from ESP_NOW. 
Further messages to and from ESP_NOW_Serial are not received or sent. 
Peer should stay in ESP_NOW to re-establish connection even with data loss. 
This change will "retry and drop" the data piece by piece instead of aborting the connection.

* feat(espnow): Add remove on fail parameter

* feat(espnow): By default keep the peer when sending fails

---------

Co-authored-by: Jan Prochazka <90197375+P-R-O-C-H-Y@users.noreply.github.com>
2024-09-17 14:58:01 +03:00
Lee Leahy
2f89026540
Fix(NetworkEvents): Don't skip event callbacks in NetworkEvents::remo… (#10337)
* Fix(NetworkEvents): Don't skip event callbacks in NetworkEvents::removeEvent

Fixes Issue 10318
Includes pull request 10321 that fixes 10316

This change:
* Adds code to find the event callbacks
* Issues error when duplicate callbacks insertion attempts are made
* Issues error when callbacks are not found during removal

* Fix(NetworkEvents): Don't skip event callbacks in NetworkEvents::removeEvent

Fixes Issue 10318
Includes pull request 10321 that fixes 10316

This change:
* Adds code to find the event callbacks
* Issues warning when duplicate callbacks insertion attempts are made
* Issues warning when callbacks are not found during removal

---------

Co-authored-by: Me No Dev <me-no-dev@users.noreply.github.com>
2024-09-16 12:28:26 +03:00
TD-er
3978870f9f
[WiFiScan] Allow allocation in _scanDone() to fail and prevent memory leak (#10335)
* [WiFiScan] Allow allocation to fail and prevent memory leak

When there are many AP's seen during a scan, the allocation of `_scanResult` may fail.
Thus add `(std::nothrow)` to the `new` call.

Also it is possible the array was still present before allocating a new one.

* [WiFiScan] Use nullptr instead of 0

As suggested by @me-no-dev
2024-09-16 12:26:43 +03:00
TD-er
9e60bbe4bc
[WebServer] Mark functions as const + reduce copy of strings (#10339)
* [WebServer] Mark functions as const + reduce copy of strings

* ci(pre-commit): Apply automatic fixes

---------

Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
2024-09-13 11:39:54 +03:00
me-no-dev
8c25325e18 fix(webserver): OTHER_AUTH will leak memory 2024-09-13 11:10:12 +03:00
TD-er
8a87df3b95
NetworkClientRxBuffer::clear() may not always clear (#10288) (#10331)
Fixes: #10288
2024-09-13 10:50:06 +03:00
Me No Dev
eda6d21d87
fix(events): Fix crash in getStdFunctionAddress (#10321) 2024-09-13 10:49:28 +03:00