Skip to content
This repository was archived by the owner on Feb 4, 2023. It is now read-only.

Commit 0fc181d

Browse files
authored
v1.3.0 to add ESP32_S3 support. etc.
### Releases v1.3.0 1. Remove hard-code if possible 2. Improve debug messages by adding functions to display `error/state messages` instead of `cryptic error/state number` 3. Clean up 4. Add support to `ESP32_S3`, using ESP32 core `v2.0.3`. **Don't use `ESP32_S3` with core v2.0.4**. Check [ESP32-S3 Powercycling right after uploading a sketch using Arduino IDE and Arduino Core 2.0.4 #7165](espressif/arduino-esp32#7165)
1 parent c102790 commit 0fc181d

13 files changed

+602
-590
lines changed

Diff for: CONTRIBUTING.md

+5-5
Original file line numberDiff line numberDiff line change
@@ -15,23 +15,23 @@ If you don't find anything, please [open a new issue](https://github.com/khoih-p
1515
Please ensure to specify the following:
1616

1717
* Arduino IDE version (e.g. 1.8.19) or Platform.io version
18-
* `ESP32` Core Version (e.g. ESP32 core v2.0.2)
19-
* `ESP32` Board type (e.g. ESP32_DEV, ESP32S2_DEV Module, ESP32_S2_Saola, etc.)
18+
* `ESP32` Core Version (e.g. ESP32 core v2.0.4)
19+
* `ESP32` Board type (e.g. ESP32_DEV, ESP32_S2, ESP32_S3, ESP32_C3, etc.)
2020
* Contextual information (e.g. what you were trying to achieve)
2121
* Simplest possible steps to reproduce
2222
* Anything that might be relevant in your opinion, such as:
23-
* Operating system (Windows, Ubuntu, etc.) and the output of `uname -a`
23+
* Operating system (Windows, Ubuntu, etc.) and the output of `uname -a` for Linux / Ubuntu
2424
* Network configuration
2525

2626

2727
### Example
2828

