ARDUINOJSON_USE_DOUBLE determines the type used to store floating point values in JsonVariant:

  • If ARDUINOJSON_USE_DOUBLE == 0, then JsonVariant stores a float
  • If ARDUINOJSON_USE_DOUBLE == 1, then JsonVariant stores a double

The default is 0 on embedded systems, 1 otherwise.

#define ARDUINOJSON_USE_DOUBLE 1 // we need to store 64-bit doubles
#include <ArduinoJson.h>

:warning: Caution: the memory consumption will be higher, and the results from the ArduinoJson Assistant will be wrong.

:warning: Caution: make sure you use the same value for each compilation unit, i.e., for each .ino and .cpp in your project.