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
{{ message }}
This repository was archived by the owner on Feb 4, 2023. It is now read-only.
### Release v1.2.0
1. 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](khoih-prog/Portenta_H7_AsyncWebServer#8)
2. Add multiple examples to demo the new feature
*[1. Async_AdvancedWebServer on RASPBERRY_PI_PICO_W using CYW43439 WiFi](#1-Async_AdvancedWebServer-on-RASPBERRY_PI_PICO_W-using-CYW43439-WiFi)
@@ -96,6 +99,7 @@
96
99
*[5. MQTT_ThingStream on RASPBERRY_PI_PICO_W using CYW43439 WiFi](#5-MQTT_ThingStream-on-RASPBERRY_PI_PICO_W-using-CYW43439-WiFi)
97
100
*[6. Async_AdvancedWebServer_Country on RASPBERRY_PI_PICO_W using CYW43439 WiFi](#6-Async_AdvancedWebServer_Country-on-RASPBERRY_PI_PICO_W-using-CYW43439-WiFi)
98
101
*[7. Async_AdvancedWebServer_favicon on RASPBERRY_PI_PICO_W using CYW43439 WiFi](#7-Async_AdvancedWebServer_favicon-on-RASPBERRY_PI_PICO_W-using-CYW43439-WiFi)
102
+
*[8. Async_AdvancedWebServer_MemoryIssues_Send_CString on RASPBERRY_PI_PICO_W](#8-Async_AdvancedWebServer_MemoryIssues_Send_CString-on-RASPBERRY_PI_PICO_W)
99
103
*[Debug](#debug)
100
104
*[Troubleshooting](#troubleshooting)
101
105
*[Issues](#issues)
@@ -106,6 +110,63 @@
106
110
*[License](#license)
107
111
*[Copyright](#copyright)
108
112
113
+
---
114
+
---
115
+
116
+
### Important Note from v1.2.0
117
+
118
+
The new `v1.2.0` has added a new and powerful feature to permit using `CString` to save heap to send `very large data`.
119
+
120
+
Check the `marvelleous` PR of **@salasidis**[request->send(200, textPlainStr, jsonChartDataCharStr); - Without using String Class - to save heap #8](https://github.com/khoih-prog/Portenta_H7_AsyncWebServer/pull/8) and these new examples
#### 8. Async_AdvancedWebServer_MemoryIssues_Send_CString on RASPBERRY_PI_PICO_W
1757
+
1758
+
Following is the debug terminal and screen shot when running example [Async_AdvancedWebServer_MemoryIssues_Send_CString](examples/Async_AdvancedWebServer_MemoryIssues_Send_CString) on RASPBERRY_PI_PICO_W to demonstrate the new and powerful `HEAP-saving` feature
1759
+
1760
+
1761
+
##### Using CString ===> small heap (43,976 bytes)
1762
+
1763
+
```
1764
+
Start Async_AdvancedWebServer_MemoryIssues_Send_CString on RASPBERRY_PI_PICO_W with RP2040W CYW43439 WiFi
1765
+
AsyncTCP_RP2040W v1.1.0
1766
+
AsyncWebServer_RP2040W v1.2.0
1767
+
Connecting to SSID: HueNet1
1768
+
SSID: HueNet1
1769
+
Local IP Address: 192.168.2.74
1770
+
Country code: XX
1771
+
HTTP EthernetWebServer is @ IP : 192.168.2.74
1772
+
1773
+
HEAP DATA - Pre Create Arduino String Cur heap: 193000 Free heap: 150928 Max heap: 42072
1774
+
..
1775
+
HEAP DATA - Pre Send Cur heap: 193000 Free heap: 149176 Max heap: 43824
1776
+
1777
+
HEAP DATA - Post Send Cur heap: 193000 Free heap: 149048 Max heap: 43952
1778
+
1779
+
HEAP DATA - Post Send Cur heap: 193000 Free heap: 149032 Max heap: 43968
1780
+
........ .
1781
+
HEAP DATA - Post Send Cur heap: 193000 Free heap: 149024 Max heap: 43976
1782
+
.......... .......... .......... ........
1783
+
Out String Length=31247
1784
+
.. .......... .......... .......... ..........
1785
+
```
1786
+
1787
+
While using Arduino String, the HEAP usage is very large
1788
+
1789
+
1790
+
#### Async_AdvancedWebServer_MemoryIssues_SendArduinoString ===> very large heap (75,240 bytes)
1791
+
1792
+
```
1793
+
Start Async_AdvancedWebServer_MemoryIssues_SendArduinoString on RASPBERRY_PI_PICO_W with RP2040W CYW43439 WiFi
1794
+
AsyncTCP_RP2040W v1.1.0
1795
+
AsyncWebServer_RP2040W v1.2.0
1796
+
Connecting to SSID: HueNet1
1797
+
SSID: HueNet1
1798
+
Local IP Address: 192.168.2.74
1799
+
Country code: XX
1800
+
HTTP EthernetWebServer is @ IP : 192.168.2.74
1801
+
1802
+
HEAP DATA - Pre Create Arduino String Cur heap: 193256 Free heap: 191192 Max heap: 2064
1803
+
.
1804
+
HEAP DATA - Pre Send Cur heap: 193256 Free heap: 149432 Max heap: 43824
1805
+
1806
+
HEAP DATA - Post Send Cur heap: 193256 Free heap: 118056 Max heap: 75200
1807
+
......
1808
+
HEAP DATA - Post Send Cur heap: 193256 Free heap: 118024 Max heap: 75232
1809
+
... .......... .......... .......... ...
1810
+
HEAP DATA - Post Send Cur heap: 193256 Free heap: 118016 Max heap: 75240
1811
+
....... .......... .......... ..........
1812
+
.......... .......... .......... ........
1813
+
Out String Length=31247
1814
+
.. .......... .
1815
+
```
1816
+
1817
+
1818
+
You can access the Async Advanced WebServers at the displayed server IP, e.g. `192.168.2.74`
@@ -1730,7 +1863,7 @@ Submit issues to: [AsyncWebServer_RP2040W issues](https://github.com/khoih-prog/
1730
1863
4. Add tempo method to modify `arduino-pico` core to change `country-code`
1731
1864
5. Fix issue with slow browsers or network. Check [Target stops responding after variable time when using Firefox on Windows 10 #3](https://github.com/khoih-prog/AsyncWebServer_RP2040W/issues/3)
1732
1865
6. Add functions and example `Async_AdvancedWebServer_favicon` to support `favicon.ico`
1733
-
1866
+
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)
1734
1867
1735
1868
---
1736
1869
---
@@ -1741,11 +1874,13 @@ Submit issues to: [AsyncWebServer_RP2040W issues](https://github.com/khoih-prog/
1741
1874
2. Thanks to [revell1](https://github.com/revell1) to
1742
1875
- report the bug in [LED state appears to be reversed. #2](https://github.com/khoih-prog/AsyncWebServer_RP2040W/issues/2), leading to v1.0.2
1743
1876
- request enhancement in [Target stops responding after variable time when using Firefox on Windows 10 #3](https://github.com/khoih-prog/AsyncWebServer_RP2040W/issues/3), leading to v1.1.0
1877
+
3. Thanks to [salasidis](https://github.com/salasidis) aka [rs77can](https://forum.arduino.cc/u/rs77can) to discuss and make the mavellous PR [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`
0 commit comments