2929
```
3030
Arduino IDE version: 1.8.19
31-
ESP32 core v2.0.2
31+
ESP32 core v2.0.4
3232
ESP32_DEV Module
3333
OS: Ubuntu 20.04 LTS
34-
Linux xy-Inspiron-3593 5.4.0-96-generic #109-Ubuntu SMP Wed Jan 12 16:49:16 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux
34+
Linux xy-Inspiron-3593 5.15.0-46-generic #49~20.04.1-Ubuntu SMP Thu Aug 4 19:15:44 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux
3535
3636
Context:
3737
I encountered a crash while using TimerInterrupt.

Diff for: README.md

+138-52
Original file line numberDiff line numberDiff line change
@@ -5,16 +5,15 @@
55
[![contributions welcome](https://img.shields.io/badge/contributions-welcome-brightgreen.svg?style=flat)](#Contributing)
66
[![GitHub issues](https://img.shields.io/github/issues/khoih-prog/AsyncTCP_SSL.svg)](http://github.com/khoih-prog/AsyncTCP_SSL/issues)
77

8-
9-
10-
<a href="https://www.buymeacoffee.com/khoihprog6" target="_blank"><img src="https://cdn.buymeacoffee.com/buttons/v2/default-yellow.png" alt="Buy Me A Coffee" style="height: 60px !important;width: 217px !important;" ></a>
11-
8+
<a href="https://www.buymeacoffee.com/khoihprog6" title="Donate to my libraries using BuyMeACoffee"><img src="https://cdn.buymeacoffee.com/buttons/v2/default-yellow.png" alt="Donate to my libraries using BuyMeACoffee" style="height: 50px !important;width: 181px !important;" ></a>
9+
<a href="https://www.buymeacoffee.com/khoihprog6" title="Donate to my libraries using BuyMeACoffee"><img src="https://img.shields.io/badge/buy%20me%20a%20coffee-donate-orange.svg?logo=buy-me-a-coffee&logoColor=FFDD00" style="height: 20px !important;width: 200px !important;" ></a>
1210

1311
---
1412
---
1513

1614
## Table of contents
1715

16+
* [Important Note for ESP32_S3](#Important-Note-for-ESP32_S3)
1817
* [Important Change from v1.2.0](#Important-Change-from-v120)
1918
* [Why do we need this AsyncTCP_SSL library](#why-do-we-need-this-AsyncTCP_SSL-library)
2019
* [Features](#features)
@@ -42,6 +41,7 @@
4241
* [2. AsyncHTTPSRequest_ESP on ESP32S2_DEV](#2-AsyncHTTPSRequest_ESP-on-ESP32S2_DEV)
4342
* [3. AsyncHTTPSRequest_ESP on ESP32C3_DEV](#3-AsyncHTTPSRequest_ESP-on-ESP32C3_DEV)
4443
* [4. AsyncHTTPSRequest_ESP_WiFiManager on ESP32_DEV](#4-AsyncHTTPSRequest_ESP_WiFiManager-on-ESP32_DEV)
44+
* [5. AsyncHTTPSRequest_ESP_Multi on ESP32S3_DEV](#5-AsyncHTTPSRequest_ESP_Multi-on-ESP32S3_DEV)
4545
* [Debug](#debug)
4646
* [Troubleshooting](#troubleshooting)
4747
* [Issues](#issues)
@@ -55,10 +55,18 @@
5555
---
5656
---
5757

58+
### Important Note for ESP32_S3
59+
60+
**Don't use `ESP32_S3` with core v2.0.4**. Check [ESP32-S3 Powercycling right after uploading a sketch using Arduino IDE and Arduino Core 2.0.4 #7165](https://github.com/espressif/arduino-esp32/issues/7165)
61+
62+
---
63+
5864
### Important Change from v1.2.0
5965

6066
Please have a look at [HOWTO Fix `Multiple Definitions` Linker Error](#howto-fix-multiple-definitions-linker-error)
6167

68+
---
69+
6270
### Why do we need this [AsyncTCP_SSL library](https://github.com/khoih-prog/AsyncTCP_SSL)
6371

6472
#### Features
@@ -90,9 +98,10 @@ to apply the better and faster **asynchronous** feature of the **powerful** [Asy
9098

9199
### Currently supported Boards
92100

93-
1. ESP32 boards, such as ESP32_DEV, etc.
94-
2. ESP32S2-based boards, such as ESP32S2_DEV, ESP32_S2 Saola, etc.
95-
3. ESP32C3-based boards, such as ESP32C3_DEV, etc.
101+
1. `ESP32` boards, such as ESP32_DEV, etc.
102+
2. `ESP32_S2`-based boards, such as ESP32S2_DEV, ESP32_S2 Saola, etc.
103+
3. `ESP32_C3`-based boards, such as ESP32C3_DEV, etc.
104+
4. `ESP32_S3`-based boards, such as ESP32S3_DEV, etc., using ESP32 core `v2.0.3`
96105

97106

98107
---
@@ -101,7 +110,8 @@ to apply the better and faster **asynchronous** feature of the **powerful** [Asy
101110
## Prerequisites
102111

103112
1. [`Arduino IDE 1.8.19+` for Arduino](https://github.com/arduino/Arduino). [![GitHub release](https://img.shields.io/github/release/arduino/Arduino.svg)](https://github.com/arduino/Arduino/releases/latest)
104-
2. [`ESP32 Core 2.0.2+`](https://github.com/espressif/arduino-esp32) for ESP32-based boards. [![Latest release](https://img.shields.io/github/release/espressif/arduino-esp32.svg)](https://github.com/espressif/arduino-esp32/releases/latest/)
113+
2. [`ESP32 Core 2.0.4+`](https://github.com/espressif/arduino-esp32) for ESP32-based boards. [![Latest release](https://img.shields.io/github/release/espressif/arduino-esp32.svg)](https://github.com/espressif/arduino-esp32/releases/latest/) for ESP32, ESP32_S2, ESP32_C3
114+
3. [`ESP32 Core 2.0.3`](https://github.com/espressif/arduino-esp32) for ESP32_S3-based boards. [![Latest release](https://img.shields.io/github/release/espressif/arduino-esp32.svg)](https://github.com/espressif/arduino-esp32/releases/latest/) for ESP32_S3 until [ESP32-S3 Powercycling right after uploading a sketch using Arduino IDE and Arduino Core 2.0.4 #7165](https://github.com/espressif/arduino-esp32/issues/7165) is fixed.
105115

106116
---
107117
---
@@ -118,9 +128,9 @@ You can also use this link [![arduino-library-badge](https://www.ardu-badge.com/
118128
Another way to install is to:
119129

120130
1. Navigate to [**AsyncTCP_SSL**](https://github.com/khoih-prog/AsyncTCP_SSL) page.
121-
2. Download the latest release `AsyncTCP_SSL-master.zip`.
122-
3. Extract the zip file to `AsyncTCP_SSL-master` directory
123-
4. Copy whole `AsyncTCP_SSL-master` folder to Arduino libraries' directory such as `~/Arduino/libraries/`.
131+
2. Download the latest release `AsyncTCP_SSL-main.zip`.
132+
3. Extract the zip file to `AsyncTCP_SSL-main` directory
133+
4. Copy whole `AsyncTCP_SSL-main` folder to Arduino libraries' directory such as `~/Arduino/libraries/`.
124134

125135
### VS Code & PlatformIO
126136

@@ -270,8 +280,8 @@ Following is the debug terminal when running example [AsyncHTTPSRequest_ESP](htt
270280

271281
```
272282
Starting AsyncHTTPSRequest_ESP using ESP32_DEV
273-
AsyncTCP_SSL v1.2.0
274-
AsyncHTTPSRequest_Generic v1.3.0
283+
AsyncTCP_SSL v1.3.0
284+
AsyncHTTPSRequest_Generic v2.1.0
275285
Connecting to WiFi SSID: HueNet1
276286
.......
277287
AsyncHTTPSRequest @ IP : 192.168.2.133
@@ -319,8 +329,8 @@ Following is the debug terminal when running example [AsyncHTTPSRequest_ESP](htt
319329

320330
```
321331
Starting AsyncHTTPSRequest_ESP using ESP32S2_DEV
322-
AsyncTCP_SSL v1.2.0
323-
AsyncHTTPSRequest_Generic v1.3.0
332+
AsyncTCP_SSL v1.3.0
333+
AsyncHTTPSRequest_Generic v2.1.0
324334
Connecting to WiFi SSID: HueNet1
325335
.......
326336
AsyncHTTPSRequest @ IP : 192.168.2.79
@@ -349,21 +359,21 @@ AsyncHTTPSRequest @ IP : 192.168.2.79
349359
[ATCP] _handle_async_event: LWIP_TCP_RECV = 0x3FFE5024
350360
[ATCP] _recv: tot_len = 1016
351361
**************************************
352-
abbreviation: EST
362+
abbreviation: EDT
353363
client_ip: aaa.bbb.ccc.ddd
354-
datetime: 2022-01-23T21:21:03.766116-05:00
364+
datetime: 2022-09-04T19:27:33.745787-04:00
355365
day_of_week: 0
356-
day_of_year: 23
357-
dst: false
358-
dst_from:
359-
dst_offset: 0
360-
dst_until:
366+
day_of_year: 247
367+
dst: true
368+
dst_from: 2022-03-13T07:00:00+00:00
369+
dst_offset: 3600
370+
dst_until: 2022-11-06T06:00:00+00:00
361371
raw_offset: -18000
362372
timezone: America/Toronto
363-
unixtime: 1642990863
364-
utc_datetime: 2022-01-24T02:21:03.766116+00:00
365-
utc_offset: -05:00
366-
week_number: 3
373+
unixtime: 1662334053
374+
utc_datetime: 2022-09-04T23:27:33.745787+00:00
375+
utc_offset: -04:00
376+
week_number: 35
367377
**************************************
368378
```
369379

@@ -375,27 +385,27 @@ Following is the debug terminal when running example [AsyncHTTPSRequest_ESP](htt
375385

376386
```
377387
Starting AsyncHTTPSRequest_ESP using ESP32C3_DEV
378-
AsyncTCP_SSL v1.2.0
379-
AsyncHTTPSRequest_Generic v1.3.0
388+
AsyncTCP_SSL v1.3.0
389+
AsyncHTTPSRequest_Generic v2.1.0
380390
Connecting to WiFi SSID: HueNet1
381391
.........
382392
AsyncHTTPSRequest @ IP : 192.168.2.80
383393
**************************************
384-
abbreviation: EST
394+
abbreviation: EDT
385395
client_ip: aaa.bbb.ccc.ddd
386-
datetime: 2022-01-23T21:24:07.839337-05:00
396+
datetime: 2022-09-04T19:27:33.745787-04:00
387397
day_of_week: 0
388-
day_of_year: 23
389-
dst: false
390-
dst_from:
391-
dst_offset: 0
392-
dst_until:
398+
day_of_year: 247
399+
dst: true
400+
dst_from: 2022-03-13T07:00:00+00:00
401+
dst_offset: 3600
402+
dst_until: 2022-11-06T06:00:00+00:00
393403
raw_offset: -18000
394404
timezone: America/Toronto
395-
unixtime: 1642991047
396-
utc_datetime: 2022-01-24T02:24:07.839337+00:00
397-
utc_offset: -05:00
398-
week_number: 3
405+
unixtime: 1662334053
406+
utc_datetime: 2022-09-04T23:27:33.745787+00:00
407+
utc_offset: -04:00
408+
week_number: 35
399409
**************************************
400410
```
401411

@@ -408,33 +418,106 @@ Following is the debug terminal when running example [AsyncHTTPSRequest_ESP_WiFi
408418
```
409419
Starting AsyncHTTPSRequest_ESP_WiFiManager using LittleFS on ESP32_DEV
410420
ESPAsync_WiFiManager v1.11.0
411-
AsyncTCP_SSL v1.2.0
412-
AsyncHTTPSRequest_Generic v1.3.0
421+
AsyncTCP_SSL v1.3.0
422+
AsyncHTTPSRequest_Generic v2.1.0
413423
Stored: SSID = HueNet1, Pass = 12345678
414424
Got stored Credentials. Timeout 120s
415425
ConnectMultiWiFi in setup
416426
After waiting 11.38 secs more in setup(), connection result is connected. Local IP: 192.168.2.232
417427
H
418428
**************************************
419-
abbreviation: EST
429+
abbreviation: EDT
420430
client_ip: aaa.bbb.ccc.ddd
421-
datetime: 2022-01-23T21:18:03.759271-05:00
431+
datetime: 2022-09-04T19:41:10.727385-04:00
422432
day_of_week: 0
423-
day_of_year: 23
424-
dst: false
425-
dst_from:
426-
dst_offset: 0
427-
dst_until:
433+
day_of_year: 247
434+
dst: true
435+
dst_from: 2022-03-13T07:00:00+00:00
436+
dst_offset: 3600
437+
dst_until: 2022-11-06T06:00:00+00:00
428438
raw_offset: -18000
429439
timezone: America/Toronto
430-
unixtime: 1642990683
431-
utc_datetime: 2022-01-24T02:18:03.759271+00:00
432-
utc_offset: -05:00
433-
week_number: 3
440+
unixtime: 1662334870
441+
utc_datetime: 2022-09-04T23:41:10.727385+00:00
442+
utc_offset: -04:00
443+
week_number: 35
434444
**************************************
435445
H
436446
```
437447

448+
---
449+
450+
#### 5. AsyncHTTPSRequest_ESP_Multi on ESP32S3_DEV
451+
452+
Following is the debug terminal when running example [AsyncHTTPSRequest_ESP_Multi](https://github.com/khoih-prog/AsyncHTTPSRequest_Generic/tree/main/examples/AsyncHTTPSRequest_ESP_Multi) on **ESP32S3_DEV on ESP32 core v2.0.3** to demonstrate the operation of SSL Async HTTPS request, using [AsyncTCP_SSL Library](https://github.com/khoih-prog/AsyncTCP_SSL)
453+
454+
455+
```
456+
Starting AsyncHTTPSRequest_ESP_Multi on ESP32S3_DEV
457+
AsyncTCP_SSL v1.3.0
458+
AsyncHTTPSRequest_Generic v2.1.0
459+
Connecting to WiFi SSID: HueNet1
460+
...
461+
AsyncHTTPSRequest @ IP : 192.168.2.187
462+
463+
Sending request: https://worldtimeapi.org/api/timezone/Europe/Prague.txt
464+
465+
Sending request: https://www.myexternalip.com/raw
466+
[AHTTPS] _onError handler SSL error = OK
467+
468+
**************************************
469+
[AHTTPS] Response Code = HTTP OK
470+
471+
**************************************
472+
abbreviation: CEST
473+
client_ip: aaa.bbb.ccc.ddd
474+
datetime: 2022-09-05T01:27:33.313946+02:00
475+
day_of_week: 1
476+
day_of_year: 248
477+
dst: true
478+
dst_from: 2022-03-27T01:00:00+00:00
479+
dst_offset: 3600
480+
dst_until: 2022-10-30T01:00:00+00:00
481+
raw_offset: 3600
482+
timezone: Europe/Prague
483+
unixtime: 1662334053
484+
utc_datetime: 2022-09-04T23:27:33.313946+00:00
485+
utc_offset: +02:00
486+
week_number: 36
487+
**************************************
488+
489+
Sending request: [AHTTPS] _onError handler SSL error = OK
490+
https://worldtimeapi.org/api/timezone/America/Toronto.txt
491+
492+
**************************************
493+
[AHTTPS] Response Code = HTTP OK
494+
495+
**************************************
496+
abbreviation: EDT
497+
client_ip: aaa.bbb.ccc.ddd
498+
datetime: 2022-09-04T19:27:33.745787-04:00
499+
day_of_week: 0
500+
day_of_year: 247
501+
dst: true
502+
dst_from: 2022-03-13T07:00:00+00:00
503+
dst_offset: 3600
504+
dst_until: 2022-11-06T06:00:00+00:00
505+
raw_offset: -18000
506+
timezone: America/Toronto
507+
unixtime: 1662334053
508+
utc_datetime: 2022-09-04T23:27:33.745787+00:00
509+
utc_offset: -04:00
510+
week_number: 35
511+
**************************************
512+
513+
**************************************
514+
[AHTTPS] Response Code = HTTP OK
515+
516+
**************************************
517+
aaa.bbb.ccc.ddd
518+
**************************************
519+
```
520+
438521
---
439522
---
440523

@@ -481,6 +564,9 @@ Submit issues to: [AsyncTCP_SSL issues](https://github.com/khoih-prog/AsyncTCP_S
481564
3. Add debug feature
482565
4. Fix `multiple-definitions` linker error
483566
5. Add example
567+
6. Remove hard-code if possible
568+
7. Improve debug messages by adding functions to display `error/state messages` instead of `cryptic error/state number`
569+
8. Add support to `ESP32_S3`, using ESP32 core `v2.0.3`. **Don't use `ESP32_S3` with core v2.0.4**. Check [ESP32-S3 Powercycling right after uploading a sketch using Arduino IDE and Arduino Core 2.0.4 #7165](https://github.com/espressif/arduino-esp32/issues/7165)
484570

485571
---
486572
---

Diff for: changelog.md

+8
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
## Table of Contents
1212

1313
* [Changelog](#changelog)
14+
* [Releases v1.3.0](#Releases-v130)
1415
* [Releases v1.2.0](#Releases-v120)
1516
* [Releases v1.1.0](#Releases-v110)
1617
* [Initial Releases v1.0.0](#Initial-Releases-v100)
@@ -20,6 +21,13 @@
2021

2122
## Changelog
2223

24+
### Releases v1.3.0
25+
26+
1. Remove hard-code if possible
27+
2. Improve debug messages by adding functions to display `error/state messages` instead of `cryptic error/state number`
28+
3. Clean up
29+
4. Add support to `ESP32_S3`, using ESP32 core `v2.0.3`. **Don't use `ESP32_S3` with core v2.0.4**. Check [ESP32-S3 Powercycling right after uploading a sketch using Arduino IDE and Arduino Core 2.0.4 #7165](https://github.com/espressif/arduino-esp32/issues/7165)
30+
2331
### Releases v1.2.0
2432

2533
1. Fix `multiple-definitions` linker error. Drop `src_cpp` and `src_h` directories

Diff for: examples/multiFileProject/multiFileProject.ino

+5-7
Original file line numberDiff line numberDiff line change
@@ -14,24 +14,22 @@
1414
#error This code is intended to run on the ESP32 platform! Please check your Tools->Board setting.
1515
#endif
1616

17-
#define ASYNC_TCP_SSL_VERSION_MIN_TARGET "AsyncTCP_SSL v1.2.0"
18-
#define ASYNC_TCP_SSL_VERSION_MIN 1002000
17+
#define ASYNC_TCP_SSL_VERSION_MIN_TARGET "AsyncTCP_SSL v1.3.0"
18+
#define ASYNC_TCP_SSL_VERSION_MIN 1003000
1919

2020
#include "multiFileProject.h"
2121

2222
#include <WiFi.h>
2323

24-
// Can be included as many times as necessary, without `Multiple Definitions` Linker Error
24+
// To be included only in main(), .ino with setup() to avoid `Multiple Definitions` Linker Error
2525
#include "AsyncTCP_SSL.h"
2626

2727
void setup()
2828
{
2929
Serial.begin(115200);
30-
while (!Serial);
31-
32-
delay(500);
30+
while (!Serial && millis() < 5000);
3331

34-
Serial.println("\nStart multiFileProject");
32+
Serial.println("\nStart multiFileProject on "); Serial.println(ARDUINO_BOARD);
3533
Serial.println(ASYNC_TCP_SSL_VERSION);
3634

3735
#if defined(ASYNC_TCP_SSL_VERSION_MIN)

0 commit comments

Comments
 (0)