Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • A ArduinoJson
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 24
    • Issues 24
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 0
    • Merge requests 0
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Package Registry
    • Infrastructure Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • Benoît Blanchon
  • ArduinoJson
  • Issues
  • #1883
Closed
Open
Issue created Mar 04, 2023 by YC@yann-cesbron

Want store DynamicJsonDocument in psram on ESP32 Wroover

Description I tring solutions like that. (see Reproduction code) (1) esp reboot endless (2) no memory ( normal) I loking for the good syntax Thanks

Troubleshooter's report

  1. The issue happens at run time
  2. The issue concerns deserialization
  3. deserializeJson() returns NoMemory
  4. Increasing the capacity of the JsonDocument doesn't fix the issue
  5. The JsonDocument is a DynamicJsonDocument
  6. doc.capacity() returns the right value
  7. Changing the Assistant settings doesn't solve the issue

Environment

  • Microcontroller: ESP32 wroover 4m de psram
  • IDE: PIO on visual studio

Reproduction code

in "test.h"
const size_t confSysCapacity = 10240;
(1) DynamicJsonDocument __attribute__((section(".psram")))  JSONconfSys(confSysCapacity);
(2) DynamicJsonDocument JSONconfSys(confSysCapacity);

in "test.cpp"
 File SDfile = SD.open(CONFIGFILE);
...
 DeserializationError error = deserializeJson(JSONconfSys, SDfile);

Remarks my mail is 'yann@cesbron.org'
this code is for an association for the physically handicapped, i try help us you can see the full code on github here: https://github.com/yann-cesbron/HandiPad.git thank's for your help

Assignee
Assign to
Time tracking