Commit graph

2786 commits

Author SHA1 Message Date
me-no-dev
753e2032e7 fix(psram): ESP32-S2 does not like to early debug log 2024-10-01 16:12:13 +03:00
me-no-dev
482c0a3c26 fix(psram): Do not abort if PSRAM is not found
Also add to heap in app_main
2024-10-01 15:45:09 +03:00
me-no-dev
c980fdc996 Update early system init function declaration 2024-10-01 12:34:44 +03:00
Me No Dev
a5a5809eec
Merge branch 'master' into release/v3.1.x 2024-10-01 12:12:04 +03:00
Me No Dev
5a06dd9e57
fix(psram): Init PSRAM before app_main to fix mmu_map (#10390)
* fix(psram): Init PSRAM before app_main to fix mmu_map

Makes sure that PSRAM is part of the map before app_main is called.

* 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-01 12:11:21 +03:00
Luca Burelli
a4cbdaf3a8
fix(HardwareSerial): fix pin remapping in begin() (#10379)
The pin remapping functions have to be called as early as possible in
the begin() function, to immediately convert the input parameters to the
GPIO numbers used everywhere in the core.

This issue has always been dormant since the introduction of pin
remapping in 2.x via 9b4622d, but was exposed by the proper pin muxing
support that is present in the 3.x core.

Move the pin remapping function calls earlier in the begin() function to
fix this issue.
2024-10-01 12:11:03 +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
Guil-T
1f1de2738b
Added Sparkfun ESP32-S3 Thing Plus board (#10382)
* Create pins_arduino.h

* added board Sparkfun ESP32-S3 Thing Plus

added board Sparkfun ESP32-S3 Thing Plus

* readded last line of hashes in boards.txt

* Update pins_arduino.h

re-added SS pin to pass test

* removed unapplicable flash configurations the sparkfun esp32-s3 thing plus

* added sparkfun esp32-s3 thing plus

removed commented code

* 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-30 13:14:30 +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
Luca Burelli
55bd1d5ee2
digitalPinToInterrupt: fix double pin remapping (#10373)
The digitalPinToInterrupt() macro currently remaps the pin number to the
GPIO number. This is not necessary, as most users will then use the
returned value in attachInterrupt() or other similar API functions,
which already perform the same remapping.

The first half of the macro (the condition) does indeed require the
remapping to ensure the check operates on GPIO numbers.

Fixes espressif/arduino-esp32#10367.
2024-09-25 23:47:08 +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
me-no-dev
9398d52ddc Update package_esp32_index.template.json 2024-09-25 00:05:49 +03:00
github-actions[bot]
87c0e7763d change(tools): Push generated binaries to PR 2024-09-24 18:19:40 +00: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
Ludovic BOUÉ
ae052f414a
Update Matter Light README.md (#10357)
* Update Matter Light README.md

Update Matter Light README.md

* fix(matter): information in the commentaries from SuGlider

* feat(matter): extended formating 

used the same formatting for the whole document and changed a few expresssions.

* fix(matter): missing option idf.py

---------

Co-authored-by: Rodrigo Garcia <rodrigo.garcia@espressif.com>
2024-09-24 18:26:34 +03:00
Me No Dev
67682088ca
IDF release/v5.3 (#10272)
* IDF release/v5.3 2c46030b

* IDF release/v5.3 cc3203dc

* IDF release/v5.3 4d0db704
2024-09-18 15:56:37 +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
Me No Dev
ab951cf08a
IDF release/v5.1 (#10320)
* IDF release/v5.1 e026fd1f

* IDF release/v5.1 99775566

* IDF release/v5.1 8af42a08

* IDF release/v5.1 33fbade6

* 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 14:52:03 +03:00
Rodrigo Garcia
8d772d5e89
ESP Matter + Arduino as IDF Component Light example (#10290)
* feat(matter): partition file for matter

The declaration includes a partition for keys and SSL certificates.

* feat(matter): matter light source code

Adds necessary Matter + Arduino source code that will create a Matter compatible Light.

* feat(matter): adds sdkconfig  and CMake files

Adds target sdkconfig files and the CMakeLists.txt in orde to build the application using Arduino+Matter as IDF component

* fix(matter): wrong folder name

* feat(matter): include example into registry

* fix(matter): error with type in wrong place

A declaration was incorrect due to a typo error. Sintax was corrected by deleting `BuiltInLED`.

* feat(matter): add readme documentation

* feat(matter): remove soc with no wifi or no ble

* feat(matter): adjust all sdkconfig files

* feat(matter): improve code and led status

* feat(matter): add button and led gpio with kconfig

* fix(matter): remove commented lines

* fix(matter): remove commented lines

* feat(matter): added a 2.4GHz SSID note 

Both the ESP32 device and the Smartphone running the Matter APP shall be in the same WiFi Network in order to achieve a successful commissioning process.

* feat(matter): arduino managed comonent version

Preparing the Arduino Managed Component to use Core version 3.0.5 or higher.

* feat(matter): adds information about google

Goggle Home Assistant requires special configurtation in order to allow the Light to show up in the GHA APP.

* feat(matter): arduino component version

Set final Arduino Managed Component to 3.0.5 necessary because of -DESP32=ESP32, in order to compile the project.

* ci(pre-commit): Apply automatic fixes

* fix(typo): typo and commentaries

* fix(typo): typo and commentaries

* fix(typo): typo and commentaries

* fix(typo): typo and commentaries

* fix(typo): typo and commentaries

* fix(typo): typo and commentaries

* fix(typo): typo and commentaries

* fix(typo): typo and commentaries

* fix(typo): typo and commentaries

* fix(typo): typo and commentaries

* fix(typo): typo and commentaries

* fix(typo): typo and commentaries

* fix(typo): typo and commentaries

* fix(typo): typo and commentaries

* fix(typo): typo and commentaries

* fix(typo): typo and commentaries

* fix(typo): typo and commentaries

* fix(typo): typo and commentaries

* fix(matter): spell check ignore for CI

* ci(pre-commit): Apply automatic fixes

* fix(matter): spell check ignore for CI

* fix(matter): spell check ignore for CI

* fix(matter): spell check ignore for CI

* 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 14:51:46 +03:00
wurongmin
462870df24
fix(variant): Rename waveshare esp32-s3 board. (#10355)
* feat(variants): modify the one I successfully merged earlier

* 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:36 +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
TD-er
e989445b62
Fix missing virtual declarations in Stream.h (#10348)
* Fix missing virtual declarations in Stream.h

Fixes some changes made in PR #10328

* Remove the virtual destructor as Print class has one

As pointed out by @JAndrassy
2024-09-17 11:54:48 +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
wurongmin
44a484475c
add waveshare_esp32_touch_amoled_241 (#10342)
* feat(variants): add waveshare_esp32_touch_amoled_241

* feat(boards variants): add waveshare_esp32_touch_amoled_241

* ci(pre-commit): Apply automatic fixes

---------

Co-authored-by: Jan Procházka <90197375+P-R-O-C-H-Y@users.noreply.github.com>
Co-authored-by: pre-commit-ci-lite[bot] <117423508+pre-commit-ci-lite[bot]@users.noreply.github.com>
2024-09-16 12:26:21 +03:00
Lucas Saavedra Vaz
a7cec020df
Merge commit from fork 2024-09-15 20:15:24 -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
Rodrigo Garcia
ac0de431e7
fix(arduino): rain maker common version (#10338)
Fixes Arduino components for Windows 11 with IDF 5.1.4 when building Arduino as IDF component.
2024-09-13 11:30:38 +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
648094c733
fix(api): Update Arduino Stream class (#10328)
* fix(api): Update Arduino Stream class

Upstream code contains some fixes

* Update Stream.h

* 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 10:49:49 +03:00
Me No Dev
eda6d21d87
fix(events): Fix crash in getStdFunctionAddress (#10321) 2024-09-13 10:49:28 +03:00
Me No Dev
855da422ba
Merge branch 'master' into release/v3.1.x 2024-09-11 15:18:38 +03:00
Lucas Saavedra Vaz
4e9eb35752
feat(pre-commit): Add JSON formatter to pre-commit hooks (#10324) 2024-09-11 15:18:03 +03:00
Jan Procházka
1e04762e3a
fix(example): Fix compilation warnings in examples (#10311)
* fix(example): Fix compilation warnings in 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-09-10 16:25:18 +03:00
Me No Dev
d846311344
fix(scan): Make sure that we do not leak memory if reading the APs fails (#10312)
As it was written, it was possible to leak the scan result array if esp_wifi_scan_get_ap_records() failed. Change will ensure that the array is deleted in that case.
2024-09-10 16:18:48 +03:00
Me No Dev
2c4ce95e16
fix(i2c): Ensure that semaphore is properly given if init fails (#10313)
Currently code can return before semaphore is given, which can cause the bus to lock. Change makes sure that it's properly given in case of failure.
2024-09-10 16:18:16 +03:00
Lucas Saavedra Vaz
ef23d52d9b
docs(contrib): Add instructions on how to test changes (#10221)
* docs(contrib): Add instructions on how to test changes

* fix(path): Fix file path

* Remove manual hooks as they do not exist anymore in the repo

* Fix typo
2024-09-10 16:16:29 +03:00
Rodrigo Garcia
cbe0f2ff0d
OpenThread Example Improvement (#10299)
* feat(openthread): add extended example

Creates a new example that mixes different APIs

* feat(openthread): create cj.json file

Adds neessary CI file

* feat(openthread): improve the example

Update ExtendedRoterNode.ino with more use of API

* feat(openthread): improve the example

Adds OpenThread Native calls to the example

* feat(openthread): improve the example 

Update LeaderNode.ino example to add OpenThread Native calls.

* fix(openthread): bad formatting using space

Update keywords.txt to use TAB instead of SPACE in order to recognize correctly the keywords.

* fix(openthread): bad example file name - typo

Changed ExtendedRoterNode to ExtendedRouterNode - Typo error.

* feat(openthread): add extended example ci.json file

Added CI file to the example.

* fix(openthread): deleted bad file names in the example

Delete libraries/OpenThread/examples/SimpleThreadNetwork/ExtendedRoterNode directory

* fix(openthread): typo in commentaries

* fix(openthread): typo in commentaries

* 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-09 16:19:14 +03:00
Rodrigo Garcia
532d5f2fad
feat(tone): missing set tone channel implementation (#10305)
Adds the implementation to setToneChannel() declared in Arduino.h, but removed when movin from Arduino 2.x to 3.x.
2024-09-09 12:45:13 +03:00
Jan Procházka
2853b7c0a4
fix(ci): Log default FQBN if not passed (#10302) 2024-09-09 12:44:52 +03:00
Ha Thach
6264d6b72b
feat(esp32-s2/s3): update tinyuf2 for Adafruit board to 0.20.1 (#10300) 2024-09-09 12:40:38 +03:00
Unexpected Maker
c0dce69fc1
Added Unexpected Maker OMGS3 (#10298) 2024-09-09 12:40:23 +03:00
dependabot[bot]
eec855a09f
build(deps): bump cryptography from 42.0.7 to 43.0.1 in /tests (#10284)
Bumps [cryptography](https://github.com/pyca/cryptography) from 42.0.7 to 43.0.1.
- [Changelog](https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pyca/cryptography/compare/42.0.7...43.0.1)

---
updated-dependencies:
- dependency-name: cryptography
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-09 12:39:58 +03:00