-
Notifications
You must be signed in to change notification settings - Fork 3
request->send(200, textPlainStr, jsonChartDataCharStr); - Without using String Class - to save heap #8
Conversation
Change from original RSMOD - Use `AWS_LOGDEBUGx` - Correct indentation - Style
Can you also update the src files to your repo, then make the PR again to reduce the number of PRs? |
Also merge to the |
Don't know how to resolve the conflicts - it says has conflicts, and use command line to resolve. I need to merge your changes first, and then will d a new pull request, and the example files should be the only thing different |
Update from RSMOD
It's very good now. I'll scan thru and merge soon. |
I guess I don't have to confirm a pull request - I thought I hadn't completed it. Thanks for the walkthrough - I was missing having to download the files locally, and then upload them into my repository. There were actually no conflicts after doing that. |
The new examples somehow don't auto-refresh the graph. Can you check why with the new code ? |
I specifically eliminated the auto refresh, by removing the meta tag on the web html. Just to make the output cleaner - single pass. Can manually refresh if required. |
To demo the larger graph, also change the examples to
from
|
OK, I still prefer put it back to demo the
|
So far so good. Everybody will love your new powerful enhancement. Will certainly spread to many other Async libraries, at least mine. |
Merging now. Will create a new version soon after some minor changes and enhancements (favicon example, etc.) If you have time, please create similar powerful PRs for many other AsyncWebserver libraries of mine. Best Regards, |
I unfortunately have no other boards to run or test on, but if I need to use another lower cost board, I will be sure to port this to it as well (presumably the source is very similar between all of them). One important thing to note however, without the memory mapped SDRAM, other boards would only get half the benefit, as the initial string will have to reside in the regular heap space. So in the second example (with the C string), I think the heap required would be in the order of 50k-60k instead of 12k (but still better than 111k) |
Certainly, everybody must know this, at least not
You can start with very cheap boards, such as (according to priority : power, cost, popularity, availability, etc.)
|
So far so good Async_AdvancedWebServer_MemoryIssues_Send_CString ===> Using SDRAM, very small heap (12847).
Async_AdvancedWebServer_MemoryIssues_SendArduinoString ===> very large heap (111387)
|
Hi @salasidis The new Portenta_H7_AsyncWebServer v1.4.0 has just been published. Your contribution is noted in Contributions and Thanks Also check Important Note from v1.4.0 Releases v1.4.0
|
### 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
### 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
### 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
### 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
#### Releases v1.6.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
#### Releases v1.6.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
#### Releases v1.6.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
#### Releases v1.5.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) and [All memmove() removed - string no longer destroyed #11](khoih-prog/Portenta_H7_AsyncWebServer#11) 2. Add multiple examples to demo the new feature
#### Releases v1.5.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) and [All memmove() removed - string no longer destroyed #11](khoih-prog/Portenta_H7_AsyncWebServer#11) 2. Add multiple examples to demo the new feature
#### Releases v1.5.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) and [All memmove() removed - string no longer destroyed #11](khoih-prog/Portenta_H7_AsyncWebServer#11) 2. Add multiple examples to demo the new feature
#### Releases v1.5.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) and [All memmove() removed - string no longer destroyed #11](khoih-prog/Portenta_H7_AsyncWebServer#11) 2. Add multiple examples to demo the new feature
#### Releases v1.5.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) and [All memmove() removed - string no longer destroyed #11](khoih-prog/Portenta_H7_AsyncWebServer#11) 2. Add multiple examples to demo the new feature
### Releases v1.6.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) and [All memmove() removed - string no longer destroyed #11](khoih-prog/Portenta_H7_AsyncWebServer#11) 2. Add multiple examples to demo the new feature
### Releases v1.6.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) and [All memmove() removed - string no longer destroyed #11](khoih-prog/Portenta_H7_AsyncWebServer#11) 2. Add multiple examples to demo the new feature
### Releases v1.6.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) and [All memmove() removed - string no longer destroyed #11](khoih-prog/Portenta_H7_AsyncWebServer#11) 2. Add multiple examples to demo the new feature
### Releases v1.6.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) and [All memmove() removed - string no longer destroyed #11](khoih-prog/Portenta_H7_AsyncWebServer#11) 2. Add multiple examples to demo the new feature
### Releases v1.6.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) and [All memmove() removed - string no longer destroyed #11](khoih-prog/Portenta_H7_AsyncWebServer#11) 2. Add multiple examples to demo the new feature
### Releases v1.6.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 functions and example `Async_AdvancedWebServer_favicon` to support `favicon.ico` 3. Add multiple examples to demo the new feature 4. Fix issue with slow browsers or network 5. Change license from `MIT` to `GPLv3` to match with original [ESPAsyncWebServer](https://github.com/me-no-dev/ESPAsyncWebServer) license
### Releases v1.6.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 functions and example `Async_AdvancedWebServer_favicon` to support `favicon.ico` 3. Add multiple examples to demo the new feature 4. Fix issue with slow browsers or network 5. Change license from `MIT` to `GPLv3` to match with original [ESPAsyncWebServer](https://github.com/me-no-dev/ESPAsyncWebServer) license
### Releases v1.6.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 functions and example `Async_AdvancedWebServer_favicon` to support `favicon.ico` 3. Add multiple examples to demo the new feature 4. Fix issue with slow browsers or network 5. Change license from `MIT` to `GPLv3` to match with original [ESPAsyncWebServer](https://github.com/me-no-dev/ESPAsyncWebServer) license
### Releases v1.6.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 functions and example `Async_AdvancedWebServer_favicon` to support `favicon.ico` 3. Add multiple examples to demo the new feature 4. Fix issue with slow browsers or network 5. Change license from `MIT` to `GPLv3` to match with original [ESPAsyncWebServer](https://github.com/me-no-dev/ESPAsyncWebServer) license
### Releases v1.6.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 functions and example `Async_AdvancedWebServer_favicon` to support `favicon.ico` 3. Add multiple examples to demo the new feature 4. Fix issue with slow browsers or network 5. Change license from `MIT` to `GPLv3` to match with original [ESPAsyncWebServer](https://github.com/me-no-dev/ESPAsyncWebServer) license
### Releases v1.6.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 functions and example `Async_AdvancedWebServer_favicon` to support `favicon.ico` 3. Add multiple examples to demo the new feature 4. Fix issue with slow browsers or network 5. Change license from `MIT` to `GPLv3` to match with original [ESPAsyncWebServer](https://github.com/me-no-dev/ESPAsyncWebServer) license
### Releases v1.6.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 functions and example `Async_AdvancedWebServer_favicon` to support `favicon.ico` 3. Add multiple examples to demo the new feature 4. Fix issue with slow browsers or network 5. Change license from `MIT` to `GPLv3` to match with original [ESPAsyncWebServer](https://github.com/me-no-dev/ESPAsyncWebServer) license
Do not update src files, as they do not include khoih changes already made