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

Commit c12d6e6

Browse files
authored
v1.3.1 to improve AsyncWebSockets
#### Release v1.3.1 1. Improve robustness of AsyncWebSockets server. Check [AsyncWebSocketServer_RP2040W crashes with "[AWS] ERROR: Too many messages queued" #6](#6) 2. Add example [Async_WebSocketsServer_Xtreme](https://github.com/khoih-prog/AsyncWebServer_RP2040W/tree/main/examples/Async_WebSocketsServer_Xtreme) to demo the nearly highest possible WebSockets Server speed
1 parent 4a214fa commit c12d6e6

23 files changed

+469
-41
lines changed

README.md

Lines changed: 44 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -92,6 +92,7 @@
9292
* [13. Async_AdvancedWebServer_MemoryIssues_SendArduinoString](examples/Async_AdvancedWebServer_MemoryIssues_SendArduinoString) **New**
9393
* [14. Async_AdvancedWebServer_MemoryIssues_Send_CString](examples/Async_AdvancedWebServer_MemoryIssues_Send_CString) **New**
9494
* [15. Async_WebSocketsServer](examples/Async_WebSocketsServer) **New**
95+
* [16. Async_WebSocketsServer_Xtreme](examples/Async_WebSocketsServer_Xtreme) **New**
9596
* [Example Async_AdvancedWebServer](#Example-Async_AdvancedWebServer)
9697
* [Debug Terminal Output Samples](#debug-terminal-output-samples)
9798
* [1. Async_AdvancedWebServer on RASPBERRY_PI_PICO_W using CYW43439 WiFi](#1-Async_AdvancedWebServer-on-RASPBERRY_PI_PICO_W-using-CYW43439-WiFi)
@@ -103,6 +104,7 @@
103104
* [7. Async_AdvancedWebServer_favicon on RASPBERRY_PI_PICO_W using CYW43439 WiFi](#7-Async_AdvancedWebServer_favicon-on-RASPBERRY_PI_PICO_W-using-CYW43439-WiFi)
104105
* [8. Async_AdvancedWebServer_MemoryIssues_Send_CString on RASPBERRY_PI_PICO_W](#8-Async_AdvancedWebServer_MemoryIssues_Send_CString-on-RASPBERRY_PI_PICO_W)
105106
* [9. Async_WebSocketsServer on RASPBERRY_PI_PICO_W using CYW43439 WiFi](#9-Async_WebSocketsServer-on-RASPBERRY_PI_PICO_W-using-CYW43439-WiFi)
107+
* [10. Async_WebSocketsServer_Xtreme on RASPBERRY_PI_PICO_W using CYW43439 WiFi](#10-Async_WebSocketsServer_Xtreme-on-RASPBERRY_PI_PICO_W-using-CYW43439-WiFi)
106108
* [Debug](#debug)
107109
* [Troubleshooting](#troubleshooting)
108110
* [Issues](#issues)
@@ -1509,6 +1511,8 @@ build_flags =
15091511
13. [Async_AdvancedWebServer_MemoryIssues_SendArduinoString](examples/Async_AdvancedWebServer_MemoryIssues_SendArduinoString) **New**
15101512
14. [Async_AdvancedWebServer_MemoryIssues_Send_CString](examples/Async_AdvancedWebServer_MemoryIssues_Send_CString) **New**
15111513
15. [Async_WebSocketsServer](examples/Async_WebSocketsServer) **New**
1514+
15. [Async_WebSocketsServer_Xtreme](examples/Async_WebSocketsServer_Xtreme) **New**
1515+
15121516

15131517
---
15141518
---
@@ -1536,7 +1540,7 @@ Following is the debug terminal when running example [Async_AdvancedWebServer](e
15361540
```
15371541
Start Async_AdvancedWebServer on RASPBERRY_PI_PICO_W with RP2040W CYW43439 WiFi
15381542
AsyncTCP_RP2040W v1.1.0
1539-
AsyncWebServer_RP2040W v1.3.0
1543+
AsyncWebServer_RP2040W v1.3.1
15401544
Connecting to SSID: HueNet1
15411545
SSID: HueNet1
15421546
Local IP Address: 192.168.2.180
@@ -1560,7 +1564,7 @@ Following is debug terminal output when running example [WebClient](examples/Web
15601564
```
15611565
Start WebClient on RASPBERRY_PI_PICO_W with RP2040W CYW43439 WiFi
15621566
AsyncTCP_RP2040W v1.1.0
1563-
AsyncWebServer_RP2040W v1.3.0
1567+
AsyncWebServer_RP2040W v1.3.1
15641568
Connecting to SSID: HueNet1
15651569
SSID: HueNet1
15661570
Local IP Address: 192.168.2.180
@@ -1638,7 +1642,7 @@ Following is debug terminal output when running example [MQTTClient_Auth](exampl
16381642
```
16391643
Start MQTTClient_Auth on RASPBERRY_PI_PICO_W with RP2040W CYW43439 WiFi
16401644
AsyncTCP_RP2040W v1.1.0
1641-
AsyncWebServer_RP2040W v1.3.0
1645+
AsyncWebServer_RP2040W v1.3.1
16421646
Connecting to SSID: HueNet1
16431647
SSID: HueNet1
16441648
Local IP Address: 192.168.2.180
@@ -1660,7 +1664,7 @@ Following is debug terminal output when running example [MQTTClient_Basic](examp
16601664
```
16611665
Start MQTTClient_Basic on RASPBERRY_PI_PICO_W with RP2040W CYW43439 WiFi
16621666
AsyncTCP_RP2040W v1.1.0
1663-
AsyncWebServer_RP2040W v1.3.0
1667+
AsyncWebServer_RP2040W v1.3.1
16641668
Connecting to SSID: HueNet1
16651669
SSID: HueNet1
16661670
Local IP Address: 192.168.2.180
@@ -1682,7 +1686,7 @@ Following is debug terminal output when running example [MQTT_ThingStream](examp
16821686
```
16831687
Start MQTT_ThingStream on RASPBERRY_PI_PICO_W with RP2040W CYW43439 WiFi
16841688
AsyncTCP_RP2040W v1.1.0
1685-
AsyncWebServer_RP2040W v1.3.0
1689+
AsyncWebServer_RP2040W v1.3.1
16861690
Connecting to SSID: HueNet1
16871691
SSID: HueNet1
16881692
Local IP Address: 192.168.2.180
@@ -1710,7 +1714,7 @@ Following is the debug terminal when running example [Async_AdvancedWebServer_Co
17101714
```
17111715
Start Async_AdvancedWebServer_Country on RASPBERRY_PI_PICO_W with RP2040W CYW43439 WiFi
17121716
AsyncTCP_RP2040W v1.1.0
1713-
AsyncWebServer_RP2040W v1.3.0
1717+
AsyncWebServer_RP2040W v1.3.1
17141718
Connecting to SSID: HueNet1
17151719
SSID: HueNet1
17161720
Local IP Address: 192.168.2.180
@@ -1746,7 +1750,7 @@ Following is the debug terminal when running example [Async_AdvancedWebServer_fa
17461750
```
17471751
14:22:06.632 -> Start Async_AdvancedWebServer_favicon on RASPBERRY_PI_PICO_W with RP2040W CYW43439 WiFi
17481752
14:22:06.632 -> AsyncTCP_RP2040W v1.1.0
1749-
14:22:06.632 -> AsyncWebServer_RP2040W v1.3.0
1753+
14:22:06.632 -> AsyncWebServer_RP2040W v1.3.1
17501754
14:22:06.632 -> Connecting to SSID: HueNet1
17511755
14:22:13.328 -> SSID: HueNet1
17521756
14:22:13.328 -> Local IP Address: 192.168.2.180
@@ -1783,7 +1787,7 @@ Following is the debug terminal and screen shot when running example [Async_Adva
17831787
```
17841788
Start Async_AdvancedWebServer_MemoryIssues_Send_CString on RASPBERRY_PI_PICO_W with RP2040W CYW43439 WiFi
17851789
AsyncTCP_RP2040W v1.1.0
1786-
AsyncWebServer_RP2040W v1.3.0
1790+
AsyncWebServer_RP2040W v1.3.1
17871791
Connecting to SSID: HueNet1
17881792
SSID: HueNet1
17891793
Local IP Address: 192.168.2.74
@@ -1810,7 +1814,7 @@ While using Arduino String, the HEAP usage is very large
18101814
```
18111815
Start Async_AdvancedWebServer_MemoryIssues_SendArduinoString on RASPBERRY_PI_PICO_W with RP2040W CYW43439 WiFi
18121816
AsyncTCP_RP2040W v1.1.0
1813-
AsyncWebServer_RP2040W v1.3.0
1817+
AsyncWebServer_RP2040W v1.3.1
18141818
Connecting to SSID: HueNet1
18151819
SSID: HueNet1
18161820
Local IP Address: 192.168.2.74
@@ -1848,7 +1852,7 @@ Following is debug terminal output when running example [Async_WebSocketsServer]
18481852
```
18491853
Starting Async_WebSocketsServer on RASPBERRY_PI_PICO_W
18501854
AsyncTCP_RP2040W v1.1.0
1851-
AsyncWebServer_RP2040W v1.3.0
1855+
AsyncWebServer_RP2040W v1.3.1
18521856
Connecting to SSID: HueNet1
18531857
SSID: HueNet1
18541858
Local IP Address: 192.168.2.77
@@ -1886,6 +1890,31 @@ You can access the Async_WebSockets Servers at the displayed server IP, e.g. `19
18861890
<img src="https://github.com/khoih-prog/AsyncWebServer_RP2040W/blob/main/pics/Async_WebSocketsServer.png">
18871891
</p>
18881892

1893+
---
1894+
1895+
1896+
#### 10. Async_WebSocketsServer on RASPBERRY_PI_PICO_W using CYW43439 WiFi
1897+
1898+
Following is debug terminal output when running example [Async_WebSocketsServer](examples/Async_WebSocketsServer) on RASPBERRY_PI_PICO_W using CYW43439 WiFi. The WSClient is using the provided [WSClient.py](examples/Async_WebSocketsServer/WSClient_Python/WSClient.py)
1899+
1900+
1901+
```
1902+
Starting Async_WebSocketsServer_Xtreme on RASPBERRY_PI_PICO_W
1903+
AsyncTCP_RP2040W v1.1.0
1904+
AsyncWebServer_RP2040W v1.3.1
1905+
Connecting to SSID: HueNet1
1906+
SSID: HueNet1
1907+
Local IP Address: 192.168.2.77
1908+
```
1909+
1910+
1911+
You can access the Async_WebSockets Servers at the displayed server IP, e.g. `192.168.2.77`
1912+
1913+
<p align="center">
1914+
<img src="https://github.com/khoih-prog/AsyncWebServer_RP2040W/blob/main/pics/Async_WebSocketsServer_Xtreme.png">
1915+
</p>
1916+
1917+
18891918

18901919
---
18911920
---
@@ -1931,7 +1960,7 @@ Submit issues to: [AsyncWebServer_RP2040W issues](https://github.com/khoih-prog/
19311960
6. Add functions and example `Async_AdvancedWebServer_favicon` to support `favicon.ico`
19321961
7. Support using `CString` to save heap to send `very large data`. Check [request->send(200, textPlainStr, jsonChartDataCharStr); - Without using String Class - to save heap #8](https://github.com/khoih-prog/Portenta_H7_AsyncWebServer/pull/8)
19331962
8. Fix `crash` when using `AsyncWebSockets server` and add example [Async_WebSocketsServer](https://github.com/khoih-prog/AsyncWebServer_RP2040W/tree/main/examples/Async_WebSocketsServer) to demo the AsyncWebSockets Server with a Python [WSClient.py](examples/Async_WebSocketsServer/WSClient_Python/WSClient.py)
1934-
1963+
9. Improve robustness of AsyncWebSockets server. Check [AsyncWebSocketServer_RP2040W crashes with "[AWS] ERROR: Too many messages queued" #6](https://github.com/khoih-prog/AsyncWebServer_RP2040W/issues/6) and add example [Async_WebSocketsServer_Xtreme](https://github.com/khoih-prog/AsyncWebServer_RP2040W/tree/main/examples/Async_WebSocketsServer_Xtreme) to demo the nearly highest possible WebSockets Server speed
19351964

19361965
---
19371966
---
@@ -1945,7 +1974,10 @@ Submit issues to: [AsyncWebServer_RP2040W issues](https://github.com/khoih-prog/
19451974
3. Thanks to [salasidis](https://github.com/salasidis) aka [rs77can](https://forum.arduino.cc/u/rs77can) to discuss and make the following `marvellous` PRs in [Portenta_H7_AsyncWebServer library](https://github.com/khoih-prog/Portenta_H7_AsyncWebServer)
19461975
- [request->send(200, textPlainStr, jsonChartDataCharStr); - Without using String Class - to save heap #8](https://github.com/khoih-prog/Portenta_H7_AsyncWebServer/pull/8), leading to `v1.2.0` to support using `CString` to save heap to send `very large data`
19471976
- [All memmove() removed - string no longer destroyed #11](https://github.com/khoih-prog/Portenta_H7_AsyncWebServer/pull/11), leading to `v1.2.1` to remove `memmove()` and not to destroy String anymore
1948-
4. Thanks to [drmue](https://github.com/drmue) to report the bug in [Can't connect to AsyncWebSocketServer_RP2040 via javascript #5](https://github.com/khoih-prog/AsyncWebServer_RP2040W/issues/5), leading to `v1.3.0` to fix crash when using `AsyncWebSockets server`
1977+
4. Thanks to [drmue](https://github.com/drmue) to report the bugs in
1978+
- [Can't connect to AsyncWebSocketServer_RP2040 via javascript #5](https://github.com/khoih-prog/AsyncWebServer_RP2040W/issues/5)
1979+
- [AsyncWebSocketServer_RP2040W crashes with "[AWS] ERROR: Too many messages queued" #6](https://github.com/khoih-prog/AsyncWebServer_RP2040W/issues/6)
1980+
leading to `v1.3.0` and `v1.3.1` to improve `AsyncWebSockets server`
19491981

19501982

19511983
<table>

changelog.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
## Table of Contents
1212

1313
* [Changelog](#changelog)
14+
* [Release v1.3.1](#Release-v131)
1415
* [Release v1.3.0](#Release-v130)
1516
* [Release v1.2.1](#Release-v121)
1617
* [Release v1.2.0](#Release-v120)
@@ -27,6 +28,11 @@
2728

2829
## Changelog
2930

31+
#### Release v1.3.1
32+
33+
1. Improve robustness of AsyncWebSockets server. Check [AsyncWebSocketServer_RP2040W crashes with "[AWS] ERROR: Too many messages queued" #6](https://github.com/khoih-prog/AsyncWebServer_RP2040W/issues/6)
34+
2. Add example [Async_WebSocketsServer_Xtreme](https://github.com/khoih-prog/AsyncWebServer_RP2040W/tree/main/examples/Async_WebSocketsServer_Xtreme) to demo the nearly highest possible WebSockets Server speed
35+
3036
#### Release v1.3.0
3137

3238
1. Fix `crash` when using `AsyncWebSockets server`. Check [Can't connect to AsyncWebSocketServer_RP2040 via javascript #5](https://github.com/khoih-prog/AsyncWebServer_RP2040W/issues/5)

0 commit comments

Comments
 (0)