ArduinoJson Assistant
The ArduinoJson Assistant is an online tool that computes the required
JsonDocument
capacity for a given document and generates a sample program.
Unsupported browser
The ArduinoJson Assistant requires missing JavaScript features; please reopen this page in a modern browserThis is the Assistant for ArduinoJson 6.17.2. Make sure the same version is installed on your computer.
The Assistant may not work properly with ad-blockers. Consider
white-listing
arduinojson.org
[[ step.label ]]
[[ currentStep.label ]]
Examples: OpenWeatherMap, Reddit
Data structures | [[ capacity.slots ]] | Bytes needed to stores the JSON objects and arrays in memory |
---|---|---|
Strings | [[ capacity.strings ]] | Bytes needed to stores the strings in memory |
Filter | [[ capacity.filter ]] | The parser temporarily stores some ignored keys; this is the size of the largest one. |
Total (minimum) | [[ capacity.minimum ]] |
Minimum capacity for the
JsonDocument .
|
Total (recommended) | [[ capacity.recommended ]] | Including some slack in case the strings change, and rounded to a power of two |
This is too big to fit in the RAM. See How to deserialize a very large document?
This may not fit in the RAM. Make sure there is enough free space.
See also: How to use external RAM on an ESP32?
Tweaks (advanced users only)
JsonDocument
stores strings differently depending on
their types. It stores const char*
by pointer (which
takes no extra space) and all other types by copy.Check this box if you're only adding
const char*
values.
Same as above but for keys.
Uncheck this box if your program generates keys at runtime.
Uncheck this box if your program generates keys at runtime.
ArduinoJson detects duplicate strings to store only one copy, but
you can tell the Assistant to include all strings.
You should uncheck this box if you used placeholders values (like
You should uncheck this box if you used placeholders values (like
XXXX
) in the box above).
Same as above, but for keys instead of values.
You should check this box unless you know what you're doing.
You should check this box unless you know what you're doing.
⚠️ This program assumes you defined
ARDUINOJSON_USE_LONG_LONG
to 1