ci: partially enable example build for esp32c2

This commit is contained in:
Michael (XIAO Xufeng)
2022-05-20 17:50:08 +08:00
committed by morris
parent acd4ca0f6e
commit f7be540222
117 changed files with 470 additions and 123 deletions
+19 -16
View File
@@ -1,3 +1,6 @@
| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 |
| ----------------- | ----- | -------- | -------- | -------- |
# ESPNOW Example
(See the README.md file in the upper level 'examples' directory for more information about examples.)
@@ -8,22 +11,22 @@ This example shows how to use ESPNOW of wifi. Example does the following steps:
* Initialize ESPNOW.
* Register ESPNOW sending or receiving callback function.
* Add ESPNOW peer information.
* Send and receive ESPNOW data.
* Send and receive ESPNOW data.
This example need at least two ESP devices:
* In order to get the MAC address of the other device, Device1 firstly send broadcast ESPNOW data with 'state' set as 0.
* When Device2 receiving broadcast ESPNOW data from Device1 with 'state' as 0, adds Device1 into the peer list.
Then start sending broadcast ESPNOW data with 'state' set as 1.
* When Device1 receiving broadcast ESPNOW data with 'state' as 1, compares the local magic number with that in the data.
If the local one is bigger than that one, stop sending broadcast ESPNOW data and starts sending unicast ESPNOW data to Device2.
* If Device2 receives unicast ESPNOW data, also stop sending broadcast ESPNOW data.
In practice, if the MAC address of the other device is known, it's not required to send/receive broadcast ESPNOW data first,
* In order to get the MAC address of the other device, Device1 firstly send broadcast ESPNOW data with 'state' set as 0.
* When Device2 receiving broadcast ESPNOW data from Device1 with 'state' as 0, adds Device1 into the peer list.
Then start sending broadcast ESPNOW data with 'state' set as 1.
* When Device1 receiving broadcast ESPNOW data with 'state' as 1, compares the local magic number with that in the data.
If the local one is bigger than that one, stop sending broadcast ESPNOW data and starts sending unicast ESPNOW data to Device2.
* If Device2 receives unicast ESPNOW data, also stop sending broadcast ESPNOW data.
In practice, if the MAC address of the other device is known, it's not required to send/receive broadcast ESPNOW data first,
just add the device into the peer list and send/receive unicast ESPNOW data.
There are a lot of "extras" on top of ESPNOW data, such as type, state, sequence number, CRC and magic in this example. These "extras" are
not required to use ESPNOW. They are only used to make this example to run correctly. However, it is recommended that users add some "extras"
There are a lot of "extras" on top of ESPNOW data, such as type, state, sequence number, CRC and magic in this example. These "extras" are
not required to use ESPNOW. They are only used to make this example to run correctly. However, it is recommended that users add some "extras"
to make ESPNOW data more safe and more reliable.
## How to use example
@@ -35,7 +38,7 @@ idf.py menuconfig
```
* Set WiFi mode (station or SoftAP) under Example Configuration Options.
* Set ESPNOW primary master key under Example Configuration Options.
* Set ESPNOW primary master key under Example Configuration Options.
This parameter must be set to the same value for sending and recving devices.
* Set ESPNOW local master key under Example Configuration Options.
This parameter must be set to the same value for sending and recving devices.
@@ -45,7 +48,7 @@ idf.py menuconfig
* Set Send len under Example Configuration Options.
* Set Enable Long Range Options.
When this parameter is enabled, the ESP32 device will send data at the PHY rate of 512Kbps or 256Kbps
then the data can be transmitted over long range between two ESP32 devices.
then the data can be transmitted over long range between two ESP32 devices.
### Build and Flash
@@ -110,8 +113,8 @@ I (24125) espnow_example: send data to 30:ae:a4:80:45:68
## Troubleshooting
If ESPNOW data can not be received from another device, maybe the two devices are not
on the same channel or the primary key and local key are different.
If ESPNOW data can not be received from another device, maybe the two devices are not
on the same channel or the primary key and local key are different.
In real application, if the receiving device is in station mode only and it connects to an AP,
In real application, if the receiving device is in station mode only and it connects to an AP,
modem sleep should be disabled. Otherwise, it may fail to revceive ESPNOW data from other devices.
+4 -1
View File
@@ -1,3 +1,6 @@
| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 |
| ----------------- | ----- | -------- | -------- | -------- |
# Wi-Fi Fast Scan Example
(See the README.md file in the upper level 'examples' directory for more information about examples.)
@@ -23,7 +26,7 @@ Before project configuration and build, be sure to set the correct chip target u
### Configure the project
Open the project configuration menu (`idf.py menuconfig`).
Open the project configuration menu (`idf.py menuconfig`).
In the `Example Configuration` menu:
@@ -1,3 +1,6 @@
| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | ESP32-C2 |
| ----------------- | ----- | -------- | -------- | -------- | -------- |
# Wi-Fi SoftAP Example
(See the README.md file in the upper level 'examples' directory for more information about examples.)
@@ -10,7 +13,7 @@ SoftAP supports Protected Management Frames(PMF). Necessary configurations can b
### Configure the project
Open the project configuration menu (`idf.py menuconfig`).
Open the project configuration menu (`idf.py menuconfig`).
In the `Example Configuration` menu:
@@ -1,3 +1,6 @@
| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | ESP32-C2 |
| ----------------- | ----- | -------- | -------- | -------- | -------- |
# Wi-Fi Station Example
(See the README.md file in the upper level 'examples' directory for more information about examples.)
@@ -8,7 +11,7 @@ This example shows how to use the Wi-Fi Station functionality of the Wi-Fi drive
### Configure the project
Open the project configuration menu (`idf.py menuconfig`).
Open the project configuration menu (`idf.py menuconfig`).
In the `Example Configuration` menu:
+7 -4
View File
@@ -1,18 +1,21 @@
| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | ESP32-C2 |
| ----------------- | ----- | -------- | -------- | -------- | -------- |
# Iperf Example
## Note about iperf version
The iperf example doesn't support all features in standard iperf. It's compitable with iperf version 2.x.
## Note about 80MHz flash frequency
The iperf can get better throughput if the SPI flash frequency is set to 80MHz, but the system may crash in 80MHz mode for ESP-WROVER-KIT.
Removing R140~R145 from the board can fix this issue. Currently the default SPI frequency is set to 40MHz, if you want to change the SPI flash
The iperf can get better throughput if the SPI flash frequency is set to 80MHz, but the system may crash in 80MHz mode for ESP-WROVER-KIT.
Removing R140~R145 from the board can fix this issue. Currently the default SPI frequency is set to 40MHz, if you want to change the SPI flash
frequency to 80MHz, please make sure R140~R145 are removed from ESP-WROVER-KIT or use ESP32 DevKitC.
## Introduction
This example implements the protocol used by the common performance measurement tool [iPerf](https://iperf.fr/).
This example implements the protocol used by the common performance measurement tool [iPerf](https://iperf.fr/).
Performance can be measured between two ESP32s running this example, or between a single ESP32 and a computer running the iPerf tool
Demo steps to test station TCP Tx performance:
Demo steps to test station TCP Tx performance:
1. Build the iperf example with sdkconfig.defaults, which contains performance test specific configurations
+3
View File
@@ -1,3 +1,6 @@
| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 |
| ----------------- | ----- | -------- | -------- | -------- |
# Wifi Power Save Example
This example shows how to use power save mode of wifi.
+3
View File
@@ -1,3 +1,6 @@
| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 |
| ----------------- | ----- | -------- | -------- | -------- |
# Roaming Example
(See the README.md file in the upper level 'examples' directory for more information about examples.)
+4 -1
View File
@@ -1,3 +1,6 @@
| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 |
| ----------------- | ----- | -------- | -------- | -------- |
# Wi-Fi Scan Example
(See the README.md file in the upper level 'examples' directory for more information about examples.)
@@ -15,7 +18,7 @@ Before project configuration and build, be sure to set the correct chip target u
### Configure the project
Open the project configuration menu (`idf.py menuconfig`).
Open the project configuration menu (`idf.py menuconfig`).
In the `Example Configuration` menu:
+4 -1
View File
@@ -1,3 +1,6 @@
| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 |
| ----------------- | ----- | -------- | -------- | -------- |
# smartconfig Example
This example shows how ESP32 connects to a target AP with ESPTOUCH.
@@ -6,7 +9,7 @@ This example shows how ESP32 connects to a target AP with ESPTOUCH.
### Hardware Required
Download ESPTOUCH APP from app store:
Download ESPTOUCH APP from app store:
[Android source code](https://github.com/EspressifApp/EsptouchForAndroid)
[iOS source code](https://github.com/EspressifApp/EsptouchForIOS) is available.
+3
View File
@@ -1,3 +1,6 @@
| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 |
| ----------------- | ----- | -------- | -------- | -------- |
# WPA2 Enterprise Example
This example shows how ESP32 connects to AP with Wi-Fi enterprise encryption using the EAP-FAST method. The example does the following steps:
@@ -1,3 +1,6 @@
| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 |
| ----------------- | ----- | -------- | -------- | -------- |
# Device Provisioning Protocol (Enrollee) Example
This example shows how to configure ESP32 as an enrollee using Device Provisioning Protocol(DPP) also known as Wi-Fi Easy Connect.
@@ -13,7 +16,7 @@ To run the example with an Android 10+ device follow below steps -
3. Now go to Settings->WiFi & Internet->Wi-Fi->Example-AP->Advanced->Add Device.
4. Scan QR Code using the scanner, which will make ESP32 connect to Example-AP.
Optional configuration available
Optional configuration available
*Note:*
- QR Code should be displayed as dark on a white/light background to work properly.
+6 -3
View File
@@ -1,3 +1,6 @@
| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 |
| ----------------- | ----- | -------- | -------- | -------- |
# WPA2 Enterprise Example
This example shows how ESP32 connects to AP with Wi-Fi enterprise encryption. The example does the following steps:
@@ -46,9 +49,9 @@ idf.py -p PORT flash monitor
mkdir demoCA/private
sh -c "echo '01' > ./demoCA/serial"
touch ./demoCA/index.txt
touch xpextensions
touch xpextensions
add following lines in xpextensions file
add following lines in xpextensions file
[ xpclient_ext ]
extendedKeyUsage = 1.3.6.1.5.5.7.3.2
@@ -79,7 +82,7 @@ idf.py -p PORT flash monitor
openssl pkcs12 -in client.p12 -out client.pem
openssl pkcs12 -in server.p12 -out server.pem
### Example output
+4 -1
View File
@@ -1,3 +1,6 @@
| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 |
| ----------------- | ----- | -------- | -------- | -------- |
# Wi-Fi WPS Example
(See the README.md file in the upper level 'examples' directory for more information about examples.)
@@ -15,7 +18,7 @@ Before project configuration and build, be sure to set the correct chip target u
### Configure the project
Open the project configuration menu (`idf.py menuconfig`).
Open the project configuration menu (`idf.py menuconfig`).
In the `Example Configuration` menu: