@willieee802/zigbee-herdsman 0.48.3 → 0.49.1

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 (1045) hide show
  1. package/.github/ISSUE_TEMPLATE/config.yml +5 -0
  2. package/.github/copilot-instructions.md +689 -0
  3. package/.github/dependabot.yml +22 -0
  4. package/.github/prompts/copilot-instructions-blueprint-generator.prompt.md +294 -0
  5. package/.github/prompts/create-agentsmd.prompt.md +249 -0
  6. package/.github/prompts/create-specification.prompt.md +127 -0
  7. package/.github/prompts/review-and-refactor.prompt.md +15 -0
  8. package/.github/prompts/update-specification.prompt.md +127 -0
  9. package/.github/workflows/ci.yml +70 -0
  10. package/.github/workflows/release-please.yml +18 -0
  11. package/.github/workflows/stale.yml +20 -0
  12. package/.github/workflows/typedoc.yaml +47 -0
  13. package/.release-please-manifest.json +2 -2
  14. package/.vscode/extensions.json +3 -0
  15. package/.vscode/settings.json +11 -0
  16. package/AGENTS.md +441 -0
  17. package/CHANGELOG.md +1283 -0
  18. package/README.md +1 -1
  19. package/biome.json +103 -0
  20. package/dist/adapter/adapter.d.ts.map +1 -1
  21. package/dist/adapter/adapterDiscovery.d.ts.map +1 -0
  22. package/dist/adapter/const.d.ts.map +1 -0
  23. package/dist/adapter/deconz/adapter/deconzAdapter.d.ts.map +1 -1
  24. package/dist/adapter/ember/adapter/emberAdapter.d.ts.map +1 -1
  25. package/dist/adapter/ember/adapter/endpoints.d.ts.map +1 -1
  26. package/dist/adapter/ember/adapter/oneWaitress.d.ts.map +1 -1
  27. package/dist/adapter/ember/adapter/tokensManager.d.ts.map +1 -1
  28. package/dist/adapter/ember/ezsp/ezsp.d.ts.map +1 -1
  29. package/dist/adapter/ember/utils/initters.d.ts.map +1 -1
  30. package/dist/adapter/events.d.ts.map +1 -1
  31. package/dist/adapter/ezsp/adapter/backup.d.ts.map +1 -1
  32. package/dist/adapter/ezsp/adapter/ezspAdapter.d.ts.map +1 -1
  33. package/dist/adapter/ezsp/driver/driver.d.ts.map +1 -1
  34. package/dist/adapter/ezsp/driver/index.d.ts.map +1 -1
  35. package/dist/adapter/ezsp/driver/multicast.d.ts.map +1 -1
  36. package/dist/adapter/index.d.ts.map +1 -1
  37. package/dist/adapter/z-stack/adapter/endpoints.d.ts.map +1 -1
  38. package/dist/adapter/z-stack/adapter/manager.d.ts.map +1 -1
  39. package/dist/adapter/z-stack/adapter/zStackAdapter.d.ts.map +1 -1
  40. package/dist/adapter/z-stack/models/startup-options.d.ts.map +1 -1
  41. package/dist/adapter/zboss/adapter/zbossAdapter.d.ts.map +1 -0
  42. package/dist/adapter/zboss/driver.d.ts.map +1 -0
  43. package/dist/adapter/zboss/frame.d.ts.map +1 -0
  44. package/dist/adapter/zboss/frame.js +200 -0
  45. package/dist/adapter/zboss/frame.js.map +1 -0
  46. package/dist/adapter/zboss/uart.d.ts.map +1 -0
  47. package/dist/adapter/zigate/adapter/zigateAdapter.d.ts.map +1 -1
  48. package/dist/adapter/zigate/driver/buffaloZiGate.d.ts.map +1 -1
  49. package/dist/adapter/zigate/driver/buffaloZiGate.js +70 -62
  50. package/dist/adapter/zigate/driver/buffaloZiGate.js.map +1 -1
  51. package/dist/adapter/zigate/driver/ziGateObject.d.ts.map +1 -1
  52. package/dist/adapter/zigate/driver/zigate.d.ts.map +1 -1
  53. package/dist/adapter/zoh/adapter/zohAdapter.d.ts.map +1 -0
  54. package/dist/controller/controller.d.ts.map +1 -1
  55. package/dist/controller/controller.js +524 -350
  56. package/dist/controller/controller.js.map +1 -1
  57. package/dist/controller/database.d.ts.map +1 -1
  58. package/dist/controller/events.d.ts.map +1 -1
  59. package/dist/controller/events.js +0 -110
  60. package/dist/controller/events.js.map +1 -1
  61. package/dist/controller/greenPower.d.ts.map +1 -1
  62. package/dist/controller/greenPower.js +330 -121
  63. package/dist/controller/greenPower.js.map +1 -1
  64. package/dist/controller/helpers/index.d.ts.map +1 -1
  65. package/dist/controller/helpers/ota.d.ts.map +1 -0
  66. package/dist/controller/helpers/ota.js +467 -0
  67. package/dist/controller/helpers/ota.js.map +1 -0
  68. package/dist/controller/helpers/request.d.ts.map +1 -1
  69. package/dist/controller/helpers/requestQueue.d.ts.map +1 -1
  70. package/dist/controller/helpers/zclFrameConverter.d.ts.map +1 -1
  71. package/dist/controller/helpers/zclFrameConverter.js +36 -22
  72. package/dist/controller/helpers/zclFrameConverter.js.map +1 -1
  73. package/dist/controller/index.d.ts.map +1 -1
  74. package/dist/controller/model/device.d.ts.map +1 -1
  75. package/dist/controller/model/device.js +1052 -402
  76. package/dist/controller/model/device.js.map +1 -1
  77. package/dist/controller/model/endpoint.d.ts.map +1 -1
  78. package/dist/controller/model/endpoint.js +447 -292
  79. package/dist/controller/model/endpoint.js.map +1 -1
  80. package/dist/controller/model/entity.d.ts.map +1 -1
  81. package/dist/controller/model/group.d.ts.map +1 -1
  82. package/dist/controller/model/group.js +202 -85
  83. package/dist/controller/model/group.js.map +1 -1
  84. package/dist/controller/model/index.d.ts.map +1 -1
  85. package/dist/controller/model/zigbeeEntity.d.ts.map +1 -0
  86. package/dist/controller/touchlink.d.ts.map +1 -1
  87. package/dist/controller/tstype.d.ts.map +1 -1
  88. package/dist/controller/tstype.js +0 -6
  89. package/dist/controller/tstype.js.map +1 -1
  90. package/dist/index.d.ts.map +1 -1
  91. package/dist/utils/timeService.d.ts.map +1 -0
  92. package/dist/utils/timeService.js +127 -0
  93. package/dist/utils/timeService.js.map +1 -0
  94. package/dist/zspec/zcl/buffaloZcl.d.ts.map +1 -1
  95. package/dist/zspec/zcl/buffaloZcl.js +327 -287
  96. package/dist/zspec/zcl/buffaloZcl.js.map +1 -1
  97. package/dist/zspec/zcl/definition/cluster.d.ts.map +1 -1
  98. package/dist/zspec/zcl/definition/cluster.js +6050 -4043
  99. package/dist/zspec/zcl/definition/cluster.js.map +1 -1
  100. package/dist/zspec/zcl/definition/clusters-types.d.ts +8135 -0
  101. package/dist/zspec/zcl/definition/clusters-types.d.ts.map +1 -0
  102. package/dist/zspec/zcl/definition/clusters-types.js +3 -0
  103. package/dist/zspec/zcl/definition/clusters-types.js.map +1 -0
  104. package/dist/zspec/zcl/definition/foundation.d.ts.map +1 -1
  105. package/dist/zspec/zcl/definition/foundation.js +170 -99
  106. package/dist/zspec/zcl/definition/foundation.js.map +1 -1
  107. package/dist/zspec/zcl/definition/tstype.d.ts +190 -31
  108. package/dist/zspec/zcl/definition/tstype.d.ts.map +1 -1
  109. package/dist/zspec/zcl/definition/tstype.js +0 -1
  110. package/dist/zspec/zcl/definition/tstype.js.map +1 -1
  111. package/dist/zspec/zcl/index.d.ts.map +1 -1
  112. package/dist/zspec/zcl/index.js +23 -13
  113. package/dist/zspec/zcl/index.js.map +1 -1
  114. package/dist/zspec/zcl/utils.d.ts.map +1 -1
  115. package/dist/zspec/zcl/utils.js +288 -103
  116. package/dist/zspec/zcl/utils.js.map +1 -1
  117. package/dist/zspec/zcl/zclFrame.d.ts.map +1 -1
  118. package/dist/zspec/zcl/zclFrame.js +121 -97
  119. package/dist/zspec/zcl/zclFrame.js.map +1 -1
  120. package/dist/zspec/zcl/zclHeader.d.ts.map +1 -1
  121. package/dist/zspec/zcl/zclHeader.js +13 -13
  122. package/dist/zspec/zcl/zclHeader.js.map +1 -1
  123. package/examples/join-and-log.js +18 -18
  124. package/package.json +23 -3
  125. package/release-please-config.json +8 -8
  126. package/scripts/check-clusters-changes.ts +328 -0
  127. package/scripts/clusters-changes.log +584 -0
  128. package/scripts/clusters-typegen.ts +608 -0
  129. package/scripts/utils.ts +88 -0
  130. package/scripts/zap-update-clusters-report.json +303 -0
  131. package/scripts/zap-update-clusters.ts +1520 -0
  132. package/scripts/zap-update-types.ts +707 -0
  133. package/scripts/zap-xml-clusters-overrides-data.ts +52 -0
  134. package/scripts/zap-xml-clusters-overrides.ts +400 -0
  135. package/scripts/zap-xml-types.ts +146 -0
  136. package/src/adapter/adapter.ts +210 -0
  137. package/src/adapter/adapterDiscovery.ts +736 -0
  138. package/src/adapter/const.ts +12 -0
  139. package/src/adapter/deconz/adapter/deconzAdapter.ts +888 -0
  140. package/src/adapter/deconz/driver/constants.ts +246 -0
  141. package/src/adapter/deconz/driver/driver.ts +1528 -0
  142. package/src/adapter/deconz/driver/frame.ts +11 -0
  143. package/src/adapter/deconz/driver/frameParser.ts +766 -0
  144. package/src/adapter/deconz/driver/parser.ts +45 -0
  145. package/src/adapter/deconz/driver/writer.ts +22 -0
  146. package/src/adapter/deconz/types.d.ts +13 -0
  147. package/src/adapter/ember/adapter/emberAdapter.ts +2262 -0
  148. package/src/adapter/ember/adapter/endpoints.ts +86 -0
  149. package/src/adapter/ember/adapter/oneWaitress.ts +324 -0
  150. package/src/adapter/ember/adapter/tokensManager.ts +780 -0
  151. package/src/adapter/ember/consts.ts +178 -0
  152. package/src/adapter/ember/enums.ts +1746 -0
  153. package/src/adapter/ember/ezsp/buffalo.ts +1392 -0
  154. package/src/adapter/ember/ezsp/consts.ts +148 -0
  155. package/src/adapter/ember/ezsp/enums.ts +1114 -0
  156. package/src/adapter/ember/ezsp/ezsp.ts +9073 -0
  157. package/src/adapter/ember/ezspError.ts +10 -0
  158. package/src/adapter/ember/types.ts +866 -0
  159. package/src/adapter/ember/uart/ash.ts +1933 -0
  160. package/src/adapter/ember/uart/consts.ts +109 -0
  161. package/src/adapter/ember/uart/enums.ts +192 -0
  162. package/src/adapter/ember/uart/parser.ts +42 -0
  163. package/src/adapter/ember/uart/queues.ts +247 -0
  164. package/src/adapter/ember/uart/writer.ts +50 -0
  165. package/src/adapter/ember/utils/initters.ts +58 -0
  166. package/src/adapter/ember/utils/math.ts +71 -0
  167. package/src/adapter/events.ts +21 -0
  168. package/src/adapter/ezsp/adapter/backup.ts +100 -0
  169. package/src/adapter/ezsp/adapter/ezspAdapter.ts +632 -0
  170. package/src/adapter/ezsp/driver/commands.ts +2497 -0
  171. package/src/adapter/ezsp/driver/consts.ts +11 -0
  172. package/src/adapter/ezsp/driver/driver.ts +1002 -0
  173. package/src/adapter/ezsp/driver/ezsp.ts +802 -0
  174. package/src/adapter/ezsp/driver/frame.ts +101 -0
  175. package/src/adapter/ezsp/driver/index.ts +4 -0
  176. package/src/adapter/ezsp/driver/multicast.ts +78 -0
  177. package/src/adapter/ezsp/driver/parser.ts +81 -0
  178. package/src/adapter/ezsp/driver/types/basic.ts +201 -0
  179. package/src/adapter/ezsp/driver/types/index.ts +239 -0
  180. package/src/adapter/ezsp/driver/types/named.ts +2330 -0
  181. package/src/adapter/ezsp/driver/types/struct.ts +844 -0
  182. package/src/adapter/ezsp/driver/uart.ts +460 -0
  183. package/src/adapter/ezsp/driver/utils/crc16ccitt.ts +44 -0
  184. package/src/adapter/ezsp/driver/utils/index.ts +32 -0
  185. package/src/adapter/ezsp/driver/writer.ts +64 -0
  186. package/src/adapter/index.ts +3 -0
  187. package/src/adapter/serialPort.ts +58 -0
  188. package/src/adapter/tstype.ts +57 -0
  189. package/src/adapter/utils.ts +41 -0
  190. package/src/adapter/z-stack/adapter/adapter-backup.ts +509 -0
  191. package/src/adapter/z-stack/adapter/adapter-nv-memory.ts +457 -0
  192. package/src/adapter/z-stack/adapter/endpoints.ts +60 -0
  193. package/src/adapter/z-stack/adapter/manager.ts +543 -0
  194. package/src/adapter/z-stack/adapter/tstype.ts +6 -0
  195. package/src/adapter/z-stack/adapter/zStackAdapter.ts +1350 -0
  196. package/src/adapter/z-stack/constants/af.ts +27 -0
  197. package/src/adapter/z-stack/constants/common.ts +285 -0
  198. package/src/adapter/z-stack/constants/dbg.ts +23 -0
  199. package/src/adapter/z-stack/constants/index.ts +11 -0
  200. package/src/adapter/z-stack/constants/mac.ts +128 -0
  201. package/src/adapter/z-stack/constants/sapi.ts +25 -0
  202. package/src/adapter/z-stack/constants/sys.ts +72 -0
  203. package/src/adapter/z-stack/constants/util.ts +82 -0
  204. package/src/adapter/z-stack/constants/utils.ts +14 -0
  205. package/src/adapter/z-stack/constants/zdo.ts +103 -0
  206. package/src/adapter/z-stack/models/startup-options.ts +13 -0
  207. package/src/adapter/z-stack/structs/entries/address-manager-entry.ts +44 -0
  208. package/src/adapter/z-stack/structs/entries/address-manager-table.ts +19 -0
  209. package/src/adapter/z-stack/structs/entries/aps-link-key-data-entry.ts +12 -0
  210. package/src/adapter/z-stack/structs/entries/aps-link-key-data-table.ts +21 -0
  211. package/src/adapter/z-stack/structs/entries/aps-tc-link-key-entry.ts +19 -0
  212. package/src/adapter/z-stack/structs/entries/aps-tc-link-key-table.ts +21 -0
  213. package/src/adapter/z-stack/structs/entries/channel-list.ts +8 -0
  214. package/src/adapter/z-stack/structs/entries/has-configured.ts +16 -0
  215. package/src/adapter/z-stack/structs/entries/index.ts +16 -0
  216. package/src/adapter/z-stack/structs/entries/nib.ts +66 -0
  217. package/src/adapter/z-stack/structs/entries/nwk-key-descriptor.ts +15 -0
  218. package/src/adapter/z-stack/structs/entries/nwk-key.ts +13 -0
  219. package/src/adapter/z-stack/structs/entries/nwk-pan-id.ts +8 -0
  220. package/src/adapter/z-stack/structs/entries/nwk-sec-material-descriptor-entry.ts +20 -0
  221. package/src/adapter/z-stack/structs/entries/nwk-sec-material-descriptor-table.ts +19 -0
  222. package/src/adapter/z-stack/structs/entries/security-manager-entry.ts +33 -0
  223. package/src/adapter/z-stack/structs/entries/security-manager-table.ts +22 -0
  224. package/src/adapter/z-stack/structs/index.ts +4 -0
  225. package/src/adapter/z-stack/structs/serializable-memory-object.ts +14 -0
  226. package/src/adapter/z-stack/structs/struct.ts +367 -0
  227. package/src/adapter/z-stack/structs/table.ts +198 -0
  228. package/src/adapter/z-stack/unpi/constants.ts +33 -0
  229. package/src/adapter/z-stack/unpi/frame.ts +62 -0
  230. package/src/adapter/z-stack/unpi/index.ts +4 -0
  231. package/src/adapter/z-stack/unpi/parser.ts +67 -0
  232. package/src/adapter/z-stack/unpi/writer.ts +37 -0
  233. package/src/adapter/z-stack/utils/channel-list.ts +40 -0
  234. package/src/adapter/z-stack/utils/index.ts +2 -0
  235. package/src/adapter/z-stack/utils/network-options.ts +26 -0
  236. package/src/adapter/z-stack/znp/buffaloZnp.ts +175 -0
  237. package/src/adapter/z-stack/znp/definition.ts +2713 -0
  238. package/src/adapter/z-stack/znp/index.ts +2 -0
  239. package/src/adapter/z-stack/znp/parameterType.ts +22 -0
  240. package/src/adapter/z-stack/znp/tstype.ts +44 -0
  241. package/src/adapter/z-stack/znp/utils.ts +10 -0
  242. package/src/adapter/z-stack/znp/znp.ts +345 -0
  243. package/src/adapter/z-stack/znp/zpiObject.ts +148 -0
  244. package/src/adapter/zboss/adapter/zbossAdapter.ts +535 -0
  245. package/src/adapter/zboss/commands.ts +1184 -0
  246. package/src/adapter/zboss/consts.ts +9 -0
  247. package/src/adapter/zboss/driver.ts +422 -0
  248. package/src/adapter/zboss/enums.ts +360 -0
  249. package/src/adapter/zboss/frame.ts +227 -0
  250. package/src/adapter/zboss/reader.ts +65 -0
  251. package/src/adapter/zboss/types.ts +0 -0
  252. package/src/adapter/zboss/uart.ts +428 -0
  253. package/src/adapter/zboss/utils.ts +58 -0
  254. package/src/adapter/zboss/writer.ts +49 -0
  255. package/src/adapter/zigate/adapter/patchZdoBuffaloBE.ts +25 -0
  256. package/src/adapter/zigate/adapter/zigateAdapter.ts +633 -0
  257. package/src/adapter/zigate/driver/LICENSE +17 -0
  258. package/src/adapter/zigate/driver/buffaloZiGate.ts +210 -0
  259. package/src/adapter/zigate/driver/commandType.ts +418 -0
  260. package/src/adapter/zigate/driver/constants.ts +150 -0
  261. package/src/adapter/zigate/driver/frame.ts +197 -0
  262. package/src/adapter/zigate/driver/messageType.ts +287 -0
  263. package/src/adapter/zigate/driver/parameterType.ts +32 -0
  264. package/src/adapter/zigate/driver/ziGateObject.ts +146 -0
  265. package/src/adapter/zigate/driver/zigate.ts +422 -0
  266. package/src/adapter/zoh/adapter/utils.ts +27 -0
  267. package/src/adapter/zoh/adapter/zohAdapter.ts +931 -0
  268. package/src/buffalo/buffalo.ts +336 -0
  269. package/src/buffalo/index.ts +1 -0
  270. package/src/controller/controller.ts +1159 -0
  271. package/src/controller/database.ts +148 -0
  272. package/src/controller/events.ts +52 -0
  273. package/src/controller/greenPower.ts +613 -0
  274. package/src/controller/helpers/index.ts +1 -0
  275. package/src/controller/helpers/installCodes.ts +107 -0
  276. package/src/controller/helpers/ota.ts +578 -0
  277. package/src/controller/helpers/request.ts +96 -0
  278. package/src/controller/helpers/requestQueue.ts +126 -0
  279. package/src/controller/helpers/zclFrameConverter.ts +64 -0
  280. package/src/controller/helpers/zclTransactionSequenceNumber.ts +15 -0
  281. package/src/controller/index.ts +6 -0
  282. package/src/controller/model/device.ts +1791 -0
  283. package/src/controller/model/endpoint.ts +1235 -0
  284. package/src/controller/model/entity.ts +43 -0
  285. package/src/controller/model/group.ts +446 -0
  286. package/src/controller/model/index.ts +5 -0
  287. package/src/controller/model/konnextConfig.ts +6 -0
  288. package/src/controller/model/zigbeeEntity.ts +30 -0
  289. package/src/controller/touchlink.ts +195 -0
  290. package/src/controller/tstype.ts +374 -0
  291. package/src/index.ts +14 -0
  292. package/src/models/backup-storage-legacy.ts +48 -0
  293. package/src/models/backup-storage-unified.ts +47 -0
  294. package/src/models/backup.ts +37 -0
  295. package/src/models/index.ts +5 -0
  296. package/src/models/network-options.ts +11 -0
  297. package/src/utils/aes.ts +218 -0
  298. package/src/utils/async-mutex.ts +31 -0
  299. package/src/utils/backup.ts +152 -0
  300. package/src/utils/index.ts +5 -0
  301. package/src/utils/logger.ts +20 -0
  302. package/src/utils/patchBigIntSerialization.ts +8 -0
  303. package/src/utils/queue.ts +79 -0
  304. package/src/utils/timeService.ts +139 -0
  305. package/src/utils/utils.ts +19 -0
  306. package/src/utils/wait.ts +5 -0
  307. package/src/utils/waitress.ts +96 -0
  308. package/src/zspec/consts.ts +89 -0
  309. package/src/zspec/enums.ts +22 -0
  310. package/src/zspec/index.ts +3 -0
  311. package/src/zspec/tstypes.ts +18 -0
  312. package/src/zspec/utils.ts +247 -0
  313. package/src/zspec/zcl/buffaloZcl.ts +1073 -0
  314. package/src/zspec/zcl/definition/cluster.ts +7554 -0
  315. package/src/zspec/zcl/definition/clusters-types.ts +8228 -0
  316. package/src/zspec/zcl/definition/consts.ts +24 -0
  317. package/src/zspec/zcl/definition/datatypes.ts +2454 -0
  318. package/src/zspec/zcl/definition/enums.ts +224 -0
  319. package/src/zspec/zcl/definition/foundation.ts +342 -0
  320. package/src/zspec/zcl/definition/manufacturerCode.ts +730 -0
  321. package/src/zspec/zcl/definition/status.ts +69 -0
  322. package/src/zspec/zcl/definition/tstype.ts +432 -0
  323. package/src/zspec/zcl/index.ts +11 -0
  324. package/src/zspec/zcl/utils.ts +504 -0
  325. package/src/zspec/zcl/zclFrame.ts +383 -0
  326. package/src/zspec/zcl/zclHeader.ts +102 -0
  327. package/src/zspec/zcl/zclStatusError.ts +10 -0
  328. package/src/zspec/zdo/buffaloZdo.ts +2336 -0
  329. package/src/zspec/zdo/definition/clusters.ts +722 -0
  330. package/src/zspec/zdo/definition/consts.ts +16 -0
  331. package/src/zspec/zdo/definition/enums.ts +99 -0
  332. package/src/zspec/zdo/definition/status.ts +105 -0
  333. package/src/zspec/zdo/definition/tstypes.ts +1062 -0
  334. package/src/zspec/zdo/index.ts +7 -0
  335. package/src/zspec/zdo/utils.ts +76 -0
  336. package/src/zspec/zdo/zdoStatusError.ts +10 -0
  337. package/test/adapter/adapter.test.ts +1276 -0
  338. package/test/adapter/ember/ash.test.ts +337 -0
  339. package/test/adapter/ember/consts.ts +131 -0
  340. package/test/adapter/ember/emberAdapter.test.ts +3447 -0
  341. package/test/adapter/ember/ezsp.test.ts +389 -0
  342. package/test/adapter/ember/ezspBuffalo.test.ts +93 -0
  343. package/test/adapter/ember/ezspError.test.ts +12 -0
  344. package/test/adapter/ember/math.test.ts +190 -0
  345. package/test/adapter/ezsp/frame.test.ts +30 -0
  346. package/test/adapter/ezsp/uart.test.ts +181 -0
  347. package/test/adapter/z-stack/adapter.test.ts +4260 -0
  348. package/test/adapter/z-stack/constants.test.ts +33 -0
  349. package/test/adapter/z-stack/structs.test.ts +115 -0
  350. package/test/adapter/z-stack/unpi.test.ts +213 -0
  351. package/test/adapter/z-stack/znp.test.ts +1288 -0
  352. package/test/adapter/zboss/fixZdoResponse.test.ts +179 -0
  353. package/test/adapter/zigate/patchZdoBuffaloBE.test.ts +81 -0
  354. package/test/adapter/zigate/zdo.test.ts +187 -0
  355. package/test/adapter/zoh/utils.test.ts +36 -0
  356. package/test/adapter/zoh/zohAdapter.test.ts +1451 -0
  357. package/test/benchOptions.ts +14 -0
  358. package/test/buffalo.test.ts +431 -0
  359. package/test/controller.bench.ts +215 -0
  360. package/test/controller.test.ts +10038 -0
  361. package/test/data/integrity-code-1166-012B-24031511-upgradeMe-RB 249 T.zigbee +0 -0
  362. package/test/data/manuf-tags-tradfri-cv-cct-unified_release_prod_v587757105_33e34452-9267-4665-bc5a-844c8f61f063.ota +0 -0
  363. package/test/data/padded-tretakt_smart_plug_soc-0x1100-2.4.25-prod.ota.ota.signed +0 -0
  364. package/test/data/telink-aes-A60_RGBW_T-0x00B6-0x03483712-MF_DIS.OTA +0 -0
  365. package/test/data/zbminir2_v1.0.8.ota +0 -0
  366. package/test/device-ota.test.ts +3332 -0
  367. package/test/greenpower.test.ts +1409 -0
  368. package/test/mockAdapters.ts +95 -0
  369. package/test/mockDevices.ts +623 -0
  370. package/test/requests.bench.ts +321 -0
  371. package/test/testUtils.ts +20 -0
  372. package/test/timeService.test.ts +214 -0
  373. package/test/tsconfig.json +9 -0
  374. package/test/utils/math.ts +19 -0
  375. package/test/utils.test.ts +352 -0
  376. package/test/vitest.config.mts +28 -0
  377. package/test/vitest.ts +9 -0
  378. package/test/zcl.test.ts +2887 -0
  379. package/test/zspec/utils.test.ts +68 -0
  380. package/test/zspec/zcl/buffalo.test.ts +1316 -0
  381. package/test/zspec/zcl/frame.test.ts +1056 -0
  382. package/test/zspec/zcl/utils.test.ts +650 -0
  383. package/test/zspec/zdo/buffalo.test.ts +1850 -0
  384. package/test/zspec/zdo/utils.test.ts +241 -0
  385. package/tsconfig.json +8 -10
  386. package/.babelrc.js +0 -6
  387. package/.eslintignore +0 -3
  388. package/dist/adapter/adapter.d.ts +0 -64
  389. package/dist/adapter/adapter.js +0 -157
  390. package/dist/adapter/adapter.js.map +0 -1
  391. package/dist/adapter/deconz/adapter/deconzAdapter.d.ts +0 -71
  392. package/dist/adapter/deconz/adapter/deconzAdapter.js +0 -1072
  393. package/dist/adapter/deconz/adapter/deconzAdapter.js.map +0 -1
  394. package/dist/adapter/deconz/adapter/index.d.ts +0 -3
  395. package/dist/adapter/deconz/adapter/index.d.ts.map +0 -1
  396. package/dist/adapter/deconz/adapter/index.js +0 -11
  397. package/dist/adapter/deconz/adapter/index.js.map +0 -1
  398. package/dist/adapter/deconz/driver/constants.d.ts +0 -105
  399. package/dist/adapter/deconz/driver/constants.d.ts.map +0 -1
  400. package/dist/adapter/deconz/driver/constants.js +0 -56
  401. package/dist/adapter/deconz/driver/constants.js.map +0 -1
  402. package/dist/adapter/deconz/driver/driver.d.ts +0 -82
  403. package/dist/adapter/deconz/driver/driver.d.ts.map +0 -1
  404. package/dist/adapter/deconz/driver/driver.js +0 -751
  405. package/dist/adapter/deconz/driver/driver.js.map +0 -1
  406. package/dist/adapter/deconz/driver/frame.d.ts +0 -7
  407. package/dist/adapter/deconz/driver/frame.d.ts.map +0 -1
  408. package/dist/adapter/deconz/driver/frame.js +0 -14
  409. package/dist/adapter/deconz/driver/frame.js.map +0 -1
  410. package/dist/adapter/deconz/driver/frameParser.d.ts +0 -3
  411. package/dist/adapter/deconz/driver/frameParser.d.ts.map +0 -1
  412. package/dist/adapter/deconz/driver/frameParser.js +0 -444
  413. package/dist/adapter/deconz/driver/frameParser.js.map +0 -1
  414. package/dist/adapter/deconz/driver/parser.d.ts +0 -13
  415. package/dist/adapter/deconz/driver/parser.d.ts.map +0 -1
  416. package/dist/adapter/deconz/driver/parser.js +0 -64
  417. package/dist/adapter/deconz/driver/parser.js.map +0 -1
  418. package/dist/adapter/deconz/driver/writer.d.ts +0 -9
  419. package/dist/adapter/deconz/driver/writer.d.ts.map +0 -1
  420. package/dist/adapter/deconz/driver/writer.js +0 -45
  421. package/dist/adapter/deconz/driver/writer.js.map +0 -1
  422. package/dist/adapter/ember/adapter/emberAdapter.d.ts +0 -806
  423. package/dist/adapter/ember/adapter/emberAdapter.js +0 -2942
  424. package/dist/adapter/ember/adapter/emberAdapter.js.map +0 -1
  425. package/dist/adapter/ember/adapter/endpoints.d.ts +0 -27
  426. package/dist/adapter/ember/adapter/endpoints.js +0 -68
  427. package/dist/adapter/ember/adapter/endpoints.js.map +0 -1
  428. package/dist/adapter/ember/adapter/index.d.ts +0 -3
  429. package/dist/adapter/ember/adapter/index.d.ts.map +0 -1
  430. package/dist/adapter/ember/adapter/index.js +0 -6
  431. package/dist/adapter/ember/adapter/index.js.map +0 -1
  432. package/dist/adapter/ember/adapter/oneWaitress.d.ts +0 -108
  433. package/dist/adapter/ember/adapter/oneWaitress.js +0 -241
  434. package/dist/adapter/ember/adapter/oneWaitress.js.map +0 -1
  435. package/dist/adapter/ember/adapter/requestQueue.d.ts +0 -57
  436. package/dist/adapter/ember/adapter/requestQueue.d.ts.map +0 -1
  437. package/dist/adapter/ember/adapter/requestQueue.js +0 -139
  438. package/dist/adapter/ember/adapter/requestQueue.js.map +0 -1
  439. package/dist/adapter/ember/adapter/tokensManager.d.ts +0 -69
  440. package/dist/adapter/ember/adapter/tokensManager.js +0 -688
  441. package/dist/adapter/ember/adapter/tokensManager.js.map +0 -1
  442. package/dist/adapter/ember/consts.d.ts +0 -191
  443. package/dist/adapter/ember/consts.d.ts.map +0 -1
  444. package/dist/adapter/ember/consts.js +0 -246
  445. package/dist/adapter/ember/consts.js.map +0 -1
  446. package/dist/adapter/ember/enums.d.ts +0 -2172
  447. package/dist/adapter/ember/enums.d.ts.map +0 -1
  448. package/dist/adapter/ember/enums.js +0 -2375
  449. package/dist/adapter/ember/enums.js.map +0 -1
  450. package/dist/adapter/ember/ezsp/buffalo.d.ts +0 -156
  451. package/dist/adapter/ember/ezsp/buffalo.d.ts.map +0 -1
  452. package/dist/adapter/ember/ezsp/buffalo.js +0 -1033
  453. package/dist/adapter/ember/ezsp/buffalo.js.map +0 -1
  454. package/dist/adapter/ember/ezsp/consts.d.ts +0 -116
  455. package/dist/adapter/ember/ezsp/consts.d.ts.map +0 -1
  456. package/dist/adapter/ember/ezsp/consts.js +0 -128
  457. package/dist/adapter/ember/ezsp/consts.js.map +0 -1
  458. package/dist/adapter/ember/ezsp/enums.d.ts +0 -879
  459. package/dist/adapter/ember/ezsp/enums.d.ts.map +0 -1
  460. package/dist/adapter/ember/ezsp/enums.js +0 -948
  461. package/dist/adapter/ember/ezsp/enums.js.map +0 -1
  462. package/dist/adapter/ember/ezsp/ezsp.d.ts +0 -2662
  463. package/dist/adapter/ember/ezsp/ezsp.js +0 -6454
  464. package/dist/adapter/ember/ezsp/ezsp.js.map +0 -1
  465. package/dist/adapter/ember/types.d.ts +0 -733
  466. package/dist/adapter/ember/types.d.ts.map +0 -1
  467. package/dist/adapter/ember/types.js +0 -3
  468. package/dist/adapter/ember/types.js.map +0 -1
  469. package/dist/adapter/ember/uart/ash.d.ts +0 -464
  470. package/dist/adapter/ember/uart/ash.d.ts.map +0 -1
  471. package/dist/adapter/ember/uart/ash.js +0 -1633
  472. package/dist/adapter/ember/uart/ash.js.map +0 -1
  473. package/dist/adapter/ember/uart/consts.d.ts +0 -91
  474. package/dist/adapter/ember/uart/consts.d.ts.map +0 -1
  475. package/dist/adapter/ember/uart/consts.js +0 -100
  476. package/dist/adapter/ember/uart/consts.js.map +0 -1
  477. package/dist/adapter/ember/uart/enums.d.ts +0 -191
  478. package/dist/adapter/ember/uart/enums.d.ts.map +0 -1
  479. package/dist/adapter/ember/uart/enums.js +0 -197
  480. package/dist/adapter/ember/uart/enums.js.map +0 -1
  481. package/dist/adapter/ember/uart/parser.d.ts +0 -10
  482. package/dist/adapter/ember/uart/parser.d.ts.map +0 -1
  483. package/dist/adapter/ember/uart/parser.js +0 -37
  484. package/dist/adapter/ember/uart/parser.js.map +0 -1
  485. package/dist/adapter/ember/uart/queues.d.ts +0 -85
  486. package/dist/adapter/ember/uart/queues.d.ts.map +0 -1
  487. package/dist/adapter/ember/uart/queues.js +0 -214
  488. package/dist/adapter/ember/uart/queues.js.map +0 -1
  489. package/dist/adapter/ember/uart/writer.d.ts +0 -15
  490. package/dist/adapter/ember/uart/writer.d.ts.map +0 -1
  491. package/dist/adapter/ember/uart/writer.js +0 -46
  492. package/dist/adapter/ember/uart/writer.js.map +0 -1
  493. package/dist/adapter/ember/utils/initters.d.ts +0 -20
  494. package/dist/adapter/ember/utils/initters.js +0 -58
  495. package/dist/adapter/ember/utils/initters.js.map +0 -1
  496. package/dist/adapter/ember/utils/math.d.ts +0 -51
  497. package/dist/adapter/ember/utils/math.d.ts.map +0 -1
  498. package/dist/adapter/ember/utils/math.js +0 -102
  499. package/dist/adapter/ember/utils/math.js.map +0 -1
  500. package/dist/adapter/ember/zdo.d.ts +0 -925
  501. package/dist/adapter/ember/zdo.d.ts.map +0 -1
  502. package/dist/adapter/ember/zdo.js +0 -723
  503. package/dist/adapter/ember/zdo.js.map +0 -1
  504. package/dist/adapter/events.d.ts +0 -42
  505. package/dist/adapter/events.js +0 -13
  506. package/dist/adapter/events.js.map +0 -1
  507. package/dist/adapter/ezsp/adapter/backup.d.ts +0 -13
  508. package/dist/adapter/ezsp/adapter/backup.js +0 -101
  509. package/dist/adapter/ezsp/adapter/backup.js.map +0 -1
  510. package/dist/adapter/ezsp/adapter/ezspAdapter.d.ts +0 -65
  511. package/dist/adapter/ezsp/adapter/ezspAdapter.js +0 -634
  512. package/dist/adapter/ezsp/adapter/ezspAdapter.js.map +0 -1
  513. package/dist/adapter/ezsp/adapter/index.d.ts +0 -3
  514. package/dist/adapter/ezsp/adapter/index.d.ts.map +0 -1
  515. package/dist/adapter/ezsp/adapter/index.js +0 -11
  516. package/dist/adapter/ezsp/adapter/index.js.map +0 -1
  517. package/dist/adapter/ezsp/driver/commands.d.ts +0 -37
  518. package/dist/adapter/ezsp/driver/commands.d.ts.map +0 -1
  519. package/dist/adapter/ezsp/driver/commands.js +0 -2387
  520. package/dist/adapter/ezsp/driver/commands.js.map +0 -1
  521. package/dist/adapter/ezsp/driver/consts.d.ts +0 -11
  522. package/dist/adapter/ezsp/driver/consts.d.ts.map +0 -1
  523. package/dist/adapter/ezsp/driver/consts.js +0 -14
  524. package/dist/adapter/ezsp/driver/consts.js.map +0 -1
  525. package/dist/adapter/ezsp/driver/driver.d.ts +0 -109
  526. package/dist/adapter/ezsp/driver/driver.js +0 -796
  527. package/dist/adapter/ezsp/driver/driver.js.map +0 -1
  528. package/dist/adapter/ezsp/driver/ezsp.d.ts +0 -106
  529. package/dist/adapter/ezsp/driver/ezsp.d.ts.map +0 -1
  530. package/dist/adapter/ezsp/driver/ezsp.js +0 -664
  531. package/dist/adapter/ezsp/driver/ezsp.js.map +0 -1
  532. package/dist/adapter/ezsp/driver/frame.d.ts +0 -40
  533. package/dist/adapter/ezsp/driver/frame.d.ts.map +0 -1
  534. package/dist/adapter/ezsp/driver/frame.js +0 -101
  535. package/dist/adapter/ezsp/driver/frame.js.map +0 -1
  536. package/dist/adapter/ezsp/driver/index.d.ts +0 -4
  537. package/dist/adapter/ezsp/driver/index.js +0 -9
  538. package/dist/adapter/ezsp/driver/index.js.map +0 -1
  539. package/dist/adapter/ezsp/driver/multicast.d.ts +0 -13
  540. package/dist/adapter/ezsp/driver/multicast.js +0 -74
  541. package/dist/adapter/ezsp/driver/multicast.js.map +0 -1
  542. package/dist/adapter/ezsp/driver/parser.d.ts +0 -12
  543. package/dist/adapter/ezsp/driver/parser.d.ts.map +0 -1
  544. package/dist/adapter/ezsp/driver/parser.js +0 -105
  545. package/dist/adapter/ezsp/driver/parser.js.map +0 -1
  546. package/dist/adapter/ezsp/driver/types/basic.d.ts +0 -63
  547. package/dist/adapter/ezsp/driver/types/basic.d.ts.map +0 -1
  548. package/dist/adapter/ezsp/driver/types/basic.js +0 -209
  549. package/dist/adapter/ezsp/driver/types/basic.js.map +0 -1
  550. package/dist/adapter/ezsp/driver/types/index.d.ts +0 -10
  551. package/dist/adapter/ezsp/driver/types/index.d.ts.map +0 -1
  552. package/dist/adapter/ezsp/driver/types/index.js +0 -139
  553. package/dist/adapter/ezsp/driver/types/index.js.map +0 -1
  554. package/dist/adapter/ezsp/driver/types/named.d.ts +0 -1288
  555. package/dist/adapter/ezsp/driver/types/named.d.ts.map +0 -1
  556. package/dist/adapter/ezsp/driver/types/named.js +0 -2330
  557. package/dist/adapter/ezsp/driver/types/named.js.map +0 -1
  558. package/dist/adapter/ezsp/driver/types/struct.d.ts +0 -271
  559. package/dist/adapter/ezsp/driver/types/struct.d.ts.map +0 -1
  560. package/dist/adapter/ezsp/driver/types/struct.js +0 -804
  561. package/dist/adapter/ezsp/driver/types/struct.js.map +0 -1
  562. package/dist/adapter/ezsp/driver/uart.d.ts +0 -49
  563. package/dist/adapter/ezsp/driver/uart.d.ts.map +0 -1
  564. package/dist/adapter/ezsp/driver/uart.js +0 -383
  565. package/dist/adapter/ezsp/driver/uart.js.map +0 -1
  566. package/dist/adapter/ezsp/driver/utils/crc16ccitt.d.ts +0 -3
  567. package/dist/adapter/ezsp/driver/utils/crc16ccitt.d.ts.map +0 -1
  568. package/dist/adapter/ezsp/driver/utils/crc16ccitt.js +0 -56
  569. package/dist/adapter/ezsp/driver/utils/crc16ccitt.js.map +0 -1
  570. package/dist/adapter/ezsp/driver/utils/index.d.ts +0 -20
  571. package/dist/adapter/ezsp/driver/utils/index.d.ts.map +0 -1
  572. package/dist/adapter/ezsp/driver/utils/index.js +0 -73
  573. package/dist/adapter/ezsp/driver/utils/index.js.map +0 -1
  574. package/dist/adapter/ezsp/driver/writer.d.ts +0 -14
  575. package/dist/adapter/ezsp/driver/writer.d.ts.map +0 -1
  576. package/dist/adapter/ezsp/driver/writer.js +0 -83
  577. package/dist/adapter/ezsp/driver/writer.js.map +0 -1
  578. package/dist/adapter/index.d.ts +0 -5
  579. package/dist/adapter/index.js +0 -36
  580. package/dist/adapter/index.js.map +0 -1
  581. package/dist/adapter/serialPort.d.ts +0 -14
  582. package/dist/adapter/serialPort.d.ts.map +0 -1
  583. package/dist/adapter/serialPort.js +0 -47
  584. package/dist/adapter/serialPort.js.map +0 -1
  585. package/dist/adapter/serialPortUtils.d.ts +0 -13
  586. package/dist/adapter/serialPortUtils.d.ts.map +0 -1
  587. package/dist/adapter/serialPortUtils.js +0 -19
  588. package/dist/adapter/serialPortUtils.js.map +0 -1
  589. package/dist/adapter/socketPortUtils.d.ts +0 -11
  590. package/dist/adapter/socketPortUtils.d.ts.map +0 -1
  591. package/dist/adapter/socketPortUtils.js +0 -17
  592. package/dist/adapter/socketPortUtils.js.map +0 -1
  593. package/dist/adapter/tstype.d.ts +0 -86
  594. package/dist/adapter/tstype.d.ts.map +0 -1
  595. package/dist/adapter/tstype.js +0 -3
  596. package/dist/adapter/tstype.js.map +0 -1
  597. package/dist/adapter/z-stack/adapter/adapter-backup.d.ts +0 -62
  598. package/dist/adapter/z-stack/adapter/adapter-backup.d.ts.map +0 -1
  599. package/dist/adapter/z-stack/adapter/adapter-backup.js +0 -459
  600. package/dist/adapter/z-stack/adapter/adapter-backup.js.map +0 -1
  601. package/dist/adapter/z-stack/adapter/adapter-nv-memory.d.ts +0 -151
  602. package/dist/adapter/z-stack/adapter/adapter-nv-memory.d.ts.map +0 -1
  603. package/dist/adapter/z-stack/adapter/adapter-nv-memory.js +0 -259
  604. package/dist/adapter/z-stack/adapter/adapter-nv-memory.js.map +0 -1
  605. package/dist/adapter/z-stack/adapter/endpoints.d.ts +0 -12
  606. package/dist/adapter/z-stack/adapter/endpoints.js +0 -74
  607. package/dist/adapter/z-stack/adapter/endpoints.js.map +0 -1
  608. package/dist/adapter/z-stack/adapter/index.d.ts +0 -3
  609. package/dist/adapter/z-stack/adapter/index.d.ts.map +0 -1
  610. package/dist/adapter/z-stack/adapter/index.js +0 -9
  611. package/dist/adapter/z-stack/adapter/index.js.map +0 -1
  612. package/dist/adapter/z-stack/adapter/manager.d.ts +0 -84
  613. package/dist/adapter/z-stack/adapter/manager.js +0 -474
  614. package/dist/adapter/z-stack/adapter/manager.js.map +0 -1
  615. package/dist/adapter/z-stack/adapter/tstype.d.ts +0 -7
  616. package/dist/adapter/z-stack/adapter/tstype.d.ts.map +0 -1
  617. package/dist/adapter/z-stack/adapter/tstype.js +0 -10
  618. package/dist/adapter/z-stack/adapter/tstype.js.map +0 -1
  619. package/dist/adapter/z-stack/adapter/zStackAdapter.d.ts +0 -86
  620. package/dist/adapter/z-stack/adapter/zStackAdapter.js +0 -912
  621. package/dist/adapter/z-stack/adapter/zStackAdapter.js.map +0 -1
  622. package/dist/adapter/z-stack/constants/af.d.ts +0 -24
  623. package/dist/adapter/z-stack/constants/af.d.ts.map +0 -1
  624. package/dist/adapter/z-stack/constants/af.js +0 -28
  625. package/dist/adapter/z-stack/constants/af.js.map +0 -1
  626. package/dist/adapter/z-stack/constants/common.d.ts +0 -279
  627. package/dist/adapter/z-stack/constants/common.d.ts.map +0 -1
  628. package/dist/adapter/z-stack/constants/common.js +0 -293
  629. package/dist/adapter/z-stack/constants/common.js.map +0 -1
  630. package/dist/adapter/z-stack/constants/dbg.d.ts +0 -23
  631. package/dist/adapter/z-stack/constants/dbg.d.ts.map +0 -1
  632. package/dist/adapter/z-stack/constants/dbg.js +0 -25
  633. package/dist/adapter/z-stack/constants/dbg.js.map +0 -1
  634. package/dist/adapter/z-stack/constants/index.d.ts +0 -11
  635. package/dist/adapter/z-stack/constants/index.d.ts.map +0 -1
  636. package/dist/adapter/z-stack/constants/index.js +0 -48
  637. package/dist/adapter/z-stack/constants/index.js.map +0 -1
  638. package/dist/adapter/z-stack/constants/mac.d.ts +0 -128
  639. package/dist/adapter/z-stack/constants/mac.d.ts.map +0 -1
  640. package/dist/adapter/z-stack/constants/mac.js +0 -130
  641. package/dist/adapter/z-stack/constants/mac.js.map +0 -1
  642. package/dist/adapter/z-stack/constants/sapi.d.ts +0 -25
  643. package/dist/adapter/z-stack/constants/sapi.d.ts.map +0 -1
  644. package/dist/adapter/z-stack/constants/sapi.js +0 -27
  645. package/dist/adapter/z-stack/constants/sapi.js.map +0 -1
  646. package/dist/adapter/z-stack/constants/sys.d.ts +0 -72
  647. package/dist/adapter/z-stack/constants/sys.d.ts.map +0 -1
  648. package/dist/adapter/z-stack/constants/sys.js +0 -74
  649. package/dist/adapter/z-stack/constants/sys.js.map +0 -1
  650. package/dist/adapter/z-stack/constants/util.d.ts +0 -82
  651. package/dist/adapter/z-stack/constants/util.d.ts.map +0 -1
  652. package/dist/adapter/z-stack/constants/util.js +0 -84
  653. package/dist/adapter/z-stack/constants/util.js.map +0 -1
  654. package/dist/adapter/z-stack/constants/utils.d.ts +0 -5
  655. package/dist/adapter/z-stack/constants/utils.d.ts.map +0 -1
  656. package/dist/adapter/z-stack/constants/utils.js +0 -15
  657. package/dist/adapter/z-stack/constants/utils.js.map +0 -1
  658. package/dist/adapter/z-stack/constants/zdo.d.ts +0 -103
  659. package/dist/adapter/z-stack/constants/zdo.d.ts.map +0 -1
  660. package/dist/adapter/z-stack/constants/zdo.js +0 -105
  661. package/dist/adapter/z-stack/constants/zdo.js.map +0 -1
  662. package/dist/adapter/z-stack/models/index.d.ts +0 -2
  663. package/dist/adapter/z-stack/models/index.d.ts.map +0 -1
  664. package/dist/adapter/z-stack/models/index.js +0 -18
  665. package/dist/adapter/z-stack/models/index.js.map +0 -1
  666. package/dist/adapter/z-stack/models/startup-options.d.ts +0 -13
  667. package/dist/adapter/z-stack/models/startup-options.js +0 -3
  668. package/dist/adapter/z-stack/models/startup-options.js.map +0 -1
  669. package/dist/adapter/z-stack/structs/entries/address-manager-entry.d.ts +0 -24
  670. package/dist/adapter/z-stack/structs/entries/address-manager-entry.d.ts.map +0 -1
  671. package/dist/adapter/z-stack/structs/entries/address-manager-entry.js +0 -46
  672. package/dist/adapter/z-stack/structs/entries/address-manager-entry.js.map +0 -1
  673. package/dist/adapter/z-stack/structs/entries/address-manager-table.d.ts +0 -11
  674. package/dist/adapter/z-stack/structs/entries/address-manager-table.d.ts.map +0 -1
  675. package/dist/adapter/z-stack/structs/entries/address-manager-table.js +0 -23
  676. package/dist/adapter/z-stack/structs/entries/address-manager-table.js.map +0 -1
  677. package/dist/adapter/z-stack/structs/entries/aps-link-key-data-entry.d.ts +0 -11
  678. package/dist/adapter/z-stack/structs/entries/aps-link-key-data-entry.d.ts.map +0 -1
  679. package/dist/adapter/z-stack/structs/entries/aps-link-key-data-entry.js +0 -22
  680. package/dist/adapter/z-stack/structs/entries/aps-link-key-data-entry.js.map +0 -1
  681. package/dist/adapter/z-stack/structs/entries/aps-link-key-data-table.d.ts +0 -11
  682. package/dist/adapter/z-stack/structs/entries/aps-link-key-data-table.d.ts.map +0 -1
  683. package/dist/adapter/z-stack/structs/entries/aps-link-key-data-table.js +0 -24
  684. package/dist/adapter/z-stack/structs/entries/aps-link-key-data-table.js.map +0 -1
  685. package/dist/adapter/z-stack/structs/entries/aps-tc-link-key-entry.d.ts +0 -11
  686. package/dist/adapter/z-stack/structs/entries/aps-tc-link-key-entry.d.ts.map +0 -1
  687. package/dist/adapter/z-stack/structs/entries/aps-tc-link-key-entry.js +0 -25
  688. package/dist/adapter/z-stack/structs/entries/aps-tc-link-key-entry.js.map +0 -1
  689. package/dist/adapter/z-stack/structs/entries/aps-tc-link-key-table.d.ts +0 -11
  690. package/dist/adapter/z-stack/structs/entries/aps-tc-link-key-table.d.ts.map +0 -1
  691. package/dist/adapter/z-stack/structs/entries/aps-tc-link-key-table.js +0 -24
  692. package/dist/adapter/z-stack/structs/entries/aps-tc-link-key-table.js.map +0 -1
  693. package/dist/adapter/z-stack/structs/entries/channel-list.d.ts +0 -9
  694. package/dist/adapter/z-stack/structs/entries/channel-list.d.ts.map +0 -1
  695. package/dist/adapter/z-stack/structs/entries/channel-list.js +0 -16
  696. package/dist/adapter/z-stack/structs/entries/channel-list.js.map +0 -1
  697. package/dist/adapter/z-stack/structs/entries/has-configured.d.ts +0 -9
  698. package/dist/adapter/z-stack/structs/entries/has-configured.d.ts.map +0 -1
  699. package/dist/adapter/z-stack/structs/entries/has-configured.js +0 -17
  700. package/dist/adapter/z-stack/structs/entries/has-configured.js.map +0 -1
  701. package/dist/adapter/z-stack/structs/entries/index.d.ts +0 -17
  702. package/dist/adapter/z-stack/structs/entries/index.d.ts.map +0 -1
  703. package/dist/adapter/z-stack/structs/entries/index.js +0 -33
  704. package/dist/adapter/z-stack/structs/entries/index.js.map +0 -1
  705. package/dist/adapter/z-stack/structs/entries/nib.d.ts +0 -11
  706. package/dist/adapter/z-stack/structs/entries/nib.d.ts.map +0 -1
  707. package/dist/adapter/z-stack/structs/entries/nib.js +0 -69
  708. package/dist/adapter/z-stack/structs/entries/nib.js.map +0 -1
  709. package/dist/adapter/z-stack/structs/entries/nwk-key-descriptor.d.ts +0 -11
  710. package/dist/adapter/z-stack/structs/entries/nwk-key-descriptor.d.ts.map +0 -1
  711. package/dist/adapter/z-stack/structs/entries/nwk-key-descriptor.js +0 -19
  712. package/dist/adapter/z-stack/structs/entries/nwk-key-descriptor.js.map +0 -1
  713. package/dist/adapter/z-stack/structs/entries/nwk-key.d.ts +0 -9
  714. package/dist/adapter/z-stack/structs/entries/nwk-key.d.ts.map +0 -1
  715. package/dist/adapter/z-stack/structs/entries/nwk-key.js +0 -16
  716. package/dist/adapter/z-stack/structs/entries/nwk-key.js.map +0 -1
  717. package/dist/adapter/z-stack/structs/entries/nwk-pan-id.d.ts +0 -9
  718. package/dist/adapter/z-stack/structs/entries/nwk-pan-id.d.ts.map +0 -1
  719. package/dist/adapter/z-stack/structs/entries/nwk-pan-id.js +0 -16
  720. package/dist/adapter/z-stack/structs/entries/nwk-pan-id.js.map +0 -1
  721. package/dist/adapter/z-stack/structs/entries/nwk-sec-material-descriptor-entry.d.ts +0 -14
  722. package/dist/adapter/z-stack/structs/entries/nwk-sec-material-descriptor-entry.d.ts.map +0 -1
  723. package/dist/adapter/z-stack/structs/entries/nwk-sec-material-descriptor-entry.js +0 -24
  724. package/dist/adapter/z-stack/structs/entries/nwk-sec-material-descriptor-entry.js.map +0 -1
  725. package/dist/adapter/z-stack/structs/entries/nwk-sec-material-descriptor-table.d.ts +0 -11
  726. package/dist/adapter/z-stack/structs/entries/nwk-sec-material-descriptor-table.d.ts.map +0 -1
  727. package/dist/adapter/z-stack/structs/entries/nwk-sec-material-descriptor-table.js +0 -23
  728. package/dist/adapter/z-stack/structs/entries/nwk-sec-material-descriptor-table.js.map +0 -1
  729. package/dist/adapter/z-stack/structs/entries/security-manager-entry.d.ts +0 -21
  730. package/dist/adapter/z-stack/structs/entries/security-manager-entry.d.ts.map +0 -1
  731. package/dist/adapter/z-stack/structs/entries/security-manager-entry.js +0 -37
  732. package/dist/adapter/z-stack/structs/entries/security-manager-entry.js.map +0 -1
  733. package/dist/adapter/z-stack/structs/entries/security-manager-table.d.ts +0 -11
  734. package/dist/adapter/z-stack/structs/entries/security-manager-table.d.ts.map +0 -1
  735. package/dist/adapter/z-stack/structs/entries/security-manager-table.js +0 -25
  736. package/dist/adapter/z-stack/structs/entries/security-manager-table.js.map +0 -1
  737. package/dist/adapter/z-stack/structs/index.d.ts +0 -5
  738. package/dist/adapter/z-stack/structs/index.d.ts.map +0 -1
  739. package/dist/adapter/z-stack/structs/index.js +0 -21
  740. package/dist/adapter/z-stack/structs/index.js.map +0 -1
  741. package/dist/adapter/z-stack/structs/serializable-memory-object.d.ts +0 -14
  742. package/dist/adapter/z-stack/structs/serializable-memory-object.d.ts.map +0 -1
  743. package/dist/adapter/z-stack/structs/serializable-memory-object.js +0 -3
  744. package/dist/adapter/z-stack/structs/serializable-memory-object.js.map +0 -1
  745. package/dist/adapter/z-stack/structs/struct.d.ts +0 -100
  746. package/dist/adapter/z-stack/structs/struct.d.ts.map +0 -1
  747. package/dist/adapter/z-stack/structs/struct.js +0 -297
  748. package/dist/adapter/z-stack/structs/struct.js.map +0 -1
  749. package/dist/adapter/z-stack/structs/table.d.ts +0 -95
  750. package/dist/adapter/z-stack/structs/table.d.ts.map +0 -1
  751. package/dist/adapter/z-stack/structs/table.js +0 -164
  752. package/dist/adapter/z-stack/structs/table.js.map +0 -1
  753. package/dist/adapter/z-stack/unpi/constants.d.ts +0 -29
  754. package/dist/adapter/z-stack/unpi/constants.d.ts.map +0 -1
  755. package/dist/adapter/z-stack/unpi/constants.js +0 -40
  756. package/dist/adapter/z-stack/unpi/constants.js.map +0 -1
  757. package/dist/adapter/z-stack/unpi/frame.d.ts +0 -17
  758. package/dist/adapter/z-stack/unpi/frame.d.ts.map +0 -1
  759. package/dist/adapter/z-stack/unpi/frame.js +0 -55
  760. package/dist/adapter/z-stack/unpi/frame.js.map +0 -1
  761. package/dist/adapter/z-stack/unpi/index.d.ts +0 -6
  762. package/dist/adapter/z-stack/unpi/index.d.ts.map +0 -1
  763. package/dist/adapter/z-stack/unpi/index.js +0 -38
  764. package/dist/adapter/z-stack/unpi/index.js.map +0 -1
  765. package/dist/adapter/z-stack/unpi/parser.d.ts +0 -13
  766. package/dist/adapter/z-stack/unpi/parser.d.ts.map +0 -1
  767. package/dist/adapter/z-stack/unpi/parser.js +0 -86
  768. package/dist/adapter/z-stack/unpi/parser.js.map +0 -1
  769. package/dist/adapter/z-stack/unpi/writer.d.ts +0 -12
  770. package/dist/adapter/z-stack/unpi/writer.d.ts.map +0 -1
  771. package/dist/adapter/z-stack/unpi/writer.js +0 -55
  772. package/dist/adapter/z-stack/unpi/writer.js.map +0 -1
  773. package/dist/adapter/z-stack/utils/channel-list.d.ts +0 -21
  774. package/dist/adapter/z-stack/utils/channel-list.d.ts.map +0 -1
  775. package/dist/adapter/z-stack/utils/channel-list.js +0 -41
  776. package/dist/adapter/z-stack/utils/channel-list.js.map +0 -1
  777. package/dist/adapter/z-stack/utils/index.d.ts +0 -3
  778. package/dist/adapter/z-stack/utils/index.d.ts.map +0 -1
  779. package/dist/adapter/z-stack/utils/index.js +0 -19
  780. package/dist/adapter/z-stack/utils/index.js.map +0 -1
  781. package/dist/adapter/z-stack/utils/network-options.d.ts +0 -9
  782. package/dist/adapter/z-stack/utils/network-options.d.ts.map +0 -1
  783. package/dist/adapter/z-stack/utils/network-options.js +0 -23
  784. package/dist/adapter/z-stack/utils/network-options.js.map +0 -1
  785. package/dist/adapter/z-stack/znp/buffaloZnp.d.ts +0 -14
  786. package/dist/adapter/z-stack/znp/buffaloZnp.d.ts.map +0 -1
  787. package/dist/adapter/z-stack/znp/buffaloZnp.js +0 -243
  788. package/dist/adapter/z-stack/znp/buffaloZnp.js.map +0 -1
  789. package/dist/adapter/z-stack/znp/definition.d.ts +0 -6
  790. package/dist/adapter/z-stack/znp/definition.d.ts.map +0 -1
  791. package/dist/adapter/z-stack/znp/definition.js +0 -3052
  792. package/dist/adapter/z-stack/znp/definition.js.map +0 -1
  793. package/dist/adapter/z-stack/znp/index.d.ts +0 -4
  794. package/dist/adapter/z-stack/znp/index.d.ts.map +0 -1
  795. package/dist/adapter/z-stack/znp/index.js +0 -11
  796. package/dist/adapter/z-stack/znp/index.js.map +0 -1
  797. package/dist/adapter/z-stack/znp/parameterType.d.ts +0 -23
  798. package/dist/adapter/z-stack/znp/parameterType.d.ts.map +0 -1
  799. package/dist/adapter/z-stack/znp/parameterType.js +0 -26
  800. package/dist/adapter/z-stack/znp/parameterType.js.map +0 -1
  801. package/dist/adapter/z-stack/znp/tstype.d.ts +0 -23
  802. package/dist/adapter/z-stack/znp/tstype.d.ts.map +0 -1
  803. package/dist/adapter/z-stack/znp/tstype.js +0 -3
  804. package/dist/adapter/z-stack/znp/tstype.js.map +0 -1
  805. package/dist/adapter/z-stack/znp/znp.d.ts +0 -47
  806. package/dist/adapter/z-stack/znp/znp.d.ts.map +0 -1
  807. package/dist/adapter/z-stack/znp/znp.js +0 -322
  808. package/dist/adapter/z-stack/znp/znp.js.map +0 -1
  809. package/dist/adapter/z-stack/znp/zpiObject.d.ts +0 -20
  810. package/dist/adapter/z-stack/znp/zpiObject.d.ts.map +0 -1
  811. package/dist/adapter/z-stack/znp/zpiObject.js +0 -103
  812. package/dist/adapter/z-stack/znp/zpiObject.js.map +0 -1
  813. package/dist/adapter/zigate/adapter/index.d.ts +0 -3
  814. package/dist/adapter/zigate/adapter/index.d.ts.map +0 -1
  815. package/dist/adapter/zigate/adapter/index.js +0 -11
  816. package/dist/adapter/zigate/adapter/index.js.map +0 -1
  817. package/dist/adapter/zigate/adapter/zigateAdapter.d.ts +0 -72
  818. package/dist/adapter/zigate/adapter/zigateAdapter.js +0 -681
  819. package/dist/adapter/zigate/adapter/zigateAdapter.js.map +0 -1
  820. package/dist/adapter/zigate/driver/buffaloZiGate.d.ts +0 -18
  821. package/dist/adapter/zigate/driver/commandType.d.ts +0 -43
  822. package/dist/adapter/zigate/driver/commandType.d.ts.map +0 -1
  823. package/dist/adapter/zigate/driver/commandType.js +0 -390
  824. package/dist/adapter/zigate/driver/commandType.js.map +0 -1
  825. package/dist/adapter/zigate/driver/constants.d.ts +0 -277
  826. package/dist/adapter/zigate/driver/constants.d.ts.map +0 -1
  827. package/dist/adapter/zigate/driver/constants.js +0 -372
  828. package/dist/adapter/zigate/driver/constants.js.map +0 -1
  829. package/dist/adapter/zigate/driver/frame.d.ts +0 -27
  830. package/dist/adapter/zigate/driver/frame.d.ts.map +0 -1
  831. package/dist/adapter/zigate/driver/frame.js +0 -173
  832. package/dist/adapter/zigate/driver/frame.js.map +0 -1
  833. package/dist/adapter/zigate/driver/messageType.d.ts +0 -13
  834. package/dist/adapter/zigate/driver/messageType.d.ts.map +0 -1
  835. package/dist/adapter/zigate/driver/messageType.js +0 -284
  836. package/dist/adapter/zigate/driver/messageType.js.map +0 -1
  837. package/dist/adapter/zigate/driver/parameterType.d.ts +0 -28
  838. package/dist/adapter/zigate/driver/parameterType.d.ts.map +0 -1
  839. package/dist/adapter/zigate/driver/parameterType.js +0 -33
  840. package/dist/adapter/zigate/driver/parameterType.js.map +0 -1
  841. package/dist/adapter/zigate/driver/ziGateObject.d.ts +0 -24
  842. package/dist/adapter/zigate/driver/ziGateObject.js +0 -111
  843. package/dist/adapter/zigate/driver/ziGateObject.js.map +0 -1
  844. package/dist/adapter/zigate/driver/zigate.d.ts +0 -50
  845. package/dist/adapter/zigate/driver/zigate.js +0 -289
  846. package/dist/adapter/zigate/driver/zigate.js.map +0 -1
  847. package/dist/buffalo/buffalo.d.ts +0 -55
  848. package/dist/buffalo/buffalo.d.ts.map +0 -1
  849. package/dist/buffalo/buffalo.js +0 -230
  850. package/dist/buffalo/buffalo.js.map +0 -1
  851. package/dist/buffalo/index.d.ts +0 -3
  852. package/dist/buffalo/index.d.ts.map +0 -1
  853. package/dist/buffalo/index.js +0 -9
  854. package/dist/buffalo/index.js.map +0 -1
  855. package/dist/controller/controller.d.ts +0 -119
  856. package/dist/controller/database.d.ts +0 -20
  857. package/dist/controller/database.js +0 -94
  858. package/dist/controller/database.js.map +0 -1
  859. package/dist/controller/events.d.ts +0 -59
  860. package/dist/controller/greenPower.d.ts +0 -14
  861. package/dist/controller/helpers/index.d.ts +0 -3
  862. package/dist/controller/helpers/index.js +0 -29
  863. package/dist/controller/helpers/index.js.map +0 -1
  864. package/dist/controller/helpers/request.d.ts +0 -22
  865. package/dist/controller/helpers/request.js +0 -78
  866. package/dist/controller/helpers/request.js.map +0 -1
  867. package/dist/controller/helpers/requestQueue.d.ts +0 -13
  868. package/dist/controller/helpers/requestQueue.js +0 -106
  869. package/dist/controller/helpers/requestQueue.js.map +0 -1
  870. package/dist/controller/helpers/zclFrameConverter.d.ts +0 -9
  871. package/dist/controller/helpers/zclTransactionSequenceNumber.d.ts +0 -6
  872. package/dist/controller/helpers/zclTransactionSequenceNumber.d.ts.map +0 -1
  873. package/dist/controller/helpers/zclTransactionSequenceNumber.js +0 -14
  874. package/dist/controller/helpers/zclTransactionSequenceNumber.js.map +0 -1
  875. package/dist/controller/index.d.ts +0 -6
  876. package/dist/controller/index.js +0 -9
  877. package/dist/controller/index.js.map +0 -1
  878. package/dist/controller/model/device.d.ts +0 -140
  879. package/dist/controller/model/endpoint.d.ts +0 -134
  880. package/dist/controller/model/entity.d.ts +0 -15
  881. package/dist/controller/model/entity.js +0 -27
  882. package/dist/controller/model/entity.js.map +0 -1
  883. package/dist/controller/model/group.d.ts +0 -39
  884. package/dist/controller/model/index.d.ts +0 -6
  885. package/dist/controller/model/index.js +0 -15
  886. package/dist/controller/model/index.js.map +0 -1
  887. package/dist/controller/model/konnextConfig.d.ts +0 -7
  888. package/dist/controller/model/konnextConfig.d.ts.map +0 -1
  889. package/dist/controller/model/konnextConfig.js +0 -3
  890. package/dist/controller/model/konnextConfig.js.map +0 -1
  891. package/dist/controller/touchlink.d.ts +0 -20
  892. package/dist/controller/touchlink.js +0 -157
  893. package/dist/controller/touchlink.js.map +0 -1
  894. package/dist/controller/tstype.d.ts +0 -21
  895. package/dist/index.d.ts +0 -6
  896. package/dist/index.js +0 -37
  897. package/dist/index.js.map +0 -1
  898. package/dist/models/backup-storage-legacy.d.ts +0 -27
  899. package/dist/models/backup-storage-legacy.d.ts.map +0 -1
  900. package/dist/models/backup-storage-legacy.js +0 -3
  901. package/dist/models/backup-storage-legacy.js.map +0 -1
  902. package/dist/models/backup-storage-unified.d.ts +0 -50
  903. package/dist/models/backup-storage-unified.d.ts.map +0 -1
  904. package/dist/models/backup-storage-unified.js +0 -3
  905. package/dist/models/backup-storage-unified.js.map +0 -1
  906. package/dist/models/backup.d.ts +0 -38
  907. package/dist/models/backup.d.ts.map +0 -1
  908. package/dist/models/backup.js +0 -3
  909. package/dist/models/backup.js.map +0 -1
  910. package/dist/models/index.d.ts +0 -5
  911. package/dist/models/index.d.ts.map +0 -1
  912. package/dist/models/index.js +0 -21
  913. package/dist/models/index.js.map +0 -1
  914. package/dist/models/network-options.d.ts +0 -13
  915. package/dist/models/network-options.d.ts.map +0 -1
  916. package/dist/models/network-options.js +0 -3
  917. package/dist/models/network-options.js.map +0 -1
  918. package/dist/utils/aes.d.ts +0 -40
  919. package/dist/utils/aes.d.ts.map +0 -1
  920. package/dist/utils/aes.js +0 -198
  921. package/dist/utils/aes.js.map +0 -1
  922. package/dist/utils/assertString.d.ts +0 -3
  923. package/dist/utils/assertString.d.ts.map +0 -1
  924. package/dist/utils/assertString.js +0 -9
  925. package/dist/utils/assertString.js.map +0 -1
  926. package/dist/utils/backup.d.ts +0 -21
  927. package/dist/utils/backup.d.ts.map +0 -1
  928. package/dist/utils/backup.js +0 -190
  929. package/dist/utils/backup.js.map +0 -1
  930. package/dist/utils/equalsPartial.d.ts +0 -3
  931. package/dist/utils/equalsPartial.d.ts.map +0 -1
  932. package/dist/utils/equalsPartial.js +0 -12
  933. package/dist/utils/equalsPartial.js.map +0 -1
  934. package/dist/utils/index.d.ts +0 -10
  935. package/dist/utils/index.d.ts.map +0 -1
  936. package/dist/utils/index.js +0 -46
  937. package/dist/utils/index.js.map +0 -1
  938. package/dist/utils/isNumberArray.d.ts +0 -3
  939. package/dist/utils/isNumberArray.d.ts.map +0 -1
  940. package/dist/utils/isNumberArray.js +0 -7
  941. package/dist/utils/isNumberArray.js.map +0 -1
  942. package/dist/utils/logger.d.ts +0 -9
  943. package/dist/utils/logger.d.ts.map +0 -1
  944. package/dist/utils/logger.js +0 -14
  945. package/dist/utils/logger.js.map +0 -1
  946. package/dist/utils/queue.d.ts +0 -12
  947. package/dist/utils/queue.d.ts.map +0 -1
  948. package/dist/utils/queue.js +0 -62
  949. package/dist/utils/queue.js.map +0 -1
  950. package/dist/utils/realpathSync.d.ts +0 -3
  951. package/dist/utils/realpathSync.d.ts.map +0 -1
  952. package/dist/utils/realpathSync.js +0 -13
  953. package/dist/utils/realpathSync.js.map +0 -1
  954. package/dist/utils/wait.d.ts +0 -3
  955. package/dist/utils/wait.d.ts.map +0 -1
  956. package/dist/utils/wait.js +0 -9
  957. package/dist/utils/wait.js.map +0 -1
  958. package/dist/utils/waitress.d.ts +0 -22
  959. package/dist/utils/waitress.d.ts.map +0 -1
  960. package/dist/utils/waitress.js +0 -69
  961. package/dist/utils/waitress.js.map +0 -1
  962. package/dist/zspec/consts.d.ts +0 -60
  963. package/dist/zspec/consts.d.ts.map +0 -1
  964. package/dist/zspec/consts.js +0 -64
  965. package/dist/zspec/consts.js.map +0 -1
  966. package/dist/zspec/enums.d.ts +0 -19
  967. package/dist/zspec/enums.d.ts.map +0 -1
  968. package/dist/zspec/enums.js +0 -28
  969. package/dist/zspec/enums.js.map +0 -1
  970. package/dist/zspec/index.d.ts +0 -4
  971. package/dist/zspec/index.d.ts.map +0 -1
  972. package/dist/zspec/index.js +0 -43
  973. package/dist/zspec/index.js.map +0 -1
  974. package/dist/zspec/tstypes.d.ts +0 -19
  975. package/dist/zspec/tstypes.d.ts.map +0 -1
  976. package/dist/zspec/tstypes.js +0 -3
  977. package/dist/zspec/tstypes.js.map +0 -1
  978. package/dist/zspec/utils.d.ts +0 -14
  979. package/dist/zspec/utils.d.ts.map +0 -1
  980. package/dist/zspec/utils.js +0 -29
  981. package/dist/zspec/utils.js.map +0 -1
  982. package/dist/zspec/zcl/buffaloZcl.d.ts +0 -55
  983. package/dist/zspec/zcl/definition/cluster.d.ts +0 -3
  984. package/dist/zspec/zcl/definition/consts.d.ts +0 -9
  985. package/dist/zspec/zcl/definition/consts.d.ts.map +0 -1
  986. package/dist/zspec/zcl/definition/consts.js +0 -27
  987. package/dist/zspec/zcl/definition/consts.js.map +0 -1
  988. package/dist/zspec/zcl/definition/enums.d.ts +0 -177
  989. package/dist/zspec/zcl/definition/enums.d.ts.map +0 -1
  990. package/dist/zspec/zcl/definition/enums.js +0 -187
  991. package/dist/zspec/zcl/definition/enums.js.map +0 -1
  992. package/dist/zspec/zcl/definition/foundation.d.ts +0 -11
  993. package/dist/zspec/zcl/definition/manufacturerCode.d.ts +0 -727
  994. package/dist/zspec/zcl/definition/manufacturerCode.d.ts.map +0 -1
  995. package/dist/zspec/zcl/definition/manufacturerCode.js +0 -733
  996. package/dist/zspec/zcl/definition/manufacturerCode.js.map +0 -1
  997. package/dist/zspec/zcl/definition/status.d.ts +0 -69
  998. package/dist/zspec/zcl/definition/status.d.ts.map +0 -1
  999. package/dist/zspec/zcl/definition/status.js +0 -74
  1000. package/dist/zspec/zcl/definition/status.js.map +0 -1
  1001. package/dist/zspec/zcl/index.d.ts +0 -11
  1002. package/dist/zspec/zcl/utils.d.ts +0 -7
  1003. package/dist/zspec/zcl/zclFrame.d.ts +0 -36
  1004. package/dist/zspec/zcl/zclHeader.d.ts +0 -17
  1005. package/dist/zspec/zcl/zclStatusError.d.ts +0 -6
  1006. package/dist/zspec/zcl/zclStatusError.d.ts.map +0 -1
  1007. package/dist/zspec/zcl/zclStatusError.js +0 -13
  1008. package/dist/zspec/zcl/zclStatusError.js.map +0 -1
  1009. package/dist/zspec/zdo/buffaloZdo.d.ts +0 -438
  1010. package/dist/zspec/zdo/buffaloZdo.d.ts.map +0 -1
  1011. package/dist/zspec/zdo/buffaloZdo.js +0 -1892
  1012. package/dist/zspec/zdo/buffaloZdo.js.map +0 -1
  1013. package/dist/zspec/zdo/definition/clusters.d.ts +0 -624
  1014. package/dist/zspec/zdo/definition/clusters.d.ts.map +0 -1
  1015. package/dist/zspec/zdo/definition/clusters.js +0 -687
  1016. package/dist/zspec/zdo/definition/clusters.js.map +0 -1
  1017. package/dist/zspec/zdo/definition/consts.d.ts +0 -13
  1018. package/dist/zspec/zdo/definition/consts.d.ts.map +0 -1
  1019. package/dist/zspec/zdo/definition/consts.js +0 -16
  1020. package/dist/zspec/zdo/definition/consts.js.map +0 -1
  1021. package/dist/zspec/zdo/definition/enums.d.ts +0 -75
  1022. package/dist/zspec/zdo/definition/enums.d.ts.map +0 -1
  1023. package/dist/zspec/zdo/definition/enums.js +0 -97
  1024. package/dist/zspec/zdo/definition/enums.js.map +0 -1
  1025. package/dist/zspec/zdo/definition/status.d.ts +0 -99
  1026. package/dist/zspec/zdo/definition/status.d.ts.map +0 -1
  1027. package/dist/zspec/zdo/definition/status.js +0 -109
  1028. package/dist/zspec/zdo/definition/status.js.map +0 -1
  1029. package/dist/zspec/zdo/definition/tstypes.d.ts +0 -787
  1030. package/dist/zspec/zdo/definition/tstypes.d.ts.map +0 -1
  1031. package/dist/zspec/zdo/definition/tstypes.js +0 -3
  1032. package/dist/zspec/zdo/definition/tstypes.js.map +0 -1
  1033. package/dist/zspec/zdo/index.d.ts +0 -7
  1034. package/dist/zspec/zdo/index.d.ts.map +0 -1
  1035. package/dist/zspec/zdo/index.js +0 -39
  1036. package/dist/zspec/zdo/index.js.map +0 -1
  1037. package/dist/zspec/zdo/utils.d.ts +0 -25
  1038. package/dist/zspec/zdo/utils.d.ts.map +0 -1
  1039. package/dist/zspec/zdo/utils.js +0 -75
  1040. package/dist/zspec/zdo/utils.js.map +0 -1
  1041. package/dist/zspec/zdo/zdoStatusError.d.ts +0 -6
  1042. package/dist/zspec/zdo/zdoStatusError.d.ts.map +0 -1
  1043. package/dist/zspec/zdo/zdoStatusError.js +0 -13
  1044. package/dist/zspec/zdo/zdoStatusError.js.map +0 -1
  1045. package/typedoc-tsconfig.json +0 -44
