fix issues brught up regarding listModes()

- All about memory mangement by ArduinoJSON v 6.7.0
This commit is contained in:
Debashish Sahu 2018-12-16 11:21:58 -05:00
parent bf07aef10f
commit c755fa2e81
4 changed files with 6 additions and 5 deletions

View file

@ -277,7 +277,7 @@ void handleSetWS2812FXMode(uint8_t * mypayload) {
String listStatusJSON(void) {
uint8_t tmp_mode = (mode == SET_MODE) ? (uint8_t) ws2812fx_mode : strip.getMode();
const size_t bufferSize = JSON_ARRAY_SIZE(3) + JSON_OBJECT_SIZE(6);
const size_t bufferSize = JSON_ARRAY_SIZE(3) + JSON_OBJECT_SIZE(6) + 500;
DynamicJsonDocument jsonBuffer(bufferSize);
JsonObject root = jsonBuffer.to<JsonObject>();
root["mode"] = (uint8_t) mode;
@ -302,7 +302,7 @@ void getStatusJSON() {
}
String listModesJSON(void) {
const size_t bufferSize = JSON_ARRAY_SIZE(strip.getModeCount()+1) + strip.getModeCount()*JSON_OBJECT_SIZE(2);
const size_t bufferSize = JSON_ARRAY_SIZE(strip.getModeCount()+1) + strip.getModeCount()*JSON_OBJECT_SIZE(2) + 1000;
DynamicJsonDocument jsonBuffer(bufferSize);
JsonArray json = jsonBuffer.to<JsonArray>();
for (uint8_t i = 0; i < strip.getModeCount(); i++) {

View file

@ -1 +1 @@
#define SKETCH_VERSION "2.1.9"
#define SKETCH_VERSION "2.1.10"

View file

@ -41,4 +41,7 @@
* - Bump ArduinoJson library requirment for v6.7.0-beta (better memory management)
* - sendState() needs extra memory for jsonBuffer
* - sensState() effect can be sent directly instead of copying from PROGMEM
*
* 16 Dec 2018 v 1.1.10
* - more ArduinoJson library memory managment fixes
*/

View file

@ -44,8 +44,6 @@ monitor_speed = ${common.monitor_speed}
upload_speed = ${common.upload_speed}
upload_resetmethod = ${common.upload_resetmethod}
lib_deps =
WiFiManager@0.14
AsyncMqttClient