You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This repository hosts specially recompiled libraries for the [arduino-esp32](https://github.com/espressif/arduino-esp32) SDK. These libraries are compiled from the [esp-arduino-libs/esp32-arduino-lib-builder](https://github.com/esp-arduino-libs/esp32-arduino-lib-builder).
4
6
5
7
## Features
6
8
7
9
In comparison to the original arduino-esp32 SDK, this repository makes adjustments to certain sdkconfig configurations before compilation. If you need to change more configurations, you can modify the files in the *configs* folder of [esp-arduino-libs/esp32-arduino-lib-builder](https://github.com/esp-arduino-libs/esp32-arduino-lib-builder) and refer to its README for compilation details.
8
10
9
-
For SDKs marked with `PlatformIO Support`, they can be used directly in PlatformIO. Taking `esp32-3.1.1-h` as an example, you just need to add the following content to the `platformio.ini` file (Replace the download link to use other SDK versions):
The SDKs in the `debug` folder change the default log level to **DEBUG** by enabling `CONFIG_LOG_DEFAULT_LEVEL_DEBUG=y` and `CONFIG_BOOTLOADER_LOG_LEVEL_INFO=y`. This increases the number of log messages printed to the serial console to aid in debugging applications.
20
+
The SDKs suffixed with "-d" change the default log level to **DEBUG** by enabling `CONFIG_LOG_DEFAULT_LEVEL_DEBUG=y` and `CONFIG_BOOTLOADER_LOG_LEVEL_INFO=y`. This increases the number of log messages printed to the serial console to aid in debugging applications.
> The SDKs with the "-d" suffix are only for debugging. For production purposes, please use the [official releases](https://github.com/espressif/arduino-esp32/releases) of arduino-esp32.
31
+
> The SDKs with the "-d" suffix are only for debugging. For production purposes, please use the [SDK without suffixes](#for-sdks-without-suffixes) or [Official Releases](https://github.com/espressif/arduino-esp32/releases) of arduino-esp32.
37
32
38
33
### For SDKs suffixed with "-h"
39
34
40
-
The SDKs in the `high_perf` folder change some configurations and can achieve higher performance in some cases, especially for avoiding [screen drifting](https://docs.espressif.com/projects/esp-faq/en/latest/software-framework/peripherals/lcd.html#why-do-i-get-drift-overall-drift-of-the-display-when-esp32-s3-is-driving-an-rgb-lcd-screen) when using RGB LCDs.
35
+
The SDKs suffixed with "-h" change some configurations and can achieve higher performance in some cases, especially for avoiding [screen drifting](https://docs.espressif.com/projects/esp-faq/en/latest/software-framework/peripherals/lcd.html#why-do-i-get-drift-overall-drift-of-the-display-when-esp32-s3-is-driving-an-rgb-lcd-screen) when using RGB LCDs.
41
36
42
-
* For ESP32-S3 SoCs:
43
-
* All:
44
-
* It changes the optimization level from `-Os` to `-O2` by enabling `CONFIG_COMPILER_OPTIMIZATION_PERF=y`.
45
-
* It increases the size of the data cache line width from `32` to `64` by enabling `CONFIG_ESP32S3_DATA_CACHE_LINE_64B=y`.
46
-
* For ESP32-S3R8 (Octal PSRAM):
47
-
* It enables the function **XIP on PSRAM** by enabling `CONFIG_SPIRAM_FETCH_INSTRUCTIONS=y` and `CONFIG_SPIRAM_RODATA=y` (< v3.1.1).
48
-
* It enables the function **XIP on PSRAM** by enabling `CONFIG_SPIRAM_XIP_FROM_PSRAM=y` (>= v3.1.1).
37
+
* For ESP32-S3 SoCs:
38
+
* All:
39
+
* It changes the optimization level from `-Os` to `-O2` by enabling `CONFIG_COMPILER_OPTIMIZATION_PERF=y`.
40
+
* It increases the size of the data cache line width from `32` to `64` by enabling `CONFIG_ESP32S3_DATA_CACHE_LINE_64B=y`.
41
+
* For ESP32-S3R8 (Octal PSRAM):
42
+
* It enables the function **XIP on PSRAM** by enabling `CONFIG_SPIRAM_FETCH_INSTRUCTIONS=y` and `CONFIG_SPIRAM_RODATA=y` (< v3.1.1).
43
+
* It enables the function **XIP on PSRAM** by enabling `CONFIG_SPIRAM_XIP_FROM_PSRAM=y` (>= v3.1.1).
49
44
50
-
* For ESP32-P4 SoCs:
51
-
* All:
52
-
* It increases the size of the L2 cache line width from `64` to `128` by enabling `CONFIG_CACHE_L2_CACHE_LINE_128B=y`.
53
-
* It increases the size of the L2 cache line size from `128KB` to `256KB` by enabling `CONFIG_CACHE_L2_CACHE_256KB=y`.
45
+
* For ESP32-P4 SoCs:
46
+
* All:
47
+
* It increases the size of the L2 cache line width from `64` to `128` by enabling `CONFIG_CACHE_L2_CACHE_LINE_128B=y`.
48
+
* It increases the size of the L2 cache line size from `128KB` to `256KB` by enabling `CONFIG_CACHE_L2_CACHE_256KB=y`.
@@ -64,19 +59,27 @@ The SDKs in the `high_perf` folder change some configurations and can achieve hi
64
59
65
60
## How to Use
66
61
62
+
### Arduino IDE
63
+
67
64
To use the SDKs from this repository in the Arduino IDE, follow these steps:
68
65
69
66
1. Check the version of the arduino-esp32 in use. It can be found in the Arduino IDE under `Tools > Board > Boards Manager > esp32`.
70
67
2. Ensure that the version of arduino-esp32 matches the version of the released SDKs in this repository.
71
68
3. If yes, download the released SDKs from this repository and replace the corresponding libraries in the arduino-esp32 SDK:
72
-
* Step 1: Find the default root path of the arduino-esp32 SDK. It should be different for different operating systems:
73
-
* For **Windows**, the default path is `C:\Users\<user name>\AppData\Local\Arduino15\packages\esp32`.
74
-
* For **Linux**, the default path is `~/.arduino15/packages/esp32`.
75
-
* For **MacOS**, the default path is `~/Library/Arduino15/packages/esp32`.
76
-
* Step 2: Find the default path of the SDK libraries. It should be different for different versions of arduino-esp32:
77
-
* For arduino-esp32 `v2.x.x`, the default path is `hardware > esp32 > 2.x.x > tools > sdk`.
78
-
* For arduino-esp32 `v3.x.x`, the default path is `tools > esp32-arduino-libs > idf-release_x`.
79
-
* Step 3: The structure of the SDK libraries should be as follows, replace them with the libraries extracted from the downloaded SDK:
69
+
70
+
***Step 1**: Find the default root path of the arduino-esp32 SDK. It should be different for different operating systems:
71
+
72
+
* For **Windows**, the default path is `C:\Users\<user name>\AppData\Local\Arduino15\packages\esp32`.
73
+
* For **Linux**, the default path is `~/.arduino15/packages/esp32`.
74
+
* For **MacOS**, the default path is `~/Library/Arduino15/packages/esp32`.
75
+
76
+
***Step 2**: Find the default path of the SDK libraries. It should be different for different versions of arduino-esp32:
77
+
78
+
* For arduino-esp32 `v2.x.x`, the default path is `hardware > esp32 > 2.x.x > tools > sdk`.
79
+
* For arduino-esp32 `v3.x.x`, the default path is `tools > esp32-arduino-libs > idf-release_x`.
80
+
81
+
***Step 3**: The structure of the SDK libraries should be as follows, replace them with the libraries extracted from the downloaded SDK:
82
+
80
83
```
81
84
idf-release_x
82
85
├── esp32
@@ -87,4 +90,14 @@ To use the SDKs from this repository in the Arduino IDE, follow these steps:
87
90
├── tools.json
88
91
├── versions.txt
89
92
```
90
-
4. If not, open an issue in this repository to request a new release or refer to the [documentation](https://docs.espressif.com/projects/arduino-esp32/en/latest/lib_builder.html) for compilation instructions.
93
+
94
+
4. If not, open an issue in this repository to request a new release or refer to the [documentation](https://docs.espressif.com/projects/arduino-esp32/en/latest/lib_builder.html) for compilation instructions.
95
+
96
+
### PlatformIO
97
+
98
+
For SDKs marked with `PlatformIO Support`, they can be used directly in PlatformIO. Taking `esp32-3.1.1-h` as an example, you just need to add the following content to the `platformio.ini` file (Replace the download link to use other SDK versions):
0 commit comments