@@ -0,0 +1,1746 @@
1
+ /** Status Codes contains error and status code definitions used by Simplicity SDK software components and stacks. */
2
+ export enum SLStatus {
3
+ // -----------------------------------------------------------------------------
4
+ // Generic Errors
5
+
6
+ /** No error. */
7
+ OK = 0x0000,
8
+ /** Generic error. */
9
+ FAIL = 0x0001,
10
+
11
+ // -----------------------------------------------------------------------------
12
+ // State Errors
13
+
14
+ /** Generic invalid state error. */
15
+ INVALID_STATE = 0x0002,
16
+ /** Module is not ready for requested operation. */
17
+ NOT_READY = 0x0003,
18
+ /** Module is busy and cannot carry out requested operation. */
19
+ BUSY = 0x0004,
20
+ /** Operation is in progress and not yet complete (pass or fail). */
21
+ IN_PROGRESS = 0x0005,
22
+ /** Operation aborted. */
23
+ ABORT = 0x0006,
24
+ /** Operation timed out. */
25
+ TIMEOUT = 0x0007,
26
+ /** Operation not allowed per permissions. */
27
+ PERMISSION = 0x0008,
28
+ /** Non-blocking operation would block. */
29
+ WOULD_BLOCK = 0x0009,
30
+ /** Operation/module is Idle, cannot carry requested operation. */
31
+ IDLE = 0x000a,
32
+ /** Operation cannot be done while construct is waiting. */
33
+ IS_WAITING = 0x000b,
34
+ /** No task/construct waiting/pending for that action/event. */
35
+ NONE_WAITING = 0x000c,
36
+ /** Operation cannot be done while construct is suspended. */
37
+ SUSPENDED = 0x000d,
38
+ /** Feature not available due to software configuration. */
39
+ NOT_AVAILABLE = 0x000e,
40
+ /** Feature not supported. */
41
+ NOT_SUPPORTED = 0x000f,
42
+ /** Initialization failed. */
43
+ INITIALIZATION = 0x0010,
44
+ /** Module has not been initialized. */
45
+ NOT_INITIALIZED = 0x0011,
46
+ /** Module has already been initialized. */
47
+ ALREADY_INITIALIZED = 0x0012,
48
+ /** Object/construct has been deleted. */
49
+ DELETED = 0x0013,
50
+ /** Illegal call from ISR. */
51
+ ISR = 0x0014,
52
+ /** Illegal call because network is up. */
53
+ NETWORK_UP = 0x0015,
54
+ /** Illegal call because network is down. */
55
+ NETWORK_DOWN = 0x0016,
56
+ /** Failure due to not being joined in a network. */
57
+ NOT_JOINED = 0x0017,
58
+ /** Invalid operation as there are no beacons. */
59
+ NO_BEACONS = 0x0018,
60
+
61
+ // -----------------------------------------------------------------------------
62
+ // Allocation/ownership Errors
63
+
64
+ /** Generic allocation error. */
65
+ ALLOCATION_FAILED = 0x0019,
66
+ /** No more resource available to perform the operation. */
67
+ NO_MORE_RESOURCE = 0x001a,
68
+ /** Item/list/queue is empty. */
69
+ EMPTY = 0x001b,
70
+ /** Item/list/queue is full. */
71
+ FULL = 0x001c,
72
+ /** Item would overflow. */
73
+ WOULD_OVERFLOW = 0x001d,
74
+ /** Item/list/queue has been overflowed. */
75
+ HAS_OVERFLOWED = 0x001e,
76
+ /** Generic ownership error. */
77
+ OWNERSHIP = 0x001f,
78
+ /** Already/still owning resource. */
79
+ IS_OWNER = 0x0020,
80
+
81
+ // -----------------------------------------------------------------------------
82
+ // Invalid Parameters Errors
83
+
84
+ /** Generic invalid argument or consequence of invalid argument. */
85
+ INVALID_PARAMETER = 0x0021,
86
+ /** Invalid null pointer received as argument. */
87
+ NULL_POINTER = 0x0022,
88
+ /** Invalid configuration provided. */
89
+ INVALID_CONFIGURATION = 0x0023,
90
+ /** Invalid mode. */
91
+ INVALID_MODE = 0x0024,
92
+ /** Invalid handle. */
93
+ INVALID_HANDLE = 0x0025,
94
+ /** Invalid type for operation. */
95
+ INVALID_TYPE = 0x0026,
96
+ /** Invalid index. */
97
+ INVALID_INDEX = 0x0027,
98
+ /** Invalid range. */
99
+ INVALID_RANGE = 0x0028,
100
+ /** Invalid key. */
101
+ INVALID_KEY = 0x0029,
102
+ /** Invalid credentials. */
103
+ INVALID_CREDENTIALS = 0x002a,
104
+ /** Invalid count. */
105
+ INVALID_COUNT = 0x002b,
106
+ /** Invalid signature / verification failed. */
107
+ INVALID_SIGNATURE = 0x002c,
108
+ /** Item could not be found. */
109
+ NOT_FOUND = 0x002d,
110
+ /** Item already exists. */
111
+ ALREADY_EXISTS = 0x002e,
112
+
113
+ // -----------------------------------------------------------------------------
114
+ // IO/Communication Errors
115
+
116
+ /** Generic I/O failure. */
117
+ IO = 0x002f,
118
+ /** I/O failure due to timeout. */
119
+ IO_TIMEOUT = 0x0030,
120
+ /** Generic transmission error. */
121
+ TRANSMIT = 0x0031,
122
+ /** Transmit underflowed. */
123
+ TRANSMIT_UNDERFLOW = 0x0032,
124
+ /** Transmit is incomplete. */
125
+ TRANSMIT_INCOMPLETE = 0x0033,
126
+ /** Transmit is busy. */
127
+ TRANSMIT_BUSY = 0x0034,
128
+ /** Generic reception error. */
129
+ RECEIVE = 0x0035,
130
+ /** Failed to read on/via given object. */
131
+ OBJECT_READ = 0x0036,
132
+ /** Failed to write on/via given object. */
133
+ OBJECT_WRITE = 0x0037,
134
+ /** Message is too long. */
135
+ MESSAGE_TOO_LONG = 0x0038,
136
+
137
+ // -----------------------------------------------------------------------------
138
+ // EEPROM/Flash Errors
139
+
140
+ /** EEPROM MFG version mismatch. */
141
+ EEPROM_MFG_VERSION_MISMATCH = 0x0039,
142
+ /** EEPROM Stack version mismatch. */
143
+ EEPROM_STACK_VERSION_MISMATCH = 0x003a,
144
+ /** Flash write is inhibited. */
145
+ FLASH_WRITE_INHIBITED = 0x003b,
146
+ /** Flash verification failed. */
147
+ FLASH_VERIFY_FAILED = 0x003c,
148
+ /** Flash programming failed. */
149
+ FLASH_PROGRAM_FAILED = 0x003d,
150
+ /** Flash erase failed. */
151
+ FLASH_ERASE_FAILED = 0x003e,
152
+
153
+ // -----------------------------------------------------------------------------
154
+ // MAC Errors
155
+
156
+ /** MAC no data. */
157
+ MAC_NO_DATA = 0x003f,
158
+ /** MAC no ACK received. */
159
+ MAC_NO_ACK_RECEIVED = 0x0040,
160
+ /** MAC indirect timeout. */
161
+ MAC_INDIRECT_TIMEOUT = 0x0041,
162
+ /** MAC unknown header type. */
163
+ MAC_UNKNOWN_HEADER_TYPE = 0x0042,
164
+ /** MAC ACK unknown header type. */
165
+ MAC_ACK_HEADER_TYPE = 0x0043,
166
+ /** MAC command transmit failure. */
167
+ MAC_COMMAND_TRANSMIT_FAILURE = 0x0044,
168
+
169
+ // -----------------------------------------------------------------------------
170
+ // CLI_STORAGE Errors
171
+
172
+ /** Error in open NVM */
173
+ CLI_STORAGE_NVM_OPEN_ERROR = 0x0045,
174
+
175
+ // -----------------------------------------------------------------------------
176
+ // Security status codes
177
+
178
+ /** Image checksum is not valid. */
179
+ SECURITY_IMAGE_CHECKSUM_ERROR = 0x0046,
180
+ /** Decryption failed */
181
+ SECURITY_DECRYPT_ERROR = 0x0047,
182
+
183
+ // -----------------------------------------------------------------------------
184
+ // Command status codes
185
+
186
+ /** Command was not recognized */
187
+ COMMAND_IS_INVALID = 0x0048,
188
+ /** Command or parameter maximum length exceeded */
189
+ COMMAND_TOO_LONG = 0x0049,
190
+ /** Data received does not form a complete command */
191
+ COMMAND_INCOMPLETE = 0x004a,
192
+
193
+ // -----------------------------------------------------------------------------
194
+ // Misc Errors
195
+
196
+ /** Bus error, e.g. invalid DMA address */
197
+ BUS_ERROR = 0x004b,
198
+
199
+ // -----------------------------------------------------------------------------
200
+ // Unified MAC Errors
201
+
202
+ /** CCA failure. */
203
+ CCA_FAILURE = 0x004c,
204
+
205
+ // -----------------------------------------------------------------------------
206
+ // Scan errors
207
+
208
+ /** MAC scanning. */
209
+ MAC_SCANNING = 0x004d,
210
+ /** MAC incorrect scan type. */
211
+ MAC_INCORRECT_SCAN_TYPE = 0x004e,
212
+ /** Invalid channel mask. */
213
+ INVALID_CHANNEL_MASK = 0x004f,
214
+ /** Bad scan duration. */
215
+ BAD_SCAN_DURATION = 0x0050,
216
+
217
+ // -----------------------------------------------------------------------------
218
+ // MAC transmit related status
219
+
220
+ /** The MAC transmit queue is full */
221
+ MAC_TRANSMIT_QUEUE_FULL = 0x0053,
222
+ /**
223
+ * The transmit attempt failed because the radio scheduler could not find a slot to transmit this packet in or
224
+ * a higher priority event interrupted it
225
+ */
226
+ TRANSMIT_SCHEDULER_FAIL = 0x0054,
227
+ /** An unsupported channel setting was specified */
228
+ TRANSMIT_INVALID_CHANNEL = 0x0055,
229
+ /** An unsupported power setting was specified */
230
+ TRANSMIT_INVALID_POWER = 0x0056,
231
+ /** The expected ACK was received after the last transmission */
232
+ TRANSMIT_ACK_RECEIVED = 0x0057,
233
+ /**
234
+ * The transmit attempt was blocked from going over the air.
235
+ * Typically this is due to the Radio Hold Off (RHO) or Coexistence plugins as they can prevent transmits based on external signals.
236
+ */
237
+ TRANSMIT_BLOCKED = 0x0058,
238
+
239
+ // -----------------------------------------------------------------------------
240
+ // NVM3 specific errors
241
+
242
+ /** The initialization was aborted as the NVM3 instance is not aligned properly in memory */
243
+ NVM3_ALIGNMENT_INVALID = 0x0059,
244
+ /** The initialization was aborted as the size of the NVM3 instance is too small */
245
+ NVM3_SIZE_TOO_SMALL = 0x005a,
246
+ /** The initialization was aborted as the NVM3 page size is not supported */
247
+ NVM3_PAGE_SIZE_NOT_SUPPORTED = 0x005b,
248
+ /** The application that there was an error initializing some of the tokens */
249
+ NVM3_TOKEN_INIT_FAILED = 0x005c,
250
+ /** The initialization was aborted as the NVM3 instance was already opened with other parameters */
251
+ NVM3_OPENED_WITH_OTHER_PARAMETERS = 0x005d,
252
+
253
+ // -----------------------------------------------------------------------------
254
+ // MVP Driver and MVP Math status codes
255
+
256
+ /** Critical fault */
257
+ COMPUTE_DRIVER_FAULT = 0x1501,
258
+ /** ALU operation output NaN */
259
+ COMPUTE_DRIVER_ALU_NAN = 0x1502,
260
+ /** ALU numeric overflow */
261
+ COMPUTE_DRIVER_ALU_OVERFLOW = 0x1503,
262
+ /** ALU numeric underflow */
263
+ COMPUTE_DRIVER_ALU_UNDERFLOW = 0x1504,
264
+ /** Overflow during array store */
265
+ COMPUTE_DRIVER_STORE_CONVERSION_OVERFLOW = 0x1505,
266
+ /** Underflow during array store conversion */
267
+ COMPUTE_DRIVER_STORE_CONVERSION_UNDERFLOW = 0x1506,
268
+ /** Infinity encountered during array store conversion */
269
+ COMPUTE_DRIVER_STORE_CONVERSION_INFINITY = 0x1507,
270
+ /** NaN encountered during array store conversion */
271
+ COMPUTE_DRIVER_STORE_CONVERSION_NAN = 0x1508,
272
+
273
+ /** MATH NaN encountered */
274
+ COMPUTE_MATH_NAN = 0x1512,
275
+ /** MATH Infinity encountered */
276
+ COMPUTE_MATH_INFINITY = 0x1513,
277
+ /** MATH numeric overflow */
278
+ COMPUTE_MATH_OVERFLOW = 0x1514,
279
+ /** MATH numeric underflow */
280
+ COMPUTE_MATH_UNDERFLOW = 0x1515,
281
+
282
+ // -----------------------------------------------------------------------------
283
+ // Zigbee status codes
284
+
285
+ /** Packet is dropped by packet-handoff callbacks */
286
+ ZIGBEE_PACKET_HANDOFF_DROPPED = 0x0c01,
287
+ /** The APS layer attempted to send or deliver a message and failed */
288
+ ZIGBEE_DELIVERY_FAILED = 0x0c02,
289
+ /** The maximum number of in-flight messages ::EMBER_APS_UNICAST_MESSAGE_COUNT has been reached */
290
+ ZIGBEE_MAX_MESSAGE_LIMIT_REACHED = 0x0c03,
291
+ /** The application is trying to delete or overwrite a binding that is in use */
292
+ ZIGBEE_BINDING_IS_ACTIVE = 0x0c04,
293
+ /** The application is trying to overwrite an address table entry that is in use */
294
+ ZIGBEE_ADDRESS_TABLE_ENTRY_IS_ACTIVE = 0x0c05,
295
+ /** After moving, a mobile node's attempt to re-establish contact with the network failed */
296
+ ZIGBEE_MOVE_FAILED = 0x0c06,
297
+ /** The local node ID has changed. The application can get the new node ID by calling ::sl_zigbee_get_node_id() */
298
+ ZIGBEE_NODE_ID_CHANGED = 0x0c07,
299
+ /** The chosen security level is not supported by the stack */
300
+ ZIGBEE_INVALID_SECURITY_LEVEL = 0x0c08,
301
+ /** An error occurred when trying to encrypt at the APS Level */
302
+ ZIGBEE_IEEE_ADDRESS_DISCOVERY_IN_PROGRESS = 0x0c09,
303
+ /** An error occurred when trying to encrypt at the APS Level */
304
+ ZIGBEE_APS_ENCRYPTION_ERROR = 0x0c0a,
305
+ /** There was an attempt to form or join a network with security without calling ::sl_zigbee_set_initial_security_state() first */
306
+ ZIGBEE_SECURITY_STATE_NOT_SET = 0x0c0b,
307
+ /**
308
+ * There was an attempt to broadcast a key switch too quickly after broadcasting the next network key.
309
+ * The Trust Center must wait at least a period equal to the broadcast timeout so that all routers have a chance
310
+ * to receive the broadcast of the new network key
311
+ */
312
+ ZIGBEE_TOO_SOON_FOR_SWITCH_KEY = 0x0c0c,
313
+ /** The received signature corresponding to the message that was passed to the CBKE Library failed verification and is not valid */
314
+ ZIGBEE_SIGNATURE_VERIFY_FAILURE = 0x0c0d,
315
+ /** The message could not be sent because the link key corresponding to the destination is not authorized for use in APS data messages */
316
+ ZIGBEE_KEY_NOT_AUTHORIZED = 0x0c0e,
317
+ /** The application tried to use a binding that has been remotely modified and the change has not yet been reported to the application */
318
+ ZIGBEE_BINDING_HAS_CHANGED = 0x0c0f,
319
+ /** The EUI of the Trust center has changed due to a successful rejoin after TC Swapout */
320
+ ZIGBEE_TRUST_CENTER_SWAP_EUI_HAS_CHANGED = 0x0c10,
321
+ /** A Trust Center Swapout Rejoin has occurred without the EUI of the TC changing */
322
+ ZIGBEE_TRUST_CENTER_SWAP_EUI_HAS_NOT_CHANGED = 0x0c11,
323
+ /** An attempt to generate random bytes failed because of insufficient random data from the radio */
324
+ ZIGBEE_INSUFFICIENT_RANDOM_DATA = 0x0c12,
325
+ /** A Zigbee route error command frame was received indicating that a source routed message from this node failed en route */
326
+ ZIGBEE_SOURCE_ROUTE_FAILURE = 0x0c13,
327
+ /** A Zigbee route error command frame was received indicating that a message sent to this node along a many-to-one route failed en route */
328
+ ZIGBEE_MANY_TO_ONE_ROUTE_FAILURE = 0x0c14,
329
+ /** A critical and fatal error indicating that the version of the stack trying to run does not match with the chip it's running on */
330
+ ZIGBEE_STACK_AND_HARDWARE_MISMATCH = 0x0c15,
331
+ /** The local PAN ID has changed. The application can get the new PAN ID by calling ::emberGetPanId() */
332
+ ZIGBEE_PAN_ID_CHANGED = 0x0c16,
333
+ /** The channel has changed. */
334
+ ZIGBEE_CHANNEL_CHANGED = 0x0c17,
335
+ /** The network has been opened for joining. */
336
+ ZIGBEE_NETWORK_OPENED = 0x0c18,
337
+ /** The network has been closed for joining. */
338
+ ZIGBEE_NETWORK_CLOSED = 0x0c19,
339
+ /**
340
+ * An attempt was made to join a Secured Network using a pre-configured key, but the Trust Center sent back a
341
+ * Network Key in-the-clear when an encrypted Network Key was required. (::EMBER_REQUIRE_ENCRYPTED_KEY)
342
+ */
343
+ ZIGBEE_RECEIVED_KEY_IN_THE_CLEAR = 0x0c1a,
344
+ /** An attempt was made to join a Secured Network, but the device did not receive a Network Key. */
345
+ ZIGBEE_NO_NETWORK_KEY_RECEIVED = 0x0c1b,
346
+ /** After a device joined a Secured Network, a Link Key was requested (::EMBER_GET_LINK_KEY_WHEN_JOINING) but no response was ever received. */
347
+ ZIGBEE_NO_LINK_KEY_RECEIVED = 0x0c1c,
348
+ /**
349
+ * An attempt was made to join a Secured Network without a pre-configured key, but the Trust Center sent encrypted data using a
350
+ * pre-configured key.
351
+ */
352
+ ZIGBEE_PRECONFIGURED_KEY_REQUIRED = 0x0c1d,
353
+ /** A Zigbee EZSP error has occured. Track the origin and corresponding EzspStatus for more info. */
354
+ ZIGBEE_EZSP_ERROR = 0x0c1e,
355
+ /** Node ID discovery failed. */
356
+ ZIGBEE_ID_DISCOVERY_FAILED = 0x0c1f,
357
+ /** Message was sent but no APS ACK received. */
358
+ ZIGBEE_NO_APS_ACK = 0x0c20,
359
+ /** APS message was canceled. */
360
+ ZIGBEE_APS_MESSAGE_CANCELED = 0x0c21,
361
+ /** Node ID discovery not enabled. */
362
+ ZIGBEE_ID_DISCOVERY_NOT_ENABLED = 0x0c22,
363
+ /** Message was not sent, Node ID discovery is underway. */
364
+ ZIGBEE_ID_DISCOVERY_UNDERWAY = 0x0c23,
365
+ /** The message was not sent because a route discovery is currently underway. There is no route to the target until the route discovery completes. */
366
+ ZIGBEE_SEND_UNICAST_ROUTE_DISCOVERY_UNDERWAY = 0x0c24,
367
+ /** Radius is 0 or message has been dropped because route request failed or failed to submit message to tx queue. */
368
+ ZIGBEE_SEND_UNICAST_FAILURE = 0x0c25,
369
+ /** No active route to the destination. */
370
+ ZIGBEE_SEND_UNICAST_NO_ROUTE = 0x0c26,
371
+ /** Broadcast message timeout while waiting for sleepy children to poll. */
372
+ ZIGBEE_BROADCAST_TO_SLEEPY_CHILDREN_TIMEOUT = 0x0c27,
373
+ /** Expected a neighbor to relay the message, but none did. */
374
+ ZIGBEE_BROADCAST_RELAY_FAILED = 0x0c28,
375
+ }
376
+
377
+ /** Status values used by EZSP. */
378
+ export enum EzspStatus {
379
+ /** Success. */
380
+ SUCCESS = 0x00,
381
+ /** Fatal error. */
382
+ SPI_ERR_FATAL = 0x10,
383
+ /** The Response frame of the current transaction indicates the NCP has reset. */
384
+ SPI_ERR_NCP_RESET = 0x11,
385
+ /** The NCP is reporting that the Command frame of the current transaction is oversized (the length byte is too large). */
386
+ SPI_ERR_OVERSIZED_EZSP_FRAME = 0x12,
387
+ /** The Response frame of the current transaction indicates the previous transaction was aborted (nSSEL deasserted too soon). */
388
+ SPI_ERR_ABORTED_TRANSACTION = 0x13,
389
+ /** The Response frame of the current transaction indicates the frame terminator is missing from the Command frame. */
390
+ SPI_ERR_MISSING_FRAME_TERMINATOR = 0x14,
391
+ /** The NCP has not provided a Response within the time limit defined by WAIT_SECTION_TIMEOUT. */
392
+ SPI_ERR_WAIT_SECTION_TIMEOUT = 0x15,
393
+ /** The Response frame from the NCP is missing the frame terminator. */
394
+ SPI_ERR_NO_FRAME_TERMINATOR = 0x16,
395
+ /** The Host attempted to send an oversized Command (the length byte is too large) and the AVR's spi-protocol.c blocked the transmission. */
396
+ SPI_ERR_EZSP_COMMAND_OVERSIZED = 0x17,
397
+ /** The NCP attempted to send an oversized Response (the length byte is too large) and the AVR's spi-protocol.c blocked the reception. */
398
+ SPI_ERR_EZSP_RESPONSE_OVERSIZED = 0x18,
399
+ /** The Host has sent the Command and is still waiting for the NCP to send a Response. */
400
+ SPI_WAITING_FOR_RESPONSE = 0x19,
401
+ /** The NCP has not asserted nHOST_INT within the time limit defined by WAKE_HANDSHAKE_TIMEOUT. */
402
+ SPI_ERR_HANDSHAKE_TIMEOUT = 0x1a,
403
+ /** The NCP has not asserted nHOST_INT after an NCP reset within the time limit defined by STARTUP_TIMEOUT. */
404
+ SPI_ERR_STARTUP_TIMEOUT = 0x1b,
405
+ /** The Host attempted to verify the SPI Protocol activity and version number, and the verification failed. */
406
+ SPI_ERR_STARTUP_FAIL = 0x1c,
407
+ /** The Host has sent a command with a SPI Byte that is unsupported by the current mode the NCP is operating in. */
408
+ SPI_ERR_UNSUPPORTED_SPI_COMMAND = 0x1d,
409
+ /** Operation not yet complete. */
410
+ ASH_IN_PROGRESS = 0x20,
411
+ /** Fatal error detected by host. */
412
+ HOST_FATAL_ERROR = 0x21,
413
+ /** Fatal error detected by NCP. */
414
+ ASH_NCP_FATAL_ERROR = 0x22,
415
+ /** Tried to send DATA frame too long. */
416
+ DATA_FRAME_TOO_LONG = 0x23,
417
+ /** Tried to send DATA frame too short. */
418
+ DATA_FRAME_TOO_SHORT = 0x24,
419
+ /** No space for tx'ed DATA frame. */
420
+ NO_TX_SPACE = 0x25,
421
+ /** No space for rec'd DATA frame. */
422
+ NO_RX_SPACE = 0x26,
423
+ /** No receive data available. */
424
+ NO_RX_DATA = 0x27,
425
+ /** Not in Connected state. */
426
+ NOT_CONNECTED = 0x28,
427
+ /** The NCP received a command before the EZSP version had been set. */
428
+ ERROR_VERSION_NOT_SET = 0x30,
429
+ /** The NCP received a command containing an unsupported frame ID. */
430
+ ERROR_INVALID_FRAME_ID = 0x31,
431
+ /** The direction flag in the frame control field was incorrect. */
432
+ ERROR_WRONG_DIRECTION = 0x32,
433
+ /**
434
+ * The truncated flag in the frame control field was set, indicating there was not enough memory available to
435
+ * complete the response or that the response would have exceeded the maximum EZSP frame length.
436
+ */
437
+ ERROR_TRUNCATED = 0x33,
438
+ /**
439
+ * The overflow flag in the frame control field was set, indicating one or more callbacks occurred since the previous
440
+ * response and there was not enough memory available to report them to the Host.
441
+ */
442
+ ERROR_OVERFLOW = 0x34,
443
+ /** Insufficient memory was available. */
444
+ ERROR_OUT_OF_MEMORY = 0x35,
445
+ /** The value was out of bounds. */
446
+ ERROR_INVALID_VALUE = 0x36,
447
+ /** The configuration id was not recognized. */
448
+ ERROR_INVALID_ID = 0x37,
449
+ /** Configuration values can no longer be modified. */
450
+ ERROR_INVALID_CALL = 0x38,
451
+ /** The NCP failed to respond to a command. */
452
+ ERROR_NO_RESPONSE = 0x39,
453
+ /** The length of the command exceeded the maximum EZSP frame length. */
454
+ ERROR_COMMAND_TOO_LONG = 0x40,
455
+ /** The UART receive queue was full causing a callback response to be dropped. */
456
+ ERROR_QUEUE_FULL = 0x41,
457
+ /** The command has been filtered out by NCP. */
458
+ ERROR_COMMAND_FILTERED = 0x42,
459
+ /** EZSP Security Key is already set */
460
+ ERROR_SECURITY_KEY_ALREADY_SET = 0x43,
461
+ /** EZSP Security Type is invalid */
462
+ ERROR_SECURITY_TYPE_INVALID = 0x44,
463
+ /** EZSP Security Parameters are invalid */
464
+ ERROR_SECURITY_PARAMETERS_INVALID = 0x45,
465
+ /** EZSP Security Parameters are already set */
466
+ ERROR_SECURITY_PARAMETERS_ALREADY_SET = 0x46,
467
+ /** EZSP Security Key is not set */
468
+ ERROR_SECURITY_KEY_NOT_SET = 0x47,
469
+ /** EZSP Security Parameters are not set */
470
+ ERROR_SECURITY_PARAMETERS_NOT_SET = 0x48,
471
+ /** Received frame with unsupported control byte */
472
+ ERROR_UNSUPPORTED_CONTROL = 0x49,
473
+ /** Received frame is unsecure, when security is established */
474
+ ERROR_UNSECURE_FRAME = 0x4a,
475
+ /** Incompatible ASH version */
476
+ ASH_ERROR_VERSION = 0x50,
477
+ /** Exceeded max ACK timeouts */
478
+ ASH_ERROR_TIMEOUTS = 0x51,
479
+ /** Timed out waiting for RSTACK */
480
+ ASH_ERROR_RESET_FAIL = 0x52,
481
+ /** Unexpected ncp reset */
482
+ ASH_ERROR_NCP_RESET = 0x53,
483
+ /** Serial port initialization failed */
484
+ ERROR_SERIAL_INIT = 0x54,
485
+ /** Invalid ncp processor type */
486
+ ASH_ERROR_NCP_TYPE = 0x55,
487
+ /** Invalid ncp reset method */
488
+ ASH_ERROR_RESET_METHOD = 0x56,
489
+ /** XON/XOFF not supported by host driver */
490
+ ASH_ERROR_XON_XOFF = 0x57,
491
+ /** ASH protocol started */
492
+ ASH_STARTED = 0x70,
493
+ /** ASH protocol connected */
494
+ ASH_CONNECTED = 0x71,
495
+ /** ASH protocol disconnected */
496
+ ASH_DISCONNECTED = 0x72,
497
+ /** Timer expired waiting for ack */
498
+ ASH_ACK_TIMEOUT = 0x73,
499
+ /** Frame in progress cancelled */
500
+ ASH_CANCELLED = 0x74,
501
+ /** Received frame out of sequence */
502
+ ASH_OUT_OF_SEQUENCE = 0x75,
503
+ /** Received frame with CRC error */
504
+ ASH_BAD_CRC = 0x76,
505
+ /** Received frame with comm error */
506
+ ASH_COMM_ERROR = 0x77,
507
+ /** Received frame with bad ackNum */
508
+ ASH_BAD_ACKNUM = 0x78,
509
+ /** Received frame shorter than minimum */
510
+ ASH_TOO_SHORT = 0x79,
511
+ /** Received frame longer than maximum */
512
+ ASH_TOO_LONG = 0x7a,
513
+ /** Received frame with illegal control byte */
514
+ ASH_BAD_CONTROL = 0x7b,
515
+ /** Received frame with illegal length for its type */
516
+ ASH_BAD_LENGTH = 0x7c,
517
+ /** Received ASH Ack */
518
+ ASH_ACK_RECEIVED = 0x7d,
519
+ /** Sent ASH Ack */
520
+ ASH_ACK_SENT = 0x7e,
521
+ /** Received ASH Nak */
522
+ ASH_NAK_RECEIVED = 0x7f,
523
+ /** Sent ASH Nak */
524
+ ASH_NAK_SENT = 0x80,
525
+ /** Received ASH RST */
526
+ ASH_RST_RECEIVED = 0x81,
527
+ /** Sent ASH RST */
528
+ ASH_RST_SENT = 0x82,
529
+ /** ASH Status */
530
+ ASH_STATUS = 0x83,
531
+ /** ASH TX */
532
+ ASH_TX = 0x84,
533
+ /** ASH RX */
534
+ ASH_RX = 0x85,
535
+ /** Failed to connect to CPC daemon or failed to open CPC endpoint */
536
+ CPC_ERROR_INIT = 0x86,
537
+ /** No reset or error */
538
+ NO_ERROR = 0xff,
539
+ }
540
+
541
+ export enum EmberStackError {
542
+ // Error codes that a router uses to notify the message initiator about a broken route.
543
+ ROUTE_ERROR_NO_ROUTE_AVAILABLE = 0x00,
544
+ ROUTE_ERROR_TREE_LINK_FAILURE = 0x01,
545
+ ROUTE_ERROR_NON_TREE_LINK_FAILURE = 0x02,
546
+ ROUTE_ERROR_LOW_BATTERY_LEVEL = 0x03,
547
+ ROUTE_ERROR_NO_ROUTING_CAPACITY = 0x04,
548
+ ROUTE_ERROR_NO_INDIRECT_CAPACITY = 0x05,
549
+ ROUTE_ERROR_INDIRECT_TRANSACTION_EXPIRY = 0x06,
550
+ ROUTE_ERROR_TARGET_DEVICE_UNAVAILABLE = 0x07,
551
+ ROUTE_ERROR_TARGET_ADDRESS_UNALLOCATED = 0x08,
552
+ ROUTE_ERROR_PARENT_LINK_FAILURE = 0x09,
553
+ ROUTE_ERROR_VALIDATE_ROUTE = 0x0a,
554
+ ROUTE_ERROR_SOURCE_ROUTE_FAILURE = 0x0b,
555
+ ROUTE_ERROR_MANY_TO_ONE_ROUTE_FAILURE = 0x0c,
556
+ ROUTE_ERROR_ADDRESS_CONFLICT = 0x0d,
557
+ ROUTE_ERROR_VERIFY_ADDRESSES = 0x0e,
558
+ ROUTE_ERROR_PAN_IDENTIFIER_UPDATE = 0x0f,
559
+
560
+ NETWORK_STATUS_NETWORK_ADDRESS_UPDATE = 0x10,
561
+ NETWORK_STATUS_BAD_FRAME_COUNTER = 0x11,
562
+ NETWORK_STATUS_BAD_KEY_SEQUENCE_NUMBER = 0x12,
563
+ NETWORK_STATUS_UNKNOWN_COMMAND = 0x13,
564
+ }
565
+
566
+ export enum EmberGPStatus {
567
+ /** Success Status */
568
+ OK = 0,
569
+ /** Match Frame */
570
+ MATCH = 1,
571
+ /** Drop Frame */
572
+ DROP_FRAME = 2,
573
+ /** Frame Unprocessed */
574
+ UNPROCESSED = 3,
575
+ /** Frame Pass Unprocessed */
576
+ PASS_UNPROCESSED = 4,
577
+ /** Frame TX Then Drop */
578
+ TX_THEN_DROP = 5,
579
+ /** No Security */
580
+ NO_SECURITY = 6,
581
+ /** Security Failure */
582
+ AUTH_FAILURE = 7,
583
+ }
584
+
585
+ /** Type of Ember software version */
586
+ export enum EmberVersionType {
587
+ PRE_RELEASE = 0x00,
588
+
589
+ // Alpha, should be used rarely
590
+ ALPHA_1 = 0x11,
591
+ ALPHA_2 = 0x12,
592
+ ALPHA_3 = 0x13,
593
+ // Leave space in case we decide to add other types in the future.
594
+ BETA_1 = 0x21,
595
+ BETA_2 = 0x22,
596
+ BETA_3 = 0x23,
597
+
598
+ // Anything other than 0xAA is considered pre-release
599
+ // Silicon Labs may define other types in the future (e.g. beta, alpha)
600
+ // Silicon Labs chose an arbitrary number (0xAA) to allow for expansion, but
601
+ // to prevent ambiguity in case 0x00 or 0xFF is accidentally retrieved
602
+ // as the version type.
603
+ GA = 0xaa,
604
+ }
605
+
606
+ /**
607
+ * For emberSetTxPowerMode and mfglibSetPower.
608
+ * uint16_t
609
+ */
610
+ export enum EmberTXPowerMode {
611
+ /**
612
+ * The application should call ::emberSetTxPowerMode() with the
613
+ * txPowerMode parameter set to this value to disable all power mode options,
614
+ * resulting in normal power mode and bi-directional RF transmitter output.
615
+ */
616
+ DEFAULT = 0x0000,
617
+ /**
618
+ * The application should call ::emberSetTxPowerMode() with the
619
+ * txPowerMode parameter set to this value to enable boost power mode.
620
+ */
621
+ BOOST = 0x0001,
622
+ /**
623
+ * The application should call ::emberSetTxPowerMode() with the
624
+ * txPowerMode parameter set to this value to enable the alternate transmitter
625
+ * output.
626
+ */
627
+ ALTERNATE = 0x0002,
628
+ /**
629
+ * The application should call ::emberSetTxPowerMode() with the
630
+ * txPowerMode parameter set to this value to enable both boost mode and the
631
+ * alternate transmitter output.
632
+ */
633
+ BOOST_AND_ALTERNATE = 0x0003, // (BOOST | ALTERNATE)
634
+ // The application does not ever need to call emberSetTxPowerMode() with the
635
+ // txPowerMode parameter set to this value. This value is used internally by
636
+ // the stack to indicate that the default token configuration has not been
637
+ // overridden by a prior call to emberSetTxPowerMode().
638
+ USE_TOKEN = 0x8000,
639
+ }
640
+
641
+ /** uint8_t */
642
+ export enum EmberKeepAliveMode {
643
+ KEEP_ALIVE_SUPPORT_UNKNOWN = 0x00,
644
+ MAC_DATA_POLL_KEEP_ALIVE = 0x01,
645
+ END_DEVICE_TIMEOUT_KEEP_ALIVE = 0x02,
646
+ KEEP_ALIVE_SUPPORT_ALL = 0x03,
647
+ }
648
+
649
+ /** This is the Extended Security Bitmask that controls the use of various extended security features. */
650
+ export enum EmberExtendedSecurityBitmask {
651
+ /**
652
+ * If this bit is set, the 'key token data' field is set in the Initial Security Bitmask to 0 (No Preconfig Key token).
653
+ * Otherwise, the field is left as is.
654
+ */
655
+ PRECONFIG_KEY_NOT_VALID = 0x0001,
656
+ // bits 2-3 are unused.
657
+ /**
658
+ * This denotes that the network key update can only happen if the network key update request is unicast and encrypted
659
+ * i.e. broadcast network key update requests will not be processed if bit 1 is set
660
+ */
661
+ SECURE_NETWORK_KEY_ROTATION = 0x0002,
662
+ /** This denotes whether a joiner node (router or end-device) uses a Global Link Key or a Unique Link Key. */
663
+ JOINER_GLOBAL_LINK_KEY = 0x0010,
664
+ /**
665
+ * This denotes whether the device's outgoing frame counter is allowed to be reset during forming or joining.
666
+ * If the flag is set, the outgoing frame counter is not allowed to be reset.
667
+ * If the flag is not set, the frame counter is allowed to be reset.
668
+ */
669
+ EXT_NO_FRAME_COUNTER_RESET = 0x0020,
670
+ /** This denotes whether a device should discard or accept network leave without rejoin commands. */
671
+ NWK_LEAVE_WITHOUT_REJOIN_NOT_ALLOWED = 0x0040,
672
+ // Bit 7 reserved for future use (stored in TOKEN).
673
+ /** This denotes whether a router node should discard or accept network Leave Commands. */
674
+ NWK_LEAVE_REQUEST_NOT_ALLOWED = 0x0100,
675
+ /**
676
+ * This denotes whether a node is running the latest stack specification or is emulating R18 specs behavior.
677
+ * If this flag is enabled, a router node should only send encrypted Update Device messages while the TC
678
+ * should only accept encrypted Updated Device messages.
679
+ */
680
+ R18_STACK_BEHAVIOR = 0x0200,
681
+ // Bit 10 is reserved for future use (stored in TOKEN).
682
+ // Bit 11 is reserved for future use(stored in RAM).
683
+ // Bit 12 - This denotes whether an end device should discard or accept ZDO Leave
684
+ // from a network node other than its parent.
685
+ ZDO_LEAVE_FROM_NON_PARENT_NOT_ALLOWED = 0x1000,
686
+ // Bits 13-15 are unused.
687
+ }
688
+
689
+ /** This is the Initial Security Bitmask that controls the use of various security features. */
690
+ export enum EmberInitialSecurityBitmask {
691
+ /** Enables Distributed Trust Center Mode for the device forming the network. (Previously known as ::EMBER_NO_TRUST_CENTER_MODE) */
692
+ DISTRIBUTED_TRUST_CENTER_MODE = 0x0002,
693
+ /** Enables a Global Link Key for the Trust Center. All nodes will share the same Trust Center Link Key. */
694
+ TRUST_CENTER_GLOBAL_LINK_KEY = 0x0004,
695
+ /** Enables devices that perform MAC Association with a pre-configured Network Key to join the network. It is only set on the Trust Center. */
696
+ PRECONFIGURED_NETWORK_KEY_MODE = 0x0008,
697
+ // Hidden field used internally.
698
+ HAVE_TRUST_CENTER_UNKNOWN_KEY_TOKEN = 0x0010,
699
+ // Hidden field used internally.
700
+ HAVE_TRUST_CENTER_LINK_KEY_TOKEN = 0x0020,
701
+ /**
702
+ * This denotes that the ::EmberInitialSecurityState::preconfiguredTrustCenterEui64 has a value in it containing the trust center EUI64.
703
+ * The device will only join a network and accept commands from a trust center with that EUI64.
704
+ * Normally this bit is NOT set and the EUI64 of the trust center is learned during the join process.
705
+ * When commissioning a device to join onto an existing network that is using a trust center and without sending any messages,
706
+ * this bit must be set and the field ::EmberInitialSecurityState::preconfiguredTrustCenterEui64 must be populated with the appropriate EUI64.
707
+ */
708
+ HAVE_TRUST_CENTER_EUI64 = 0x0040,
709
+ /**
710
+ * This denotes that the ::EmberInitialSecurityState::preconfiguredKey is not the actual Link Key but a Root Key known only to the Trust Center.
711
+ * It is hashed with the IEEE Address of the destination device to create the actual Link Key used in encryption.
712
+ * This is bit is only used by the Trust Center. The joining device need not set this.
713
+ */
714
+ TRUST_CENTER_USES_HASHED_LINK_KEY = 0x0084,
715
+ /**
716
+ * This denotes that the ::EmberInitialSecurityState::preconfiguredKey element has valid data that should be used to configure
717
+ * the initial security state.
718
+ */
719
+ HAVE_PRECONFIGURED_KEY = 0x0100,
720
+ /**
721
+ * This denotes that the ::EmberInitialSecurityState::networkKey element has valid data that should be used to configure
722
+ * the initial security state.
723
+ */
724
+ HAVE_NETWORK_KEY = 0x0200,
725
+ /**
726
+ * This denotes to a joining node that it should attempt to acquire a Trust Center Link Key during joining.
727
+ * This is necessary if the device does not have a pre-configured key, or wants to obtain a new one
728
+ * (since it may be using a well-known key during joining).
729
+ */
730
+ GET_LINK_KEY_WHEN_JOINING = 0x0400,
731
+ /**
732
+ * This denotes that a joining device should only accept an encrypted network key from the Trust Center (using its pre-configured key).
733
+ * A key sent in-the-clear by the Trust Center will be rejected and the join will fail.
734
+ * This option is only valid when using a pre-configured key.
735
+ */
736
+ REQUIRE_ENCRYPTED_KEY = 0x0800,
737
+ /**
738
+ * This denotes whether the device should NOT reset its outgoing frame counters (both NWK and APS) when
739
+ * ::emberSetInitialSecurityState() is called.
740
+ * Normally it is advised to reset the frame counter before joining a new network.
741
+ * However, when a device is joining to the same network again (but not using ::emberRejoinNetwork()),
742
+ * it should keep the NWK and APS frame counters stored in its tokens.
743
+ *
744
+ * NOTE: The application is allowed to dynamically change the behavior via EMBER_EXT_NO_FRAME_COUNTER_RESET field.
745
+ */
746
+ NO_FRAME_COUNTER_RESET = 0x1000,
747
+ /**
748
+ * This denotes that the device should obtain its pre-configured key from an installation code stored in the manufacturing token.
749
+ * The token contains a value that will be hashed to obtain the actual pre-configured key.
750
+ * If that token is not valid, the call to ::emberSetInitialSecurityState() will fail.
751
+ */
752
+ GET_PRECONFIGURED_KEY_FROM_INSTALL_CODE = 0x2000,
753
+ // Internal data
754
+ EM_SAVED_IN_TOKEN = 0x4000,
755
+ /* All other bits are reserved and must be zero. */
756
+ }
757
+
758
+ /** Either marks an event as inactive or specifies the units for the event execution time. uint8_t */
759
+ export enum EmberEventUnits {
760
+ /** The event is not scheduled to run. */
761
+ INACTIVE = 0,
762
+ /** The execution time is in approximate milliseconds. */
763
+ MS_TIME = 1,
764
+ /** The execution time is in 'binary' quarter seconds (256 approximate milliseconds each). */
765
+ QS_TIME = 2,
766
+ /** The execution time is in 'binary' minutes (65536 approximate milliseconds each). */
767
+ MINUTE_TIME = 3,
768
+ /** The event is scheduled to run at the earliest opportunity. */
769
+ ZERO_DELAY = 4,
770
+ }
771
+
772
+ /**
773
+ * Defines the events reported to the application by the ::emberCounterHandler().
774
+ * Usage of the destinationNodeId or data fields found in the EmberCounterInfo or EmberExtraCounterInfo
775
+ * structs is denoted for counter types that use them.
776
+ * (See comments accompanying enum definitions in this source file for details.)
777
+ */
778
+ export enum EmberCounterType {
779
+ /**
780
+ * The MAC received a broadcast Data frame, Command frame, or Beacon.
781
+ * - destinationNodeId: BROADCAST_ADDRESS or Data frames or sender node ID for Beacon frames
782
+ * - data: not used
783
+ */
784
+ MAC_RX_BROADCAST = 0,
785
+ /**
786
+ * The MAC transmitted a broadcast Data frame, Command frame or Beacon.
787
+ * - destinationNodeId: BROADCAST_ADDRESS
788
+ * - data: not used
789
+ */
790
+ MAC_TX_BROADCAST = 1,
791
+ /**
792
+ * The MAC received a unicast Data or Command frame.
793
+ * - destinationNodeId: MAC layer source or EMBER_UNKNOWN_NODE_ID if no 16-bit source node ID is present in the frame
794
+ * - data: not used
795
+ */
796
+ MAC_RX_UNICAST = 2,
797
+ /**
798
+ * The MAC successfully transmitted a unicast Data or Command frame.
799
+ * Note: Only frames with a 16-bit destination node ID are counted.
800
+ * - destinationNodeId: MAC layer destination address
801
+ * - data: not used
802
+ */
803
+ MAC_TX_UNICAST_SUCCESS = 3,
804
+ /**
805
+ * The MAC retried a unicast Data or Command frame after initial Tx attempt.
806
+ * Note: CSMA-related failures are tracked separately via PHY_CCA_FAIL_COUNT.
807
+ * - destinationNodeId: MAC layer destination or EMBER_UNKNOWN_NODE_ID if no 16-bit destination node ID is present in the frame
808
+ * - data: number of retries (after initial Tx attempt) accumulated so far for this packet. (Should always be >0.)
809
+ */
810
+ MAC_TX_UNICAST_RETRY = 4,
811
+ /**
812
+ * The MAC unsuccessfully transmitted a unicast Data or Command frame.
813
+ * Note: Only frames with a 16-bit destination node ID are counted.
814
+ * - destinationNodeId: MAC layer destination address
815
+ * - data: not used
816
+ */
817
+ MAC_TX_UNICAST_FAILED = 5,
818
+ /**
819
+ * The APS layer received a data broadcast.
820
+ * - destinationNodeId: sender's node ID
821
+ * - data: not used
822
+ */
823
+ APS_DATA_RX_BROADCAST = 6,
824
+ /** The APS layer transmitted a data broadcast. */
825
+ APS_DATA_TX_BROADCAST = 7,
826
+ /**
827
+ * The APS layer received a data unicast.
828
+ * - destinationNodeId: sender's node ID
829
+ * - data: not used
830
+ */
831
+ APS_DATA_RX_UNICAST = 8,
832
+ /**
833
+ * The APS layer successfully transmitted a data unicast.
834
+ * - destinationNodeId: NWK destination address
835
+ * - data: number of APS retries (>=0) consumed for this unicast.
836
+ */
837
+ APS_DATA_TX_UNICAST_SUCCESS = 9,
838
+ /**
839
+ * The APS layer retried a unicast Data frame.
840
+ * This is a placeholder and is not used by the @c ::emberCounterHandler() callback.
841
+ * Instead, the number of APS retries are returned in the data parameter of the callback
842
+ * for the @c ::APS_DATA_TX_UNICAST_SUCCESS and @c ::APS_DATA_TX_UNICAST_FAILED types.
843
+ * However, our supplied Counters component code will attempt to collect this information
844
+ * from the aforementioned counters and populate this counter.
845
+ * Note that this counter's behavior differs from that of @c ::MAC_TX_UNICAST_RETRY .
846
+ */
847
+ APS_DATA_TX_UNICAST_RETRY = 10,
848
+ /**
849
+ * The APS layer unsuccessfully transmitted a data unicast.
850
+ * - destinationNodeId: NWK destination address
851
+ * - data: number of APS retries (>=0) consumed for this unicast.
852
+ */
853
+ APS_DATA_TX_UNICAST_FAILED = 11,
854
+ /** The network layer successfully submitted a new route discovery to the MAC. */
855
+ ROUTE_DISCOVERY_INITIATED = 12,
856
+ /** An entry was added to the neighbor table. */
857
+ NEIGHBOR_ADDED = 13,
858
+ /** An entry was removed from the neighbor table. */
859
+ NEIGHBOR_REMOVED = 14,
860
+ /** A neighbor table entry became stale because it had not been heard from. */
861
+ NEIGHBOR_STALE = 15,
862
+ /**
863
+ * A node joined or rejoined to the network via this node.
864
+ * - destinationNodeId: node ID of child
865
+ * - data: not used
866
+ */
867
+ JOIN_INDICATION = 16,
868
+ /**
869
+ * An entry was removed from the child table.
870
+ * - destinationNodeId: node ID of child
871
+ * - data: not used
872
+ */
873
+ CHILD_REMOVED = 17,
874
+ /** EZSP-UART only. An overflow error occurred in the UART. */
875
+ ASH_OVERFLOW_ERROR = 18,
876
+ /** EZSP-UART only. A framing error occurred in the UART. */
877
+ ASH_FRAMING_ERROR = 19,
878
+ /** EZSP-UART only. An overrun error occurred in the UART. */
879
+ ASH_OVERRUN_ERROR = 20,
880
+ /** A message was dropped at the Network layer because the NWK frame counter was not higher than the last message seen from that source. */
881
+ NWK_FRAME_COUNTER_FAILURE = 21,
882
+ /**
883
+ * A message was dropped at the APS layer because the APS frame counter was not higher than the last message seen from that source.
884
+ * - destinationNodeId: node ID of MAC source that relayed the message
885
+ * - data: not used
886
+ */
887
+ APS_FRAME_COUNTER_FAILURE = 22,
888
+ /** EZSP-UART only. An XOFF was transmitted by the UART. */
889
+ ASH_XOFF = 23,
890
+ /**
891
+ * An encrypted message was dropped by the APS layer because the sender's key has not been authenticated.
892
+ * As a result, the key is not authorized for use in APS data messages.
893
+ * - destinationNodeId: EMBER_NULL_NODE_ID
894
+ * - data: APS key table index related to the sender
895
+ */
896
+ APS_LINK_KEY_NOT_AUTHORIZED = 24,
897
+ /**
898
+ * A NWK encrypted message was received but dropped because decryption failed.
899
+ * - destinationNodeId: sender of the dropped packet
900
+ * - data: not used
901
+ */
902
+ NWK_DECRYPTION_FAILURE = 25,
903
+ /**
904
+ * An APS encrypted message was received but dropped because decryption failed.
905
+ * - destinationNodeId: sender of the dropped packet
906
+ * - data: not used
907
+ */
908
+ APS_DECRYPTION_FAILURE = 26,
909
+ /**
910
+ * The number of failures to allocate a set of linked packet buffers.
911
+ * This doesn't necessarily mean that the packet buffer count was 0 at the time,
912
+ * but that the number requested was greater than the number free.
913
+ */
914
+ ALLOCATE_PACKET_BUFFER_FAILURE = 27,
915
+ /**
916
+ * The number of relayed unicast packets.
917
+ * - destinationId: NWK layer destination address of relayed packet
918
+ * - data: not used
919
+ */
920
+ RELAYED_UNICAST = 28,
921
+ /**
922
+ * The number of times a packet was dropped due to reaching the preset PHY-to-MAC queue limit (sli_mac_phy_to_mac_queue_length).
923
+ * The limit will determine how many messages are accepted by the PHY between calls to emberTick().
924
+ * After that limit is reached, packets will be dropped. The counter records the number of dropped packets.
925
+ *
926
+ * NOTE: For each call to emberCounterHandler() there may be more than 1 packet that was dropped due to the limit reached.
927
+ * The actual number of packets dropped will be returned in the 'data' parameter passed to that function.
928
+ *
929
+ * - destinationNodeId: not used
930
+ * - data: number of dropped packets represented by this counter event
931
+ * - phyIndex: present
932
+ */
933
+ PHY_TO_MAC_QUEUE_LIMIT_REACHED = 29,
934
+ /**
935
+ * The number of times a packet was dropped due to the packet-validate library checking a packet
936
+ * and rejecting it due to length or other formatting problems.
937
+ * - destinationNodeId: not used
938
+ * - data: type of validation condition that failed
939
+ */
940
+ PACKET_VALIDATE_LIBRARY_DROPPED_COUNT = 30,
941
+ /**
942
+ * The number of times the NWK retry queue is full and a new message failed to be added.
943
+ * - destinationNodeId; not used
944
+ * - data: NWK retry queue size that has been exceeded
945
+ */
946
+ TYPE_NWK_RETRY_OVERFLOW = 31,
947
+ /**
948
+ * The number of times the PHY layer was unable to transmit due to a failed CCA (Clear Channel Assessment) attempt.
949
+ * See also: MAC_TX_UNICAST_RETRY.
950
+ * - destinationNodeId: MAC layer destination or EMBER_UNKNOWN_NODE_ID if no 16-bit destination node ID is present in the frame
951
+ * - data: not used
952
+ */
953
+ PHY_CCA_FAIL_COUNT = 32,
954
+ /** The number of times a NWK broadcast was dropped because the broadcast table was full. */
955
+ BROADCAST_TABLE_FULL = 33,
956
+ /** The number of times a low-priority packet traffic arbitration request has been made. */
957
+ PTA_LO_PRI_REQUESTED = 34,
958
+ /** The number of times a high-priority packet traffic arbitration request has been made. */
959
+ PTA_HI_PRI_REQUESTED = 35,
960
+ /** The number of times a low-priority packet traffic arbitration request has been denied. */
961
+ PTA_LO_PRI_DENIED = 36,
962
+ /** The number of times a high-priority packet traffic arbitration request has been denied. */
963
+ PTA_HI_PRI_DENIED = 37,
964
+ /** The number of times a low-priority packet traffic arbitration transmission has been aborted. */
965
+ PTA_LO_PRI_TX_ABORTED = 38,
966
+ /** The number of times a high-priority packet traffic arbitration transmission has been aborted. */
967
+ PTA_HI_PRI_TX_ABORTED = 39,
968
+ /** The number of times an address conflict has caused node_id change, and an address conflict error is sent. */
969
+ ADDRESS_CONFLICT_SENT = 40,
970
+ /** The number of times CSL failed to schedule Rx on target */
971
+ CSL_RX_SCHEDULE_FAILED = 41,
972
+ /** A placeholder giving the number of Ember counter types. */
973
+ COUNT = 42,
974
+ }
975
+
976
+ /** An enumerated list of library identifiers. */
977
+ export enum EmberLibraryId {
978
+ FIRST = 0x00,
979
+
980
+ ZIGBEE_PRO = 0x00,
981
+ BINDING = 0x01,
982
+ END_DEVICE_BIND = 0x02,
983
+ SECURITY_CORE = 0x03,
984
+ SECURITY_LINK_KEYS = 0x04,
985
+ ALARM = 0x05,
986
+ CBKE = 0x06,
987
+ CBKE_DSA_SIGN = 0x07,
988
+ ECC = 0x08,
989
+ CBKE_DSA_VERIFY = 0x09,
990
+ PACKET_VALIDATE = 0x0a,
991
+ INSTALL_CODE = 0x0b,
992
+ ZLL = 0x0c,
993
+ CBKE_283K1 = 0x0d,
994
+ ECC_283K1 = 0x0e,
995
+ CBKE_CORE = 0x0f,
996
+ NCP = 0x10,
997
+ MULTI_NETWORK = 0x11,
998
+ ENHANCED_BEACON_REQUEST = 0x12,
999
+ CBKE_283K1_DSA_VERIFY = 0x13,
1000
+ MULTI_PAN = 0x14,
1001
+
1002
+ NUMBER_OF_LIBRARIES = 0x15,
1003
+ NULL = 0xff,
1004
+ }
1005
+
1006
+ /** This indicates the presence, absence, or status of an Ember stack library. */
1007
+ export enum EmberLibraryStatus {
1008
+ // Base return codes. These may be ORed with statuses further below.
1009
+ LIBRARY_PRESENT_MASK = 0x80,
1010
+ LIBRARY_IS_STUB = 0x00,
1011
+ LIBRARY_ERROR = 0xff,
1012
+
1013
+ // The Zigbee Pro library uses the following to indicate additional functionality:
1014
+ /** no router capability */
1015
+ ZIGBEE_PRO_LIBRARY_END_DEVICE_ONLY = 0x00,
1016
+ ZIGBEE_PRO_LIBRARY_HAVE_ROUTER_CAPABILITY = 0x01,
1017
+ ZIGBEE_PRO_LIBRARY_ZLL_SUPPORT = 0x02,
1018
+
1019
+ // The Security library uses the following to indicate additional functionality:
1020
+ SECURITY_LIBRARY_END_DEVICE_ONLY = 0x00,
1021
+ /** router or trust center support */
1022
+ SECURITY_LIBRARY_HAVE_ROUTER_SUPPORT = 0x01,
1023
+
1024
+ // The Packet Validate library may be globally turned on/off. Bit 0 indicates whether the library is enabled/disabled.
1025
+ PACKET_VALIDATE_LIBRARY_DISABLED = 0x00,
1026
+ PACKET_VALIDATE_LIBRARY_ENABLED = 0x01,
1027
+ PACKET_VALIDATE_LIBRARY_ENABLE_MASK = 0x01,
1028
+ }
1029
+
1030
+ /** Defines the entropy source used by the stack. */
1031
+ export enum EmberEntropySource {
1032
+ /** Error in identifying the entropy source. */
1033
+ ERROR = 0x00,
1034
+ /** The default radio entropy source. */
1035
+ RADIO = 0x01,
1036
+ /** TRNG with mbed TLS support. */
1037
+ MBEDTLS_TRNG = 0x02,
1038
+ /** Other mbed TLS entropy source. */
1039
+ MBEDTLS = 0x03,
1040
+ }
1041
+
1042
+ /** Defines the options that should be used when initializing the node's network configuration. */
1043
+ export enum EmberNetworkInitBitmask {
1044
+ NO_OPTIONS = 0x0000,
1045
+ /** The Parent Node ID and EUI64 are stored in a token. This prevents the need to perform an Orphan scan on startup. */
1046
+ PARENT_INFO_IN_TOKEN = 0x0001,
1047
+ /** Z3 compliant end devices on a network must send a rejoin request on reboot. */
1048
+ END_DEVICE_REJOIN_ON_REBOOT = 0x0002,
1049
+ }
1050
+
1051
+ /** Defines the possible join states for a node. uint8_t */
1052
+ export enum EmberNetworkStatus {
1053
+ /** The node is not associated with a network in any way. */
1054
+ NO_NETWORK = 0,
1055
+ /** The node is currently attempting to join a network. */
1056
+ JOINING_NETWORK = 1,
1057
+ /** The node is joined to a network. */
1058
+ JOINED_NETWORK = 2,
1059
+ /** The node is an end device joined to a network but its parent is not responding. */
1060
+ JOINED_NETWORK_NO_PARENT = 3,
1061
+ /** The node is a Sleepy-to-Sleepy initiator */
1062
+ JOINED_NETWORK_S2S_INITIATOR = 4,
1063
+ /** The node is a Sleepy-to-Sleepy target */
1064
+ JOINED_NETWORK_S2S_TARGET = 5,
1065
+ /** The node is in the process of leaving its current network. */
1066
+ LEAVING_NETWORK = 6,
1067
+ }
1068
+
1069
+ /** Network scan types. */
1070
+ export enum EzspNetworkScanType {
1071
+ /** An energy scan scans each channel for its RSSI value. */
1072
+ ENERGY_SCAN = 0x00,
1073
+ /** An active scan scans each channel for available networks. */
1074
+ ACTIVE_SCAN = 0x01,
1075
+ }
1076
+
1077
+ /** The type of method used for joining. uint8_t */
1078
+ export enum EmberJoinMethod {
1079
+ /** Devices normally use MAC association to join a network, which respects
1080
+ * the "permit joining" flag in the MAC beacon.
1081
+ * This value should be used by default.
1082
+ */
1083
+ MAC_ASSOCIATION = 0,
1084
+ /** For networks where the "permit joining" flag is never turned
1085
+ * on, devices will need to use a Zigbee NWK Rejoin. This value causes the
1086
+ * rejoin to be sent withOUT NWK security and the Trust Center will be
1087
+ * asked to send the NWK key to the device. The NWK key sent to the device
1088
+ * can be encrypted with the device's corresponding Trust Center link key.
1089
+ * That is determined by the ::EmberJoinDecision on the Trust Center
1090
+ * returned by the ::emberTrustCenterJoinHandler().
1091
+ */
1092
+ NWK_REJOIN = 1,
1093
+ /* For networks where the "permit joining" flag is never turned
1094
+ * on, devices will need to use a NWK Rejoin. If those devices have been
1095
+ * preconfigured with the NWK key (including sequence number), they can use
1096
+ * a secured rejoin. This is only necessary for end devices since they need
1097
+ * a parent. Routers can simply use the ::CONFIGURED_NWK_STATE
1098
+ * join method below.
1099
+ */
1100
+ NWK_REJOIN_HAVE_NWK_KEY = 2,
1101
+ /** For networks where all network and security information is known
1102
+ ahead of time, a router device may be commissioned such that it does
1103
+ not need to send any messages to begin communicating on the network.
1104
+ */
1105
+ CONFIGURED_NWK_STATE = 3,
1106
+ /** This enumeration causes an unencrypted Network Commissioning Request to be
1107
+ sent out with joinType set to initial join. The trust center may respond
1108
+ by establishing a new dynamic link key and then sending the network key.
1109
+ Network Commissioning Requests should only be sent to parents that support
1110
+ processing of the command.
1111
+ */
1112
+ NWK_COMMISSIONING_JOIN = 4,
1113
+ /** This enumeration causes an unencrypted Network Commissioning Request to be
1114
+ sent out with joinType set to rejoin. The trust center may respond
1115
+ by establishing a new dynamic link key and then sending the network key.
1116
+ Network Commissioning Requests should only be sent to parents that support
1117
+ processing of the command.
1118
+ */
1119
+ NWK_COMMISSIONING_REJOIN = 5,
1120
+ /** This enumeration causes an encrypted Network Commissioning Request to be
1121
+ sent out with joinType set to rejoin. This enumeration is used by devices
1122
+ that already have the network key and wish to recover connection to a
1123
+ parent or the network in general.
1124
+ Network Commissioning Requests should only be sent to parents that support
1125
+ processing of the command.
1126
+ */
1127
+ NWK_COMMISSIONING_REJOIN_HAVE_NWK_KEY = 6,
1128
+ }
1129
+
1130
+ /** Defines the possible types of nodes and the roles that a node might play in a network. */
1131
+ export enum EmberNodeType {
1132
+ /** The device is not joined. */
1133
+ UNKNOWN_DEVICE = 0,
1134
+ /** Will relay messages and can act as a parent to other nodes. */
1135
+ COORDINATOR = 1,
1136
+ /** Will relay messages and can act as a parent to other nodes. */
1137
+ ROUTER = 2,
1138
+ /** Communicates only with its parent and will not relay messages. */
1139
+ END_DEVICE = 3,
1140
+ /** An end device whose radio can be turned off to save power. The application must call ::emberPollForData() to receive messages. */
1141
+ SLEEPY_END_DEVICE = 4,
1142
+ /** Sleepy end device which transmits with wake up frames (CSL). */
1143
+ S2S_INITIATOR_DEVICE = 5,
1144
+ /** Sleepy end device which duty cycles the radio Rx (CSL). */
1145
+ S2S_TARGET_DEVICE = 6,
1146
+ }
1147
+
1148
+ /** */
1149
+ export enum EmberMultiPhyNwkConfig {
1150
+ ROUTERS_ALLOWED = 0x01,
1151
+ BROADCASTS_ENABLED = 0x02,
1152
+ DISABLED = 0x80,
1153
+ }
1154
+
1155
+ /**
1156
+ * Duty cycle states
1157
+ *
1158
+ * Applications have no control over the state but the callback exposes
1159
+ * state changes to the application.
1160
+ */
1161
+ export enum EmberDutyCycleState {
1162
+ /** No duty cycle tracking or metrics are taking place. */
1163
+ TRACKING_OFF = 0,
1164
+ /** Duty Cycle is tracked and has not exceeded any thresholds. */
1165
+ LBT_NORMAL = 1,
1166
+ /** The limited threshold of the total duty cycle allotment was exceeded. */
1167
+ LBT_LIMITED_THRESHOLD_REACHED = 2,
1168
+ /** The critical threshold of the total duty cycle allotment was exceeded. */
1169
+ LBT_CRITICAL_THRESHOLD_REACHED = 3,
1170
+ /** The suspend limit was reached and all outbound transmissions are blocked. */
1171
+ LBT_SUSPEND_LIMIT_REACHED = 4,
1172
+ }
1173
+
1174
+ /** Defines binding types. uint8_t */
1175
+ export enum EmberBindingType {
1176
+ /** A binding that is currently not in use. */
1177
+ UNUSED_BINDING = 0,
1178
+ /** A unicast binding whose 64-bit identifier is the destination EUI64. */
1179
+ UNICAST_BINDING = 1,
1180
+ /**
1181
+ * A unicast binding whose 64-bit identifier is the many-to-one destination EUI64.
1182
+ * Route discovery should be disabled when sending unicasts via many-to-one bindings.
1183
+ */
1184
+ MANY_TO_ONE_BINDING = 2,
1185
+ /**
1186
+ * A multicast binding whose 64-bit identifier is the group address.
1187
+ * This binding can be used to send messages to the group and to receive messages sent to the group.
1188
+ */
1189
+ MULTICAST_BINDING = 3,
1190
+ }
1191
+
1192
+ /** Defines the possible outgoing message types. uint8_t */
1193
+ export enum EmberOutgoingMessageType {
1194
+ /** Unicast sent directly to an EmberNodeId. */
1195
+ DIRECT = 0,
1196
+ /** Unicast sent using an entry in the address table. */
1197
+ VIA_ADDRESS_TABLE = 1,
1198
+ /** Unicast sent using an entry in the binding table. */
1199
+ VIA_BINDING = 2,
1200
+ /** Multicast message. This value is passed to emberMessageSentHandler() only. It may not be passed to emberSendUnicast(). */
1201
+ MULTICAST = 3,
1202
+ /** An aliased multicast message. This value is passed to emberMessageSentHandler() only. It may not be passed to emberSendUnicast(). */
1203
+ MULTICAST_WITH_ALIAS = 4,
1204
+ /** An aliased Broadcast message. This value is passed to emberMessageSentHandler() only. It may not be passed to emberSendUnicast(). */
1205
+ BROADCAST_WITH_ALIAS = 5,
1206
+ /** A broadcast message. This value is passed to emberMessageSentHandler() only. It may not be passed to emberSendUnicast(). */
1207
+ BROADCAST = 6,
1208
+ }
1209
+
1210
+ /** Defines the possible incoming message types. uint8_t */
1211
+ export enum EmberIncomingMessageType {
1212
+ /** Unicast. */
1213
+ UNICAST = 0,
1214
+ /** Unicast reply. */
1215
+ UNICAST_REPLY = 1,
1216
+ /** Multicast. */
1217
+ MULTICAST = 2,
1218
+ /** Multicast sent by the local device. */
1219
+ MULTICAST_LOOPBACK = 3,
1220
+ /** Broadcast. */
1221
+ BROADCAST = 4,
1222
+ /** Broadcast sent by the local device. */
1223
+ BROADCAST_LOOPBACK = 5,
1224
+ }
1225
+
1226
+ /**
1227
+ * Options to use when sending a message.
1228
+ *
1229
+ * The discover-route, APS-retry, and APS-indirect options may be used together.
1230
+ * Poll response cannot be combined with any other options.
1231
+ * uint16_t
1232
+ */
1233
+ export enum EmberApsOption {
1234
+ /** No options. */
1235
+ NONE = 0x0000,
1236
+ ENCRYPT_WITH_TRANSIENT_KEY = 0x0001,
1237
+ USE_ALIAS_SEQUENCE_NUMBER = 0x0002,
1238
+ /**
1239
+ * This signs the application layer message body (APS Frame not included) and appends the ECDSA signature to the end of the message,
1240
+ * which is needed by Smart Energy applications and requires the CBKE and ECC libraries.
1241
+ * The ::emberDsaSignHandler() function is called after DSA signing is complete but before the message has been sent by the APS layer.
1242
+ * Note that when passing a buffer to the stack for DSA signing, the final byte in the buffer has a special significance as an indicator
1243
+ * of how many leading bytes should be ignored for signature purposes. See the API documentation of emberDsaSign()
1244
+ * or the dsaSign EZSP command for more details about this requirement.
1245
+ */
1246
+ DSA_SIGN = 0x0010,
1247
+ /** Send the message using APS Encryption using the Link Key shared with the destination node to encrypt the data at the APS Level. */
1248
+ ENCRYPTION = 0x0020,
1249
+ /**
1250
+ * Resend the message using the APS retry mechanism.
1251
+ * This option and the enable route discovery option must be enabled for an existing route to be repaired automatically.
1252
+ */
1253
+ RETRY = 0x0040,
1254
+ /**
1255
+ * Send the message with the NWK 'enable route discovery' flag, which causes a route discovery to be initiated if no route to the
1256
+ * destination is known. Note that in the mesh stack, this option and the APS retry option must be enabled an existing route to be
1257
+ * repaired automatically.
1258
+ */
1259
+ ENABLE_ROUTE_DISCOVERY = 0x0100,
1260
+ /** Send the message with the NWK 'force route discovery' flag, which causes a route discovery to be initiated even if one is known. */
1261
+ FORCE_ROUTE_DISCOVERY = 0x0200,
1262
+ /** Include the source EUI64 in the network frame. */
1263
+ SOURCE_EUI64 = 0x0400,
1264
+ /** Include the destination EUI64 in the network frame. */
1265
+ DESTINATION_EUI64 = 0x0800,
1266
+ /** Send a ZDO request to discover the node ID of the destination if it is not already known. */
1267
+ ENABLE_ADDRESS_DISCOVERY = 0x1000,
1268
+ /**
1269
+ * This message is being sent in response to a call to ::emberPollHandler().
1270
+ * It causes the message to be sent immediately instead of being queued up until the next poll from the (end device) destination.
1271
+ */
1272
+ POLL_RESPONSE = 0x2000,
1273
+ /**
1274
+ * This incoming message is a valid ZDO request and the application is responsible for sending a ZDO response.
1275
+ * This flag is used only within emberIncomingMessageHandler() when EMBER_APPLICATION_RECEIVES_UNSUPPORTED_ZDO_REQUESTS is defined. */
1276
+ ZDO_RESPONSE_REQUIRED = 0x4000,
1277
+ /**
1278
+ * This message is part of a fragmented message. This option may only be set for unicasts.
1279
+ * The groupId field gives the index of this fragment in the low-order byte.
1280
+ * If the low-order byte is zero this is the first fragment and the high-order byte contains the number of fragments in the message.
1281
+ */
1282
+ FRAGMENT = 0x8000, // SIGNED_ENUM 0x8000
1283
+ }
1284
+
1285
+ /**
1286
+ * Types of source route discovery modes used by the concentrator.
1287
+ *
1288
+ * OFF no source route discovery is scheduled
1289
+ *
1290
+ * ON source routes discovery is scheduled, and it is triggered periodically
1291
+ *
1292
+ * RESCHEDULE source routes discoveries are re-scheduled to be sent once immediately and then triggered periodically
1293
+ */
1294
+ export enum EmberSourceRouteDiscoveryMode {
1295
+ /** off */
1296
+ OFF = 0x00,
1297
+ /** on */
1298
+ ON = 0x01,
1299
+ /** reschedule */
1300
+ RESCHEDULE = 0x02,
1301
+ }
1302
+
1303
+ /** The types of MAC passthrough messages that an application may receive. This is a bitmask. */
1304
+ export enum EmberMacPassthroughType {
1305
+ /** No MAC passthrough messages. */
1306
+ NONE = 0x00,
1307
+ /** SE InterPAN messages. */
1308
+ SE_INTERPAN = 0x01,
1309
+ /** EmberNet and first generation (v1) standalone bootloader messages. */
1310
+ EMBERNET = 0x02,
1311
+ /** EmberNet messages filtered by their source address. */
1312
+ EMBERNET_SOURCE = 0x04,
1313
+ /** Application-specific passthrough messages. */
1314
+ APPLICATION = 0x08,
1315
+ /** Custom inter-pan filter. */
1316
+ CUSTOM = 0x10,
1317
+
1318
+ /** Internal Stack passthrough. */
1319
+ INTERNAL_ZLL = 0x80,
1320
+ INTERNAL_GP = 0x40,
1321
+ }
1322
+
1323
+ /**
1324
+ * Interpan Message type: unicast, broadcast, or multicast.
1325
+ * uint8_t
1326
+ */
1327
+ export enum EmberInterpanMessageType {
1328
+ UNICAST = 0x00,
1329
+ BROADCAST = 0x08,
1330
+ MULTICAST = 0x0c,
1331
+ }
1332
+
1333
+ /** This is the Current Security Bitmask that details the use of various security features. */
1334
+ export enum EmberCurrentSecurityBitmask {
1335
+ // These options are the same for Initial and Current Security state.
1336
+
1337
+ /** This denotes that the device is running in a network with Zigbee
1338
+ * Standard Security. */
1339
+ STANDARD_SECURITY_MODE = 0x0000,
1340
+ /** This denotes that the device is running in a network without
1341
+ * a centralized Trust Center. */
1342
+ DISTRIBUTED_TRUST_CENTER_MODE = 0x0002,
1343
+ /** This denotes that the device has a Global Link Key. The Trust Center
1344
+ * Link Key is the same across multiple nodes. */
1345
+ TRUST_CENTER_GLOBAL_LINK_KEY = 0x0004,
1346
+
1347
+ // Bit 3 reserved
1348
+
1349
+ /** This denotes that the node has a Trust Center Link Key. */
1350
+ HAVE_TRUST_CENTER_LINK_KEY = 0x0010,
1351
+
1352
+ /** This denotes that the Trust Center is using a Hashed Link Key. */
1353
+ TRUST_CENTER_USES_HASHED_LINK_KEY = 0x0084,
1354
+
1355
+ // Bits 1, 5, 6, and 8-15 reserved.
1356
+ }
1357
+
1358
+ /**
1359
+ * The list of supported key types used by Zigbee Security Manager.
1360
+ * uint8_t
1361
+ */
1362
+ export enum SecManKeyType {
1363
+ NONE = 0,
1364
+ /**
1365
+ * This is the network key, used for encrypting and decrypting network payloads.
1366
+ * There is only one of these keys in storage.
1367
+ */
1368
+ NETWORK = 1,
1369
+ /**
1370
+ * This is the Trust Center Link Key. On the joining device, this is the APS
1371
+ * key used to communicate with the trust center. On the trust center, this
1372
+ * key can be used as a root key for APS encryption and decryption when
1373
+ * communicating with joining devices (if the security policy has the
1374
+ * EMBER_TRUST_CENTER_USES_HASHED_LINK_KEY bit set).
1375
+ * There is only one of these keys in storage.
1376
+ */
1377
+ TC_LINK = 2,
1378
+ /**
1379
+ * This is a Trust Center Link Key, but it times out after either
1380
+ * ::EMBER_TRANSIENT_KEY_TIMEOUT_S or
1381
+ * ::EMBER_AF_PLUGIN_NETWORK_CREATOR_SECURITY_NETWORK_OPEN_TIME_S (if
1382
+ * defined), whichever is longer. This type of key is set on trust centers
1383
+ * who wish to open joining with a temporary, or transient, APS key for
1384
+ * devices to join with. Joiners who wish to try several keys when joining a
1385
+ * network may set several of these types of keys before attempting to join.
1386
+ * This is an indexed key, and local storage can fit as many keys as
1387
+ * available RAM allows.
1388
+ */
1389
+ TC_LINK_WITH_TIMEOUT = 3,
1390
+ /**
1391
+ * This is an Application link key. On both joining devices and the trust
1392
+ * center, this key is used in APS encryption and decryption when
1393
+ * communicating to a joining device.
1394
+ * This is an indexed key table of size EMBER_KEY_TABLE_SIZE, so long as there
1395
+ * is sufficient nonvolatile memory to store keys.
1396
+ */
1397
+ APP_LINK = 4,
1398
+ /** This is the ZLL encryption key for use by algorithms that require it. */
1399
+ ZLL_ENCRYPTION_KEY = 5,
1400
+ /** For ZLL, this is the pre-configured link key used during classical Zigbee commissioning. */
1401
+ ZLL_PRECONFIGURED_KEY = 6,
1402
+ /** This is a Green Power Device (GPD) key used on a Proxy device. */
1403
+ GREEN_POWER_PROXY_TABLE_KEY = 7,
1404
+ /** This is a Green Power Device (GPD) key used on a Sink device. */
1405
+ GREEN_POWER_SINK_TABLE_KEY = 8,
1406
+ /**
1407
+ * This is a generic key type intended to be loaded for one-time hashing or crypto operations.
1408
+ * This key is not persisted. Intended for use by the Zigbee stack.
1409
+ */
1410
+ INTERNAL = 9,
1411
+ }
1412
+
1413
+ /**
1414
+ * Derived keys are calculated when performing Zigbee crypto operations. The stack makes use of these derivations.
1415
+ * Compounding derivations can be specified by using an or-equals on two derived types if applicable;
1416
+ * this is limited to performing the key-transport, key-load, or verify-key hashes on either the TC Swap Out or TC Hashed Link keys.
1417
+ * uint16_t
1418
+ */
1419
+ export enum SecManDerivedKeyType {
1420
+ /** Perform no derivation; use the key as is. */
1421
+ NONE = 0x0000,
1422
+ /** Perform the Key-Transport-Key hash. */
1423
+ KEY_TRANSPORT_KEY = 0x0001,
1424
+ /** Perform the Key-Load-Key hash. */
1425
+ KEY_LOAD_KEY = 0x0002,
1426
+ /** Perform the Verify Key hash. */
1427
+ VERIFY_KEY = 0x0004,
1428
+ /** Perform a simple AES hash of the key for TC backup. */
1429
+ TC_SWAP_OUT_KEY = 0x0008,
1430
+ /** For a TC using hashed link keys, hashed the root key against the supplied EUI in context. */
1431
+ TC_HASHED_LINK_KEY = 0x0010,
1432
+ }
1433
+
1434
+ /**
1435
+ * Security Manager context flags.
1436
+ * uint8_t
1437
+ */
1438
+ export enum SecManFlag {
1439
+ NONE = 0x00,
1440
+ /**
1441
+ * For export APIs, this flag indicates the key_index parameter is valid in
1442
+ * the ::sl_zb_sec_man_context_t structure. This bit is set by the caller
1443
+ * when intending to search for a key by key_index. This flag has no
1444
+ * significance for import APIs. */
1445
+ KEY_INDEX_IS_VALID = 0x01,
1446
+ /**
1447
+ * For export APIs, this flag indicates the eui64 parameter is valid in the
1448
+ * ::sl_zb_sec_man_context_t structure. This bit is set by the caller when
1449
+ * intending to search for a key by eui64. It is also set when searching by
1450
+ * key_index and an entry is found. This flag has no significance for import
1451
+ * APIs. */
1452
+ EUI_IS_VALID = 0x02,
1453
+ /**
1454
+ * Internal use only. This indicates that the transient key being added is an
1455
+ * unconfirmed, updated key. This bit is set when we add a transient key and
1456
+ * the ::EmberTcLinkKeyRequestPolicy policy
1457
+ * is ::EMBER_ALLOW_TC_LINK_KEY_REQUEST_AND_GENERATE_NEW_KEY, whose behavior
1458
+ * dictates that we generate a new, unconfirmed key, send it to the requester,
1459
+ * and await for a Verify Key Confirm message. */
1460
+ UNCONFIRMED_TRANSIENT_KEY = 0x04,
1461
+ /**
1462
+ * Internal use only. This indicates that the key being added was derived via
1463
+ * dynamic link key negotiation. This may be used in conjunction with the above
1464
+ * ::UNCONFIRMED_TRANSIENT_KEY while the derived link key awaits
1465
+ * confirmation
1466
+ */
1467
+ AUTHENTICATED_DYNAMIC_LINK_KEY = 0x08,
1468
+ /**
1469
+ * Internal use only. This indicates that the "key" being added is instead the
1470
+ * symmetric passphrase to be stored in the link key table. This flag will trigger the
1471
+ * addition of the KEY_TABLE_SYMMETRIC_PASSPHRASE bitmask when storing the symmetric
1472
+ * passphrase so that it can be differentiated from other keys with the same EUI64.
1473
+ */
1474
+ SYMMETRIC_PASSPHRASE = 0x10,
1475
+ }
1476
+
1477
+ /** This denotes the status of an attempt to establish a key with another device. */
1478
+ export enum EmberKeyStatus {
1479
+ STATUS_NONE = 0x00,
1480
+ APP_LINK_KEY_ESTABLISHED = 0x01,
1481
+ TRUST_CENTER_LINK_KEY_ESTABLISHED = 0x03,
1482
+
1483
+ ESTABLISHMENT_TIMEOUT = 0x04,
1484
+ TABLE_FULL = 0x05,
1485
+
1486
+ // These are success status values applying only to the Trust Center answering key requests.
1487
+ TC_RESPONDED_TO_KEY_REQUEST = 0x06,
1488
+ TC_APP_KEY_SENT_TO_REQUESTER = 0x07,
1489
+
1490
+ // These are failure status values applying only to the
1491
+ // Trust Center answering key requests.
1492
+ TC_RESPONSE_TO_KEY_REQUEST_FAILED = 0x08,
1493
+ TC_REQUEST_KEY_TYPE_NOT_SUPPORTED = 0x09,
1494
+ TC_NO_LINK_KEY_FOR_REQUESTER = 0x0a,
1495
+ TC_REQUESTER_EUI64_UNKNOWN = 0x0b,
1496
+ TC_RECEIVED_FIRST_APP_KEY_REQUEST = 0x0c,
1497
+ TC_TIMEOUT_WAITING_FOR_SECOND_APP_KEY_REQUEST = 0x0d,
1498
+ TC_NON_MATCHING_APP_KEY_REQUEST_RECEIVED = 0x0e,
1499
+ TC_FAILED_TO_SEND_APP_KEYS = 0x0f,
1500
+ TC_FAILED_TO_STORE_APP_KEY_REQUEST = 0x10,
1501
+ TC_REJECTED_APP_KEY_REQUEST = 0x11,
1502
+ TC_FAILED_TO_GENERATE_NEW_KEY = 0x12,
1503
+ TC_FAILED_TO_SEND_TC_KEY = 0x13,
1504
+
1505
+ // These are generic status values for a key requester.
1506
+ TRUST_CENTER_IS_PRE_R21 = 0x1e,
1507
+
1508
+ // These are status values applying only to the Trust Center verifying link keys.
1509
+ TC_REQUESTER_VERIFY_KEY_TIMEOUT = 0x32,
1510
+ TC_REQUESTER_VERIFY_KEY_FAILURE = 0x33,
1511
+ TC_REQUESTER_VERIFY_KEY_SUCCESS = 0x34,
1512
+
1513
+ // These are status values applying only to the key requester
1514
+ // verifying link keys.
1515
+ VERIFY_LINK_KEY_FAILURE = 0x64,
1516
+ VERIFY_LINK_KEY_SUCCESS = 0x65,
1517
+ }
1518
+
1519
+ /** This bitmask describes the presence of fields within the ::EmberKeyStruct. uint16_t */
1520
+ export enum EmberKeyStructBitmask {
1521
+ /** This indicates that the key has a sequence number associated with it. (i.e., a Network Key). */
1522
+ HAS_SEQUENCE_NUMBER = 0x0001,
1523
+ /** This indicates that the key has an outgoing frame counter and the corresponding value within the ::EmberKeyStruct has been populated.*/
1524
+ HAS_OUTGOING_FRAME_COUNTER = 0x0002,
1525
+ /** This indicates that the key has an incoming frame counter and the corresponding value within the ::EmberKeyStruct has been populated.*/
1526
+ HAS_INCOMING_FRAME_COUNTER = 0x0004,
1527
+ /**
1528
+ * This indicates that the key has an associated Partner EUI64 address and the corresponding value
1529
+ * within the ::EmberKeyStruct has been populated.
1530
+ */
1531
+ HAS_PARTNER_EUI64 = 0x0008,
1532
+ /**
1533
+ * This indicates the key is authorized for use in APS data messages.
1534
+ * If the key is not authorized for use in APS data messages it has not yet gone through a key agreement protocol, such as CBKE (i.e., ECC).
1535
+ */
1536
+ IS_AUTHORIZED = 0x0010,
1537
+ /**
1538
+ * This indicates that the partner associated with the link is a sleepy end device.
1539
+ * This bit is set automatically if the local device hears a device announce from the partner indicating it is not an 'RX on when idle' device.
1540
+ */
1541
+ PARTNER_IS_SLEEPY = 0x0020,
1542
+ /**
1543
+ * This indicates that the transient key which is being added is unconfirmed.
1544
+ * This bit is set when we add a transient key while the EmberTcLinkKeyRequestPolicy is EMBER_ALLOW_TC_LINK_KEY_REQUEST_AND_GENERATE_NEW_KEY
1545
+ */
1546
+ UNCONFIRMED_TRANSIENT = 0x0040,
1547
+ /** This indicates that the actual key data is stored in PSA, and the respective PSA ID is recorded in the psa_id field. */
1548
+ HAS_PSA_ID = 0x0080,
1549
+ /**
1550
+ * This indicates that the keyData field has valid data. On certain parts and depending on the security configuration,
1551
+ * keys may live in secure storage and are not exportable. In such cases, keyData will not house the actual key contents.
1552
+ */
1553
+ HAS_KEY_DATA = 0x0100,
1554
+ /**
1555
+ * This indicates that the key represents a Device Authentication Token and is not an encryption key.
1556
+ * The Authentication token is persisted for the lifetime of the device on the network and used to validate and update the device connection.
1557
+ * It is only removed when the device leaves or is decommissioned from the network
1558
+ */
1559
+ IS_AUTHENTICATION_TOKEN = 0x0200,
1560
+ /** This indicates that the key has been derived by the Dynamic Link Key feature. */
1561
+ DLK_DERIVED = 0x0400,
1562
+ /** This indicates that the device this key is being used to communicate with supports the APS frame counter synchronization procedure. */
1563
+ FC_SYNC_SUPPORTED = 0x0800,
1564
+ }
1565
+
1566
+ /**
1567
+ * The Status of the Update Device message sent to the Trust Center.
1568
+ * The device may have joined or rejoined insecurely, rejoined securely, or left.
1569
+ * MAC Security has been deprecated and therefore there is no secure join.
1570
+ * These map to the actual values within the APS Command frame so they cannot be arbitrarily changed.
1571
+ * uint8_t
1572
+ */
1573
+ export enum EmberDeviceUpdate {
1574
+ STANDARD_SECURITY_SECURED_REJOIN = 0,
1575
+ STANDARD_SECURITY_UNSECURED_JOIN = 1,
1576
+ DEVICE_LEFT = 2,
1577
+ STANDARD_SECURITY_UNSECURED_REJOIN = 3,
1578
+ }
1579
+
1580
+ /** The decision made by the Trust Center when a node attempts to join. uint8_t */
1581
+ export enum EmberJoinDecision {
1582
+ /** Allow the node to join. The node has the key. */
1583
+ USE_PRECONFIGURED_KEY = 0,
1584
+ /** Allow the node to join. Send the key to the node. */
1585
+ SEND_KEY_IN_THE_CLEAR = 1,
1586
+ /** Deny join. */
1587
+ DENY_JOIN = 2,
1588
+ /** Take no action. */
1589
+ NO_ACTION = 3,
1590
+ /** Allow rejoins only.*/
1591
+ ALLOW_REJOINS_ONLY = 4,
1592
+ }
1593
+
1594
+ /** A bitmask indicating the state of the ZLL device. This maps directly to the ZLL information field in the scan response. uint16_t */
1595
+ export enum EmberZllState {
1596
+ /** No state. */
1597
+ NONE = 0x0000,
1598
+ /** The device is factory new. */
1599
+ FACTORY_NEW = 0x0001,
1600
+ /** The device is capable of assigning addresses to other devices. */
1601
+ ADDRESS_ASSIGNMENT_CAPABLE = 0x0002,
1602
+ /** The device is initiating a link operation. */
1603
+ LINK_INITIATOR = 0x0010,
1604
+ /** The device is requesting link priority. */
1605
+ LINK_PRIORITY_REQUEST = 0x0020,
1606
+ /** The device is a Zigbee 3.0 device. */
1607
+ PROFILE_INTEROP = 0x0080,
1608
+ /** The device is on a non-ZLL network. */
1609
+ NON_ZLL_NETWORK = 0x0100,
1610
+ /** Internal use: the ZLL token's key values point to a PSA key identifier */
1611
+ TOKEN_POINTS_TO_PSA_ID = 0x0200,
1612
+ }
1613
+
1614
+ /** Differentiates among ZLL network operations. */
1615
+ export enum EzspZllNetworkOperation {
1616
+ /** ZLL form network command. */
1617
+ FORM_NETWORK = 0x00,
1618
+ /** ZLL join target command. */
1619
+ JOIN_TARGET = 0x01,
1620
+ }
1621
+
1622
+ /** The key encryption algorithms supported by the stack. */
1623
+ export enum EmberZllKeyIndex {
1624
+ /** The key encryption algorithm for use during development. */
1625
+ DEVELOPMENT = 0x00,
1626
+ /** The key encryption algorithm shared by all certified devices. */
1627
+ MASTER = 0x04,
1628
+ /** The key encryption algorithm for use during development and certification. */
1629
+ CERTIFICATION = 0x0f,
1630
+ }
1631
+
1632
+ /** uint8_t */
1633
+ export enum EmberGpApplicationId {
1634
+ /** Source identifier. */
1635
+ SOURCE_ID = 0x00,
1636
+ /** IEEE address. */
1637
+ IEEE_ADDRESS = 0x02,
1638
+ }
1639
+
1640
+ /** Green Power Security Level. uint8_t */
1641
+ export enum EmberGpSecurityLevel {
1642
+ /** No Security */
1643
+ NONE = 0x00,
1644
+ /** Reserved */
1645
+ RESERVED = 0x01,
1646
+ /** 4 Byte Frame Counter and 4 Byte MIC */
1647
+ FC_MIC = 0x02,
1648
+ /** 4 Byte Frame Counter and 4 Byte MIC with encryption */
1649
+ FC_MIC_ENCRYPTED = 0x03,
1650
+ }
1651
+
1652
+ /** Green Power Security Security Key Type. uint8_t */
1653
+ export enum EmberGpKeyType {
1654
+ /** No Key */
1655
+ NONE = 0x00,
1656
+ /** GP Security Key Type is Zigbee Network Key */
1657
+ NWK = 0x01,
1658
+ /** GP Security Key Type is Group Key */
1659
+ GPD_GROUP = 0x02,
1660
+ /** GP Security Key Type is Derived Network Key */
1661
+ NWK_DERIVED = 0x03,
1662
+ /** GP Security Key Type is Out Of Box Key */
1663
+ GPD_OOB = 0x04,
1664
+ /** GP Security Key Type is GPD Derived Key */
1665
+ GPD_DERIVED = 0x07,
1666
+ }
1667
+
1668
+ /** uint8_t */
1669
+ export enum EmberGpProxyTableEntryStatus {
1670
+ /** The GP table entry is in use for a Proxy Table Entry. */
1671
+ ACTIVE = 0x01,
1672
+ /** The proxy table entry is not in use. */
1673
+ UNUSED = 0xff,
1674
+ }
1675
+
1676
+ /** GP Sink Type. */
1677
+ export enum EmberGpSinkType {
1678
+ /** Sink Type is Full Unicast */
1679
+ FULL_UNICAST = 0,
1680
+ /** Sink Type is Derived groupcast, the group ID is derived from the GpdId during commissioning.
1681
+ * The sink is added to the APS group with that groupId.
1682
+ */
1683
+ D_GROUPCAST = 1,
1684
+ /** Sink type GROUPCAST, the groupId can be obtained from the APS group table
1685
+ * or from the sink table.
1686
+ */
1687
+ GROUPCAST = 2,
1688
+ /** Sink Type is Light Weight Unicast. */
1689
+ LW_UNICAST = 3,
1690
+ /** Unused sink type */
1691
+ UNUSED = 0xff,
1692
+ }
1693
+
1694
+ /** uint8_t */
1695
+ export enum EmberGpSinkTableEntryStatus {
1696
+ /** The GP table entry is in use for a Sink Table Entry. */
1697
+ ACTIVE = 0x01,
1698
+ /** The proxy table entry is not in use. */
1699
+ UNUSED = 0xff,
1700
+ }
1701
+
1702
+ export enum EmberLeaveNetworkOption {
1703
+ /** Leave with no option. */
1704
+ WITH_NO_OPTION = 0x00,
1705
+ /** Leave with option rejoin. */
1706
+ WITH_OPTION_REJOIN = 0x20,
1707
+ /** Leave is requested. */
1708
+ IS_REQUESTED = 0x40,
1709
+ }
1710
+
1711
+ /**
1712
+ * Packet transmit priorities in terms of getting into the MAC queue.
1713
+ *
1714
+ * SL_802154_TRANSMIT_PRIORITY_HIGH High priority headers go on the front of the queue.
1715
+ * SL_802154_TRANSMIT_PRIORITY_NORMAL Normal priority headers go on the back of the queue.
1716
+ * SL_802154_TRANSMIT_PRIORITY_SCAN_OKAY Normally, only beacon requests and orphan notifications can be sent during a scan.
1717
+ * They are submitted with SCAN_OKAY and go on the front of the queue. Other packets could be submitted with this priority, but it is not recommended.
1718
+ */
1719
+ export enum EmberTransmitPriority {
1720
+ HIGH = 0,
1721
+ NORMAL = 1,
1722
+ SCAN_OKAY = 2,
1723
+ }
1724
+
1725
+ export enum IEEE802154CcaMode {
1726
+ /** RSSI-based CCA. CCA reports a busy medium upon detecting any energy above -75 (default RAIL_CsmaConfig_t.ccaThreshold). */
1727
+ RSSI = 0,
1728
+ /**
1729
+ * Signal Identifier-based CCA. CCA reports a busy medium only upon the detection of a signal compliant with this standard
1730
+ * with the same modulation and spreading characteristics of the PHY that is currently in use.
1731
+ */
1732
+ SIGNAL = 1,
1733
+ /**
1734
+ * RSSI or signal identifier-based CCA. CCA reports a busy medium on either detecting any energy above
1735
+ * -75 (default RAIL_CsmaConfig_t.ccaThreshold) or detection of a signal compliant with this standard with the same modulation
1736
+ * and spreading characteristics of the PHY that is currently in use.
1737
+ */
1738
+ SIGNAL_OR_RSSI = 2,
1739
+ /**
1740
+ * RSSI and signal identifier-based CCA. CCA reports a busy medium only on detecting any energy above -75 (default RAIL_CsmaConfig_t.ccaThreshold)
1741
+ * of a signal compliant with this standard with the same modulation and spreading characteristics of the PHY that is currently in use.
1742
+ */
1743
+ SIGNAL_AND_RSSI = 3,
1744
+ /** ALOHA. Always transmit CCA=1. CCA always reports an idle medium. */
1745
+ ALWAYS_TRANSMIT = 4,
1746
+ }