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
  • #876
Closed
Open
Issue created Dec 26, 2018 by Administrator@rootContributor

Custom allocator (e.g., ESP32 WROVER External RAM)

Created by: czuvich

First of all, this library is awesome! I am developing an Arduino ESP32 project using the WROVER module. The WROVER chip (https://www.adafruit.com/product/3384) supports external RAM (up to 4MB), and I'd like to use DynamicJsonBuffer to allocate memory to the external RAM module. I'm making calls to a JSON backend that returns large(ish) JSON responses, and ideally, I would like to reserve internal RAM for ESP32 core functions.

You can specify the memory strategy on the ESP32 for malloc calls to potentially use external RAM; however, the compiled ESP32 arduino core requires explicit allocation to external memory. I've created a custom allocator that uses the heap_caps_malloc(..., MALLOC_CAP_SPIRAM) call; however, I don't think I can specify how to allocate the DynamicJsonBuffer internal allocations.

I know it's very platform specific, but 1) Is there a way to configure ArduinoJson to support ESP32 external allocation? 2) If not, it'd be great to have a way to do that :)

Assignee
Assign to
Time tracking