thingsboard / thingsboard-client-sdk

Client SDK to connect with ThingsBoard IoT Platform from IoT devices (Arduino, Espressif, etc.)
MIT License
144 stars 118 forks source link

Clarity on versions and ArdunoJson #207

Open TPCQitek opened 6 days ago

TPCQitek commented 6 days ago

can I get clarity re the versions and used of ArduinoJson 7.xx ?

I need to introduce a number of features in my Devices (ESP32 using the IDE 2.x ) as part of the Air Quality interface to things like Health services etc, and these need 7.xx

when I install the Thingsboard update.

Downloading ArduinoJson@6.21.4 ArduinoJson@6.21.4 Installing ArduinoJson@6.21.4 Replacing ArduinoJson@7.1.0 with ArduinoJson@6.21.4 Installed ArduinoJson@6.21.4 Downloading ThingsBoard@0.13.0 ThingsBoard@0.13.0 Installing ThingsBoard@0.13.0 Replacing ThingsBoard@0.12.2 with ThingsBoard@0.13.0 Installed ThingsBoard@0.13.0

I received an email couple weeks ago, Closed #186 as completed via #180.

or is the ver 7.xx not possible?

thanks..

MathewHDYT commented 6 days ago

If you use the newest version of the ThingsBoard library the issue with the RPC response you had should have been fixed. The problem was not the ArduinoJson library but the usage of it. That's why the issue was closed. Additionally there was no real reason given to upgrade to v7.0.0, there were only messages that it didn't compile with that version that has been fixed as well, because now the library always automatically installs v6.21.4 instead for both Arduino and PlattformIO and the EspressifRegistry.


Because the update to v7.X.X is possible, but will not be done as written in my first inital message to that question. Because there is simply no need and the underlying problem with the library has not changed. As a user of this library you do not have to directly interact with ArduinoJson in any diffcult way. Instead all of that is handled by the library and the newest version does not allow to allocate on the stack, which is innacceptable. If you want to read more the inital response to that question still stands true.


For your additional features I would like to know what you can currently not implement with v6.21.4 and could implement with v7.X.X. Because if there are actual huge features which cannot be implemented because of this an optional upgrade with a #ifdef might be possible.