@alteriom/painlessmesh 1.7.2 → 1.7.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1735) hide show
  1. package/CHANGELOG.md +473 -381
  2. package/LICENSE +674 -674
  3. package/README.md +491 -477
  4. package/RELEASE_GUIDE.md +504 -504
  5. package/docs/DOCUMENTATION_MIGRATION_PLAN.md +175 -175
  6. package/docs/IMPLEMENTATION_PLAN_MESH_TOPOLOGY.md +1062 -1062
  7. package/docs/MESH_TOPOLOGY_GUIDE.md +992 -992
  8. package/docs/MESH_TOPOLOGY_PROGRESS.md +422 -422
  9. package/docs/MQTT_BRIDGE_COMMANDS.md +894 -894
  10. package/docs/MQTT_BRIDGE_IMPLEMENTATION_SUMMARY.md +324 -324
  11. package/docs/MQTT_COMMAND_SCHEMA_PROPOSAL.md +576 -576
  12. package/docs/MQTT_SCHEMA_COMPLIANCE.md +285 -285
  13. package/docs/MQTT_SCHEMA_PROPOSALS.md +446 -446
  14. package/docs/MQTT_SCHEMA_REVIEW.md +690 -690
  15. package/docs/OTA_COMMANDS_REFERENCE.md +554 -554
  16. package/docs/PHASE1_GUIDE.md +349 -349
  17. package/docs/PHASE2_GUIDE.md +543 -543
  18. package/docs/README.md +130 -78
  19. package/docs/SCHEMA_VALIDATION_CHECKLIST.md +222 -222
  20. package/docs/alteriom/overview.md +507 -507
  21. package/docs/api/core-api.md +606 -606
  22. package/docs/architecture/mesh-architecture.md +378 -378
  23. package/docs/architecture/plugin-system.md +516 -516
  24. package/docs/archive/DOCUSAURUS_DEPLOYMENT.md +166 -0
  25. package/docs/{improvements → archive}/FEATURE_PROPOSALS.md +337 -337
  26. package/docs/archive/LIBRARY_JSON_FIX.md +98 -0
  27. package/docs/archive/LIBRARY_STRUCTURE_FIX.md +215 -0
  28. package/docs/{improvements → archive}/PHASE1_IMPLEMENTATION.md +325 -325
  29. package/docs/{improvements → archive}/PHASE2_IMPLEMENTATION.md +567 -567
  30. package/docs/archive/RELEASE_SUMMARY.md +173 -0
  31. package/docs/archive/SCONS_BUILD_FIX.md +313 -0
  32. package/docs/archive/TRIGGER_RELEASE.md +280 -0
  33. package/docs/archive/VECTOR_INCLUDE_FIX.md +129 -0
  34. package/docs/{improvements → archive}/ota-and-status-enhancements.md +911 -911
  35. package/docs/{improvements → archive}/ota-status-architecture-diagrams.md +658 -658
  36. package/docs/{improvements → archive}/ota-status-quick-reference.md +284 -284
  37. package/docs/development/ARDUINO_COMPLIANCE_SUMMARY.md +71 -0
  38. package/docs/development/CODE_REFACTORING_RECOMMENDATIONS.md +1011 -0
  39. package/docs/development/DOCKER_TESTING.md +196 -0
  40. package/docs/development/PLATFORMIO_USAGE.md +180 -0
  41. package/docs/development/TESTING_SUMMARY.md +126 -0
  42. package/docs/development/contributing.md +301 -0
  43. package/docs/development/documentation.md +583 -0
  44. package/docs/getting-started/first-mesh.md +409 -409
  45. package/docs/getting-started/installation.md +274 -274
  46. package/docs/getting-started/quickstart.md +157 -157
  47. package/docs/improvements/FUTURE_PROPOSALS.md +1016 -0
  48. package/docs/improvements/IMPLEMENTATION_HISTORY.md +1091 -0
  49. package/docs/improvements/OTA_STATUS_ENHANCEMENTS.md +709 -0
  50. package/docs/improvements/README.md +212 -87
  51. package/docs/platformio-publishing.md +254 -254
  52. package/docs/platformio-setup-summary.md +120 -120
  53. package/docs/releases/FEATURE_HISTORY.md +543 -0
  54. package/docs/releases/PATCH_v1.7.2.md +262 -0
  55. package/docs/releases/PATCH_v1.7.3.md +262 -0
  56. package/docs/releases/PATCH_v1.7.4.md +219 -0
  57. package/docs/releases/PHASE1_SUMMARY.md +246 -0
  58. package/docs/releases/PHASE2_SUMMARY.md +499 -0
  59. package/docs/releases/RELEASE_CHECKLIST_v1.7.4.md +253 -0
  60. package/docs/releases/RELEASE_NOTES_1.7.0.md +539 -0
  61. package/docs/releases/RELEASE_SUMMARY_v1.7.4.md +276 -0
  62. package/docs/troubleshooting/CRASH_QUICK_REF.md +93 -0
  63. package/docs/troubleshooting/FREERTOS_ASSERTION_FAILURE.md +288 -0
  64. package/docs/troubleshooting/FREERTOS_FIX_IMPLEMENTATION.md +267 -0
  65. package/docs/troubleshooting/QUICK_FIX_FREERTOS.md +164 -0
  66. package/docs/troubleshooting/SENSOR_NODE_CONNECTION_CRASH.md +257 -0
  67. package/docs/troubleshooting/common-issues.md +520 -520
  68. package/docs/troubleshooting/debugging.md +455 -0
  69. package/docs/troubleshooting/faq.md +472 -472
  70. package/docs/tutorials/basic-examples.md +717 -717
  71. package/docs/wiki/API-Reference.md +245 -245
  72. package/docs/wiki/Complete-Documentation.md +122 -122
  73. package/examples/alteriom/.pio/build/esp32/.sconsign311.dblite +0 -0
  74. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/Esp.cpp.d +146 -0
  75. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/Esp.cpp.o +0 -0
  76. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/FirmwareMSC.cpp.d +5 -0
  77. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/FirmwareMSC.cpp.o +0 -0
  78. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/FunctionalInterrupt.cpp.d +137 -0
  79. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/FunctionalInterrupt.cpp.o +0 -0
  80. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/HWCDC.cpp.d +4 -0
  81. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/HWCDC.cpp.o +0 -0
  82. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/HardwareSerial.cpp.d +138 -0
  83. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/HardwareSerial.cpp.o +0 -0
  84. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/IPAddress.cpp.d +137 -0
  85. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/IPAddress.cpp.o +0 -0
  86. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/IPv6Address.cpp.d +138 -0
  87. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/IPv6Address.cpp.o +0 -0
  88. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/MD5Builder.cpp.d +138 -0
  89. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/MD5Builder.cpp.o +0 -0
  90. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/Print.cpp.d +136 -0
  91. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/Print.cpp.o +0 -0
  92. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/Stream.cpp.d +136 -0
  93. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/Stream.cpp.o +0 -0
  94. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/StreamString.cpp.d +137 -0
  95. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/StreamString.cpp.o +0 -0
  96. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/Tone.cpp.d +136 -0
  97. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/Tone.cpp.o +0 -0
  98. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/USB.cpp.d +4 -0
  99. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/USB.cpp.o +0 -0
  100. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/USBCDC.cpp.d +4 -0
  101. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/USBCDC.cpp.o +0 -0
  102. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/USBMSC.cpp.d +4 -0
  103. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/USBMSC.cpp.o +0 -0
  104. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/WMath.cpp.d +18 -0
  105. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/WMath.cpp.o +0 -0
  106. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/WString.cpp.d +136 -0
  107. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/WString.cpp.o +0 -0
  108. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/base64.cpp.d +139 -0
  109. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/base64.cpp.o +0 -0
  110. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/cbuf.cpp.d +3 -0
  111. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/cbuf.cpp.o +0 -0
  112. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/esp32-hal-adc.c.d +110 -0
  113. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/esp32-hal-adc.c.o +0 -0
  114. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/esp32-hal-bt.c.d +107 -0
  115. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/esp32-hal-bt.c.o +0 -0
  116. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/esp32-hal-cpu.c.d +123 -0
  117. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/esp32-hal-cpu.c.o +0 -0
  118. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/esp32-hal-dac.c.d +108 -0
  119. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/esp32-hal-dac.c.o +0 -0
  120. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/esp32-hal-gpio.c.d +122 -0
  121. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/esp32-hal-gpio.c.o +0 -0
  122. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/esp32-hal-i2c-slave.c.d +92 -0
  123. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/esp32-hal-i2c-slave.c.o +0 -0
  124. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/esp32-hal-i2c.c.d +114 -0
  125. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/esp32-hal-i2c.c.o +0 -0
  126. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/esp32-hal-ledc.c.d +108 -0
  127. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/esp32-hal-ledc.c.o +0 -0
  128. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/esp32-hal-matrix.c.d +105 -0
  129. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/esp32-hal-matrix.c.o +0 -0
  130. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/esp32-hal-misc.c.d +136 -0
  131. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/esp32-hal-misc.c.o +0 -0
  132. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/esp32-hal-psram.c.d +104 -0
  133. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/esp32-hal-psram.c.o +0 -0
  134. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/esp32-hal-rgb-led.c.d +104 -0
  135. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/esp32-hal-rgb-led.c.o +0 -0
  136. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/esp32-hal-rmt.c.d +108 -0
  137. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/esp32-hal-rmt.c.o +0 -0
  138. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/esp32-hal-sigmadelta.c.d +109 -0
  139. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/esp32-hal-sigmadelta.c.o +0 -0
  140. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/esp32-hal-spi.c.d +122 -0
  141. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/esp32-hal-spi.c.o +0 -0
  142. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/esp32-hal-time.c.d +145 -0
  143. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/esp32-hal-time.c.o +0 -0
  144. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/esp32-hal-timer.c.d +110 -0
  145. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/esp32-hal-timer.c.o +0 -0
  146. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/esp32-hal-tinyusb.c.d +3 -0
  147. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/esp32-hal-tinyusb.c.o +0 -0
  148. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/esp32-hal-touch.c.d +107 -0
  149. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/esp32-hal-touch.c.o +0 -0
  150. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/esp32-hal-uart.c.d +121 -0
  151. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/esp32-hal-uart.c.o +0 -0
  152. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/firmware_msc_fat.c.d +3 -0
  153. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/firmware_msc_fat.c.o +0 -0
  154. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/libb64/cdecode.c.d +3 -0
  155. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/libb64/cdecode.c.o +0 -0
  156. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/libb64/cencode.c.d +3 -0
  157. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/libb64/cencode.c.o +0 -0
  158. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/main.cpp.d +139 -0
  159. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/main.cpp.o +0 -0
  160. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/stdlib_noniso.c.d +12 -0
  161. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/stdlib_noniso.c.o +0 -0
  162. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/wiring_pulse.c.d +111 -0
  163. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/wiring_pulse.c.o +0 -0
  164. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/wiring_shift.c.d +111 -0
  165. package/examples/alteriom/.pio/build/esp32/FrameworkArduino/wiring_shift.c.o +0 -0
  166. package/examples/alteriom/.pio/build/esp32/bootloader.bin +0 -0
  167. package/examples/alteriom/.pio/build/esp32/firmware.bin +0 -0
  168. package/examples/alteriom/.pio/build/esp32/firmware.elf +0 -0
  169. package/examples/alteriom/.pio/build/esp32/firmware.map +102570 -0
  170. package/examples/alteriom/.pio/build/esp32/lib373/LittleFS/LittleFS.cpp.d +142 -0
  171. package/examples/alteriom/.pio/build/esp32/lib373/LittleFS/LittleFS.cpp.o +0 -0
  172. package/examples/alteriom/.pio/build/esp32/lib373/libLittleFS.a +0 -0
  173. package/examples/alteriom/.pio/build/esp32/lib399/TaskScheduler/TaskScheduler.cpp.d +2 -0
  174. package/examples/alteriom/.pio/build/esp32/lib399/TaskScheduler/TaskScheduler.cpp.o +0 -0
  175. package/examples/alteriom/.pio/build/esp32/lib399/libTaskScheduler.a +0 -0
  176. package/examples/alteriom/.pio/build/esp32/lib4f2/FS/FS.cpp.d +138 -0
  177. package/examples/alteriom/.pio/build/esp32/lib4f2/FS/FS.cpp.o +0 -0
  178. package/examples/alteriom/.pio/build/esp32/lib4f2/FS/vfs_api.cpp.d +139 -0
  179. package/examples/alteriom/.pio/build/esp32/lib4f2/FS/vfs_api.cpp.o +0 -0
  180. package/examples/alteriom/.pio/build/esp32/lib4f2/libFS.a +0 -0
  181. package/examples/alteriom/.pio/build/esp32/lib71a/WiFi/WiFi.cpp.d +203 -0
  182. package/examples/alteriom/.pio/build/esp32/lib71a/WiFi/WiFi.cpp.o +0 -0
  183. package/examples/alteriom/.pio/build/esp32/lib71a/WiFi/WiFiAP.cpp.d +204 -0
  184. package/examples/alteriom/.pio/build/esp32/lib71a/WiFi/WiFiAP.cpp.o +0 -0
  185. package/examples/alteriom/.pio/build/esp32/lib71a/WiFi/WiFiClient.cpp.d +209 -0
  186. package/examples/alteriom/.pio/build/esp32/lib71a/WiFi/WiFiClient.cpp.o +0 -0
  187. package/examples/alteriom/.pio/build/esp32/lib71a/WiFi/WiFiGeneric.cpp.d +206 -0
  188. package/examples/alteriom/.pio/build/esp32/lib71a/WiFi/WiFiGeneric.cpp.o +0 -0
  189. package/examples/alteriom/.pio/build/esp32/lib71a/WiFi/WiFiMulti.cpp.d +199 -0
  190. package/examples/alteriom/.pio/build/esp32/lib71a/WiFi/WiFiMulti.cpp.o +0 -0
  191. package/examples/alteriom/.pio/build/esp32/lib71a/WiFi/WiFiSTA.cpp.d +206 -0
  192. package/examples/alteriom/.pio/build/esp32/lib71a/WiFi/WiFiSTA.cpp.o +0 -0
  193. package/examples/alteriom/.pio/build/esp32/lib71a/WiFi/WiFiScan.cpp.d +204 -0
  194. package/examples/alteriom/.pio/build/esp32/lib71a/WiFi/WiFiScan.cpp.o +0 -0
  195. package/examples/alteriom/.pio/build/esp32/lib71a/WiFi/WiFiServer.cpp.d +172 -0
  196. package/examples/alteriom/.pio/build/esp32/lib71a/WiFi/WiFiServer.cpp.o +0 -0
  197. package/examples/alteriom/.pio/build/esp32/lib71a/WiFi/WiFiUdp.cpp.d +171 -0
  198. package/examples/alteriom/.pio/build/esp32/lib71a/WiFi/WiFiUdp.cpp.o +0 -0
  199. package/examples/alteriom/.pio/build/esp32/lib71a/libWiFi.a +0 -0
  200. package/examples/alteriom/.pio/build/esp32/lib7d0/AsyncTCP/AsyncTCP.cpp.d +189 -0
  201. package/examples/alteriom/.pio/build/esp32/lib7d0/AsyncTCP/AsyncTCP.cpp.o +0 -0
  202. package/examples/alteriom/.pio/build/esp32/lib7d0/libAsyncTCP.a +0 -0
  203. package/examples/alteriom/.pio/build/esp32/lib837/libsrc.a +0 -0
  204. package/examples/alteriom/.pio/build/esp32/lib837/src/painlessMeshSTA.cpp.d +229 -0
  205. package/examples/alteriom/.pio/build/esp32/lib837/src/painlessMeshSTA.cpp.o +0 -0
  206. package/examples/alteriom/.pio/build/esp32/lib837/src/scheduler.cpp.d +139 -0
  207. package/examples/alteriom/.pio/build/esp32/lib837/src/scheduler.cpp.o +0 -0
  208. package/examples/alteriom/.pio/build/esp32/lib837/src/wifi.cpp.d +227 -0
  209. package/examples/alteriom/.pio/build/esp32/lib837/src/wifi.cpp.o +0 -0
  210. package/examples/alteriom/.pio/build/esp32/lib97a/SPIFFS/SPIFFS.cpp.d +142 -0
  211. package/examples/alteriom/.pio/build/esp32/lib97a/SPIFFS/SPIFFS.cpp.o +0 -0
  212. package/examples/alteriom/.pio/build/esp32/lib97a/libSPIFFS.a +0 -0
  213. package/examples/alteriom/.pio/build/esp32/libFrameworkArduino.a +0 -0
  214. package/examples/alteriom/.pio/build/esp32/libf48/Update/HttpsOTAUpdate.cpp.d +120 -0
  215. package/examples/alteriom/.pio/build/esp32/libf48/Update/HttpsOTAUpdate.cpp.o +0 -0
  216. package/examples/alteriom/.pio/build/esp32/libf48/Update/Updater.cpp.d +144 -0
  217. package/examples/alteriom/.pio/build/esp32/libf48/Update/Updater.cpp.o +0 -0
  218. package/examples/alteriom/.pio/build/esp32/libf48/libUpdate.a +0 -0
  219. package/examples/alteriom/.pio/build/esp32/partitions.bin +0 -0
  220. package/examples/alteriom/.pio/build/esp32/src/alteriom.ino.cpp.d +240 -0
  221. package/examples/alteriom/.pio/build/esp32/src/alteriom.ino.cpp.o +0 -0
  222. package/examples/alteriom/.pio/build/esp32/tmprz74bdta.tmp +1 -0
  223. package/examples/alteriom/.pio/build/esp32/tmps5iu5vvf.tmp +1 -0
  224. package/examples/alteriom/.pio/build/esp32/tmptxf7cu25.tmp +1 -0
  225. package/examples/alteriom/.pio/build/esp32/tmpuwwn0jz2.tmp +1 -0
  226. package/examples/alteriom/.pio/build/esp32/tmpz4zb75rq.tmp +1 -0
  227. package/examples/alteriom/.pio/build/esp8266/.sconsign311.dblite +0 -0
  228. package/examples/alteriom/.pio/build/esp8266/FrameworkArduino/Crypto.cpp.o +0 -0
  229. package/examples/alteriom/.pio/build/esp8266/FrameworkArduino/Esp-frag.cpp.o +0 -0
  230. package/examples/alteriom/.pio/build/esp8266/FrameworkArduino/Esp-version.cpp.o +0 -0
  231. package/examples/alteriom/.pio/build/esp8266/ld/local.eagle.app.v6.common.ld +285 -0
  232. package/examples/alteriom/.pio/build/esp8266/lib720/ESP8266WiFi/CertStoreBearSSL.cpp.o +0 -0
  233. package/examples/alteriom/.pio/build/esp8266/lib720/ESP8266WiFi/ESP8266WiFi.cpp.o +0 -0
  234. package/examples/alteriom/.pio/build/esp8266/lib720/ESP8266WiFi/ESP8266WiFiAP.cpp.o +0 -0
  235. package/examples/alteriom/.pio/build/esp8266/lib720/ESP8266WiFi/ESP8266WiFiGeneric.cpp.o +0 -0
  236. package/examples/alteriom/.pio/build/esp8266/lib720/ESP8266WiFi/ESP8266WiFiGratuitous.cpp.o +0 -0
  237. package/examples/alteriom/.pio/build/esp8266/lib720/ESP8266WiFi/ESP8266WiFiSTA-WPS.cpp.o +0 -0
  238. package/examples/alteriom/.pio/build/esp8266/lib720/ESP8266WiFi/ESP8266WiFiScan.cpp.o +0 -0
  239. package/examples/alteriom/.pio/build/esp8266/lib720/ESP8266WiFi/WiFiClient.cpp.o +0 -0
  240. package/examples/alteriom/.pio/build/esp8266/lib720/ESP8266WiFi/WiFiClientSecureBearSSL.cpp.o +0 -0
  241. package/examples/alteriom/.pio/build/esp8266/lib720/ESP8266WiFi/WiFiServerSecureBearSSL.cpp.o +0 -0
  242. package/examples/alteriom/.pio/build/esp8266/lib720/ESP8266WiFi/WiFiUdp.cpp.o +0 -0
  243. package/examples/alteriom/.pio/build/esp8266/lib720/ESP8266WiFi/enable_wifi_at_boot_time.cpp.o +0 -0
  244. package/examples/alteriom/.pio/build/esp8266/lib837/src/painlessMeshSTA.cpp.o +0 -0
  245. package/examples/alteriom/.pio/build/esp8266/lib837/src/scheduler.cpp.o +0 -0
  246. package/examples/alteriom/.pio/build/esp8266/lib837/src/wifi.cpp.o +0 -0
  247. package/examples/alteriom/.pio/build/esp8266/lib875/TaskScheduler/TaskScheduler.cpp.o +0 -0
  248. package/examples/alteriom/.pio/build/esp8266/lib875/libTaskScheduler.a +0 -0
  249. package/examples/alteriom/.pio/build/esp8266/libFrameworkArduinoVariant.a +1 -0
  250. package/examples/alteriom/.pio/build/esp8266/libdb3/LittleFS/LittleFS.cpp.o +0 -0
  251. package/examples/alteriom/.pio/build/esp8266/libdb3/LittleFS/lfs_util.c.o +0 -0
  252. package/examples/alteriom/.pio/build/esp8266/libf33/ESPAsyncTCP/AsyncPrinter.cpp.o +0 -0
  253. package/examples/alteriom/.pio/build/esp8266/libf33/ESPAsyncTCP/ESPAsyncTCP.cpp.o +0 -0
  254. package/examples/alteriom/.pio/build/esp8266/libf33/ESPAsyncTCP/ESPAsyncTCPbuffer.cpp.o +0 -0
  255. package/examples/alteriom/.pio/build/esp8266/libf33/ESPAsyncTCP/SyncClient.cpp.o +0 -0
  256. package/examples/alteriom/.pio/build/esp8266/libf33/ESPAsyncTCP/tcp_axtls.c.o +0 -0
  257. package/examples/alteriom/.pio/build/esp8266/src/alteriom.ino.cpp.o +0 -0
  258. package/examples/alteriom/.pio/build/project.checksum +1 -0
  259. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/.piopm +1 -0
  260. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/ArduinoJson.h +5 -0
  261. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/LICENSE.txt +10 -0
  262. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/README.md +153 -0
  263. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/examples/JsonConfigFile/JsonConfigFile.ino +152 -0
  264. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/examples/JsonFilterExample/JsonFilterExample.ino +64 -0
  265. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/examples/JsonGeneratorExample/JsonGeneratorExample.ino +65 -0
  266. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/examples/JsonHttpClient/JsonHttpClient.ino +125 -0
  267. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/examples/JsonParserExample/JsonParserExample.ino +65 -0
  268. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/examples/JsonServer/JsonServer.ino +118 -0
  269. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/examples/JsonUdpBeacon/JsonUdpBeacon.ino +106 -0
  270. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/examples/MsgPackParser/MsgPackParser.ino +61 -0
  271. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/examples/ProgmemExample/ProgmemExample.ino +63 -0
  272. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/examples/StringExample/StringExample.ino +76 -0
  273. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/library.json +23 -0
  274. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/library.properties +11 -0
  275. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Array/ArrayData.hpp +66 -0
  276. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Array/ArrayImpl.hpp +79 -0
  277. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Array/ElementProxy.hpp +75 -0
  278. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Array/JsonArray.hpp +219 -0
  279. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Array/JsonArrayConst.hpp +133 -0
  280. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Array/JsonArrayIterator.hpp +96 -0
  281. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Array/Utilities.hpp +112 -0
  282. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Collection/CollectionData.hpp +122 -0
  283. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Collection/CollectionImpl.hpp +137 -0
  284. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Configuration.hpp +285 -0
  285. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Deserialization/DeserializationError.hpp +106 -0
  286. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Deserialization/DeserializationOptions.hpp +35 -0
  287. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Deserialization/Filter.hpp +77 -0
  288. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Deserialization/NestingLimit.hpp +32 -0
  289. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Deserialization/Reader.hpp +74 -0
  290. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Deserialization/Readers/ArduinoStreamReader.hpp +30 -0
  291. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Deserialization/Readers/ArduinoStringReader.hpp +18 -0
  292. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Deserialization/Readers/FlashReader.hpp +56 -0
  293. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Deserialization/Readers/IteratorReader.hpp +42 -0
  294. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Deserialization/Readers/RamReader.hpp +49 -0
  295. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Deserialization/Readers/StdStreamReader.hpp +29 -0
  296. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Deserialization/Readers/VariantReader.hpp +19 -0
  297. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Deserialization/deserialize.hpp +79 -0
  298. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Document/JsonDocument.hpp +426 -0
  299. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Json/EscapeSequence.hpp +40 -0
  300. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Json/JsonDeserializer.hpp +720 -0
  301. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Json/JsonSerializer.hpp +165 -0
  302. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Json/Latch.hpp +56 -0
  303. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Json/PrettyJsonSerializer.hpp +110 -0
  304. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Json/TextFormatter.hpp +177 -0
  305. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Json/Utf16.hpp +67 -0
  306. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Json/Utf8.hpp +46 -0
  307. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Memory/Alignment.hpp +60 -0
  308. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Memory/Allocator.hpp +49 -0
  309. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Memory/MemoryPool.hpp +110 -0
  310. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Memory/MemoryPoolList.hpp +214 -0
  311. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Memory/ResourceManager.hpp +131 -0
  312. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Memory/ResourceManagerImpl.hpp +52 -0
  313. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Memory/StringBuffer.hpp +79 -0
  314. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Memory/StringBuilder.hpp +88 -0
  315. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Memory/StringNode.hpp +75 -0
  316. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Memory/StringPool.hpp +102 -0
  317. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Misc/SerializedValue.hpp +71 -0
  318. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/MsgPack/MsgPackBinary.hpp +97 -0
  319. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/MsgPack/MsgPackDeserializer.hpp +487 -0
  320. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/MsgPack/MsgPackExtension.hpp +120 -0
  321. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/MsgPack/MsgPackSerializer.hpp +244 -0
  322. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/MsgPack/endianness.hpp +46 -0
  323. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/MsgPack/ieee754.hpp +18 -0
  324. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Namespace.hpp +42 -0
  325. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Numbers/FloatParts.hpp +95 -0
  326. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Numbers/FloatTraits.hpp +212 -0
  327. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Numbers/JsonFloat.hpp +18 -0
  328. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Numbers/JsonInteger.hpp +28 -0
  329. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Numbers/arithmeticCompare.hpp +116 -0
  330. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Numbers/convertNumber.hpp +145 -0
  331. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Numbers/parseNumber.hpp +238 -0
  332. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Object/JsonObject.hpp +245 -0
  333. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Object/JsonObjectConst.hpp +166 -0
  334. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Object/JsonObjectIterator.hpp +83 -0
  335. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Object/JsonPair.hpp +70 -0
  336. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Object/MemberProxy.hpp +77 -0
  337. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Object/ObjectData.hpp +70 -0
  338. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Object/ObjectImpl.hpp +92 -0
  339. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/alias_cast.hpp +30 -0
  340. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/assert.hpp +14 -0
  341. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/attributes.hpp +45 -0
  342. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/ctype.hpp +21 -0
  343. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/integer.hpp +34 -0
  344. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/limits.hpp +45 -0
  345. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/math.hpp +27 -0
  346. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/mpl/max.hpp +27 -0
  347. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/pgmspace.hpp +144 -0
  348. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/pgmspace_generic.hpp +67 -0
  349. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/preprocessor.hpp +33 -0
  350. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/conditional.hpp +25 -0
  351. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/decay.hpp +33 -0
  352. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/declval.hpp +14 -0
  353. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/enable_if.hpp +23 -0
  354. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/function_traits.hpp +27 -0
  355. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/integral_constant.hpp +22 -0
  356. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/is_array.hpp +22 -0
  357. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/is_base_of.hpp +27 -0
  358. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/is_class.hpp +23 -0
  359. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/is_const.hpp +18 -0
  360. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/is_convertible.hpp +46 -0
  361. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/is_enum.hpp +22 -0
  362. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/is_floating_point.hpp +19 -0
  363. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/is_integral.hpp +32 -0
  364. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/is_pointer.hpp +17 -0
  365. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/is_same.hpp +18 -0
  366. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/is_signed.hpp +26 -0
  367. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/is_unsigned.hpp +24 -0
  368. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/make_unsigned.hpp +44 -0
  369. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/remove_const.hpp +24 -0
  370. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/remove_cv.hpp +31 -0
  371. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/remove_reference.hpp +24 -0
  372. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/type_identity.hpp +16 -0
  373. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/void_t.hpp +20 -0
  374. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits.hpp +27 -0
  375. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/utility.hpp +33 -0
  376. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Serialization/CountingDecorator.hpp +33 -0
  377. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Serialization/Writer.hpp +47 -0
  378. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Serialization/Writers/ArduinoStringWriter.hpp +55 -0
  379. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Serialization/Writers/DummyWriter.hpp +22 -0
  380. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Serialization/Writers/PrintWriter.hpp +29 -0
  381. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Serialization/Writers/StaticStringWriter.hpp +36 -0
  382. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Serialization/Writers/StdStreamWriter.hpp +32 -0
  383. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Serialization/Writers/StdStringWriter.hpp +42 -0
  384. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Serialization/measure.hpp +20 -0
  385. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Serialization/serialize.hpp +50 -0
  386. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Strings/Adapters/FlashString.hpp +93 -0
  387. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Strings/Adapters/RamString.hpp +118 -0
  388. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Strings/Adapters/StringObject.hpp +48 -0
  389. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Strings/IsString.hpp +19 -0
  390. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Strings/JsonString.hpp +100 -0
  391. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Strings/StringAdapter.hpp +47 -0
  392. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Strings/StringAdapters.hpp +72 -0
  393. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Strings/StringTraits.hpp +73 -0
  394. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Variant/Converter.hpp +23 -0
  395. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Variant/ConverterImpl.hpp +406 -0
  396. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Variant/JsonVariant.hpp +78 -0
  397. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Variant/JsonVariantConst.hpp +197 -0
  398. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Variant/JsonVariantCopier.hpp +34 -0
  399. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Variant/JsonVariantVisitor.hpp +61 -0
  400. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Variant/VariantAttorney.hpp +35 -0
  401. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Variant/VariantCompare.hpp +211 -0
  402. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Variant/VariantContent.hpp +82 -0
  403. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Variant/VariantData.hpp +609 -0
  404. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Variant/VariantDataVisitor.hpp +24 -0
  405. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Variant/VariantImpl.hpp +146 -0
  406. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Variant/VariantOperators.hpp +188 -0
  407. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Variant/VariantRefBase.hpp +313 -0
  408. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Variant/VariantRefBaseImpl.hpp +175 -0
  409. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Variant/VariantTag.hpp +16 -0
  410. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Variant/VariantTo.hpp +34 -0
  411. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/compatibility.hpp +144 -0
  412. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/version.hpp +11 -0
  413. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson.h +17 -0
  414. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson.hpp +65 -0
  415. package/examples/alteriom/.pio/libdeps/esp32/ArduinoJson/src/CMakeLists.txt +91 -0
  416. package/examples/alteriom/.pio/libdeps/esp32/AsyncTCP/.piopm +1 -0
  417. package/examples/alteriom/.pio/libdeps/esp32/AsyncTCP/LICENSE +165 -0
  418. package/examples/alteriom/.pio/libdeps/esp32/AsyncTCP/README.md +55 -0
  419. package/examples/alteriom/.pio/libdeps/esp32/AsyncTCP/examples/AsyncSend/AsyncSend.ino +169 -0
  420. package/examples/alteriom/.pio/libdeps/esp32/AsyncTCP/examples/Client/Client.ino +87 -0
  421. package/examples/alteriom/.pio/libdeps/esp32/AsyncTCP/examples/FetchWebsite/FetchWebsite.ino +107 -0
  422. package/examples/alteriom/.pio/libdeps/esp32/AsyncTCP/library.json +31 -0
  423. package/examples/alteriom/.pio/libdeps/esp32/AsyncTCP/library.properties +11 -0
  424. package/examples/alteriom/.pio/libdeps/esp32/AsyncTCP/src/AsyncTCP.cpp +1612 -0
  425. package/examples/alteriom/.pio/libdeps/esp32/AsyncTCP/src/AsyncTCP.h +335 -0
  426. package/examples/alteriom/.pio/libdeps/esp32/AsyncTCP/src/AsyncTCPLogging.h +66 -0
  427. package/examples/alteriom/.pio/libdeps/esp32/AsyncTCP/src/AsyncTCPSimpleIntrusiveList.h +134 -0
  428. package/examples/alteriom/.pio/libdeps/esp32/AsyncTCP/src/AsyncTCPVersion.h +40 -0
  429. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/.github/FUNDING.yml +1 -0
  430. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/.github/workflows/doxygen.yml +310 -0
  431. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/.github/workflows/main.yml +309 -0
  432. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/.github/workflows/test.yml +523 -0
  433. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/.piopm +1 -0
  434. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/LICENSE.txt +27 -0
  435. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/README.md +157 -0
  436. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example00_Blink/Scheduler_example00_Blink.ino +303 -0
  437. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example00_Blink_Namespace/Scheduler_example00_Blink_Namespace.ino +302 -0
  438. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example01/Scheduler_example01.ino +84 -0
  439. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example02/Scheduler_example02.ino +78 -0
  440. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example03/Scheduler_example03.ino +80 -0
  441. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example04_StatusRequest/Scheduler_example04_StatusRequest.ino +90 -0
  442. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example05_StatusRequest/Scheduler_example05_StatusRequest.ino +181 -0
  443. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example06_IDLE/Scheduler_example06_IDLE.ino +117 -0
  444. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example07_WDT/Scheduler_example07_WDT.ino +133 -0
  445. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example08_LTS/Scheduler_example08_LTS.ino +147 -0
  446. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example09_TimeCritical/Scheduler_example09_TimeCritical.ino +57 -0
  447. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example10_Benchmark/Scheduler_example10_Benchmark.ino +106 -0
  448. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example11_Priority/Scheduler_example11_Priority.ino +105 -0
  449. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example12_Priority/Scheduler_example12_Priority.ino +136 -0
  450. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example13_Micros/Scheduler_example13_Micros.ino +71 -0
  451. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example14_Yield/Scheduler_example14_Yield.ino +339 -0
  452. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example15_STDFunction/Scheduler_example15_STDFunction.ino +53 -0
  453. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example16_Multitab/Scheduler_example16_Multitab.ino +18 -0
  454. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example16_Multitab/file1.cpp +31 -0
  455. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example16_Multitab/file2.cpp +55 -0
  456. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example16_Multitab/header.hpp +15 -0
  457. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example16_Multitab/ts.cpp +20 -0
  458. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example17_Timeout/Scheduler_example17_Timeout.ino +90 -0
  459. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example18_StatusRequest_LTS_WDT_Timeout/Scheduler_example18_StatusRequest_LTS_WDT_Timeout.ino +172 -0
  460. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example19_Dynamic_Tasks/Scheduler_example19_Dynamic_Tasks.ino +137 -0
  461. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example19_Dynamic_Tasks_SelfDestruct/Scheduler_example19_Dynamic_Tasks_SelfDestruct.ino +130 -0
  462. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example19_Dynamic_Tasks_stdQueue/Scheduler_example19_Dynamic_Tasks_stdQueue.ino +137 -0
  463. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example20_StatusRequest_LTS_WDT_Timeout_Object/Scheduler_example20_StatusRequest_LTS_WDT_Timeout_Object.ino +185 -0
  464. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example20_StatusRequest_LTS_WDT_Timeout_Object/SuperSensor.cpp +36 -0
  465. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example20_StatusRequest_LTS_WDT_Timeout_Object/SuperSensor.h +25 -0
  466. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example21_OO_Callbacks/Calculator.cpp +66 -0
  467. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example21_OO_Callbacks/Calculator.h +34 -0
  468. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example21_OO_Callbacks/Scheduler_example21_OO_Callbacks.ino +76 -0
  469. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example21_OO_Callbacks/SuperSensor.cpp +83 -0
  470. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example21_OO_Callbacks/SuperSensor.h +44 -0
  471. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example21_OO_Callbacks/Ticker.cpp +21 -0
  472. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example21_OO_Callbacks/Ticker.h +28 -0
  473. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example23_IDLE_Callback/Scheduler_example23_IDLE_Callback.ino +157 -0
  474. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example24_CPU_LOAD/Scheduler_example24_CPU_LOAD.ino +87 -0
  475. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example25_SCHEDULER_CHAIN/Scheduler_example25_SCHEDULER_CHAIN.ino +127 -0
  476. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example26_SCHEDULING_OPTIONS/Scheduler_example26_SCHEDULING_OPTIONS.ino +181 -0
  477. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example27_PlatformIO/include/README +39 -0
  478. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example27_PlatformIO/include/led.h +12 -0
  479. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example27_PlatformIO/include/main.h +25 -0
  480. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example27_PlatformIO/lib/README +46 -0
  481. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example27_PlatformIO/platformio.ini +37 -0
  482. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example27_PlatformIO/src/led.cpp +11 -0
  483. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example27_PlatformIO/src/main.cpp +254 -0
  484. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example27_PlatformIO/test/README +11 -0
  485. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example28_Tickless/Scheduler_example28_Tickless.ino +105 -0
  486. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example29_NonArduino/include/README +39 -0
  487. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example29_NonArduino/include/led.h +12 -0
  488. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example29_NonArduino/include/main.h +27 -0
  489. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example29_NonArduino/lib/README +46 -0
  490. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example29_NonArduino/platformio.ini +38 -0
  491. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example29_NonArduino/src/led.cpp +13 -0
  492. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example29_NonArduino/src/main.cpp +267 -0
  493. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example29_NonArduino/test/README +11 -0
  494. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example30_THREAD_SAFE/README.md +232 -0
  495. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example30_THREAD_SAFE/platformio.ini +44 -0
  496. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example30_THREAD_SAFE/src/main.cpp +310 -0
  497. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_template/Scheduler_template.ino +166 -0
  498. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/keywords.txt +161 -0
  499. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/library.json +22 -0
  500. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/library.properties +9 -0
  501. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/src/TScheduler.hpp +29 -0
  502. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/src/TSchedulerDeclarations.hpp +29 -0
  503. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/src/TaskScheduler.cpp +3 -0
  504. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/src/TaskScheduler.h +1811 -0
  505. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/src/TaskSchedulerDeclarations.h +3096 -0
  506. package/examples/alteriom/.pio/libdeps/esp32/TaskScheduler/src/TaskSchedulerSleepMethods.h +399 -0
  507. package/examples/alteriom/.pio/libdeps/esp32/integrity.dat +3 -0
  508. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/.piopm +1 -0
  509. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/ArduinoJson.h +5 -0
  510. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/LICENSE.txt +10 -0
  511. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/README.md +153 -0
  512. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/examples/JsonConfigFile/JsonConfigFile.ino +152 -0
  513. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/examples/JsonFilterExample/JsonFilterExample.ino +64 -0
  514. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/examples/JsonGeneratorExample/JsonGeneratorExample.ino +65 -0
  515. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/examples/JsonHttpClient/JsonHttpClient.ino +125 -0
  516. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/examples/JsonParserExample/JsonParserExample.ino +65 -0
  517. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/examples/JsonServer/JsonServer.ino +118 -0
  518. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/examples/JsonUdpBeacon/JsonUdpBeacon.ino +106 -0
  519. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/examples/MsgPackParser/MsgPackParser.ino +61 -0
  520. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/examples/ProgmemExample/ProgmemExample.ino +63 -0
  521. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/examples/StringExample/StringExample.ino +76 -0
  522. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/library.json +23 -0
  523. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/library.properties +11 -0
  524. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Array/ArrayData.hpp +66 -0
  525. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Array/ArrayImpl.hpp +79 -0
  526. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Array/ElementProxy.hpp +75 -0
  527. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Array/JsonArray.hpp +219 -0
  528. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Array/JsonArrayConst.hpp +133 -0
  529. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Array/JsonArrayIterator.hpp +96 -0
  530. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Array/Utilities.hpp +112 -0
  531. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Collection/CollectionData.hpp +122 -0
  532. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Collection/CollectionImpl.hpp +137 -0
  533. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Configuration.hpp +285 -0
  534. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Deserialization/DeserializationError.hpp +106 -0
  535. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Deserialization/DeserializationOptions.hpp +35 -0
  536. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Deserialization/Filter.hpp +77 -0
  537. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Deserialization/NestingLimit.hpp +32 -0
  538. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Deserialization/Reader.hpp +74 -0
  539. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Deserialization/Readers/ArduinoStreamReader.hpp +30 -0
  540. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Deserialization/Readers/ArduinoStringReader.hpp +18 -0
  541. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Deserialization/Readers/FlashReader.hpp +56 -0
  542. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Deserialization/Readers/IteratorReader.hpp +42 -0
  543. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Deserialization/Readers/RamReader.hpp +49 -0
  544. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Deserialization/Readers/StdStreamReader.hpp +29 -0
  545. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Deserialization/Readers/VariantReader.hpp +19 -0
  546. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Deserialization/deserialize.hpp +79 -0
  547. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Document/JsonDocument.hpp +426 -0
  548. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Json/EscapeSequence.hpp +40 -0
  549. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Json/JsonDeserializer.hpp +720 -0
  550. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Json/JsonSerializer.hpp +165 -0
  551. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Json/Latch.hpp +56 -0
  552. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Json/PrettyJsonSerializer.hpp +110 -0
  553. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Json/TextFormatter.hpp +177 -0
  554. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Json/Utf16.hpp +67 -0
  555. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Json/Utf8.hpp +46 -0
  556. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Memory/Alignment.hpp +60 -0
  557. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Memory/Allocator.hpp +49 -0
  558. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Memory/MemoryPool.hpp +110 -0
  559. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Memory/MemoryPoolList.hpp +214 -0
  560. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Memory/ResourceManager.hpp +131 -0
  561. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Memory/ResourceManagerImpl.hpp +52 -0
  562. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Memory/StringBuffer.hpp +79 -0
  563. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Memory/StringBuilder.hpp +88 -0
  564. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Memory/StringNode.hpp +75 -0
  565. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Memory/StringPool.hpp +102 -0
  566. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Misc/SerializedValue.hpp +71 -0
  567. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/MsgPack/MsgPackBinary.hpp +97 -0
  568. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/MsgPack/MsgPackDeserializer.hpp +487 -0
  569. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/MsgPack/MsgPackExtension.hpp +120 -0
  570. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/MsgPack/MsgPackSerializer.hpp +244 -0
  571. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/MsgPack/endianness.hpp +46 -0
  572. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/MsgPack/ieee754.hpp +18 -0
  573. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Namespace.hpp +42 -0
  574. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Numbers/FloatParts.hpp +95 -0
  575. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Numbers/FloatTraits.hpp +212 -0
  576. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Numbers/JsonFloat.hpp +18 -0
  577. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Numbers/JsonInteger.hpp +28 -0
  578. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Numbers/arithmeticCompare.hpp +116 -0
  579. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Numbers/convertNumber.hpp +145 -0
  580. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Numbers/parseNumber.hpp +238 -0
  581. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Object/JsonObject.hpp +245 -0
  582. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Object/JsonObjectConst.hpp +166 -0
  583. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Object/JsonObjectIterator.hpp +83 -0
  584. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Object/JsonPair.hpp +70 -0
  585. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Object/MemberProxy.hpp +77 -0
  586. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Object/ObjectData.hpp +70 -0
  587. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Object/ObjectImpl.hpp +92 -0
  588. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/alias_cast.hpp +30 -0
  589. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/assert.hpp +14 -0
  590. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/attributes.hpp +45 -0
  591. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/ctype.hpp +21 -0
  592. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/integer.hpp +34 -0
  593. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/limits.hpp +45 -0
  594. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/math.hpp +27 -0
  595. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/mpl/max.hpp +27 -0
  596. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/pgmspace.hpp +144 -0
  597. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/pgmspace_generic.hpp +67 -0
  598. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/preprocessor.hpp +33 -0
  599. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/conditional.hpp +25 -0
  600. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/decay.hpp +33 -0
  601. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/declval.hpp +14 -0
  602. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/enable_if.hpp +23 -0
  603. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/function_traits.hpp +27 -0
  604. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/integral_constant.hpp +22 -0
  605. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/is_array.hpp +22 -0
  606. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/is_base_of.hpp +27 -0
  607. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/is_class.hpp +23 -0
  608. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/is_const.hpp +18 -0
  609. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/is_convertible.hpp +46 -0
  610. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/is_enum.hpp +22 -0
  611. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/is_floating_point.hpp +19 -0
  612. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/is_integral.hpp +32 -0
  613. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/is_pointer.hpp +17 -0
  614. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/is_same.hpp +18 -0
  615. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/is_signed.hpp +26 -0
  616. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/is_unsigned.hpp +24 -0
  617. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/make_unsigned.hpp +44 -0
  618. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/remove_const.hpp +24 -0
  619. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/remove_cv.hpp +31 -0
  620. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/remove_reference.hpp +24 -0
  621. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/type_identity.hpp +16 -0
  622. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/void_t.hpp +20 -0
  623. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/type_traits.hpp +27 -0
  624. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/utility.hpp +33 -0
  625. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Serialization/CountingDecorator.hpp +33 -0
  626. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Serialization/Writer.hpp +47 -0
  627. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Serialization/Writers/ArduinoStringWriter.hpp +55 -0
  628. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Serialization/Writers/DummyWriter.hpp +22 -0
  629. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Serialization/Writers/PrintWriter.hpp +29 -0
  630. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Serialization/Writers/StaticStringWriter.hpp +36 -0
  631. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Serialization/Writers/StdStreamWriter.hpp +32 -0
  632. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Serialization/Writers/StdStringWriter.hpp +42 -0
  633. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Serialization/measure.hpp +20 -0
  634. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Serialization/serialize.hpp +50 -0
  635. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Strings/Adapters/FlashString.hpp +93 -0
  636. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Strings/Adapters/RamString.hpp +118 -0
  637. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Strings/Adapters/StringObject.hpp +48 -0
  638. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Strings/IsString.hpp +19 -0
  639. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Strings/JsonString.hpp +100 -0
  640. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Strings/StringAdapter.hpp +47 -0
  641. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Strings/StringAdapters.hpp +72 -0
  642. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Strings/StringTraits.hpp +73 -0
  643. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Variant/Converter.hpp +23 -0
  644. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Variant/ConverterImpl.hpp +406 -0
  645. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Variant/JsonVariant.hpp +78 -0
  646. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Variant/JsonVariantConst.hpp +197 -0
  647. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Variant/JsonVariantCopier.hpp +34 -0
  648. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Variant/JsonVariantVisitor.hpp +61 -0
  649. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Variant/VariantAttorney.hpp +35 -0
  650. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Variant/VariantCompare.hpp +211 -0
  651. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Variant/VariantContent.hpp +82 -0
  652. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Variant/VariantData.hpp +609 -0
  653. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Variant/VariantDataVisitor.hpp +24 -0
  654. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Variant/VariantImpl.hpp +146 -0
  655. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Variant/VariantOperators.hpp +188 -0
  656. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Variant/VariantRefBase.hpp +313 -0
  657. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Variant/VariantRefBaseImpl.hpp +175 -0
  658. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Variant/VariantTag.hpp +16 -0
  659. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Variant/VariantTo.hpp +34 -0
  660. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/compatibility.hpp +144 -0
  661. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/version.hpp +11 -0
  662. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson.h +17 -0
  663. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson.hpp +65 -0
  664. package/examples/alteriom/.pio/libdeps/esp8266/ArduinoJson/src/CMakeLists.txt +91 -0
  665. package/examples/alteriom/.pio/libdeps/esp8266/ESPAsyncTCP/.github/scripts/install-arduino-core-esp8266.sh +29 -0
  666. package/examples/alteriom/.pio/libdeps/esp8266/ESPAsyncTCP/.github/scripts/install-arduino-ide.sh +220 -0
  667. package/examples/alteriom/.pio/libdeps/esp8266/ESPAsyncTCP/.github/scripts/install-platformio.sh +133 -0
  668. package/examples/alteriom/.pio/libdeps/esp8266/ESPAsyncTCP/.github/scripts/on-push.sh +64 -0
  669. package/examples/alteriom/.pio/libdeps/esp8266/ESPAsyncTCP/.github/stale.yml +31 -0
  670. package/examples/alteriom/.pio/libdeps/esp8266/ESPAsyncTCP/.github/workflows/push.yml +30 -0
  671. package/examples/alteriom/.pio/libdeps/esp8266/ESPAsyncTCP/.piopm +1 -0
  672. package/examples/alteriom/.pio/libdeps/esp8266/ESPAsyncTCP/LICENSE.txt +165 -0
  673. package/examples/alteriom/.pio/libdeps/esp8266/ESPAsyncTCP/README.md +43 -0
  674. package/examples/alteriom/.pio/libdeps/esp8266/ESPAsyncTCP/examples/ClientServer/Client/Client.ino +62 -0
  675. package/examples/alteriom/.pio/libdeps/esp8266/ESPAsyncTCP/examples/ClientServer/Client/config.h +23 -0
  676. package/examples/alteriom/.pio/libdeps/esp8266/ESPAsyncTCP/examples/ClientServer/Server/Server.ino +73 -0
  677. package/examples/alteriom/.pio/libdeps/esp8266/ESPAsyncTCP/examples/ClientServer/Server/config.h +23 -0
  678. package/examples/alteriom/.pio/libdeps/esp8266/ESPAsyncTCP/examples/SyncClient/.esp31b.skip +0 -0
  679. package/examples/alteriom/.pio/libdeps/esp8266/ESPAsyncTCP/examples/SyncClient/SyncClient.ino +54 -0
  680. package/examples/alteriom/.pio/libdeps/esp8266/ESPAsyncTCP/library.json +19 -0
  681. package/examples/alteriom/.pio/libdeps/esp8266/ESPAsyncTCP/library.properties +10 -0
  682. package/examples/alteriom/.pio/libdeps/esp8266/ESPAsyncTCP/src/AsyncPrinter.cpp +214 -0
  683. package/examples/alteriom/.pio/libdeps/esp8266/ESPAsyncTCP/src/AsyncPrinter.h +73 -0
  684. package/examples/alteriom/.pio/libdeps/esp8266/ESPAsyncTCP/src/DebugPrintMacros.h +112 -0
  685. package/examples/alteriom/.pio/libdeps/esp8266/ESPAsyncTCP/src/ESPAsyncTCP.cpp +1406 -0
  686. package/examples/alteriom/.pio/libdeps/esp8266/ESPAsyncTCP/src/ESPAsyncTCP.h +324 -0
  687. package/examples/alteriom/.pio/libdeps/esp8266/ESPAsyncTCP/src/ESPAsyncTCPbuffer.cpp +555 -0
  688. package/examples/alteriom/.pio/libdeps/esp8266/ESPAsyncTCP/src/ESPAsyncTCPbuffer.h +118 -0
  689. package/examples/alteriom/.pio/libdeps/esp8266/ESPAsyncTCP/src/SyncClient.cpp +414 -0
  690. package/examples/alteriom/.pio/libdeps/esp8266/ESPAsyncTCP/src/SyncClient.h +109 -0
  691. package/examples/alteriom/.pio/libdeps/esp8266/ESPAsyncTCP/src/async_config.h +42 -0
  692. package/examples/alteriom/.pio/libdeps/esp8266/ESPAsyncTCP/src/tcp_axtls.c +613 -0
  693. package/examples/alteriom/.pio/libdeps/esp8266/ESPAsyncTCP/src/tcp_axtls.h +98 -0
  694. package/examples/alteriom/.pio/libdeps/esp8266/ESPAsyncTCP/ssl/gen_server_cert.sh +36 -0
  695. package/examples/alteriom/.pio/libdeps/esp8266/ESPAsyncTCP/ssl/server.cer +0 -0
  696. package/examples/alteriom/.pio/libdeps/esp8266/ESPAsyncTCP/ssl/server.key +0 -0
  697. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/.github/FUNDING.yml +1 -0
  698. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/.github/workflows/doxygen.yml +310 -0
  699. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/.github/workflows/main.yml +309 -0
  700. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/.github/workflows/test.yml +523 -0
  701. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/.piopm +1 -0
  702. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/LICENSE.txt +27 -0
  703. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/README.md +157 -0
  704. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example00_Blink/Scheduler_example00_Blink.ino +303 -0
  705. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example00_Blink_Namespace/Scheduler_example00_Blink_Namespace.ino +302 -0
  706. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example01/Scheduler_example01.ino +84 -0
  707. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example02/Scheduler_example02.ino +78 -0
  708. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example03/Scheduler_example03.ino +80 -0
  709. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example04_StatusRequest/Scheduler_example04_StatusRequest.ino +90 -0
  710. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example05_StatusRequest/Scheduler_example05_StatusRequest.ino +181 -0
  711. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example06_IDLE/Scheduler_example06_IDLE.ino +117 -0
  712. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example07_WDT/Scheduler_example07_WDT.ino +133 -0
  713. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example08_LTS/Scheduler_example08_LTS.ino +147 -0
  714. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example09_TimeCritical/Scheduler_example09_TimeCritical.ino +57 -0
  715. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example10_Benchmark/Scheduler_example10_Benchmark.ino +106 -0
  716. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example11_Priority/Scheduler_example11_Priority.ino +105 -0
  717. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example12_Priority/Scheduler_example12_Priority.ino +136 -0
  718. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example13_Micros/Scheduler_example13_Micros.ino +71 -0
  719. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example14_Yield/Scheduler_example14_Yield.ino +339 -0
  720. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example15_STDFunction/Scheduler_example15_STDFunction.ino +53 -0
  721. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example16_Multitab/Scheduler_example16_Multitab.ino +18 -0
  722. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example16_Multitab/file1.cpp +31 -0
  723. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example16_Multitab/file2.cpp +55 -0
  724. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example16_Multitab/header.hpp +15 -0
  725. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example16_Multitab/ts.cpp +20 -0
  726. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example17_Timeout/Scheduler_example17_Timeout.ino +90 -0
  727. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example18_StatusRequest_LTS_WDT_Timeout/Scheduler_example18_StatusRequest_LTS_WDT_Timeout.ino +172 -0
  728. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example19_Dynamic_Tasks/Scheduler_example19_Dynamic_Tasks.ino +137 -0
  729. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example19_Dynamic_Tasks_SelfDestruct/Scheduler_example19_Dynamic_Tasks_SelfDestruct.ino +130 -0
  730. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example19_Dynamic_Tasks_stdQueue/Scheduler_example19_Dynamic_Tasks_stdQueue.ino +137 -0
  731. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example20_StatusRequest_LTS_WDT_Timeout_Object/Scheduler_example20_StatusRequest_LTS_WDT_Timeout_Object.ino +185 -0
  732. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example20_StatusRequest_LTS_WDT_Timeout_Object/SuperSensor.cpp +36 -0
  733. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example20_StatusRequest_LTS_WDT_Timeout_Object/SuperSensor.h +25 -0
  734. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example21_OO_Callbacks/Calculator.cpp +66 -0
  735. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example21_OO_Callbacks/Calculator.h +34 -0
  736. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example21_OO_Callbacks/Scheduler_example21_OO_Callbacks.ino +76 -0
  737. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example21_OO_Callbacks/SuperSensor.cpp +83 -0
  738. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example21_OO_Callbacks/SuperSensor.h +44 -0
  739. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example21_OO_Callbacks/Ticker.cpp +21 -0
  740. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example21_OO_Callbacks/Ticker.h +28 -0
  741. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example23_IDLE_Callback/Scheduler_example23_IDLE_Callback.ino +157 -0
  742. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example24_CPU_LOAD/Scheduler_example24_CPU_LOAD.ino +87 -0
  743. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example25_SCHEDULER_CHAIN/Scheduler_example25_SCHEDULER_CHAIN.ino +127 -0
  744. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example26_SCHEDULING_OPTIONS/Scheduler_example26_SCHEDULING_OPTIONS.ino +181 -0
  745. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example27_PlatformIO/include/README +39 -0
  746. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example27_PlatformIO/include/led.h +12 -0
  747. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example27_PlatformIO/include/main.h +25 -0
  748. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example27_PlatformIO/lib/README +46 -0
  749. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example27_PlatformIO/platformio.ini +37 -0
  750. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example27_PlatformIO/src/led.cpp +11 -0
  751. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example27_PlatformIO/src/main.cpp +254 -0
  752. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example27_PlatformIO/test/README +11 -0
  753. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example28_Tickless/Scheduler_example28_Tickless.ino +105 -0
  754. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example29_NonArduino/include/README +39 -0
  755. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example29_NonArduino/include/led.h +12 -0
  756. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example29_NonArduino/include/main.h +27 -0
  757. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example29_NonArduino/lib/README +46 -0
  758. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example29_NonArduino/platformio.ini +38 -0
  759. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example29_NonArduino/src/led.cpp +13 -0
  760. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example29_NonArduino/src/main.cpp +267 -0
  761. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example29_NonArduino/test/README +11 -0
  762. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example30_THREAD_SAFE/README.md +232 -0
  763. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example30_THREAD_SAFE/platformio.ini +44 -0
  764. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example30_THREAD_SAFE/src/main.cpp +310 -0
  765. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_template/Scheduler_template.ino +166 -0
  766. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/keywords.txt +161 -0
  767. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/library.json +22 -0
  768. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/library.properties +9 -0
  769. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/src/TScheduler.hpp +29 -0
  770. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/src/TSchedulerDeclarations.hpp +29 -0
  771. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/src/TaskScheduler.cpp +3 -0
  772. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/src/TaskScheduler.h +1811 -0
  773. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/src/TaskSchedulerDeclarations.h +3096 -0
  774. package/examples/alteriom/.pio/libdeps/esp8266/TaskScheduler/src/TaskSchedulerSleepMethods.h +399 -0
  775. package/examples/alteriom/.pio/libdeps/esp8266/integrity.dat +3 -0
  776. package/examples/alteriom/README.md +139 -139
  777. package/examples/alteriom/alteriom.ino +186 -186
  778. package/examples/alteriom/alteriom_sensor_package.hpp +240 -240
  779. package/examples/alteriom/platformio.ini +24 -24
  780. package/examples/alteriomImproved/alteriom_sensor_package.hpp +223 -223
  781. package/examples/alteriomImproved/improved_sensor_node.ino +245 -245
  782. package/examples/alteriomImproved/platformio.ini +24 -24
  783. package/examples/alteriomPhase1/alteriom_sensor_package.hpp +223 -223
  784. package/examples/alteriomPhase1/phase1_features.ino +242 -242
  785. package/examples/alteriomPhase1/platformio.ini +24 -24
  786. package/examples/alteriomPhase2/alteriom_sensor_package.hpp +223 -223
  787. package/examples/alteriomPhase2/phase2_features.ino +186 -186
  788. package/examples/alteriomPhase2/platformio.ini +24 -24
  789. package/examples/alteriomSensorNode/alteriom_sensor_node.ino +183 -183
  790. package/examples/alteriomSensorNode/alteriom_sensor_package.hpp +223 -223
  791. package/examples/alteriomSensorNode/platformio.ini +24 -24
  792. package/examples/basic/.pio/build/esp32/.sconsign311.dblite +0 -0
  793. package/examples/basic/.pio/build/esp32/bootloader.bin +0 -0
  794. package/examples/basic/.pio/build/esp32/lib241/TaskScheduler/TaskScheduler.cpp.d +2 -0
  795. package/examples/basic/.pio/build/esp32/lib241/TaskScheduler/TaskScheduler.cpp.o +0 -0
  796. package/examples/basic/.pio/build/esp32/lib241/libTaskScheduler.a +0 -0
  797. package/examples/basic/.pio/build/esp32/lib4f2/FS/FS.cpp.d +138 -0
  798. package/examples/basic/.pio/build/esp32/lib4f2/FS/FS.cpp.o +0 -0
  799. package/examples/basic/.pio/build/esp32/lib4f2/FS/vfs_api.cpp.d +139 -0
  800. package/examples/basic/.pio/build/esp32/lib4f2/FS/vfs_api.cpp.o +0 -0
  801. package/examples/basic/.pio/build/esp32/lib71a/WiFi/WiFi.cpp.d +203 -0
  802. package/examples/basic/.pio/build/esp32/lib71a/WiFi/WiFi.cpp.o +0 -0
  803. package/examples/basic/.pio/build/esp32/lib71a/WiFi/WiFiAP.cpp.d +204 -0
  804. package/examples/basic/.pio/build/esp32/lib71a/WiFi/WiFiAP.cpp.o +0 -0
  805. package/examples/basic/.pio/build/esp32/lib71a/WiFi/WiFiClient.cpp.d +209 -0
  806. package/examples/basic/.pio/build/esp32/lib71a/WiFi/WiFiClient.cpp.o +0 -0
  807. package/examples/basic/.pio/build/esp32/lib71a/WiFi/WiFiGeneric.cpp.d +206 -0
  808. package/examples/basic/.pio/build/esp32/lib71a/WiFi/WiFiGeneric.cpp.o +0 -0
  809. package/examples/basic/.pio/build/esp32/lib71a/WiFi/WiFiMulti.cpp.d +199 -0
  810. package/examples/basic/.pio/build/esp32/lib71a/WiFi/WiFiMulti.cpp.o +0 -0
  811. package/examples/basic/.pio/build/esp32/lib71a/WiFi/WiFiSTA.cpp.d +206 -0
  812. package/examples/basic/.pio/build/esp32/lib71a/WiFi/WiFiSTA.cpp.o +0 -0
  813. package/examples/basic/.pio/build/esp32/lib71a/WiFi/WiFiScan.cpp.d +204 -0
  814. package/examples/basic/.pio/build/esp32/lib71a/WiFi/WiFiScan.cpp.o +0 -0
  815. package/examples/basic/.pio/build/esp32/lib71a/WiFi/WiFiServer.cpp.d +172 -0
  816. package/examples/basic/.pio/build/esp32/lib71a/WiFi/WiFiServer.cpp.o +0 -0
  817. package/examples/basic/.pio/build/esp32/lib71a/WiFi/WiFiUdp.cpp.d +171 -0
  818. package/examples/basic/.pio/build/esp32/lib71a/WiFi/WiFiUdp.cpp.o +0 -0
  819. package/examples/basic/.pio/build/esp32/lib8c7/AsyncTCP/AsyncTCP.cpp.d +189 -0
  820. package/examples/basic/.pio/build/esp32/lib8c7/AsyncTCP/AsyncTCP.cpp.o +0 -0
  821. package/examples/basic/.pio/build/esp32/partitions.bin +0 -0
  822. package/examples/basic/.pio/build/esp32/src/basic.ino.cpp.d +238 -0
  823. package/examples/basic/.pio/build/esp32/src/basic.ino.cpp.o +0 -0
  824. package/examples/basic/.pio/build/esp8266/.sconsign311.dblite +0 -0
  825. package/examples/basic/.pio/build/esp8266/FrameworkArduino/Esp-frag.cpp.o +0 -0
  826. package/examples/basic/.pio/build/esp8266/FrameworkArduino/Esp-version.cpp.o +0 -0
  827. package/examples/basic/.pio/build/esp8266/FrameworkArduino/Esp.cpp.o +0 -0
  828. package/examples/basic/.pio/build/esp8266/FrameworkArduino/FS.cpp.o +0 -0
  829. package/examples/basic/.pio/build/esp8266/FrameworkArduino/FSnoop.cpp.o +0 -0
  830. package/examples/basic/.pio/build/esp8266/FrameworkArduino/FunctionalInterrupt.cpp.o +0 -0
  831. package/examples/basic/.pio/build/esp8266/ld/local.eagle.app.v6.common.ld +285 -0
  832. package/examples/basic/.pio/build/esp8266/lib5e7/TaskScheduler/TaskScheduler.cpp.o +0 -0
  833. package/examples/basic/.pio/build/esp8266/lib5e7/libTaskScheduler.a +0 -0
  834. package/examples/basic/.pio/build/esp8266/lib720/ESP8266WiFi/BearSSLHelpers.cpp.o +0 -0
  835. package/examples/basic/.pio/build/esp8266/lib720/ESP8266WiFi/CertStoreBearSSL.cpp.o +0 -0
  836. package/examples/basic/.pio/build/esp8266/lib720/ESP8266WiFi/ESP8266WiFi.cpp.o +0 -0
  837. package/examples/basic/.pio/build/esp8266/lib720/ESP8266WiFi/ESP8266WiFiAP.cpp.o +0 -0
  838. package/examples/basic/.pio/build/esp8266/lib720/ESP8266WiFi/ESP8266WiFiGeneric.cpp.o +0 -0
  839. package/examples/basic/.pio/build/esp8266/lib720/ESP8266WiFi/ESP8266WiFiGratuitous.cpp.o +0 -0
  840. package/examples/basic/.pio/build/esp8266/lib720/ESP8266WiFi/ESP8266WiFiMulti.cpp.o +0 -0
  841. package/examples/basic/.pio/build/esp8266/lib720/ESP8266WiFi/ESP8266WiFiSTA-WPS.cpp.o +0 -0
  842. package/examples/basic/.pio/build/esp8266/lib720/ESP8266WiFi/ESP8266WiFiSTA.cpp.o +0 -0
  843. package/examples/basic/.pio/build/esp8266/lib720/ESP8266WiFi/ESP8266WiFiScan.cpp.o +0 -0
  844. package/examples/basic/.pio/build/esp8266/lib720/ESP8266WiFi/WiFiClient.cpp.o +0 -0
  845. package/examples/basic/.pio/build/esp8266/lib720/ESP8266WiFi/WiFiClientSecureBearSSL.cpp.o +0 -0
  846. package/examples/basic/.pio/build/esp8266/lib720/ESP8266WiFi/WiFiServerSecureBearSSL.cpp.o +0 -0
  847. package/examples/basic/.pio/build/esp8266/lib720/ESP8266WiFi/WiFiUdp.cpp.o +0 -0
  848. package/examples/basic/.pio/build/esp8266/lib837/src/scheduler.cpp.o +0 -0
  849. package/examples/basic/.pio/build/esp8266/libFrameworkArduinoVariant.a +1 -0
  850. package/examples/basic/.pio/build/esp8266/libdb3/LittleFS/LittleFS.cpp.o +0 -0
  851. package/examples/basic/.pio/build/esp8266/libdb3/LittleFS/lfs_util.c.o +0 -0
  852. package/examples/basic/.pio/build/esp8266/libf28/ESPAsyncTCP/AsyncPrinter.cpp.o +0 -0
  853. package/examples/basic/.pio/build/esp8266/libf28/ESPAsyncTCP/ESPAsyncTCP.cpp.o +0 -0
  854. package/examples/basic/.pio/build/esp8266/libf28/ESPAsyncTCP/ESPAsyncTCPbuffer.cpp.o +0 -0
  855. package/examples/basic/.pio/build/esp8266/libf28/ESPAsyncTCP/SyncClient.cpp.o +0 -0
  856. package/examples/basic/.pio/build/esp8266/libf28/ESPAsyncTCP/tcp_axtls.c.o +0 -0
  857. package/examples/basic/.pio/build/esp8266/src/basic.ino.cpp.o +0 -0
  858. package/examples/basic/.pio/build/project.checksum +1 -0
  859. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/.piopm +1 -0
  860. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/ArduinoJson.h +5 -0
  861. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/LICENSE.txt +10 -0
  862. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/README.md +153 -0
  863. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/examples/JsonConfigFile/JsonConfigFile.ino +152 -0
  864. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/examples/JsonFilterExample/JsonFilterExample.ino +64 -0
  865. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/examples/JsonGeneratorExample/JsonGeneratorExample.ino +65 -0
  866. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/examples/JsonHttpClient/JsonHttpClient.ino +125 -0
  867. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/examples/JsonParserExample/JsonParserExample.ino +65 -0
  868. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/examples/JsonServer/JsonServer.ino +118 -0
  869. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/examples/JsonUdpBeacon/JsonUdpBeacon.ino +106 -0
  870. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/examples/MsgPackParser/MsgPackParser.ino +61 -0
  871. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/examples/ProgmemExample/ProgmemExample.ino +63 -0
  872. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/examples/StringExample/StringExample.ino +76 -0
  873. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/library.json +23 -0
  874. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/library.properties +11 -0
  875. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Array/ArrayData.hpp +66 -0
  876. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Array/ArrayImpl.hpp +79 -0
  877. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Array/ElementProxy.hpp +75 -0
  878. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Array/JsonArray.hpp +219 -0
  879. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Array/JsonArrayConst.hpp +133 -0
  880. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Array/JsonArrayIterator.hpp +96 -0
  881. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Array/Utilities.hpp +112 -0
  882. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Collection/CollectionData.hpp +122 -0
  883. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Collection/CollectionImpl.hpp +137 -0
  884. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Configuration.hpp +285 -0
  885. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Deserialization/DeserializationError.hpp +106 -0
  886. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Deserialization/DeserializationOptions.hpp +35 -0
  887. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Deserialization/Filter.hpp +77 -0
  888. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Deserialization/NestingLimit.hpp +32 -0
  889. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Deserialization/Reader.hpp +74 -0
  890. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Deserialization/Readers/ArduinoStreamReader.hpp +30 -0
  891. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Deserialization/Readers/ArduinoStringReader.hpp +18 -0
  892. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Deserialization/Readers/FlashReader.hpp +56 -0
  893. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Deserialization/Readers/IteratorReader.hpp +42 -0
  894. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Deserialization/Readers/RamReader.hpp +49 -0
  895. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Deserialization/Readers/StdStreamReader.hpp +29 -0
  896. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Deserialization/Readers/VariantReader.hpp +19 -0
  897. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Deserialization/deserialize.hpp +79 -0
  898. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Document/JsonDocument.hpp +426 -0
  899. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Json/EscapeSequence.hpp +40 -0
  900. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Json/JsonDeserializer.hpp +720 -0
  901. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Json/JsonSerializer.hpp +165 -0
  902. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Json/Latch.hpp +56 -0
  903. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Json/PrettyJsonSerializer.hpp +110 -0
  904. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Json/TextFormatter.hpp +177 -0
  905. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Json/Utf16.hpp +67 -0
  906. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Json/Utf8.hpp +46 -0
  907. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Memory/Alignment.hpp +60 -0
  908. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Memory/Allocator.hpp +49 -0
  909. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Memory/MemoryPool.hpp +110 -0
  910. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Memory/MemoryPoolList.hpp +214 -0
  911. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Memory/ResourceManager.hpp +131 -0
  912. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Memory/ResourceManagerImpl.hpp +52 -0
  913. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Memory/StringBuffer.hpp +79 -0
  914. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Memory/StringBuilder.hpp +88 -0
  915. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Memory/StringNode.hpp +75 -0
  916. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Memory/StringPool.hpp +102 -0
  917. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Misc/SerializedValue.hpp +71 -0
  918. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/MsgPack/MsgPackBinary.hpp +97 -0
  919. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/MsgPack/MsgPackDeserializer.hpp +487 -0
  920. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/MsgPack/MsgPackExtension.hpp +120 -0
  921. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/MsgPack/MsgPackSerializer.hpp +244 -0
  922. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/MsgPack/endianness.hpp +46 -0
  923. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/MsgPack/ieee754.hpp +18 -0
  924. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Namespace.hpp +42 -0
  925. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Numbers/FloatParts.hpp +95 -0
  926. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Numbers/FloatTraits.hpp +212 -0
  927. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Numbers/JsonFloat.hpp +18 -0
  928. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Numbers/JsonInteger.hpp +28 -0
  929. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Numbers/arithmeticCompare.hpp +116 -0
  930. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Numbers/convertNumber.hpp +145 -0
  931. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Numbers/parseNumber.hpp +238 -0
  932. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Object/JsonObject.hpp +245 -0
  933. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Object/JsonObjectConst.hpp +166 -0
  934. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Object/JsonObjectIterator.hpp +83 -0
  935. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Object/JsonPair.hpp +70 -0
  936. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Object/MemberProxy.hpp +77 -0
  937. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Object/ObjectData.hpp +70 -0
  938. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Object/ObjectImpl.hpp +92 -0
  939. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/alias_cast.hpp +30 -0
  940. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/assert.hpp +14 -0
  941. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/attributes.hpp +45 -0
  942. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/ctype.hpp +21 -0
  943. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/integer.hpp +34 -0
  944. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/limits.hpp +45 -0
  945. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/math.hpp +27 -0
  946. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/mpl/max.hpp +27 -0
  947. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/pgmspace.hpp +144 -0
  948. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/pgmspace_generic.hpp +67 -0
  949. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/preprocessor.hpp +33 -0
  950. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/conditional.hpp +25 -0
  951. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/decay.hpp +33 -0
  952. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/declval.hpp +14 -0
  953. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/enable_if.hpp +23 -0
  954. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/function_traits.hpp +27 -0
  955. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/integral_constant.hpp +22 -0
  956. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/is_array.hpp +22 -0
  957. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/is_base_of.hpp +27 -0
  958. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/is_class.hpp +23 -0
  959. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/is_const.hpp +18 -0
  960. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/is_convertible.hpp +46 -0
  961. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/is_enum.hpp +22 -0
  962. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/is_floating_point.hpp +19 -0
  963. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/is_integral.hpp +32 -0
  964. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/is_pointer.hpp +17 -0
  965. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/is_same.hpp +18 -0
  966. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/is_signed.hpp +26 -0
  967. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/is_unsigned.hpp +24 -0
  968. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/make_unsigned.hpp +44 -0
  969. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/remove_const.hpp +24 -0
  970. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/remove_cv.hpp +31 -0
  971. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/remove_reference.hpp +24 -0
  972. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/type_identity.hpp +16 -0
  973. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/void_t.hpp +20 -0
  974. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits.hpp +27 -0
  975. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/utility.hpp +33 -0
  976. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Serialization/CountingDecorator.hpp +33 -0
  977. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Serialization/Writer.hpp +47 -0
  978. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Serialization/Writers/ArduinoStringWriter.hpp +55 -0
  979. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Serialization/Writers/DummyWriter.hpp +22 -0
  980. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Serialization/Writers/PrintWriter.hpp +29 -0
  981. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Serialization/Writers/StaticStringWriter.hpp +36 -0
  982. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Serialization/Writers/StdStreamWriter.hpp +32 -0
  983. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Serialization/Writers/StdStringWriter.hpp +42 -0
  984. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Serialization/measure.hpp +20 -0
  985. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Serialization/serialize.hpp +50 -0
  986. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Strings/Adapters/FlashString.hpp +93 -0
  987. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Strings/Adapters/RamString.hpp +118 -0
  988. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Strings/Adapters/StringObject.hpp +48 -0
  989. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Strings/IsString.hpp +19 -0
  990. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Strings/JsonString.hpp +100 -0
  991. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Strings/StringAdapter.hpp +47 -0
  992. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Strings/StringAdapters.hpp +72 -0
  993. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Strings/StringTraits.hpp +73 -0
  994. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Variant/Converter.hpp +23 -0
  995. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Variant/ConverterImpl.hpp +406 -0
  996. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Variant/JsonVariant.hpp +78 -0
  997. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Variant/JsonVariantConst.hpp +197 -0
  998. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Variant/JsonVariantCopier.hpp +34 -0
  999. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Variant/JsonVariantVisitor.hpp +61 -0
  1000. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Variant/VariantAttorney.hpp +35 -0
  1001. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Variant/VariantCompare.hpp +211 -0
  1002. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Variant/VariantContent.hpp +82 -0
  1003. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Variant/VariantData.hpp +609 -0
  1004. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Variant/VariantDataVisitor.hpp +24 -0
  1005. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Variant/VariantImpl.hpp +146 -0
  1006. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Variant/VariantOperators.hpp +188 -0
  1007. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Variant/VariantRefBase.hpp +313 -0
  1008. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Variant/VariantRefBaseImpl.hpp +175 -0
  1009. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Variant/VariantTag.hpp +16 -0
  1010. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Variant/VariantTo.hpp +34 -0
  1011. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/compatibility.hpp +144 -0
  1012. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/version.hpp +11 -0
  1013. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson.h +17 -0
  1014. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson.hpp +65 -0
  1015. package/examples/basic/.pio/libdeps/esp32/ArduinoJson/src/CMakeLists.txt +91 -0
  1016. package/examples/basic/.pio/libdeps/esp32/AsyncTCP/.piopm +1 -0
  1017. package/examples/basic/.pio/libdeps/esp32/AsyncTCP/LICENSE +165 -0
  1018. package/examples/basic/.pio/libdeps/esp32/AsyncTCP/README.md +55 -0
  1019. package/examples/basic/.pio/libdeps/esp32/AsyncTCP/examples/AsyncSend/AsyncSend.ino +169 -0
  1020. package/examples/basic/.pio/libdeps/esp32/AsyncTCP/examples/Client/Client.ino +87 -0
  1021. package/examples/basic/.pio/libdeps/esp32/AsyncTCP/examples/FetchWebsite/FetchWebsite.ino +107 -0
  1022. package/examples/basic/.pio/libdeps/esp32/AsyncTCP/library.json +31 -0
  1023. package/examples/basic/.pio/libdeps/esp32/AsyncTCP/library.properties +11 -0
  1024. package/examples/basic/.pio/libdeps/esp32/AsyncTCP/src/AsyncTCP.cpp +1612 -0
  1025. package/examples/basic/.pio/libdeps/esp32/AsyncTCP/src/AsyncTCP.h +335 -0
  1026. package/examples/basic/.pio/libdeps/esp32/AsyncTCP/src/AsyncTCPLogging.h +66 -0
  1027. package/examples/basic/.pio/libdeps/esp32/AsyncTCP/src/AsyncTCPSimpleIntrusiveList.h +134 -0
  1028. package/examples/basic/.pio/libdeps/esp32/AsyncTCP/src/AsyncTCPVersion.h +40 -0
  1029. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/.github/FUNDING.yml +1 -0
  1030. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/.github/workflows/doxygen.yml +310 -0
  1031. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/.github/workflows/main.yml +309 -0
  1032. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/.github/workflows/test.yml +523 -0
  1033. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/.piopm +1 -0
  1034. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/LICENSE.txt +27 -0
  1035. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/README.md +157 -0
  1036. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example00_Blink/Scheduler_example00_Blink.ino +303 -0
  1037. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example00_Blink_Namespace/Scheduler_example00_Blink_Namespace.ino +302 -0
  1038. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example01/Scheduler_example01.ino +84 -0
  1039. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example02/Scheduler_example02.ino +78 -0
  1040. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example03/Scheduler_example03.ino +80 -0
  1041. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example04_StatusRequest/Scheduler_example04_StatusRequest.ino +90 -0
  1042. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example05_StatusRequest/Scheduler_example05_StatusRequest.ino +181 -0
  1043. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example06_IDLE/Scheduler_example06_IDLE.ino +117 -0
  1044. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example07_WDT/Scheduler_example07_WDT.ino +133 -0
  1045. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example08_LTS/Scheduler_example08_LTS.ino +147 -0
  1046. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example09_TimeCritical/Scheduler_example09_TimeCritical.ino +57 -0
  1047. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example10_Benchmark/Scheduler_example10_Benchmark.ino +106 -0
  1048. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example11_Priority/Scheduler_example11_Priority.ino +105 -0
  1049. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example12_Priority/Scheduler_example12_Priority.ino +136 -0
  1050. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example13_Micros/Scheduler_example13_Micros.ino +71 -0
  1051. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example14_Yield/Scheduler_example14_Yield.ino +339 -0
  1052. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example15_STDFunction/Scheduler_example15_STDFunction.ino +53 -0
  1053. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example16_Multitab/Scheduler_example16_Multitab.ino +18 -0
  1054. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example16_Multitab/file1.cpp +31 -0
  1055. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example16_Multitab/file2.cpp +55 -0
  1056. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example16_Multitab/header.hpp +15 -0
  1057. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example16_Multitab/ts.cpp +20 -0
  1058. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example17_Timeout/Scheduler_example17_Timeout.ino +90 -0
  1059. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example18_StatusRequest_LTS_WDT_Timeout/Scheduler_example18_StatusRequest_LTS_WDT_Timeout.ino +172 -0
  1060. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example19_Dynamic_Tasks/Scheduler_example19_Dynamic_Tasks.ino +137 -0
  1061. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example19_Dynamic_Tasks_SelfDestruct/Scheduler_example19_Dynamic_Tasks_SelfDestruct.ino +130 -0
  1062. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example19_Dynamic_Tasks_stdQueue/Scheduler_example19_Dynamic_Tasks_stdQueue.ino +137 -0
  1063. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example20_StatusRequest_LTS_WDT_Timeout_Object/Scheduler_example20_StatusRequest_LTS_WDT_Timeout_Object.ino +185 -0
  1064. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example20_StatusRequest_LTS_WDT_Timeout_Object/SuperSensor.cpp +36 -0
  1065. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example20_StatusRequest_LTS_WDT_Timeout_Object/SuperSensor.h +25 -0
  1066. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example21_OO_Callbacks/Calculator.cpp +66 -0
  1067. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example21_OO_Callbacks/Calculator.h +34 -0
  1068. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example21_OO_Callbacks/Scheduler_example21_OO_Callbacks.ino +76 -0
  1069. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example21_OO_Callbacks/SuperSensor.cpp +83 -0
  1070. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example21_OO_Callbacks/SuperSensor.h +44 -0
  1071. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example21_OO_Callbacks/Ticker.cpp +21 -0
  1072. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example21_OO_Callbacks/Ticker.h +28 -0
  1073. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example23_IDLE_Callback/Scheduler_example23_IDLE_Callback.ino +157 -0
  1074. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example24_CPU_LOAD/Scheduler_example24_CPU_LOAD.ino +87 -0
  1075. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example25_SCHEDULER_CHAIN/Scheduler_example25_SCHEDULER_CHAIN.ino +127 -0
  1076. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example26_SCHEDULING_OPTIONS/Scheduler_example26_SCHEDULING_OPTIONS.ino +181 -0
  1077. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example27_PlatformIO/include/README +39 -0
  1078. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example27_PlatformIO/include/led.h +12 -0
  1079. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example27_PlatformIO/include/main.h +25 -0
  1080. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example27_PlatformIO/lib/README +46 -0
  1081. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example27_PlatformIO/platformio.ini +37 -0
  1082. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example27_PlatformIO/src/led.cpp +11 -0
  1083. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example27_PlatformIO/src/main.cpp +254 -0
  1084. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example27_PlatformIO/test/README +11 -0
  1085. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example28_Tickless/Scheduler_example28_Tickless.ino +105 -0
  1086. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example29_NonArduino/include/README +39 -0
  1087. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example29_NonArduino/include/led.h +12 -0
  1088. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example29_NonArduino/include/main.h +27 -0
  1089. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example29_NonArduino/lib/README +46 -0
  1090. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example29_NonArduino/platformio.ini +38 -0
  1091. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example29_NonArduino/src/led.cpp +13 -0
  1092. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example29_NonArduino/src/main.cpp +267 -0
  1093. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example29_NonArduino/test/README +11 -0
  1094. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example30_THREAD_SAFE/README.md +232 -0
  1095. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example30_THREAD_SAFE/platformio.ini +44 -0
  1096. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example30_THREAD_SAFE/src/main.cpp +310 -0
  1097. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_template/Scheduler_template.ino +166 -0
  1098. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/keywords.txt +161 -0
  1099. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/library.json +22 -0
  1100. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/library.properties +9 -0
  1101. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/src/TScheduler.hpp +29 -0
  1102. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/src/TSchedulerDeclarations.hpp +29 -0
  1103. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/src/TaskScheduler.cpp +3 -0
  1104. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/src/TaskScheduler.h +1811 -0
  1105. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/src/TaskSchedulerDeclarations.h +3096 -0
  1106. package/examples/basic/.pio/libdeps/esp32/TaskScheduler/src/TaskSchedulerSleepMethods.h +399 -0
  1107. package/examples/basic/.pio/libdeps/esp32/integrity.dat +3 -0
  1108. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/.piopm +1 -0
  1109. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/ArduinoJson.h +5 -0
  1110. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/LICENSE.txt +10 -0
  1111. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/README.md +153 -0
  1112. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/examples/JsonConfigFile/JsonConfigFile.ino +152 -0
  1113. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/examples/JsonFilterExample/JsonFilterExample.ino +64 -0
  1114. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/examples/JsonGeneratorExample/JsonGeneratorExample.ino +65 -0
  1115. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/examples/JsonHttpClient/JsonHttpClient.ino +125 -0
  1116. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/examples/JsonParserExample/JsonParserExample.ino +65 -0
  1117. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/examples/JsonServer/JsonServer.ino +118 -0
  1118. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/examples/JsonUdpBeacon/JsonUdpBeacon.ino +106 -0
  1119. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/examples/MsgPackParser/MsgPackParser.ino +61 -0
  1120. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/examples/ProgmemExample/ProgmemExample.ino +63 -0
  1121. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/examples/StringExample/StringExample.ino +76 -0
  1122. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/library.json +23 -0
  1123. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/library.properties +11 -0
  1124. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Array/ArrayData.hpp +66 -0
  1125. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Array/ArrayImpl.hpp +79 -0
  1126. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Array/ElementProxy.hpp +75 -0
  1127. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Array/JsonArray.hpp +219 -0
  1128. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Array/JsonArrayConst.hpp +133 -0
  1129. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Array/JsonArrayIterator.hpp +96 -0
  1130. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Array/Utilities.hpp +112 -0
  1131. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Collection/CollectionData.hpp +122 -0
  1132. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Collection/CollectionImpl.hpp +137 -0
  1133. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Configuration.hpp +285 -0
  1134. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Deserialization/DeserializationError.hpp +106 -0
  1135. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Deserialization/DeserializationOptions.hpp +35 -0
  1136. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Deserialization/Filter.hpp +77 -0
  1137. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Deserialization/NestingLimit.hpp +32 -0
  1138. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Deserialization/Reader.hpp +74 -0
  1139. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Deserialization/Readers/ArduinoStreamReader.hpp +30 -0
  1140. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Deserialization/Readers/ArduinoStringReader.hpp +18 -0
  1141. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Deserialization/Readers/FlashReader.hpp +56 -0
  1142. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Deserialization/Readers/IteratorReader.hpp +42 -0
  1143. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Deserialization/Readers/RamReader.hpp +49 -0
  1144. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Deserialization/Readers/StdStreamReader.hpp +29 -0
  1145. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Deserialization/Readers/VariantReader.hpp +19 -0
  1146. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Deserialization/deserialize.hpp +79 -0
  1147. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Document/JsonDocument.hpp +426 -0
  1148. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Json/EscapeSequence.hpp +40 -0
  1149. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Json/JsonDeserializer.hpp +720 -0
  1150. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Json/JsonSerializer.hpp +165 -0
  1151. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Json/Latch.hpp +56 -0
  1152. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Json/PrettyJsonSerializer.hpp +110 -0
  1153. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Json/TextFormatter.hpp +177 -0
  1154. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Json/Utf16.hpp +67 -0
  1155. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Json/Utf8.hpp +46 -0
  1156. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Memory/Alignment.hpp +60 -0
  1157. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Memory/Allocator.hpp +49 -0
  1158. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Memory/MemoryPool.hpp +110 -0
  1159. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Memory/MemoryPoolList.hpp +214 -0
  1160. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Memory/ResourceManager.hpp +131 -0
  1161. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Memory/ResourceManagerImpl.hpp +52 -0
  1162. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Memory/StringBuffer.hpp +79 -0
  1163. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Memory/StringBuilder.hpp +88 -0
  1164. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Memory/StringNode.hpp +75 -0
  1165. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Memory/StringPool.hpp +102 -0
  1166. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Misc/SerializedValue.hpp +71 -0
  1167. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/MsgPack/MsgPackBinary.hpp +97 -0
  1168. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/MsgPack/MsgPackDeserializer.hpp +487 -0
  1169. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/MsgPack/MsgPackExtension.hpp +120 -0
  1170. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/MsgPack/MsgPackSerializer.hpp +244 -0
  1171. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/MsgPack/endianness.hpp +46 -0
  1172. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/MsgPack/ieee754.hpp +18 -0
  1173. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Namespace.hpp +42 -0
  1174. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Numbers/FloatParts.hpp +95 -0
  1175. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Numbers/FloatTraits.hpp +212 -0
  1176. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Numbers/JsonFloat.hpp +18 -0
  1177. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Numbers/JsonInteger.hpp +28 -0
  1178. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Numbers/arithmeticCompare.hpp +116 -0
  1179. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Numbers/convertNumber.hpp +145 -0
  1180. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Numbers/parseNumber.hpp +238 -0
  1181. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Object/JsonObject.hpp +245 -0
  1182. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Object/JsonObjectConst.hpp +166 -0
  1183. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Object/JsonObjectIterator.hpp +83 -0
  1184. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Object/JsonPair.hpp +70 -0
  1185. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Object/MemberProxy.hpp +77 -0
  1186. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Object/ObjectData.hpp +70 -0
  1187. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Object/ObjectImpl.hpp +92 -0
  1188. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/alias_cast.hpp +30 -0
  1189. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/assert.hpp +14 -0
  1190. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/attributes.hpp +45 -0
  1191. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/ctype.hpp +21 -0
  1192. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/integer.hpp +34 -0
  1193. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/limits.hpp +45 -0
  1194. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/math.hpp +27 -0
  1195. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/mpl/max.hpp +27 -0
  1196. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/pgmspace.hpp +144 -0
  1197. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/pgmspace_generic.hpp +67 -0
  1198. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/preprocessor.hpp +33 -0
  1199. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/conditional.hpp +25 -0
  1200. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/decay.hpp +33 -0
  1201. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/declval.hpp +14 -0
  1202. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/enable_if.hpp +23 -0
  1203. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/function_traits.hpp +27 -0
  1204. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/integral_constant.hpp +22 -0
  1205. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/is_array.hpp +22 -0
  1206. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/is_base_of.hpp +27 -0
  1207. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/is_class.hpp +23 -0
  1208. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/is_const.hpp +18 -0
  1209. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/is_convertible.hpp +46 -0
  1210. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/is_enum.hpp +22 -0
  1211. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/is_floating_point.hpp +19 -0
  1212. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/is_integral.hpp +32 -0
  1213. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/is_pointer.hpp +17 -0
  1214. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/is_same.hpp +18 -0
  1215. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/is_signed.hpp +26 -0
  1216. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/is_unsigned.hpp +24 -0
  1217. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/make_unsigned.hpp +44 -0
  1218. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/remove_const.hpp +24 -0
  1219. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/remove_cv.hpp +31 -0
  1220. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/remove_reference.hpp +24 -0
  1221. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/type_identity.hpp +16 -0
  1222. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/void_t.hpp +20 -0
  1223. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/type_traits.hpp +27 -0
  1224. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Polyfills/utility.hpp +33 -0
  1225. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Serialization/CountingDecorator.hpp +33 -0
  1226. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Serialization/Writer.hpp +47 -0
  1227. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Serialization/Writers/ArduinoStringWriter.hpp +55 -0
  1228. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Serialization/Writers/DummyWriter.hpp +22 -0
  1229. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Serialization/Writers/PrintWriter.hpp +29 -0
  1230. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Serialization/Writers/StaticStringWriter.hpp +36 -0
  1231. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Serialization/Writers/StdStreamWriter.hpp +32 -0
  1232. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Serialization/Writers/StdStringWriter.hpp +42 -0
  1233. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Serialization/measure.hpp +20 -0
  1234. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Serialization/serialize.hpp +50 -0
  1235. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Strings/Adapters/FlashString.hpp +93 -0
  1236. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Strings/Adapters/RamString.hpp +118 -0
  1237. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Strings/Adapters/StringObject.hpp +48 -0
  1238. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Strings/IsString.hpp +19 -0
  1239. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Strings/JsonString.hpp +100 -0
  1240. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Strings/StringAdapter.hpp +47 -0
  1241. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Strings/StringAdapters.hpp +72 -0
  1242. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Strings/StringTraits.hpp +73 -0
  1243. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Variant/Converter.hpp +23 -0
  1244. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Variant/ConverterImpl.hpp +406 -0
  1245. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Variant/JsonVariant.hpp +78 -0
  1246. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Variant/JsonVariantConst.hpp +197 -0
  1247. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Variant/JsonVariantCopier.hpp +34 -0
  1248. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Variant/JsonVariantVisitor.hpp +61 -0
  1249. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Variant/VariantAttorney.hpp +35 -0
  1250. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Variant/VariantCompare.hpp +211 -0
  1251. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Variant/VariantContent.hpp +82 -0
  1252. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Variant/VariantData.hpp +609 -0
  1253. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Variant/VariantDataVisitor.hpp +24 -0
  1254. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Variant/VariantImpl.hpp +146 -0
  1255. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Variant/VariantOperators.hpp +188 -0
  1256. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Variant/VariantRefBase.hpp +313 -0
  1257. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Variant/VariantRefBaseImpl.hpp +175 -0
  1258. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Variant/VariantTag.hpp +16 -0
  1259. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/Variant/VariantTo.hpp +34 -0
  1260. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/compatibility.hpp +144 -0
  1261. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson/version.hpp +11 -0
  1262. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson.h +17 -0
  1263. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/ArduinoJson.hpp +65 -0
  1264. package/examples/basic/.pio/libdeps/esp8266/ArduinoJson/src/CMakeLists.txt +91 -0
  1265. package/examples/basic/.pio/libdeps/esp8266/ESPAsyncTCP/.github/scripts/install-arduino-core-esp8266.sh +29 -0
  1266. package/examples/basic/.pio/libdeps/esp8266/ESPAsyncTCP/.github/scripts/install-arduino-ide.sh +220 -0
  1267. package/examples/basic/.pio/libdeps/esp8266/ESPAsyncTCP/.github/scripts/install-platformio.sh +133 -0
  1268. package/examples/basic/.pio/libdeps/esp8266/ESPAsyncTCP/.github/scripts/on-push.sh +64 -0
  1269. package/examples/basic/.pio/libdeps/esp8266/ESPAsyncTCP/.github/stale.yml +31 -0
  1270. package/examples/basic/.pio/libdeps/esp8266/ESPAsyncTCP/.github/workflows/push.yml +30 -0
  1271. package/examples/basic/.pio/libdeps/esp8266/ESPAsyncTCP/.piopm +1 -0
  1272. package/examples/basic/.pio/libdeps/esp8266/ESPAsyncTCP/LICENSE.txt +165 -0
  1273. package/examples/basic/.pio/libdeps/esp8266/ESPAsyncTCP/README.md +43 -0
  1274. package/examples/basic/.pio/libdeps/esp8266/ESPAsyncTCP/examples/ClientServer/Client/Client.ino +62 -0
  1275. package/examples/basic/.pio/libdeps/esp8266/ESPAsyncTCP/examples/ClientServer/Client/config.h +23 -0
  1276. package/examples/basic/.pio/libdeps/esp8266/ESPAsyncTCP/examples/ClientServer/Server/Server.ino +73 -0
  1277. package/examples/basic/.pio/libdeps/esp8266/ESPAsyncTCP/examples/ClientServer/Server/config.h +23 -0
  1278. package/examples/basic/.pio/libdeps/esp8266/ESPAsyncTCP/examples/SyncClient/.esp31b.skip +0 -0
  1279. package/examples/basic/.pio/libdeps/esp8266/ESPAsyncTCP/examples/SyncClient/SyncClient.ino +54 -0
  1280. package/examples/basic/.pio/libdeps/esp8266/ESPAsyncTCP/library.json +19 -0
  1281. package/examples/basic/.pio/libdeps/esp8266/ESPAsyncTCP/library.properties +10 -0
  1282. package/examples/basic/.pio/libdeps/esp8266/ESPAsyncTCP/src/AsyncPrinter.cpp +214 -0
  1283. package/examples/basic/.pio/libdeps/esp8266/ESPAsyncTCP/src/AsyncPrinter.h +73 -0
  1284. package/examples/basic/.pio/libdeps/esp8266/ESPAsyncTCP/src/DebugPrintMacros.h +112 -0
  1285. package/examples/basic/.pio/libdeps/esp8266/ESPAsyncTCP/src/ESPAsyncTCP.cpp +1406 -0
  1286. package/examples/basic/.pio/libdeps/esp8266/ESPAsyncTCP/src/ESPAsyncTCP.h +324 -0
  1287. package/examples/basic/.pio/libdeps/esp8266/ESPAsyncTCP/src/ESPAsyncTCPbuffer.cpp +555 -0
  1288. package/examples/basic/.pio/libdeps/esp8266/ESPAsyncTCP/src/ESPAsyncTCPbuffer.h +118 -0
  1289. package/examples/basic/.pio/libdeps/esp8266/ESPAsyncTCP/src/SyncClient.cpp +414 -0
  1290. package/examples/basic/.pio/libdeps/esp8266/ESPAsyncTCP/src/SyncClient.h +109 -0
  1291. package/examples/basic/.pio/libdeps/esp8266/ESPAsyncTCP/src/async_config.h +42 -0
  1292. package/examples/basic/.pio/libdeps/esp8266/ESPAsyncTCP/src/tcp_axtls.c +613 -0
  1293. package/examples/basic/.pio/libdeps/esp8266/ESPAsyncTCP/src/tcp_axtls.h +98 -0
  1294. package/examples/basic/.pio/libdeps/esp8266/ESPAsyncTCP/ssl/gen_server_cert.sh +36 -0
  1295. package/examples/basic/.pio/libdeps/esp8266/ESPAsyncTCP/ssl/server.cer +0 -0
  1296. package/examples/basic/.pio/libdeps/esp8266/ESPAsyncTCP/ssl/server.key +0 -0
  1297. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/.github/FUNDING.yml +1 -0
  1298. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/.github/workflows/doxygen.yml +310 -0
  1299. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/.github/workflows/main.yml +309 -0
  1300. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/.github/workflows/test.yml +523 -0
  1301. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/.piopm +1 -0
  1302. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/LICENSE.txt +27 -0
  1303. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/README.md +157 -0
  1304. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example00_Blink/Scheduler_example00_Blink.ino +303 -0
  1305. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example00_Blink_Namespace/Scheduler_example00_Blink_Namespace.ino +302 -0
  1306. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example01/Scheduler_example01.ino +84 -0
  1307. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example02/Scheduler_example02.ino +78 -0
  1308. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example03/Scheduler_example03.ino +80 -0
  1309. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example04_StatusRequest/Scheduler_example04_StatusRequest.ino +90 -0
  1310. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example05_StatusRequest/Scheduler_example05_StatusRequest.ino +181 -0
  1311. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example06_IDLE/Scheduler_example06_IDLE.ino +117 -0
  1312. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example07_WDT/Scheduler_example07_WDT.ino +133 -0
  1313. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example08_LTS/Scheduler_example08_LTS.ino +147 -0
  1314. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example09_TimeCritical/Scheduler_example09_TimeCritical.ino +57 -0
  1315. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example10_Benchmark/Scheduler_example10_Benchmark.ino +106 -0
  1316. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example11_Priority/Scheduler_example11_Priority.ino +105 -0
  1317. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example12_Priority/Scheduler_example12_Priority.ino +136 -0
  1318. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example13_Micros/Scheduler_example13_Micros.ino +71 -0
  1319. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example14_Yield/Scheduler_example14_Yield.ino +339 -0
  1320. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example15_STDFunction/Scheduler_example15_STDFunction.ino +53 -0
  1321. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example16_Multitab/Scheduler_example16_Multitab.ino +18 -0
  1322. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example16_Multitab/file1.cpp +31 -0
  1323. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example16_Multitab/file2.cpp +55 -0
  1324. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example16_Multitab/header.hpp +15 -0
  1325. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example16_Multitab/ts.cpp +20 -0
  1326. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example17_Timeout/Scheduler_example17_Timeout.ino +90 -0
  1327. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example18_StatusRequest_LTS_WDT_Timeout/Scheduler_example18_StatusRequest_LTS_WDT_Timeout.ino +172 -0
  1328. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example19_Dynamic_Tasks/Scheduler_example19_Dynamic_Tasks.ino +137 -0
  1329. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example19_Dynamic_Tasks_SelfDestruct/Scheduler_example19_Dynamic_Tasks_SelfDestruct.ino +130 -0
  1330. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example19_Dynamic_Tasks_stdQueue/Scheduler_example19_Dynamic_Tasks_stdQueue.ino +137 -0
  1331. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example20_StatusRequest_LTS_WDT_Timeout_Object/Scheduler_example20_StatusRequest_LTS_WDT_Timeout_Object.ino +185 -0
  1332. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example20_StatusRequest_LTS_WDT_Timeout_Object/SuperSensor.cpp +36 -0
  1333. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example20_StatusRequest_LTS_WDT_Timeout_Object/SuperSensor.h +25 -0
  1334. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example21_OO_Callbacks/Calculator.cpp +66 -0
  1335. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example21_OO_Callbacks/Calculator.h +34 -0
  1336. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example21_OO_Callbacks/Scheduler_example21_OO_Callbacks.ino +76 -0
  1337. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example21_OO_Callbacks/SuperSensor.cpp +83 -0
  1338. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example21_OO_Callbacks/SuperSensor.h +44 -0
  1339. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example21_OO_Callbacks/Ticker.cpp +21 -0
  1340. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example21_OO_Callbacks/Ticker.h +28 -0
  1341. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example23_IDLE_Callback/Scheduler_example23_IDLE_Callback.ino +157 -0
  1342. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example24_CPU_LOAD/Scheduler_example24_CPU_LOAD.ino +87 -0
  1343. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example25_SCHEDULER_CHAIN/Scheduler_example25_SCHEDULER_CHAIN.ino +127 -0
  1344. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example26_SCHEDULING_OPTIONS/Scheduler_example26_SCHEDULING_OPTIONS.ino +181 -0
  1345. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example27_PlatformIO/include/README +39 -0
  1346. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example27_PlatformIO/include/led.h +12 -0
  1347. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example27_PlatformIO/include/main.h +25 -0
  1348. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example27_PlatformIO/lib/README +46 -0
  1349. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example27_PlatformIO/platformio.ini +37 -0
  1350. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example27_PlatformIO/src/led.cpp +11 -0
  1351. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example27_PlatformIO/src/main.cpp +254 -0
  1352. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example27_PlatformIO/test/README +11 -0
  1353. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example28_Tickless/Scheduler_example28_Tickless.ino +105 -0
  1354. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example29_NonArduino/include/README +39 -0
  1355. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example29_NonArduino/include/led.h +12 -0
  1356. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example29_NonArduino/include/main.h +27 -0
  1357. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example29_NonArduino/lib/README +46 -0
  1358. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example29_NonArduino/platformio.ini +38 -0
  1359. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example29_NonArduino/src/led.cpp +13 -0
  1360. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example29_NonArduino/src/main.cpp +267 -0
  1361. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example29_NonArduino/test/README +11 -0
  1362. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example30_THREAD_SAFE/README.md +232 -0
  1363. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example30_THREAD_SAFE/platformio.ini +44 -0
  1364. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_example30_THREAD_SAFE/src/main.cpp +310 -0
  1365. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/examples/Scheduler_template/Scheduler_template.ino +166 -0
  1366. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/keywords.txt +161 -0
  1367. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/library.json +22 -0
  1368. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/library.properties +9 -0
  1369. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/src/TScheduler.hpp +29 -0
  1370. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/src/TSchedulerDeclarations.hpp +29 -0
  1371. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/src/TaskScheduler.cpp +3 -0
  1372. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/src/TaskScheduler.h +1811 -0
  1373. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/src/TaskSchedulerDeclarations.h +3096 -0
  1374. package/examples/basic/.pio/libdeps/esp8266/TaskScheduler/src/TaskSchedulerSleepMethods.h +399 -0
  1375. package/examples/basic/.pio/libdeps/esp8266/integrity.dat +3 -0
  1376. package/examples/basic/basic.ino +66 -66
  1377. package/examples/basic/platformio.ini +25 -25
  1378. package/examples/bridge/bridge.ino +51 -51
  1379. package/examples/bridge/mesh_event_publisher.hpp +253 -253
  1380. package/examples/bridge/mesh_topology_reporter.hpp +303 -303
  1381. package/examples/bridge/mqtt_command_bridge.hpp +459 -459
  1382. package/examples/bridge/mqtt_status_bridge.hpp +519 -519
  1383. package/examples/bridge/platformio.ini +25 -25
  1384. package/examples/echoNode/echoNode.ino +33 -33
  1385. package/examples/echoNode/platformio.ini +25 -25
  1386. package/examples/logClient/logClient.ino +109 -109
  1387. package/examples/logClient/platformio.ini +25 -25
  1388. package/examples/logServer/logServer.ino +81 -81
  1389. package/examples/logServer/platformio.ini +25 -25
  1390. package/examples/meshCommandNode/.pio/build/esp32/.sconsign311.dblite +0 -0
  1391. package/examples/meshCommandNode/.pio/build/esp32/bootloader.bin +0 -0
  1392. package/examples/meshCommandNode/.pio/build/esp32/lib327/TaskScheduler/TaskScheduler.cpp.d +2 -0
  1393. package/examples/meshCommandNode/.pio/build/esp32/lib327/TaskScheduler/TaskScheduler.cpp.o +0 -0
  1394. package/examples/meshCommandNode/.pio/build/esp32/lib373/LittleFS/LittleFS.cpp.d +142 -0
  1395. package/examples/meshCommandNode/.pio/build/esp32/lib373/LittleFS/LittleFS.cpp.o +0 -0
  1396. package/examples/meshCommandNode/.pio/build/esp32/lib4f2/FS/FS.cpp.d +138 -0
  1397. package/examples/meshCommandNode/.pio/build/esp32/lib4f2/FS/FS.cpp.o +0 -0
  1398. package/examples/meshCommandNode/.pio/build/esp32/lib4f2/FS/vfs_api.cpp.d +139 -0
  1399. package/examples/meshCommandNode/.pio/build/esp32/lib4f2/FS/vfs_api.cpp.o +0 -0
  1400. package/examples/meshCommandNode/.pio/build/esp32/lib71a/WiFi/WiFi.cpp.d +203 -0
  1401. package/examples/meshCommandNode/.pio/build/esp32/lib71a/WiFi/WiFi.cpp.o +0 -0
  1402. package/examples/meshCommandNode/.pio/build/esp32/lib71a/WiFi/WiFiAP.cpp.d +204 -0
  1403. package/examples/meshCommandNode/.pio/build/esp32/lib71a/WiFi/WiFiAP.cpp.o +0 -0
  1404. package/examples/meshCommandNode/.pio/build/esp32/lib71a/WiFi/WiFiClient.cpp.d +209 -0
  1405. package/examples/meshCommandNode/.pio/build/esp32/lib71a/WiFi/WiFiClient.cpp.o +0 -0
  1406. package/examples/meshCommandNode/.pio/build/esp32/lib71a/WiFi/WiFiGeneric.cpp.d +206 -0
  1407. package/examples/meshCommandNode/.pio/build/esp32/lib71a/WiFi/WiFiGeneric.cpp.o +0 -0
  1408. package/examples/meshCommandNode/.pio/build/esp32/lib71a/WiFi/WiFiMulti.cpp.d +199 -0
  1409. package/examples/meshCommandNode/.pio/build/esp32/lib71a/WiFi/WiFiMulti.cpp.o +0 -0
  1410. package/examples/meshCommandNode/.pio/build/esp32/lib71a/WiFi/WiFiSTA.cpp.d +206 -0
  1411. package/examples/meshCommandNode/.pio/build/esp32/lib71a/WiFi/WiFiSTA.cpp.o +0 -0
  1412. package/examples/meshCommandNode/.pio/build/esp32/lib71a/WiFi/WiFiScan.cpp.d +204 -0
  1413. package/examples/meshCommandNode/.pio/build/esp32/lib71a/WiFi/WiFiScan.cpp.o +0 -0
  1414. package/examples/meshCommandNode/.pio/build/esp32/lib71a/WiFi/WiFiServer.cpp.d +172 -0
  1415. package/examples/meshCommandNode/.pio/build/esp32/lib71a/WiFi/WiFiServer.cpp.o +0 -0
  1416. package/examples/meshCommandNode/.pio/build/esp32/lib71a/WiFi/WiFiUdp.cpp.d +171 -0
  1417. package/examples/meshCommandNode/.pio/build/esp32/lib71a/WiFi/WiFiUdp.cpp.o +0 -0
  1418. package/examples/meshCommandNode/.pio/build/esp32/lib97a/SPIFFS/SPIFFS.cpp.d +142 -0
  1419. package/examples/meshCommandNode/.pio/build/esp32/lib97a/SPIFFS/SPIFFS.cpp.o +0 -0
  1420. package/examples/meshCommandNode/.pio/build/esp32/libf48/Update/HttpsOTAUpdate.cpp.d +120 -0
  1421. package/examples/meshCommandNode/.pio/build/esp32/libf48/Update/HttpsOTAUpdate.cpp.o +0 -0
  1422. package/examples/meshCommandNode/.pio/build/esp32/libf48/Update/Updater.cpp.d +144 -0
  1423. package/examples/meshCommandNode/.pio/build/esp32/libf48/Update/Updater.cpp.o +0 -0
  1424. package/examples/meshCommandNode/.pio/build/esp32/partitions.bin +0 -0
  1425. package/examples/meshCommandNode/.pio/build/esp32/src/meshCommandNode.ino.cpp.d +238 -0
  1426. package/examples/meshCommandNode/.pio/build/esp32/tmpkxz_1u4u.tmp +1 -0
  1427. package/examples/meshCommandNode/.pio/build/esp32/tmpo9qt_9vc.tmp +1 -0
  1428. package/examples/meshCommandNode/.pio/build/esp32/tmprrmligyc.tmp +1 -0
  1429. package/examples/meshCommandNode/.pio/build/esp32/tmpt8s9ha45.tmp +1 -0
  1430. package/examples/meshCommandNode/.pio/build/project.checksum +1 -0
  1431. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/.piopm +1 -0
  1432. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/ArduinoJson.h +5 -0
  1433. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/LICENSE.txt +10 -0
  1434. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/README.md +153 -0
  1435. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/examples/JsonConfigFile/JsonConfigFile.ino +152 -0
  1436. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/examples/JsonFilterExample/JsonFilterExample.ino +64 -0
  1437. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/examples/JsonGeneratorExample/JsonGeneratorExample.ino +65 -0
  1438. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/examples/JsonHttpClient/JsonHttpClient.ino +125 -0
  1439. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/examples/JsonParserExample/JsonParserExample.ino +65 -0
  1440. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/examples/JsonServer/JsonServer.ino +118 -0
  1441. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/examples/JsonUdpBeacon/JsonUdpBeacon.ino +106 -0
  1442. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/examples/MsgPackParser/MsgPackParser.ino +61 -0
  1443. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/examples/ProgmemExample/ProgmemExample.ino +63 -0
  1444. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/examples/StringExample/StringExample.ino +76 -0
  1445. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/library.json +23 -0
  1446. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/library.properties +11 -0
  1447. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Array/ArrayData.hpp +66 -0
  1448. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Array/ArrayImpl.hpp +79 -0
  1449. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Array/ElementProxy.hpp +75 -0
  1450. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Array/JsonArray.hpp +219 -0
  1451. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Array/JsonArrayConst.hpp +133 -0
  1452. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Array/JsonArrayIterator.hpp +96 -0
  1453. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Array/Utilities.hpp +112 -0
  1454. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Collection/CollectionData.hpp +122 -0
  1455. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Collection/CollectionImpl.hpp +137 -0
  1456. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Configuration.hpp +285 -0
  1457. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Deserialization/DeserializationError.hpp +106 -0
  1458. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Deserialization/DeserializationOptions.hpp +35 -0
  1459. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Deserialization/Filter.hpp +77 -0
  1460. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Deserialization/NestingLimit.hpp +32 -0
  1461. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Deserialization/Reader.hpp +74 -0
  1462. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Deserialization/Readers/ArduinoStreamReader.hpp +30 -0
  1463. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Deserialization/Readers/ArduinoStringReader.hpp +18 -0
  1464. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Deserialization/Readers/FlashReader.hpp +56 -0
  1465. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Deserialization/Readers/IteratorReader.hpp +42 -0
  1466. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Deserialization/Readers/RamReader.hpp +49 -0
  1467. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Deserialization/Readers/StdStreamReader.hpp +29 -0
  1468. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Deserialization/Readers/VariantReader.hpp +19 -0
  1469. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Deserialization/deserialize.hpp +79 -0
  1470. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Document/JsonDocument.hpp +426 -0
  1471. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Json/EscapeSequence.hpp +40 -0
  1472. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Json/JsonDeserializer.hpp +720 -0
  1473. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Json/JsonSerializer.hpp +165 -0
  1474. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Json/Latch.hpp +56 -0
  1475. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Json/PrettyJsonSerializer.hpp +110 -0
  1476. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Json/TextFormatter.hpp +177 -0
  1477. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Json/Utf16.hpp +67 -0
  1478. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Json/Utf8.hpp +46 -0
  1479. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Memory/Alignment.hpp +60 -0
  1480. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Memory/Allocator.hpp +49 -0
  1481. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Memory/MemoryPool.hpp +110 -0
  1482. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Memory/MemoryPoolList.hpp +214 -0
  1483. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Memory/ResourceManager.hpp +131 -0
  1484. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Memory/ResourceManagerImpl.hpp +52 -0
  1485. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Memory/StringBuffer.hpp +79 -0
  1486. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Memory/StringBuilder.hpp +88 -0
  1487. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Memory/StringNode.hpp +75 -0
  1488. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Memory/StringPool.hpp +102 -0
  1489. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Misc/SerializedValue.hpp +71 -0
  1490. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/MsgPack/MsgPackBinary.hpp +97 -0
  1491. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/MsgPack/MsgPackDeserializer.hpp +487 -0
  1492. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/MsgPack/MsgPackExtension.hpp +120 -0
  1493. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/MsgPack/MsgPackSerializer.hpp +244 -0
  1494. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/MsgPack/endianness.hpp +46 -0
  1495. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/MsgPack/ieee754.hpp +18 -0
  1496. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Namespace.hpp +42 -0
  1497. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Numbers/FloatParts.hpp +95 -0
  1498. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Numbers/FloatTraits.hpp +212 -0
  1499. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Numbers/JsonFloat.hpp +18 -0
  1500. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Numbers/JsonInteger.hpp +28 -0
  1501. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Numbers/arithmeticCompare.hpp +116 -0
  1502. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Numbers/convertNumber.hpp +145 -0
  1503. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Numbers/parseNumber.hpp +238 -0
  1504. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Object/JsonObject.hpp +245 -0
  1505. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Object/JsonObjectConst.hpp +166 -0
  1506. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Object/JsonObjectIterator.hpp +83 -0
  1507. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Object/JsonPair.hpp +70 -0
  1508. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Object/MemberProxy.hpp +77 -0
  1509. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Object/ObjectData.hpp +70 -0
  1510. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Object/ObjectImpl.hpp +92 -0
  1511. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/alias_cast.hpp +30 -0
  1512. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/assert.hpp +14 -0
  1513. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/attributes.hpp +45 -0
  1514. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/ctype.hpp +21 -0
  1515. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/integer.hpp +34 -0
  1516. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/limits.hpp +45 -0
  1517. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/math.hpp +27 -0
  1518. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/mpl/max.hpp +27 -0
  1519. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/pgmspace.hpp +144 -0
  1520. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/pgmspace_generic.hpp +67 -0
  1521. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/preprocessor.hpp +33 -0
  1522. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/conditional.hpp +25 -0
  1523. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/decay.hpp +33 -0
  1524. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/declval.hpp +14 -0
  1525. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/enable_if.hpp +23 -0
  1526. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/function_traits.hpp +27 -0
  1527. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/integral_constant.hpp +22 -0
  1528. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/is_array.hpp +22 -0
  1529. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/is_base_of.hpp +27 -0
  1530. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/is_class.hpp +23 -0
  1531. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/is_const.hpp +18 -0
  1532. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/is_convertible.hpp +46 -0
  1533. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/is_enum.hpp +22 -0
  1534. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/is_floating_point.hpp +19 -0
  1535. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/is_integral.hpp +32 -0
  1536. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/is_pointer.hpp +17 -0
  1537. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/is_same.hpp +18 -0
  1538. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/is_signed.hpp +26 -0
  1539. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/is_unsigned.hpp +24 -0
  1540. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/make_unsigned.hpp +44 -0
  1541. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/remove_const.hpp +24 -0
  1542. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/remove_cv.hpp +31 -0
  1543. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/remove_reference.hpp +24 -0
  1544. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/type_identity.hpp +16 -0
  1545. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits/void_t.hpp +20 -0
  1546. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/type_traits.hpp +27 -0
  1547. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Polyfills/utility.hpp +33 -0
  1548. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Serialization/CountingDecorator.hpp +33 -0
  1549. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Serialization/Writer.hpp +47 -0
  1550. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Serialization/Writers/ArduinoStringWriter.hpp +55 -0
  1551. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Serialization/Writers/DummyWriter.hpp +22 -0
  1552. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Serialization/Writers/PrintWriter.hpp +29 -0
  1553. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Serialization/Writers/StaticStringWriter.hpp +36 -0
  1554. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Serialization/Writers/StdStreamWriter.hpp +32 -0
  1555. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Serialization/Writers/StdStringWriter.hpp +42 -0
  1556. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Serialization/measure.hpp +20 -0
  1557. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Serialization/serialize.hpp +50 -0
  1558. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Strings/Adapters/FlashString.hpp +93 -0
  1559. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Strings/Adapters/RamString.hpp +118 -0
  1560. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Strings/Adapters/StringObject.hpp +48 -0
  1561. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Strings/IsString.hpp +19 -0
  1562. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Strings/JsonString.hpp +100 -0
  1563. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Strings/StringAdapter.hpp +47 -0
  1564. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Strings/StringAdapters.hpp +72 -0
  1565. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Strings/StringTraits.hpp +73 -0
  1566. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Variant/Converter.hpp +23 -0
  1567. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Variant/ConverterImpl.hpp +406 -0
  1568. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Variant/JsonVariant.hpp +78 -0
  1569. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Variant/JsonVariantConst.hpp +197 -0
  1570. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Variant/JsonVariantCopier.hpp +34 -0
  1571. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Variant/JsonVariantVisitor.hpp +61 -0
  1572. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Variant/VariantAttorney.hpp +35 -0
  1573. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Variant/VariantCompare.hpp +211 -0
  1574. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Variant/VariantContent.hpp +82 -0
  1575. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Variant/VariantData.hpp +609 -0
  1576. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Variant/VariantDataVisitor.hpp +24 -0
  1577. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Variant/VariantImpl.hpp +146 -0
  1578. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Variant/VariantOperators.hpp +188 -0
  1579. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Variant/VariantRefBase.hpp +313 -0
  1580. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Variant/VariantRefBaseImpl.hpp +175 -0
  1581. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Variant/VariantTag.hpp +16 -0
  1582. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/Variant/VariantTo.hpp +34 -0
  1583. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/compatibility.hpp +144 -0
  1584. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson/version.hpp +11 -0
  1585. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson.h +17 -0
  1586. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/ArduinoJson.hpp +65 -0
  1587. package/examples/meshCommandNode/.pio/libdeps/esp32/ArduinoJson/src/CMakeLists.txt +91 -0
  1588. package/examples/meshCommandNode/.pio/libdeps/esp32/AsyncTCP/.piopm +1 -0
  1589. package/examples/meshCommandNode/.pio/libdeps/esp32/AsyncTCP/LICENSE +165 -0
  1590. package/examples/meshCommandNode/.pio/libdeps/esp32/AsyncTCP/README.md +62 -0
  1591. package/examples/meshCommandNode/.pio/libdeps/esp32/AsyncTCP/examples/Client/Client.ino +81 -0
  1592. package/examples/meshCommandNode/.pio/libdeps/esp32/AsyncTCP/library.json +35 -0
  1593. package/examples/meshCommandNode/.pio/libdeps/esp32/AsyncTCP/library.properties +10 -0
  1594. package/examples/meshCommandNode/.pio/libdeps/esp32/AsyncTCP/src/AsyncTCP.cpp +1661 -0
  1595. package/examples/meshCommandNode/.pio/libdeps/esp32/AsyncTCP/src/AsyncTCP.h +344 -0
  1596. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/.github/FUNDING.yml +1 -0
  1597. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/.github/workflows/doxygen.yml +310 -0
  1598. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/.github/workflows/main.yml +309 -0
  1599. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/.github/workflows/test.yml +523 -0
  1600. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/.piopm +1 -0
  1601. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/LICENSE.txt +27 -0
  1602. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/README.md +157 -0
  1603. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example00_Blink/Scheduler_example00_Blink.ino +303 -0
  1604. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example00_Blink_Namespace/Scheduler_example00_Blink_Namespace.ino +302 -0
  1605. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example01/Scheduler_example01.ino +84 -0
  1606. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example02/Scheduler_example02.ino +78 -0
  1607. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example03/Scheduler_example03.ino +80 -0
  1608. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example04_StatusRequest/Scheduler_example04_StatusRequest.ino +90 -0
  1609. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example05_StatusRequest/Scheduler_example05_StatusRequest.ino +181 -0
  1610. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example06_IDLE/Scheduler_example06_IDLE.ino +117 -0
  1611. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example07_WDT/Scheduler_example07_WDT.ino +133 -0
  1612. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example08_LTS/Scheduler_example08_LTS.ino +147 -0
  1613. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example09_TimeCritical/Scheduler_example09_TimeCritical.ino +57 -0
  1614. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example10_Benchmark/Scheduler_example10_Benchmark.ino +106 -0
  1615. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example11_Priority/Scheduler_example11_Priority.ino +105 -0
  1616. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example12_Priority/Scheduler_example12_Priority.ino +136 -0
  1617. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example13_Micros/Scheduler_example13_Micros.ino +71 -0
  1618. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example14_Yield/Scheduler_example14_Yield.ino +339 -0
  1619. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example15_STDFunction/Scheduler_example15_STDFunction.ino +53 -0
  1620. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example16_Multitab/Scheduler_example16_Multitab.ino +18 -0
  1621. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example16_Multitab/file1.cpp +31 -0
  1622. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example16_Multitab/file2.cpp +55 -0
  1623. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example16_Multitab/header.hpp +15 -0
  1624. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example16_Multitab/ts.cpp +20 -0
  1625. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example17_Timeout/Scheduler_example17_Timeout.ino +90 -0
  1626. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example18_StatusRequest_LTS_WDT_Timeout/Scheduler_example18_StatusRequest_LTS_WDT_Timeout.ino +172 -0
  1627. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example19_Dynamic_Tasks/Scheduler_example19_Dynamic_Tasks.ino +137 -0
  1628. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example19_Dynamic_Tasks_SelfDestruct/Scheduler_example19_Dynamic_Tasks_SelfDestruct.ino +130 -0
  1629. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example19_Dynamic_Tasks_stdQueue/Scheduler_example19_Dynamic_Tasks_stdQueue.ino +137 -0
  1630. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example20_StatusRequest_LTS_WDT_Timeout_Object/Scheduler_example20_StatusRequest_LTS_WDT_Timeout_Object.ino +185 -0
  1631. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example20_StatusRequest_LTS_WDT_Timeout_Object/SuperSensor.cpp +36 -0
  1632. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example20_StatusRequest_LTS_WDT_Timeout_Object/SuperSensor.h +25 -0
  1633. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example21_OO_Callbacks/Calculator.cpp +66 -0
  1634. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example21_OO_Callbacks/Calculator.h +34 -0
  1635. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example21_OO_Callbacks/Scheduler_example21_OO_Callbacks.ino +76 -0
  1636. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example21_OO_Callbacks/SuperSensor.cpp +83 -0
  1637. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example21_OO_Callbacks/SuperSensor.h +44 -0
  1638. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example21_OO_Callbacks/Ticker.cpp +21 -0
  1639. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example21_OO_Callbacks/Ticker.h +28 -0
  1640. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example23_IDLE_Callback/Scheduler_example23_IDLE_Callback.ino +157 -0
  1641. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example24_CPU_LOAD/Scheduler_example24_CPU_LOAD.ino +87 -0
  1642. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example25_SCHEDULER_CHAIN/Scheduler_example25_SCHEDULER_CHAIN.ino +127 -0
  1643. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example26_SCHEDULING_OPTIONS/Scheduler_example26_SCHEDULING_OPTIONS.ino +181 -0
  1644. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example27_PlatformIO/include/README +39 -0
  1645. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example27_PlatformIO/include/led.h +12 -0
  1646. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example27_PlatformIO/include/main.h +25 -0
  1647. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example27_PlatformIO/lib/README +46 -0
  1648. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example27_PlatformIO/platformio.ini +37 -0
  1649. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example27_PlatformIO/src/led.cpp +11 -0
  1650. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example27_PlatformIO/src/main.cpp +254 -0
  1651. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example27_PlatformIO/test/README +11 -0
  1652. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example28_Tickless/Scheduler_example28_Tickless.ino +105 -0
  1653. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example29_NonArduino/include/README +39 -0
  1654. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example29_NonArduino/include/led.h +12 -0
  1655. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example29_NonArduino/include/main.h +27 -0
  1656. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example29_NonArduino/lib/README +46 -0
  1657. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example29_NonArduino/platformio.ini +38 -0
  1658. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example29_NonArduino/src/led.cpp +13 -0
  1659. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example29_NonArduino/src/main.cpp +267 -0
  1660. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example29_NonArduino/test/README +11 -0
  1661. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example30_THREAD_SAFE/README.md +232 -0
  1662. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example30_THREAD_SAFE/platformio.ini +44 -0
  1663. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_example30_THREAD_SAFE/src/main.cpp +310 -0
  1664. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/examples/Scheduler_template/Scheduler_template.ino +166 -0
  1665. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/keywords.txt +161 -0
  1666. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/library.json +22 -0
  1667. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/library.properties +9 -0
  1668. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/src/TScheduler.hpp +29 -0
  1669. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/src/TSchedulerDeclarations.hpp +29 -0
  1670. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/src/TaskScheduler.cpp +3 -0
  1671. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/src/TaskScheduler.h +1811 -0
  1672. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/src/TaskSchedulerDeclarations.h +3096 -0
  1673. package/examples/meshCommandNode/.pio/libdeps/esp32/TaskScheduler/src/TaskSchedulerSleepMethods.h +399 -0
  1674. package/examples/meshCommandNode/.pio/libdeps/esp32/integrity.dat +3 -0
  1675. package/examples/meshCommandNode/alteriom_sensor_package.hpp +234 -234
  1676. package/examples/meshCommandNode/meshCommandNode.ino +263 -263
  1677. package/examples/meshCommandNode/platformio.ini +25 -25
  1678. package/examples/mqttBridge/mqttBridge.ino +118 -118
  1679. package/examples/mqttBridge/platformio.ini +26 -26
  1680. package/examples/mqttCommandBridge/alteriom_sensor_package.hpp +234 -234
  1681. package/examples/mqttCommandBridge/mesh_event_publisher.hpp +253 -253
  1682. package/examples/mqttCommandBridge/mesh_topology_reporter.hpp +303 -303
  1683. package/examples/mqttCommandBridge/mqttCommandBridge.ino +252 -252
  1684. package/examples/mqttCommandBridge/mqtt_command_bridge.hpp +462 -459
  1685. package/examples/mqttCommandBridge/platformio.ini +26 -26
  1686. package/examples/mqttStatusBridge/mqttStatusBridge.ino +216 -216
  1687. package/examples/mqttStatusBridge/mqtt_status_bridge.hpp +522 -522
  1688. package/examples/mqttStatusBridge/platformio.ini +26 -26
  1689. package/examples/mqttTopologyTest/README.md +467 -467
  1690. package/examples/mqttTopologyTest/mqttTopologyTest.ino +748 -748
  1691. package/examples/mqttTopologyTest/platformio.ini +26 -26
  1692. package/examples/namedMesh/namedMesh.ino +97 -97
  1693. package/examples/namedMesh/platformio.ini +25 -25
  1694. package/examples/otaReceiver/otaReceiver.ino +79 -79
  1695. package/examples/otaReceiver/platformio.ini +25 -25
  1696. package/examples/otaSender/otaSender.ino +160 -160
  1697. package/examples/otaSender/platformio.ini +25 -25
  1698. package/examples/startHere/platformio.ini +25 -25
  1699. package/examples/startHere/startHere.ino +159 -159
  1700. package/examples/webServer/platformio.ini +27 -27
  1701. package/examples/webServer/webServer.ino +89 -89
  1702. package/keywords.txt +48 -48
  1703. package/library.json +55 -55
  1704. package/library.properties +10 -10
  1705. package/package.json +86 -86
  1706. package/src/AlteriomPainlessMesh.h +97 -97
  1707. package/src/arduino/wifi.hpp +365 -365
  1708. package/src/boost/asynctcp.hpp +279 -279
  1709. package/src/painlessMesh.h +70 -70
  1710. package/src/painlessMeshSTA.cpp +236 -236
  1711. package/src/painlessMeshSTA.h +58 -58
  1712. package/src/painlessTaskOptions.h +11 -4
  1713. package/src/painlessmesh/base64.hpp +111 -111
  1714. package/src/painlessmesh/buffer.hpp +229 -229
  1715. package/src/painlessmesh/callback.hpp +91 -91
  1716. package/src/painlessmesh/configuration.hpp +77 -77
  1717. package/src/painlessmesh/connection.hpp +192 -192
  1718. package/src/painlessmesh/layout.hpp +188 -188
  1719. package/src/painlessmesh/logger.hpp +158 -158
  1720. package/src/painlessmesh/memory.hpp +119 -119
  1721. package/src/painlessmesh/mesh.hpp +772 -761
  1722. package/src/painlessmesh/metrics.hpp +322 -322
  1723. package/src/painlessmesh/ntp.hpp +263 -263
  1724. package/src/painlessmesh/ota.hpp +582 -582
  1725. package/src/painlessmesh/plugin.hpp +188 -188
  1726. package/src/painlessmesh/protocol.hpp +813 -813
  1727. package/src/painlessmesh/router.hpp +338 -322
  1728. package/src/painlessmesh/scheduler_queue.cpp +77 -0
  1729. package/src/painlessmesh/scheduler_queue.hpp +34 -0
  1730. package/src/painlessmesh/tcp.hpp +71 -71
  1731. package/src/painlessmesh/validation.hpp +238 -238
  1732. package/src/plugin/performance.hpp +214 -214
  1733. package/src/plugin/remote.hpp +64 -64
  1734. package/src/scheduler.cpp +10 -10
  1735. package/src/wifi.cpp +2 -2
@@ -0,0 +1,1406 @@
1
+ /*
2
+ Asynchronous TCP library for Espressif MCUs
3
+
4
+ Copyright (c) 2016 Hristo Gochkov. All rights reserved.
5
+ This file is part of the esp8266 core for Arduino environment.
6
+
7
+ This library is free software; you can redistribute it and/or
8
+ modify it under the terms of the GNU Lesser General Public
9
+ License as published by the Free Software Foundation; either
10
+ version 2.1 of the License, or (at your option) any later version.
11
+
12
+ This library is distributed in the hope that it will be useful,
13
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
14
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15
+ Lesser General Public License for more details.
16
+
17
+ You should have received a copy of the GNU Lesser General Public
18
+ License along with this library; if not, write to the Free Software
19
+ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
20
+ */
21
+ /*
22
+ Changes for July 2019
23
+
24
+ The operator "new ..." was changed to "new (std::nothrow) ...", which will
25
+ return NULL when the heap is out of memory. Without the change "soft WDT"
26
+ was the result, starting with Arduino ESP8266 Core 2.5.0. (Note, RE:"soft
27
+ WDT" - the error reporting may improve with core 2.6.) With proir core
28
+ versions the library appears to work fine.
29
+ ref: https://github.com/esp8266/Arduino/issues/6269#issue-464978944
30
+
31
+ To support newer lwIP versions and buffer models. All references to 1460
32
+ were replaced with TCP_MSS. If TCP_MSS is not defined (exp. 1.4v lwIP)
33
+ 1460 is assumed.
34
+
35
+ The ESPAsyncTCP library should build for Arduino ESP8266 Core releases:
36
+ 2.3.0, 2.4.1, 2.4.2, 2.5.1, 2.5.2. It may still build with core versions
37
+ 2.4.0 and 2.5.0. I did not do any regression testing with these, since
38
+ they had too many issues and were quickly superseded.
39
+
40
+ lwIP tcp_err() callback often resulted in crashes. The problem was a
41
+ tcp_err() would come in, while processing a send or receive in the
42
+ forground. The tcp_err() callback would be passed down to a client's
43
+ registered disconnect CB. A common problem with SyncClient and other
44
+ modules as well as some client code was: the freeing of ESPAsyncTCP
45
+ AsyncClient objects via disconnect CB handlers while the library was
46
+ waiting for an operstion to finished. Attempts to access bad pointers
47
+ followed. For SyncClient this commonly occured during a call to delay().
48
+ On return to SyncClient _client was invalid. Also the problem described by
49
+ issue #94 also surfaced
50
+
51
+ Use of tcp_abort() required some very special handling and was very
52
+ challenging to make work without changing client API. ERR_ABRT can only be
53
+ used once on a return to lwIP for a given connection and since the
54
+ AsyncClient structure was sometimes deleted before returning to lwIP, the
55
+ state tracking became tricky. While ugly, a global variable for this
56
+ seemed to work; however, I abanded it when I saw a possible
57
+ reentrancy/concurrency issue. After several approaches I settled the
58
+ problem by creating "class ACErrorTracker" to manage the issue.
59
+
60
+
61
+ Additional Async Client considerations:
62
+
63
+ The client sketch must always test if the connection is still up at loop()
64
+ entry and after the return of any function call, that may have done a
65
+ delay() or yield() or any ESPAsyncTCP library family call. For example,
66
+ the connection could be lost during a call to _client->write(...). Client
67
+ sketches that delete _client as part of their onDisconnect() handler must
68
+ be very careful as _client will become invalid after calls to delay(),
69
+ yield(), etc.
70
+
71
+
72
+ */
73
+
74
+ #include "Arduino.h"
75
+
76
+ #include "ESPAsyncTCP.h"
77
+ extern "C"{
78
+ #include "lwip/opt.h"
79
+ #include "lwip/tcp.h"
80
+ #include "lwip/inet.h"
81
+ #include "lwip/dns.h"
82
+ #include "lwip/init.h"
83
+ }
84
+ #include <tcp_axtls.h>
85
+
86
+ /*
87
+ Async Client Error Return Tracker
88
+ */
89
+ // Assumption: callbacks are never called with err == ERR_ABRT; however,
90
+ // they may return ERR_ABRT.
91
+
92
+ ACErrorTracker::ACErrorTracker(AsyncClient *c):
93
+ _client(c)
94
+ , _close_error(ERR_OK)
95
+ , _errored(EE_OK)
96
+ #ifdef DEBUG_MORE
97
+ , _error_event_cb(NULL)
98
+ , _error_event_cb_arg(NULL)
99
+ #endif
100
+ {}
101
+
102
+ #ifdef DEBUG_MORE
103
+ /**
104
+ * This is not necessary, but a start at gathering some statistics on
105
+ * errored out connections. Used from AsyncServer.
106
+ */
107
+ void ACErrorTracker::onErrorEvent(AsNotifyHandler cb, void *arg) {
108
+ _error_event_cb = cb;
109
+ _error_event_cb_arg = arg;
110
+ }
111
+ #endif
112
+
113
+ void ACErrorTracker::setCloseError(err_t e) {
114
+ if (e != ERR_OK)
115
+ ASYNC_TCP_DEBUG("setCloseError() to: %s(%ld)\n", _client->errorToString(e), e);
116
+ if(_errored == EE_OK)
117
+ _close_error = e;
118
+ }
119
+ /**
120
+ * Called mainly by callback routines, called when err is not ERR_OK.
121
+ * This prevents the possiblity of aborting an already errored out
122
+ * connection.
123
+ */
124
+ void ACErrorTracker::setErrored(size_t errorEvent){
125
+ if(EE_OK == _errored)
126
+ _errored = errorEvent;
127
+ #ifdef DEBUG_MORE
128
+ if (_error_event_cb)
129
+ _error_event_cb(_error_event_cb_arg, errorEvent);
130
+ #endif
131
+ }
132
+ /**
133
+ * Used by callback functions only. Used for proper ERR_ABRT return value
134
+ * reporting. ERR_ABRT is only reported/returned once; thereafter ERR_OK
135
+ * is always returned.
136
+ */
137
+ err_t ACErrorTracker::getCallbackCloseError(void){
138
+ if (EE_OK != _errored)
139
+ return ERR_OK;
140
+ if (ERR_ABRT == _close_error)
141
+ setErrored(EE_ABORTED);
142
+ return _close_error;
143
+ }
144
+
145
+ /*
146
+ Async TCP Client
147
+ */
148
+ #if DEBUG_ESP_ASYNC_TCP
149
+ static size_t _connectionCount=0;
150
+ #endif
151
+
152
+ #if ASYNC_TCP_SSL_ENABLED
153
+ AsyncClient::AsyncClient(tcp_pcb* pcb, SSL_CTX * ssl_ctx):
154
+ #else
155
+ AsyncClient::AsyncClient(tcp_pcb* pcb):
156
+ #endif
157
+ _connect_cb(0)
158
+ , _connect_cb_arg(0)
159
+ , _discard_cb(0)
160
+ , _discard_cb_arg(0)
161
+ , _sent_cb(0)
162
+ , _sent_cb_arg(0)
163
+ , _error_cb(0)
164
+ , _error_cb_arg(0)
165
+ , _recv_cb(0)
166
+ , _recv_cb_arg(0)
167
+ , _pb_cb(0)
168
+ , _pb_cb_arg(0)
169
+ , _timeout_cb(0)
170
+ , _timeout_cb_arg(0)
171
+ , _poll_cb(0)
172
+ , _poll_cb_arg(0)
173
+ , _pcb_busy(false)
174
+ #if ASYNC_TCP_SSL_ENABLED
175
+ , _pcb_secure(false)
176
+ , _handshake_done(true)
177
+ #endif
178
+ , _pcb_sent_at(0)
179
+ , _close_pcb(false)
180
+ , _ack_pcb(true)
181
+ , _tx_unacked_len(0)
182
+ , _tx_acked_len(0)
183
+ , _rx_ack_len(0)
184
+ , _rx_last_packet(0)
185
+ , _rx_since_timeout(0)
186
+ , _ack_timeout(ASYNC_MAX_ACK_TIME)
187
+ , _connect_port(0)
188
+ , _recv_pbuf_flags(0)
189
+ , _errorTracker(NULL)
190
+ , prev(NULL)
191
+ , next(NULL)
192
+ {
193
+ _pcb = pcb;
194
+ if(_pcb){
195
+ _rx_last_packet = millis();
196
+ tcp_setprio(_pcb, TCP_PRIO_MIN);
197
+ tcp_arg(_pcb, this);
198
+ tcp_recv(_pcb, &_s_recv);
199
+ tcp_sent(_pcb, &_s_sent);
200
+ tcp_err(_pcb, &_s_error);
201
+ tcp_poll(_pcb, &_s_poll, 1);
202
+ #if ASYNC_TCP_SSL_ENABLED
203
+ if(ssl_ctx){
204
+ if(tcp_ssl_new_server(_pcb, ssl_ctx) < 0){
205
+ _close();
206
+ return;
207
+ }
208
+ tcp_ssl_arg(_pcb, this);
209
+ tcp_ssl_data(_pcb, &_s_data);
210
+ tcp_ssl_handshake(_pcb, &_s_handshake);
211
+ tcp_ssl_err(_pcb, &_s_ssl_error);
212
+
213
+ _pcb_secure = true;
214
+ _handshake_done = false;
215
+ }
216
+ #endif
217
+ }
218
+
219
+ _errorTracker = std::make_shared<ACErrorTracker>(this);
220
+ #if DEBUG_ESP_ASYNC_TCP
221
+ _errorTracker->setConnectionId(++_connectionCount);
222
+ #endif
223
+ }
224
+
225
+ AsyncClient::~AsyncClient(){
226
+ if(_pcb)
227
+ _close();
228
+
229
+ _errorTracker->clearClient();
230
+ }
231
+
232
+ inline void clearTcpCallbacks(tcp_pcb* pcb){
233
+ tcp_arg(pcb, NULL);
234
+ tcp_sent(pcb, NULL);
235
+ tcp_recv(pcb, NULL);
236
+ tcp_err(pcb, NULL);
237
+ tcp_poll(pcb, NULL, 0);
238
+ }
239
+
240
+ #if ASYNC_TCP_SSL_ENABLED
241
+ bool AsyncClient::connect(IPAddress ip, uint16_t port, bool secure){
242
+ #else
243
+ bool AsyncClient::connect(IPAddress ip, uint16_t port){
244
+ #endif
245
+ if (_pcb) //already connected
246
+ return false;
247
+ IPAddress addr;
248
+ addr = ip;
249
+ #if LWIP_VERSION_MAJOR == 1
250
+ netif* interface = ip_route(&addr);
251
+ if (!interface){ //no route to host
252
+ return false;
253
+ }
254
+ #endif
255
+ tcp_pcb* pcb = tcp_new();
256
+ if (!pcb){ //could not allocate pcb
257
+ return false;
258
+ }
259
+
260
+ tcp_setprio(pcb, TCP_PRIO_MIN);
261
+ #if ASYNC_TCP_SSL_ENABLED
262
+ _pcb_secure = secure;
263
+ _handshake_done = !secure;
264
+ #endif
265
+ tcp_arg(pcb, this);
266
+ tcp_err(pcb, &_s_error);
267
+ size_t err = tcp_connect(pcb, addr, port,(tcp_connected_fn)&_s_connected);
268
+ return (ERR_OK == err);
269
+ }
270
+
271
+ #if ASYNC_TCP_SSL_ENABLED
272
+ bool AsyncClient::connect(const char* host, uint16_t port, bool secure){
273
+ #else
274
+ bool AsyncClient::connect(const char* host, uint16_t port){
275
+ #endif
276
+ IPAddress addr;
277
+ err_t err = dns_gethostbyname(host, addr, (dns_found_callback)&_s_dns_found, this);
278
+ if(err == ERR_OK) {
279
+ #if ASYNC_TCP_SSL_ENABLED
280
+ return connect(addr, port, secure);
281
+ #else
282
+ return connect(addr, port);
283
+ #endif
284
+ } else if(err == ERR_INPROGRESS) {
285
+ #if ASYNC_TCP_SSL_ENABLED
286
+ _pcb_secure = secure;
287
+ _handshake_done = !secure;
288
+ #endif
289
+ _connect_port = port;
290
+ return true;
291
+ }
292
+ return false;
293
+ }
294
+
295
+ AsyncClient& AsyncClient::operator=(const AsyncClient& other){
296
+ if (_pcb) {
297
+ ASYNC_TCP_DEBUG("operator=[%u]: Abandoned _pcb(0x%" PRIXPTR ") forced close.\n", getConnectionId(), uintptr_t(_pcb));
298
+ _close();
299
+ }
300
+ _errorTracker = other._errorTracker;
301
+
302
+ // I am confused when "other._pcb" falls out of scope the destructor will
303
+ // close it? TODO: Look to see where this is used and how it might work.
304
+ _pcb = other._pcb;
305
+ if (_pcb) {
306
+ _rx_last_packet = millis();
307
+ tcp_setprio(_pcb, TCP_PRIO_MIN);
308
+ tcp_arg(_pcb, this);
309
+ tcp_recv(_pcb, &_s_recv);
310
+ tcp_sent(_pcb, &_s_sent);
311
+ tcp_err(_pcb, &_s_error);
312
+ tcp_poll(_pcb, &_s_poll, 1);
313
+ #if ASYNC_TCP_SSL_ENABLED
314
+ if(tcp_ssl_has(_pcb)){
315
+ _pcb_secure = true;
316
+ _handshake_done = false;
317
+ tcp_ssl_arg(_pcb, this);
318
+ tcp_ssl_data(_pcb, &_s_data);
319
+ tcp_ssl_handshake(_pcb, &_s_handshake);
320
+ tcp_ssl_err(_pcb, &_s_ssl_error);
321
+ } else {
322
+ _pcb_secure = false;
323
+ _handshake_done = true;
324
+ }
325
+ #endif
326
+ }
327
+ return *this;
328
+ }
329
+
330
+ bool AsyncClient::operator==(const AsyncClient &other) {
331
+ return (_pcb != NULL && other._pcb != NULL && (IPAddress(_pcb->remote_ip) == IPAddress(other._pcb->remote_ip)) && (_pcb->remote_port == other._pcb->remote_port));
332
+ }
333
+
334
+ void AsyncClient::abort(){
335
+ // Notes:
336
+ // 1) _pcb is set to NULL, so we cannot call tcp_abort() more than once.
337
+ // 2) setCloseError(ERR_ABRT) is only done here!
338
+ // 3) Using this abort() function guarantees only one tcp_abort() call is
339
+ // made and only one CB returns with ERR_ABORT.
340
+ // 4) After abort() is called from _close(), no callbacks with an err
341
+ // parameter will be called. eg. _recv(), _error(), _connected().
342
+ // _close() will reset there CB handlers before calling.
343
+ // 5) A callback to _error(), will set _pcb to NULL, thus avoiding the
344
+ // of a 2nd call to tcp_abort().
345
+ // 6) Callbacks to _recv() or _connected() with err set, will result in _pcb
346
+ // set to NULL. Thus, preventing possible calls later to tcp_abort().
347
+ if(_pcb) {
348
+ tcp_abort(_pcb);
349
+ _pcb = NULL;
350
+ setCloseError(ERR_ABRT);
351
+ }
352
+ return;
353
+ }
354
+
355
+ void AsyncClient::close(bool now){
356
+ if(_pcb)
357
+ tcp_recved(_pcb, _rx_ack_len);
358
+ if(now) {
359
+ ASYNC_TCP_DEBUG("close[%u]: AsyncClient 0x%" PRIXPTR "\n", getConnectionId(), uintptr_t(this));
360
+ _close();
361
+ } else {
362
+ _close_pcb = true;
363
+ }
364
+ }
365
+
366
+ void AsyncClient::stop() {
367
+ close(false);
368
+ }
369
+
370
+ bool AsyncClient::free(){
371
+ if(!_pcb)
372
+ return true;
373
+ if(_pcb->state == 0 || _pcb->state > 4)
374
+ return true;
375
+ return false;
376
+ }
377
+
378
+ size_t AsyncClient::write(const char* data) {
379
+ if(data == NULL)
380
+ return 0;
381
+ return write(data, strlen(data));
382
+ }
383
+
384
+ size_t AsyncClient::write(const char* data, size_t size, uint8_t apiflags) {
385
+ size_t will_send = add(data, size, apiflags);
386
+
387
+ if(!will_send || !send())
388
+ return 0;
389
+ return will_send;
390
+ }
391
+
392
+ size_t AsyncClient::add(const char* data, size_t size, uint8_t apiflags) {
393
+ if(!_pcb || size == 0 || data == NULL)
394
+ return 0;
395
+ size_t room = space();
396
+ if(!room)
397
+ return 0;
398
+ #if ASYNC_TCP_SSL_ENABLED
399
+ if(_pcb_secure){
400
+ int sent = tcp_ssl_write(_pcb, (uint8_t*)data, size);
401
+ if(sent >= 0){
402
+ _tx_unacked_len += sent;
403
+ return sent;
404
+ }
405
+ _close();
406
+ return 0;
407
+ }
408
+ #endif
409
+ size_t will_send = (room < size) ? room : size;
410
+ err_t err = tcp_write(_pcb, data, will_send, apiflags);
411
+ if(err != ERR_OK) {
412
+ ASYNC_TCP_DEBUG("_add[%u]: tcp_write() returned err: %s(%ld)\n", getConnectionId(), errorToString(err), err);
413
+ return 0;
414
+ }
415
+ _tx_unacked_len += will_send;
416
+ return will_send;
417
+ }
418
+
419
+ bool AsyncClient::send(){
420
+ #if ASYNC_TCP_SSL_ENABLED
421
+ if(_pcb_secure)
422
+ return true;
423
+ #endif
424
+ err_t err = tcp_output(_pcb);
425
+ if(err == ERR_OK){
426
+ _pcb_busy = true;
427
+ _pcb_sent_at = millis();
428
+ return true;
429
+ }
430
+
431
+ ASYNC_TCP_DEBUG("send[%u]: tcp_output() returned err: %s(%ld)", getConnectionId(), errorToString(err), err);
432
+ return false;
433
+ }
434
+
435
+ size_t AsyncClient::ack(size_t len){
436
+ if(len > _rx_ack_len)
437
+ len = _rx_ack_len;
438
+ if(len)
439
+ tcp_recved(_pcb, len);
440
+ _rx_ack_len -= len;
441
+ return len;
442
+ }
443
+
444
+ // Private Callbacks
445
+
446
+ void AsyncClient::_connected(std::shared_ptr<ACErrorTracker>& errorTracker, void* pcb, err_t err){
447
+ //(void)err; // LWIP v1.4 appears to always call with ERR_OK
448
+ // Documentation for 2.1.0 also says:
449
+ // "err - An unused error code, always ERR_OK currently ;-)"
450
+ // https://www.nongnu.org/lwip/2_1_x/tcp_8h.html#a939867106bd492caf2d85852fb7f6ae8
451
+ // Based on that wording and emoji lets just handle it now.
452
+ // After all, the API does allow for an err != ERR_OK.
453
+ if(NULL == pcb || ERR_OK != err) {
454
+ ASYNC_TCP_DEBUG("_connected[%u]:%s err: %s(%ld)\n", errorTracker->getConnectionId(), ((NULL == pcb) ? " NULL == pcb!," : ""), errorToString(err), err);
455
+ errorTracker->setCloseError(err);
456
+ errorTracker->setErrored(EE_CONNECTED_CB);
457
+ _pcb = reinterpret_cast<tcp_pcb*>(pcb);
458
+ if (_pcb)
459
+ clearTcpCallbacks(_pcb);
460
+ _pcb = NULL;
461
+ _error(err);
462
+ return;
463
+ }
464
+
465
+ _pcb = reinterpret_cast<tcp_pcb*>(pcb);
466
+ if(_pcb){
467
+ _pcb_busy = false;
468
+ _rx_last_packet = millis();
469
+ tcp_setprio(_pcb, TCP_PRIO_MIN);
470
+ tcp_recv(_pcb, &_s_recv);
471
+ tcp_sent(_pcb, &_s_sent);
472
+ tcp_poll(_pcb, &_s_poll, 1);
473
+ #if ASYNC_TCP_SSL_ENABLED
474
+ if(_pcb_secure){
475
+ if(tcp_ssl_new_client(_pcb) < 0){
476
+ _close();
477
+ return;
478
+ }
479
+ tcp_ssl_arg(_pcb, this);
480
+ tcp_ssl_data(_pcb, &_s_data);
481
+ tcp_ssl_handshake(_pcb, &_s_handshake);
482
+ tcp_ssl_err(_pcb, &_s_ssl_error);
483
+ }
484
+ }
485
+ if(!_pcb_secure && _connect_cb)
486
+ #else
487
+ }
488
+ if(_connect_cb)
489
+ #endif
490
+ _connect_cb(_connect_cb_arg, this);
491
+ return;
492
+ }
493
+
494
+ void AsyncClient::_close(){
495
+ if(_pcb) {
496
+ #if ASYNC_TCP_SSL_ENABLED
497
+ if(_pcb_secure){
498
+ tcp_ssl_free(_pcb);
499
+ }
500
+ #endif
501
+ clearTcpCallbacks(_pcb);
502
+ err_t err = tcp_close(_pcb);
503
+ if(ERR_OK == err) {
504
+ setCloseError(err);
505
+ ASYNC_TCP_DEBUG("_close[%u]: AsyncClient 0x%" PRIXPTR "\n", getConnectionId(), uintptr_t(this));
506
+ } else {
507
+ ASYNC_TCP_DEBUG("_close[%u]: abort() called for AsyncClient 0x%" PRIXPTR "\n", getConnectionId(), uintptr_t(this));
508
+ abort();
509
+ }
510
+ _pcb = NULL;
511
+ if(_discard_cb)
512
+ _discard_cb(_discard_cb_arg, this);
513
+ }
514
+ return;
515
+ }
516
+
517
+ void AsyncClient::_error(err_t err) {
518
+ ASYNC_TCP_DEBUG("_error[%u]:%s err: %s(%ld)\n", getConnectionId(), ((NULL == _pcb) ? " NULL == _pcb!," : ""), errorToString(err), err);
519
+ if(_pcb){
520
+ #if ASYNC_TCP_SSL_ENABLED
521
+ if(_pcb_secure){
522
+ tcp_ssl_free(_pcb);
523
+ }
524
+ #endif
525
+ // At this callback _pcb is possible already freed. Thus, no calls are
526
+ // made to set to NULL other callbacks.
527
+ _pcb = NULL;
528
+ }
529
+ if(_error_cb)
530
+ _error_cb(_error_cb_arg, this, err);
531
+ if(_discard_cb)
532
+ _discard_cb(_discard_cb_arg, this);
533
+ }
534
+
535
+ #if ASYNC_TCP_SSL_ENABLED
536
+ void AsyncClient::_ssl_error(int8_t err){
537
+ if(_error_cb)
538
+ _error_cb(_error_cb_arg, this, err+64);
539
+ }
540
+ #endif
541
+
542
+ void AsyncClient::_sent(std::shared_ptr<ACErrorTracker>& errorTracker, tcp_pcb* pcb, uint16_t len) {
543
+ (void)pcb;
544
+ #if ASYNC_TCP_SSL_ENABLED
545
+ if (_pcb_secure && !_handshake_done)
546
+ return;
547
+ #endif
548
+ _rx_last_packet = millis();
549
+ _tx_unacked_len -= len;
550
+ _tx_acked_len += len;
551
+ ASYNC_TCP_DEBUG("_sent[%u]: %4u, unacked=%4u, acked=%4u, space=%4u\n", errorTracker->getConnectionId(), len, _tx_unacked_len, _tx_acked_len, space());
552
+ if(_tx_unacked_len == 0){
553
+ _pcb_busy = false;
554
+ errorTracker->setCloseError(ERR_OK);
555
+ if(_sent_cb) {
556
+ _sent_cb(_sent_cb_arg, this, _tx_acked_len, (millis() - _pcb_sent_at));
557
+ if(!errorTracker->hasClient())
558
+ return;
559
+ }
560
+ _tx_acked_len = 0;
561
+ }
562
+ return;
563
+ }
564
+
565
+ void AsyncClient::_recv(std::shared_ptr<ACErrorTracker>& errorTracker, tcp_pcb* pcb, pbuf* pb, err_t err) {
566
+ // While lwIP v1.4 appears to always call with ERR_OK, 2.x lwIP may present
567
+ // a non-ERR_OK value.
568
+ // https://www.nongnu.org/lwip/2_1_x/tcp_8h.html#a780cfac08b02c66948ab94ea974202e8
569
+ if(NULL == pcb || ERR_OK != err){
570
+ ASYNC_TCP_DEBUG("_recv[%u]:%s err: %s(%ld)\n", errorTracker->getConnectionId(), ((NULL == pcb) ? " NULL == pcb!," : ""), errorToString(err), err);
571
+ ASYNC_TCP_ASSERT(ERR_ABRT != err);
572
+ errorTracker->setCloseError(err);
573
+ errorTracker->setErrored(EE_RECV_CB);
574
+ _pcb = pcb;
575
+ if(_pcb)
576
+ clearTcpCallbacks(_pcb);
577
+ _pcb = NULL;
578
+ // I think we are safe from being called from an interrupt context.
579
+ // Best Hint that calling _error() is safe:
580
+ // https://www.nongnu.org/lwip/2_1_x/group__lwip__nosys.html
581
+ // "Feed incoming packets to netif->input(pbuf, netif) function from
582
+ // mainloop, not from interrupt context. You can allocate a Packet buffers
583
+ // (PBUF) in interrupt context and put them into a queue which is processed
584
+ // from mainloop."
585
+ // And the description of "Mainloop Mode" option 2:
586
+ // https://www.nongnu.org/lwip/2_1_x/pitfalls.html
587
+ // "2) Run lwIP in a mainloop. ... lwIP is ONLY called from mainloop
588
+ // callstacks here. The ethernet IRQ has to put received telegrams into a
589
+ // queue which is polled in the mainloop. Ensure lwIP is NEVER called from
590
+ // an interrupt, ...!"
591
+ // Based on these comments I am thinking tcp_recv_fn() is called
592
+ // from somebody's mainloop(), which could only have been reached from a
593
+ // delay like function or the Arduino sketch loop() function has returned.
594
+ // What I don't want is for the client sketch to delete the AsyncClient
595
+ // object via _error() while it is in the middle of using it. However,
596
+ // the client sketch must always test that the connection is still up
597
+ // at loop() entry and after the return of any function call, that may
598
+ // have done a delay() or yield().
599
+ _error(err);
600
+ return;
601
+ }
602
+
603
+ if(pb == NULL){
604
+ ASYNC_TCP_DEBUG("_recv[%u]: pb == NULL! Closing... %ld\n", errorTracker->getConnectionId(), err);
605
+ _close();
606
+ return;
607
+ }
608
+ _rx_last_packet = millis();
609
+ errorTracker->setCloseError(ERR_OK);
610
+ #if ASYNC_TCP_SSL_ENABLED
611
+ if(_pcb_secure){
612
+ ASYNC_TCP_DEBUG("_recv[%u]: %d\n", getConnectionId(), pb->tot_len);
613
+ int read_bytes = tcp_ssl_read(pcb, pb);
614
+ if(read_bytes < 0){
615
+ if (read_bytes != SSL_CLOSE_NOTIFY) {
616
+ ASYNC_TCP_DEBUG("_recv[%u] err: %d\n", getConnectionId(), read_bytes);
617
+ _close();
618
+ }
619
+ }
620
+ return;
621
+ }
622
+ #endif
623
+ while(pb != NULL){
624
+ // IF this callback function returns ERR_OK or ERR_ABRT
625
+ // then it is assummed we freed the pbufs.
626
+ // https://www.nongnu.org/lwip/2_1_x/group__tcp__raw.html#ga8afd0b316a87a5eeff4726dc95006ed0
627
+ if(!errorTracker->hasClient()){
628
+ while(pb != NULL){
629
+ pbuf *b = pb;
630
+ pb = b->next;
631
+ b->next = NULL;
632
+ pbuf_free(b);
633
+ }
634
+ return;
635
+ }
636
+ //we should not ack before we assimilate the data
637
+ _ack_pcb = true;
638
+ pbuf *b = pb;
639
+ pb = b->next;
640
+ b->next = NULL;
641
+ ASYNC_TCP_DEBUG("_recv[%u]: %d%s\n", errorTracker->getConnectionId(), b->len, (b->flags&PBUF_FLAG_PUSH)?", PBUF_FLAG_PUSH":"");
642
+ if(_pb_cb){
643
+ _pb_cb(_pb_cb_arg, this, b);
644
+ } else {
645
+ if(_recv_cb){
646
+ _recv_pbuf_flags = b->flags;
647
+ _recv_cb(_recv_cb_arg, this, b->payload, b->len);
648
+ }
649
+ if(errorTracker->hasClient()){
650
+ if(!_ack_pcb)
651
+ _rx_ack_len += b->len;
652
+ else
653
+ tcp_recved(pcb, b->len);
654
+ }
655
+ pbuf_free(b);
656
+ }
657
+ }
658
+ return;
659
+ }
660
+
661
+ void AsyncClient::_poll(std::shared_ptr<ACErrorTracker>& errorTracker, tcp_pcb* pcb){
662
+ (void)pcb;
663
+ errorTracker->setCloseError(ERR_OK);
664
+
665
+ // Close requested
666
+ if(_close_pcb){
667
+ ASYNC_TCP_DEBUG("_poll[%u]: Process _close_pcb.\n", errorTracker->getConnectionId() );
668
+ _close_pcb = false;
669
+ _close();
670
+ return;
671
+ }
672
+ uint32_t now = millis();
673
+
674
+ // ACK Timeout
675
+ if(_pcb_busy && _ack_timeout && (now - _pcb_sent_at) >= _ack_timeout){
676
+ _pcb_busy = false;
677
+ if(_timeout_cb)
678
+ _timeout_cb(_timeout_cb_arg, this, (now - _pcb_sent_at));
679
+ return;
680
+ }
681
+ // RX Timeout
682
+ if(_rx_since_timeout && (now - _rx_last_packet) >= (_rx_since_timeout * 1000)){
683
+ ASYNC_TCP_DEBUG("_poll[%u]: RX Timeout.\n", errorTracker->getConnectionId() );
684
+ _close();
685
+ return;
686
+ }
687
+ #if ASYNC_TCP_SSL_ENABLED
688
+ // SSL Handshake Timeout
689
+ if(_pcb_secure && !_handshake_done && (now - _rx_last_packet) >= 2000){
690
+ ASYNC_TCP_DEBUG("_poll[%u]: SSL Handshake Timeout.\n", errorTracker->getConnectionId() );
691
+ _close();
692
+ return;
693
+ }
694
+ #endif
695
+ // Everything is fine
696
+ if(_poll_cb)
697
+ _poll_cb(_poll_cb_arg, this);
698
+ return;
699
+ }
700
+
701
+ #if LWIP_VERSION_MAJOR == 1
702
+ void AsyncClient::_dns_found(struct ip_addr *ipaddr){
703
+ #else
704
+ void AsyncClient::_dns_found(const ip_addr *ipaddr){
705
+ #endif
706
+ if(ipaddr){
707
+ #if ASYNC_TCP_SSL_ENABLED
708
+ connect(ipaddr, _connect_port, _pcb_secure);
709
+ #else
710
+ connect(ipaddr, _connect_port);
711
+ #endif
712
+ } else {
713
+ if(_error_cb)
714
+ _error_cb(_error_cb_arg, this, -55);
715
+ if(_discard_cb)
716
+ _discard_cb(_discard_cb_arg, this);
717
+ }
718
+ }
719
+
720
+ // lwIP Callbacks
721
+ #if LWIP_VERSION_MAJOR == 1
722
+ void AsyncClient::_s_dns_found(const char *name, ip_addr_t *ipaddr, void *arg){
723
+ #else
724
+ void AsyncClient::_s_dns_found(const char *name, const ip_addr *ipaddr, void *arg){
725
+ #endif
726
+ (void)name;
727
+ reinterpret_cast<AsyncClient*>(arg)->_dns_found(ipaddr);
728
+ }
729
+
730
+ err_t AsyncClient::_s_poll(void *arg, struct tcp_pcb *tpcb) {
731
+ AsyncClient *c = reinterpret_cast<AsyncClient*>(arg);
732
+ std::shared_ptr<ACErrorTracker>errorTracker = c->getACErrorTracker();
733
+ c->_poll(errorTracker, tpcb);
734
+ return errorTracker->getCallbackCloseError();
735
+ }
736
+
737
+ err_t AsyncClient::_s_recv(void *arg, struct tcp_pcb *tpcb, struct pbuf *pb, err_t err) {
738
+ AsyncClient *c = reinterpret_cast<AsyncClient*>(arg);
739
+ auto errorTracker = c->getACErrorTracker();
740
+ c->_recv(errorTracker, tpcb, pb, err);
741
+ return errorTracker->getCallbackCloseError();
742
+ }
743
+
744
+ void AsyncClient::_s_error(void *arg, err_t err) {
745
+ AsyncClient *c = reinterpret_cast<AsyncClient*>(arg);
746
+ auto errorTracker = c->getACErrorTracker();
747
+ errorTracker->setCloseError(err);
748
+ errorTracker->setErrored(EE_ERROR_CB);
749
+ c->_error(err);
750
+ }
751
+
752
+ err_t AsyncClient::_s_sent(void *arg, struct tcp_pcb *tpcb, uint16_t len) {
753
+ AsyncClient *c = reinterpret_cast<AsyncClient*>(arg);
754
+ auto errorTracker = c->getACErrorTracker();
755
+ c->_sent(errorTracker, tpcb, len);
756
+ return errorTracker->getCallbackCloseError();
757
+ }
758
+
759
+ err_t AsyncClient::_s_connected(void* arg, void* tpcb, err_t err){
760
+ AsyncClient *c = reinterpret_cast<AsyncClient*>(arg);
761
+ auto errorTracker = c->getACErrorTracker();
762
+ c->_connected(errorTracker, tpcb, err);
763
+ return errorTracker->getCallbackCloseError();
764
+ }
765
+
766
+ #if ASYNC_TCP_SSL_ENABLED
767
+ void AsyncClient::_s_data(void *arg, struct tcp_pcb *tcp, uint8_t * data, size_t len){
768
+ (void)tcp;
769
+ AsyncClient *c = reinterpret_cast<AsyncClient*>(arg);
770
+ if(c->_recv_cb)
771
+ c->_recv_cb(c->_recv_cb_arg, c, data, len);
772
+ }
773
+
774
+ void AsyncClient::_s_handshake(void *arg, struct tcp_pcb *tcp, SSL *ssl){
775
+ (void)tcp;
776
+ (void)ssl;
777
+ AsyncClient *c = reinterpret_cast<AsyncClient*>(arg);
778
+ c->_handshake_done = true;
779
+ if(c->_connect_cb)
780
+ c->_connect_cb(c->_connect_cb_arg, c);
781
+ }
782
+
783
+ void AsyncClient::_s_ssl_error(void *arg, struct tcp_pcb *tcp, int8_t err){
784
+ (void)tcp;
785
+ #ifdef DEBUG_ESP_ASYNC_TCP
786
+ AsyncClient *c = reinterpret_cast<AsyncClient*>(arg);
787
+ auto errorTracker = c->getACErrorTracker();
788
+ ASYNC_TCP_DEBUG("_ssl_error[%u] err = %d\n", errorTracker->getConnectionId(), err);
789
+ #endif
790
+ reinterpret_cast<AsyncClient*>(arg)->_ssl_error(err);
791
+ }
792
+ #endif
793
+
794
+ // Operators
795
+
796
+ AsyncClient & AsyncClient::operator+=(const AsyncClient &other) {
797
+ if(next == NULL){
798
+ next = (AsyncClient*)(&other);
799
+ next->prev = this;
800
+ } else {
801
+ AsyncClient *c = next;
802
+ while(c->next != NULL) c = c->next;
803
+ c->next =(AsyncClient*)(&other);
804
+ c->next->prev = c;
805
+ }
806
+ return *this;
807
+ }
808
+
809
+ void AsyncClient::setRxTimeout(uint32_t timeout){
810
+ _rx_since_timeout = timeout;
811
+ }
812
+
813
+ uint32_t AsyncClient::getRxTimeout(){
814
+ return _rx_since_timeout;
815
+ }
816
+
817
+ uint32_t AsyncClient::getAckTimeout(){
818
+ return _ack_timeout;
819
+ }
820
+
821
+ void AsyncClient::setAckTimeout(uint32_t timeout){
822
+ _ack_timeout = timeout;
823
+ }
824
+
825
+ void AsyncClient::setNoDelay(bool nodelay){
826
+ if(!_pcb)
827
+ return;
828
+ if(nodelay)
829
+ tcp_nagle_disable(_pcb);
830
+ else
831
+ tcp_nagle_enable(_pcb);
832
+ }
833
+
834
+ bool AsyncClient::getNoDelay(){
835
+ if(!_pcb)
836
+ return false;
837
+ return tcp_nagle_disabled(_pcb);
838
+ }
839
+
840
+ uint16_t AsyncClient::getMss(){
841
+ if(_pcb)
842
+ return tcp_mss(_pcb);
843
+ return 0;
844
+ }
845
+
846
+ uint16_t AsyncClient::getRemotePort() {
847
+ if(!_pcb)
848
+ return 0;
849
+ return _pcb->remote_port;
850
+ }
851
+
852
+
853
+ uint16_t AsyncClient::getLocalPort() {
854
+ if(!_pcb)
855
+ return 0;
856
+ return _pcb->local_port;
857
+ }
858
+
859
+ IPAddress AsyncClient::remoteIP() {
860
+ if(!_pcb)
861
+ return IPAddress(0);
862
+ return _pcb->remote_ip;
863
+ }
864
+
865
+ uint16_t AsyncClient::remotePort() {
866
+ return getRemotePort();
867
+ }
868
+
869
+ IPAddress AsyncClient::localIP() {
870
+ if(!_pcb)
871
+ return IPAddress(0);
872
+ return _pcb->local_ip;
873
+ }
874
+
875
+ uint16_t AsyncClient::localPort() {
876
+ return getLocalPort();
877
+ }
878
+
879
+ #if ASYNC_TCP_SSL_ENABLED
880
+ SSL * AsyncClient::getSSL(){
881
+ if(_pcb && _pcb_secure){
882
+ return tcp_ssl_get_ssl(_pcb);
883
+ }
884
+ return NULL;
885
+ }
886
+ #endif
887
+
888
+ uint8_t AsyncClient::state() {
889
+ if(!_pcb)
890
+ return 0;
891
+ return _pcb->state;
892
+ }
893
+
894
+ bool AsyncClient::connected(){
895
+ if (!_pcb)
896
+ return false;
897
+ #if ASYNC_TCP_SSL_ENABLED
898
+ return _pcb->state == 4 && _handshake_done;
899
+ #else
900
+ return _pcb->state == 4;
901
+ #endif
902
+ }
903
+
904
+ bool AsyncClient::connecting(){
905
+ if (!_pcb)
906
+ return false;
907
+ return _pcb->state > 0 && _pcb->state < 4;
908
+ }
909
+
910
+ bool AsyncClient::disconnecting(){
911
+ if (!_pcb)
912
+ return false;
913
+ return _pcb->state > 4 && _pcb->state < 10;
914
+ }
915
+
916
+ bool AsyncClient::disconnected(){
917
+ if (!_pcb)
918
+ return true;
919
+ return _pcb->state == 0 || _pcb->state == 10;
920
+ }
921
+
922
+ bool AsyncClient::freeable(){
923
+ if (!_pcb)
924
+ return true;
925
+ return _pcb->state == 0 || _pcb->state > 4;
926
+ }
927
+
928
+ bool AsyncClient::canSend(){
929
+ return !_pcb_busy && (space() > 0);
930
+ }
931
+
932
+
933
+ // Callback Setters
934
+
935
+ void AsyncClient::onConnect(AcConnectHandler cb, void* arg){
936
+ _connect_cb = cb;
937
+ _connect_cb_arg = arg;
938
+ }
939
+
940
+ void AsyncClient::onDisconnect(AcConnectHandler cb, void* arg){
941
+ _discard_cb = cb;
942
+ _discard_cb_arg = arg;
943
+ }
944
+
945
+ void AsyncClient::onAck(AcAckHandler cb, void* arg){
946
+ _sent_cb = cb;
947
+ _sent_cb_arg = arg;
948
+ }
949
+
950
+ void AsyncClient::onError(AcErrorHandler cb, void* arg){
951
+ _error_cb = cb;
952
+ _error_cb_arg = arg;
953
+ }
954
+
955
+ void AsyncClient::onData(AcDataHandler cb, void* arg){
956
+ _recv_cb = cb;
957
+ _recv_cb_arg = arg;
958
+ }
959
+
960
+ void AsyncClient::onPacket(AcPacketHandler cb, void* arg){
961
+ _pb_cb = cb;
962
+ _pb_cb_arg = arg;
963
+ }
964
+
965
+ void AsyncClient::onTimeout(AcTimeoutHandler cb, void* arg){
966
+ _timeout_cb = cb;
967
+ _timeout_cb_arg = arg;
968
+ }
969
+
970
+ void AsyncClient::onPoll(AcConnectHandler cb, void* arg){
971
+ _poll_cb = cb;
972
+ _poll_cb_arg = arg;
973
+ }
974
+
975
+
976
+ size_t AsyncClient::space(){
977
+ #if ASYNC_TCP_SSL_ENABLED
978
+ if((_pcb != NULL) && (_pcb->state == 4) && _handshake_done){
979
+ uint16_t s = tcp_sndbuf(_pcb);
980
+ if(_pcb_secure){
981
+ #ifdef AXTLS_2_0_0_SNDBUF
982
+ return tcp_ssl_sndbuf(_pcb);
983
+ #else
984
+ if(s >= 128) //safe approach
985
+ return s - 128;
986
+ return 0;
987
+ #endif
988
+ }
989
+ return s;
990
+ }
991
+ #else // ASYNC_TCP_SSL_ENABLED
992
+ if((_pcb != NULL) && (_pcb->state == 4)){
993
+ return tcp_sndbuf(_pcb);
994
+ }
995
+ #endif // ASYNC_TCP_SSL_ENABLED
996
+ return 0;
997
+ }
998
+
999
+ void AsyncClient::ackPacket(struct pbuf * pb){
1000
+ if(!pb){
1001
+ return;
1002
+ }
1003
+ tcp_recved(_pcb, pb->len);
1004
+ pbuf_free(pb);
1005
+ }
1006
+
1007
+ const char * AsyncClient::errorToString(err_t error) {
1008
+ switch (error) {
1009
+ case ERR_OK: return "No error, everything OK";
1010
+ case ERR_MEM: return "Out of memory error";
1011
+ case ERR_BUF: return "Buffer error";
1012
+ case ERR_TIMEOUT: return "Timeout";
1013
+ case ERR_RTE: return "Routing problem";
1014
+ case ERR_INPROGRESS: return "Operation in progress";
1015
+ case ERR_VAL: return "Illegal value";
1016
+ case ERR_WOULDBLOCK: return "Operation would block";
1017
+ case ERR_ABRT: return "Connection aborted";
1018
+ case ERR_RST: return "Connection reset";
1019
+ case ERR_CLSD: return "Connection closed";
1020
+ case ERR_CONN: return "Not connected";
1021
+ case ERR_ARG: return "Illegal argument";
1022
+ case ERR_USE: return "Address in use";
1023
+ #if defined(LWIP_VERSION_MAJOR) && (LWIP_VERSION_MAJOR > 1)
1024
+ case ERR_ALREADY: return "Already connectioning";
1025
+ #endif
1026
+ case ERR_IF: return "Low-level netif error";
1027
+ case ERR_ISCONN: return "Connection already established";
1028
+ case -55: return "DNS failed";
1029
+ default: return "Unknown error";
1030
+ }
1031
+ }
1032
+
1033
+ const char * AsyncClient::stateToString(){
1034
+ switch(state()){
1035
+ case 0: return "Closed";
1036
+ case 1: return "Listen";
1037
+ case 2: return "SYN Sent";
1038
+ case 3: return "SYN Received";
1039
+ case 4: return "Established";
1040
+ case 5: return "FIN Wait 1";
1041
+ case 6: return "FIN Wait 2";
1042
+ case 7: return "Close Wait";
1043
+ case 8: return "Closing";
1044
+ case 9: return "Last ACK";
1045
+ case 10: return "Time Wait";
1046
+ default: return "UNKNOWN";
1047
+ }
1048
+ }
1049
+
1050
+ /*
1051
+ Async TCP Server
1052
+ */
1053
+ struct pending_pcb {
1054
+ tcp_pcb* pcb;
1055
+ pbuf *pb;
1056
+ struct pending_pcb * next;
1057
+ };
1058
+
1059
+ AsyncServer::AsyncServer(IPAddress addr, uint16_t port)
1060
+ : _port(port)
1061
+ , _addr(addr)
1062
+ , _noDelay(false)
1063
+ , _pcb(0)
1064
+ , _connect_cb(0)
1065
+ , _connect_cb_arg(0)
1066
+ #if ASYNC_TCP_SSL_ENABLED
1067
+ , _pending(NULL)
1068
+ , _ssl_ctx(NULL)
1069
+ , _file_cb(0)
1070
+ , _file_cb_arg(0)
1071
+ #endif
1072
+ {
1073
+ #ifdef DEBUG_MORE
1074
+ for (size_t i=0; i<EE_MAX; ++i)
1075
+ _event_count[i] = 0;
1076
+ #endif
1077
+ }
1078
+
1079
+ AsyncServer::AsyncServer(uint16_t port)
1080
+ : _port(port)
1081
+ , _addr(IP_ANY_TYPE)
1082
+ , _noDelay(false)
1083
+ , _pcb(0)
1084
+ , _connect_cb(0)
1085
+ , _connect_cb_arg(0)
1086
+ #if ASYNC_TCP_SSL_ENABLED
1087
+ , _pending(NULL)
1088
+ , _ssl_ctx(NULL)
1089
+ , _file_cb(0)
1090
+ , _file_cb_arg(0)
1091
+ #endif
1092
+ {
1093
+ #ifdef DEBUG_MORE
1094
+ for (size_t i=0; i<EE_MAX; ++i)
1095
+ _event_count[i] = 0;
1096
+ #endif
1097
+ }
1098
+
1099
+ AsyncServer::~AsyncServer(){
1100
+ end();
1101
+ }
1102
+
1103
+ void AsyncServer::onClient(AcConnectHandler cb, void* arg){
1104
+ _connect_cb = cb;
1105
+ _connect_cb_arg = arg;
1106
+ }
1107
+
1108
+ #if ASYNC_TCP_SSL_ENABLED
1109
+ void AsyncServer::onSslFileRequest(AcSSlFileHandler cb, void* arg){
1110
+ _file_cb = cb;
1111
+ _file_cb_arg = arg;
1112
+ }
1113
+ #endif
1114
+
1115
+ void AsyncServer::begin(){
1116
+ if(_pcb)
1117
+ return;
1118
+
1119
+ int8_t err;
1120
+ tcp_pcb* pcb = tcp_new_ip_type(IPADDR_TYPE_ANY);
1121
+ if (!pcb){
1122
+ return;
1123
+ }
1124
+
1125
+ tcp_setprio(pcb, TCP_PRIO_MIN);
1126
+ IPAddress local_addr;
1127
+ local_addr = _addr;
1128
+ err = tcp_bind(pcb, local_addr, _port);
1129
+ // Failures are ERR_ISCONN or ERR_USE
1130
+ if (err != ERR_OK) {
1131
+ tcp_close(pcb);
1132
+ return;
1133
+ }
1134
+
1135
+ tcp_pcb* listen_pcb = tcp_listen(pcb);
1136
+ if (!listen_pcb) {
1137
+ tcp_close(pcb);
1138
+ return;
1139
+ }
1140
+ _pcb = listen_pcb;
1141
+ tcp_arg(_pcb, (void*) this);
1142
+ tcp_accept(_pcb, &_s_accept);
1143
+ }
1144
+
1145
+ #if ASYNC_TCP_SSL_ENABLED
1146
+ void AsyncServer::beginSecure(const char *cert, const char *key, const char *password){
1147
+ if(_ssl_ctx){
1148
+ return;
1149
+ }
1150
+ tcp_ssl_file(_s_cert, this);
1151
+ _ssl_ctx = tcp_ssl_new_server_ctx(cert, key, password);
1152
+ if(_ssl_ctx){
1153
+ begin();
1154
+ }
1155
+ }
1156
+ #endif
1157
+
1158
+ void AsyncServer::end(){
1159
+ if(_pcb){
1160
+ //cleanup all connections?
1161
+ tcp_arg(_pcb, NULL);
1162
+ tcp_accept(_pcb, NULL);
1163
+ if(tcp_close(_pcb) != ERR_OK){
1164
+ tcp_abort(_pcb);
1165
+ }
1166
+ _pcb = NULL;
1167
+ }
1168
+ #if ASYNC_TCP_SSL_ENABLED
1169
+ if(_ssl_ctx){
1170
+ ssl_ctx_free(_ssl_ctx);
1171
+ _ssl_ctx = NULL;
1172
+ if(_pending){
1173
+ struct pending_pcb * p;
1174
+ while(_pending){
1175
+ p = _pending;
1176
+ _pending = _pending->next;
1177
+ if(p->pb){
1178
+ pbuf_free(p->pb);
1179
+ }
1180
+ free(p);
1181
+ }
1182
+ }
1183
+ }
1184
+ #endif
1185
+ }
1186
+
1187
+ void AsyncServer::setNoDelay(bool nodelay){
1188
+ _noDelay = nodelay;
1189
+ }
1190
+
1191
+ bool AsyncServer::getNoDelay(){
1192
+ return _noDelay;
1193
+ }
1194
+
1195
+ uint8_t AsyncServer::status(){
1196
+ if (!_pcb)
1197
+ return 0;
1198
+ return _pcb->state;
1199
+ }
1200
+
1201
+ err_t AsyncServer::_accept(tcp_pcb* pcb, err_t err){
1202
+ //http://savannah.nongnu.org/bugs/?43739
1203
+ if(NULL == pcb || ERR_OK != err){
1204
+ // https://www.nongnu.org/lwip/2_1_x/tcp_8h.html#a00517abce6856d6c82f0efebdafb734d
1205
+ // An error code if there has been an error accepting. Only return ERR_ABRT
1206
+ // if you have called tcp_abort from within the callback function!
1207
+ // eg. 2.1.0 could call with error on failure to allocate pcb.
1208
+ ASYNC_TCP_DEBUG("_accept:%s err: %ld\n", ((NULL == pcb) ? " NULL == pcb!," : ""), err);
1209
+ ASYNC_TCP_ASSERT(ERR_ABRT != err);
1210
+ #ifdef DEBUG_MORE
1211
+ incEventCount(EE_ACCEPT_CB);
1212
+ #endif
1213
+ return ERR_OK;
1214
+ }
1215
+
1216
+ if(_connect_cb){
1217
+ #if ASYNC_TCP_SSL_ENABLED
1218
+ if (_noDelay || _ssl_ctx)
1219
+ #else
1220
+ if (_noDelay)
1221
+ #endif
1222
+ tcp_nagle_disable(pcb);
1223
+ else
1224
+ tcp_nagle_enable(pcb);
1225
+
1226
+ #if ASYNC_TCP_SSL_ENABLED
1227
+ if(_ssl_ctx){
1228
+ if(tcp_ssl_has_client() || _pending){
1229
+ struct pending_pcb * new_item = (struct pending_pcb*)malloc(sizeof(struct pending_pcb));
1230
+ if(!new_item){
1231
+ ASYNC_TCP_DEBUG("### malloc new pending failed!\n");
1232
+ if(tcp_close(pcb) != ERR_OK){
1233
+ tcp_abort(pcb);
1234
+ return ERR_ABRT;
1235
+ }
1236
+ return ERR_OK;
1237
+ }
1238
+ //1 ASYNC_TCP_DEBUG("### put to wait: %d\n", _clients_waiting);
1239
+ new_item->pcb = pcb;
1240
+ new_item->pb = NULL;
1241
+ new_item->next = NULL;
1242
+ tcp_setprio(_pcb, TCP_PRIO_MIN);
1243
+ tcp_arg(pcb, this);
1244
+ tcp_poll(pcb, &_s_poll, 1);
1245
+ tcp_recv(pcb, &_s_recv);
1246
+
1247
+ if(_pending == NULL){
1248
+ _pending = new_item;
1249
+ } else {
1250
+ struct pending_pcb * p = _pending;
1251
+ while(p->next != NULL)
1252
+ p = p->next;
1253
+ p->next = new_item;
1254
+ }
1255
+ } else {
1256
+ AsyncClient *c = new (std::nothrow) AsyncClient(pcb, _ssl_ctx);
1257
+ if(c){
1258
+ ASYNC_TCP_DEBUG("_accept[%u]: SSL connected\n", c->getConnectionId());
1259
+ c->onConnect([this](void * arg, AsyncClient *c){
1260
+ (void)arg;
1261
+ _connect_cb(_connect_cb_arg, c);
1262
+ }, this);
1263
+ } else {
1264
+ ASYNC_TCP_DEBUG("_accept[_ssl_ctx]: new AsyncClient() failed, connection aborted!\n");
1265
+ if(tcp_close(pcb) != ERR_OK){
1266
+ tcp_abort(pcb);
1267
+ return ERR_ABRT;
1268
+ }
1269
+ }
1270
+ }
1271
+ return ERR_OK;
1272
+ } else {
1273
+ AsyncClient *c = new (std::nothrow) AsyncClient(pcb, NULL);
1274
+ #else
1275
+ AsyncClient *c = new (std::nothrow) AsyncClient(pcb);
1276
+ #endif
1277
+
1278
+ if(c){
1279
+ auto errorTracker = c->getACErrorTracker();
1280
+ #ifdef DEBUG_MORE
1281
+ errorTracker->onErrorEvent(
1282
+ [](void *obj, size_t ee){ ((AsyncServer*)(obj))->incEventCount(ee); },
1283
+ this);
1284
+ #endif
1285
+ ASYNC_TCP_DEBUG("_accept[%u]: connected\n", errorTracker->getConnectionId());
1286
+ _connect_cb(_connect_cb_arg, c);
1287
+ return errorTracker->getCallbackCloseError();
1288
+ } else {
1289
+ ASYNC_TCP_DEBUG("_accept: new AsyncClient() failed, connection aborted!\n");
1290
+ if(tcp_close(pcb) != ERR_OK){
1291
+ tcp_abort(pcb);
1292
+ return ERR_ABRT;
1293
+ }
1294
+ }
1295
+ #if ASYNC_TCP_SSL_ENABLED
1296
+ }
1297
+ #endif
1298
+ }
1299
+ if(tcp_close(pcb) != ERR_OK){
1300
+ tcp_abort(pcb);
1301
+ return ERR_ABRT;
1302
+ }
1303
+ return ERR_OK;
1304
+ }
1305
+
1306
+ err_t AsyncServer::_s_accept(void *arg, tcp_pcb* pcb, err_t err){
1307
+ return reinterpret_cast<AsyncServer*>(arg)->_accept(pcb, err);
1308
+ }
1309
+
1310
+ #if ASYNC_TCP_SSL_ENABLED
1311
+ err_t AsyncServer::_poll(tcp_pcb* pcb){
1312
+ err_t err = ERR_OK;
1313
+ if(!tcp_ssl_has_client() && _pending){
1314
+ struct pending_pcb * p = _pending;
1315
+ if(p->pcb == pcb){
1316
+ _pending = _pending->next;
1317
+ } else {
1318
+ while(p->next && p->next->pcb != pcb) p = p->next;
1319
+ if(!p->next) return 0;
1320
+ struct pending_pcb * b = p->next;
1321
+ p->next = b->next;
1322
+ p = b;
1323
+ }
1324
+ //1 ASYNC_TCP_DEBUG("### remove from wait: %d\n", _clients_waiting);
1325
+ AsyncClient *c = new (std::nothrow) AsyncClient(pcb, _ssl_ctx);
1326
+ if(c){
1327
+ c->onConnect([this](void * arg, AsyncClient *c){
1328
+ (void)arg;
1329
+ _connect_cb(_connect_cb_arg, c);
1330
+ }, this);
1331
+ if(p->pb) {
1332
+ auto errorTracker = c->getACErrorTracker();
1333
+ c->_recv(errorTracker, pcb, p->pb, 0);
1334
+ err = errorTracker->getCallbackCloseError();
1335
+ }
1336
+ }
1337
+ // Should there be error handling for when "new AsynClient" fails??
1338
+ free(p);
1339
+ }
1340
+ return err;
1341
+ }
1342
+
1343
+ err_t AsyncServer::_recv(struct tcp_pcb *pcb, struct pbuf *pb, err_t err){
1344
+ (void)err;
1345
+ if(!_pending)
1346
+ return ERR_OK;
1347
+
1348
+ struct pending_pcb * p;
1349
+
1350
+ if(!pb){
1351
+ //1 ASYNC_TCP_DEBUG("### close from wait: %d\n", _clients_waiting);
1352
+ p = _pending;
1353
+ if(p->pcb == pcb){
1354
+ _pending = _pending->next;
1355
+ } else {
1356
+ while(p->next && p->next->pcb != pcb) p = p->next;
1357
+ if(!p->next) return 0;
1358
+ struct pending_pcb * b = p->next;
1359
+ p->next = b->next;
1360
+ p = b;
1361
+ }
1362
+ if(p->pb){
1363
+ pbuf_free(p->pb);
1364
+ }
1365
+ free(p);
1366
+ size_t err = tcp_close(pcb);
1367
+ if (err != ERR_OK) {
1368
+ tcp_abort(pcb);
1369
+ return ERR_ABRT;
1370
+ }
1371
+ } else {
1372
+ //1 ASYNC_TCP_DEBUG("### wait _recv: %u %d\n", pb->tot_len, _clients_waiting);
1373
+ p = _pending;
1374
+ while(p && p->pcb != pcb)
1375
+ p = p->next;
1376
+ if(p){
1377
+ if(p->pb){
1378
+ pbuf_chain(p->pb, pb);
1379
+ } else {
1380
+ p->pb = pb;
1381
+ }
1382
+ }
1383
+ }
1384
+ return ERR_OK;
1385
+ }
1386
+
1387
+ int AsyncServer::_cert(const char *filename, uint8_t **buf){
1388
+ if(_file_cb){
1389
+ return _file_cb(_file_cb_arg, filename, buf);
1390
+ }
1391
+ *buf = 0;
1392
+ return 0;
1393
+ }
1394
+
1395
+ int AsyncServer::_s_cert(void *arg, const char *filename, uint8_t **buf){
1396
+ return reinterpret_cast<AsyncServer*>(arg)->_cert(filename, buf);
1397
+ }
1398
+
1399
+ err_t AsyncServer::_s_poll(void *arg, struct tcp_pcb *pcb){
1400
+ return reinterpret_cast<AsyncServer*>(arg)->_poll(pcb);
1401
+ }
1402
+
1403
+ err_t AsyncServer::_s_recv(void *arg, struct tcp_pcb *pcb, struct pbuf *pb, err_t err){
1404
+ return reinterpret_cast<AsyncServer*>(arg)->_recv(pcb, pb, err);
1405
+ }
1406
+ #endif