zigbee-herdsman-converters 21.9.0 → 21.9.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 (1394) hide show
  1. package/CHANGELOG.md +9 -0
  2. package/converters/fromZigbee.d.ts +2036 -0
  3. package/converters/fromZigbee.d.ts.map +1 -0
  4. package/converters/fromZigbee.js +5343 -0
  5. package/converters/fromZigbee.js.map +1 -0
  6. package/converters/toZigbee.d.ts +1578 -0
  7. package/converters/toZigbee.d.ts.map +1 -0
  8. package/converters/toZigbee.js +4422 -0
  9. package/converters/toZigbee.js.map +1 -0
  10. package/devices/ITCommander.d.ts +4 -0
  11. package/devices/ITCommander.d.ts.map +1 -0
  12. package/devices/ITCommander.js +77 -0
  13. package/devices/ITCommander.js.map +1 -0
  14. package/devices/acova.d.ts +4 -0
  15. package/devices/acova.d.ts.map +1 -0
  16. package/devices/acova.js +127 -0
  17. package/devices/acova.js.map +1 -0
  18. package/devices/acuity_brands_lighting.d.ts +4 -0
  19. package/devices/acuity_brands_lighting.d.ts.map +1 -0
  20. package/devices/acuity_brands_lighting.js +29 -0
  21. package/devices/acuity_brands_lighting.js.map +1 -0
  22. package/devices/adeo.d.ts +4 -0
  23. package/devices/adeo.d.ts.map +1 -0
  24. package/devices/adeo.js +486 -0
  25. package/devices/adeo.js.map +1 -0
  26. package/devices/adurosmart.d.ts +4 -0
  27. package/devices/adurosmart.d.ts.map +1 -0
  28. package/devices/adurosmart.js +183 -0
  29. package/devices/adurosmart.js.map +1 -0
  30. package/devices/aeotec.d.ts +4 -0
  31. package/devices/aeotec.d.ts.map +1 -0
  32. package/devices/aeotec.js +66 -0
  33. package/devices/aeotec.js.map +1 -0
  34. package/devices/airam.d.ts +4 -0
  35. package/devices/airam.d.ts.map +1 -0
  36. package/devices/airam.js +106 -0
  37. package/devices/airam.js.map +1 -0
  38. package/devices/airzone_aidoo.d.ts +4 -0
  39. package/devices/airzone_aidoo.d.ts.map +1 -0
  40. package/devices/airzone_aidoo.js +81 -0
  41. package/devices/airzone_aidoo.js.map +1 -0
  42. package/devices/ajax_online.d.ts +4 -0
  43. package/devices/ajax_online.d.ts.map +1 -0
  44. package/devices/ajax_online.js +84 -0
  45. package/devices/ajax_online.js.map +1 -0
  46. package/devices/akuvox.d.ts +4 -0
  47. package/devices/akuvox.d.ts.map +1 -0
  48. package/devices/akuvox.js +68 -0
  49. package/devices/akuvox.js.map +1 -0
  50. package/devices/alchemy.d.ts +4 -0
  51. package/devices/alchemy.d.ts.map +1 -0
  52. package/devices/alchemy.js +22 -0
  53. package/devices/alchemy.js.map +1 -0
  54. package/devices/aldi.d.ts +4 -0
  55. package/devices/aldi.d.ts.map +1 -0
  56. package/devices/aldi.js +57 -0
  57. package/devices/aldi.js.map +1 -0
  58. package/devices/alecto.d.ts +4 -0
  59. package/devices/alecto.d.ts.map +1 -0
  60. package/devices/alecto.js +101 -0
  61. package/devices/alecto.js.map +1 -0
  62. package/devices/amina.d.ts +4 -0
  63. package/devices/amina.d.ts.map +1 -0
  64. package/devices/amina.js +370 -0
  65. package/devices/amina.js.map +1 -0
  66. package/devices/anchor.d.ts +4 -0
  67. package/devices/anchor.d.ts.map +1 -0
  68. package/devices/anchor.js +15 -0
  69. package/devices/anchor.js.map +1 -0
  70. package/devices/atlantic.d.ts +4 -0
  71. package/devices/atlantic.d.ts.map +1 -0
  72. package/devices/atlantic.js +146 -0
  73. package/devices/atlantic.js.map +1 -0
  74. package/devices/atsmart.d.ts +4 -0
  75. package/devices/atsmart.d.ts.map +1 -0
  76. package/devices/atsmart.js +15 -0
  77. package/devices/atsmart.js.map +1 -0
  78. package/devices/aubess.d.ts +4 -0
  79. package/devices/aubess.d.ts.map +1 -0
  80. package/devices/aubess.js +60 -0
  81. package/devices/aubess.js.map +1 -0
  82. package/devices/aurora_lighting.d.ts +4 -0
  83. package/devices/aurora_lighting.d.ts.map +1 -0
  84. package/devices/aurora_lighting.js +338 -0
  85. package/devices/aurora_lighting.js.map +1 -0
  86. package/devices/automaton.d.ts +4 -0
  87. package/devices/automaton.d.ts.map +1 -0
  88. package/devices/automaton.js +65 -0
  89. package/devices/automaton.js.map +1 -0
  90. package/devices/avatto.d.ts +4 -0
  91. package/devices/avatto.d.ts.map +1 -0
  92. package/devices/avatto.js +67 -0
  93. package/devices/avatto.js.map +1 -0
  94. package/devices/awox.d.ts +4 -0
  95. package/devices/awox.d.ts.map +1 -0
  96. package/devices/awox.js +240 -0
  97. package/devices/awox.js.map +1 -0
  98. package/devices/axis.d.ts +4 -0
  99. package/devices/axis.d.ts.map +1 -0
  100. package/devices/axis.js +63 -0
  101. package/devices/axis.js.map +1 -0
  102. package/devices/bankamp.d.ts +4 -0
  103. package/devices/bankamp.d.ts.map +1 -0
  104. package/devices/bankamp.js +15 -0
  105. package/devices/bankamp.js.map +1 -0
  106. package/devices/bega.d.ts +4 -0
  107. package/devices/bega.d.ts.map +1 -0
  108. package/devices/bega.js +29 -0
  109. package/devices/bega.js.map +1 -0
  110. package/devices/belkin.d.ts +4 -0
  111. package/devices/belkin.d.ts.map +1 -0
  112. package/devices/belkin.js +15 -0
  113. package/devices/belkin.js.map +1 -0
  114. package/devices/bitron.d.ts +4 -0
  115. package/devices/bitron.d.ts.map +1 -0
  116. package/devices/bitron.js +359 -0
  117. package/devices/bitron.js.map +1 -0
  118. package/devices/bituo_technik.d.ts +4 -0
  119. package/devices/bituo_technik.d.ts.map +1 -0
  120. package/devices/bituo_technik.js +121 -0
  121. package/devices/bituo_technik.js.map +1 -0
  122. package/devices/blaupunkt.d.ts +4 -0
  123. package/devices/blaupunkt.d.ts.map +1 -0
  124. package/devices/blaupunkt.js +68 -0
  125. package/devices/blaupunkt.js.map +1 -0
  126. package/devices/blitzwolf.d.ts +4 -0
  127. package/devices/blitzwolf.d.ts.map +1 -0
  128. package/devices/blitzwolf.js +73 -0
  129. package/devices/blitzwolf.js.map +1 -0
  130. package/devices/bosch.d.ts +4 -0
  131. package/devices/bosch.d.ts.map +1 -0
  132. package/devices/bosch.js +2048 -0
  133. package/devices/bosch.js.map +1 -0
  134. package/devices/bouffalo_lab.d.ts +4 -0
  135. package/devices/bouffalo_lab.d.ts.map +1 -0
  136. package/devices/bouffalo_lab.js +15 -0
  137. package/devices/bouffalo_lab.js.map +1 -0
  138. package/devices/brimate.d.ts +4 -0
  139. package/devices/brimate.d.ts.map +1 -0
  140. package/devices/brimate.js +55 -0
  141. package/devices/brimate.js.map +1 -0
  142. package/devices/bseed.d.ts +4 -0
  143. package/devices/bseed.d.ts.map +1 -0
  144. package/devices/bseed.js +57 -0
  145. package/devices/bseed.js.map +1 -0
  146. package/devices/bticino.d.ts +4 -0
  147. package/devices/bticino.d.ts.map +1 -0
  148. package/devices/bticino.js +113 -0
  149. package/devices/bticino.js.map +1 -0
  150. package/devices/busch_jaeger.d.ts +4 -0
  151. package/devices/busch_jaeger.d.ts.map +1 -0
  152. package/devices/busch_jaeger.js +186 -0
  153. package/devices/busch_jaeger.js.map +1 -0
  154. package/devices/byun.d.ts +4 -0
  155. package/devices/byun.d.ts.map +1 -0
  156. package/devices/byun.js +64 -0
  157. package/devices/byun.js.map +1 -0
  158. package/devices/calex.d.ts +4 -0
  159. package/devices/calex.d.ts.map +1 -0
  160. package/devices/calex.js +91 -0
  161. package/devices/calex.js.map +1 -0
  162. package/devices/candeo.d.ts +4 -0
  163. package/devices/candeo.d.ts.map +1 -0
  164. package/devices/candeo.js +185 -0
  165. package/devices/candeo.js.map +1 -0
  166. package/devices/casaia.d.ts +4 -0
  167. package/devices/casaia.d.ts.map +1 -0
  168. package/devices/casaia.js +99 -0
  169. package/devices/casaia.js.map +1 -0
  170. package/devices/cel.d.ts +4 -0
  171. package/devices/cel.d.ts.map +1 -0
  172. package/devices/cel.js +20 -0
  173. package/devices/cel.js.map +1 -0
  174. package/devices/centralite.d.ts +4 -0
  175. package/devices/centralite.d.ts.map +1 -0
  176. package/devices/centralite.js +444 -0
  177. package/devices/centralite.js.map +1 -0
  178. package/devices/chacon.d.ts +4 -0
  179. package/devices/chacon.d.ts.map +1 -0
  180. package/devices/chacon.js +18 -0
  181. package/devices/chacon.js.map +1 -0
  182. package/devices/cleode.d.ts +4 -0
  183. package/devices/cleode.d.ts.map +1 -0
  184. package/devices/cleode.js +15 -0
  185. package/devices/cleode.js.map +1 -0
  186. package/devices/cleverio.d.ts +4 -0
  187. package/devices/cleverio.d.ts.map +1 -0
  188. package/devices/cleverio.js +77 -0
  189. package/devices/cleverio.js.map +1 -0
  190. package/devices/climax.d.ts +4 -0
  191. package/devices/climax.d.ts.map +1 -0
  192. package/devices/climax.js +181 -0
  193. package/devices/climax.js.map +1 -0
  194. package/devices/commercial_electric.d.ts +4 -0
  195. package/devices/commercial_electric.d.ts.map +1 -0
  196. package/devices/commercial_electric.js +15 -0
  197. package/devices/commercial_electric.js.map +1 -0
  198. package/devices/cree.d.ts +4 -0
  199. package/devices/cree.d.ts.map +1 -0
  200. package/devices/cree.js +15 -0
  201. package/devices/cree.js.map +1 -0
  202. package/devices/ctm.d.ts +4 -0
  203. package/devices/ctm.d.ts.map +1 -0
  204. package/devices/ctm.js +1383 -0
  205. package/devices/ctm.js.map +1 -0
  206. package/devices/current_products_corp.d.ts +4 -0
  207. package/devices/current_products_corp.d.ts.map +1 -0
  208. package/devices/current_products_corp.js +64 -0
  209. package/devices/current_products_corp.js.map +1 -0
  210. package/devices/custom_devices_diy.d.ts +4 -0
  211. package/devices/custom_devices_diy.d.ts.map +1 -0
  212. package/devices/custom_devices_diy.js +1206 -0
  213. package/devices/custom_devices_diy.js.map +1 -0
  214. package/devices/cy_lighting.d.ts +4 -0
  215. package/devices/cy_lighting.d.ts.map +1 -0
  216. package/devices/cy_lighting.js +15 -0
  217. package/devices/cy_lighting.js.map +1 -0
  218. package/devices/danalock.d.ts +4 -0
  219. package/devices/danalock.d.ts.map +1 -0
  220. package/devices/danalock.js +65 -0
  221. package/devices/danalock.js.map +1 -0
  222. package/devices/danfoss.d.ts +4 -0
  223. package/devices/danfoss.d.ts.map +1 -0
  224. package/devices/danfoss.js +743 -0
  225. package/devices/danfoss.js.map +1 -0
  226. package/devices/databyte.d.ts +4 -0
  227. package/devices/databyte.d.ts.map +1 -0
  228. package/devices/databyte.js +95 -0
  229. package/devices/databyte.js.map +1 -0
  230. package/devices/datek.d.ts +4 -0
  231. package/devices/datek.d.ts.map +1 -0
  232. package/devices/datek.js +298 -0
  233. package/devices/datek.js.map +1 -0
  234. package/devices/dawon_dns.d.ts +4 -0
  235. package/devices/dawon_dns.d.ts.map +1 -0
  236. package/devices/dawon_dns.js +318 -0
  237. package/devices/dawon_dns.js.map +1 -0
  238. package/devices/develco.d.ts +4 -0
  239. package/devices/develco.d.ts.map +1 -0
  240. package/devices/develco.js +1037 -0
  241. package/devices/develco.js.map +1 -0
  242. package/devices/digi.d.ts +4 -0
  243. package/devices/digi.d.ts.map +1 -0
  244. package/devices/digi.js +25 -0
  245. package/devices/digi.js.map +1 -0
  246. package/devices/diyruz.d.ts +4 -0
  247. package/devices/diyruz.d.ts.map +1 -0
  248. package/devices/diyruz.js +403 -0
  249. package/devices/diyruz.js.map +1 -0
  250. package/devices/dlink.d.ts +4 -0
  251. package/devices/dlink.d.ts.map +1 -0
  252. package/devices/dlink.js +76 -0
  253. package/devices/dlink.js.map +1 -0
  254. package/devices/dnake.d.ts +4 -0
  255. package/devices/dnake.d.ts.map +1 -0
  256. package/devices/dnake.js +15 -0
  257. package/devices/dnake.js.map +1 -0
  258. package/devices/dowsing_reynolds.d.ts +4 -0
  259. package/devices/dowsing_reynolds.d.ts.map +1 -0
  260. package/devices/dowsing_reynolds.js +15 -0
  261. package/devices/dowsing_reynolds.js.map +1 -0
  262. package/devices/dresden_elektronik.d.ts +4 -0
  263. package/devices/dresden_elektronik.d.ts.map +1 -0
  264. package/devices/dresden_elektronik.js +50 -0
  265. package/devices/dresden_elektronik.js.map +1 -0
  266. package/devices/easyaccess.d.ts +4 -0
  267. package/devices/easyaccess.d.ts.map +1 -0
  268. package/devices/easyaccess.js +71 -0
  269. package/devices/easyaccess.js.map +1 -0
  270. package/devices/easyiot.d.ts +4 -0
  271. package/devices/easyiot.d.ts.map +1 -0
  272. package/devices/easyiot.js +358 -0
  273. package/devices/easyiot.js.map +1 -0
  274. package/devices/eatonhalo_led.d.ts +4 -0
  275. package/devices/eatonhalo_led.d.ts.map +1 -0
  276. package/devices/eatonhalo_led.js +15 -0
  277. package/devices/eatonhalo_led.js.map +1 -0
  278. package/devices/echostar.d.ts +4 -0
  279. package/devices/echostar.d.ts.map +1 -0
  280. package/devices/echostar.js +65 -0
  281. package/devices/echostar.js.map +1 -0
  282. package/devices/ecodim.d.ts +4 -0
  283. package/devices/ecodim.d.ts.map +1 -0
  284. package/devices/ecodim.js +270 -0
  285. package/devices/ecodim.js.map +1 -0
  286. package/devices/ecolink.d.ts +4 -0
  287. package/devices/ecolink.d.ts.map +1 -0
  288. package/devices/ecolink.js +61 -0
  289. package/devices/ecolink.js.map +1 -0
  290. package/devices/ecosmart.d.ts +4 -0
  291. package/devices/ecosmart.d.ts.map +1 -0
  292. package/devices/ecosmart.js +83 -0
  293. package/devices/ecosmart.js.map +1 -0
  294. package/devices/ecozy.d.ts +4 -0
  295. package/devices/ecozy.d.ts.map +1 -0
  296. package/devices/ecozy.js +89 -0
  297. package/devices/ecozy.js.map +1 -0
  298. package/devices/edp.d.ts +4 -0
  299. package/devices/edp.d.ts.map +1 -0
  300. package/devices/edp.js +74 -0
  301. package/devices/edp.js.map +1 -0
  302. package/devices/efekta.d.ts +4 -0
  303. package/devices/efekta.d.ts.map +1 -0
  304. package/devices/efekta.js +754 -0
  305. package/devices/efekta.js.map +1 -0
  306. package/devices/eglo.d.ts +4 -0
  307. package/devices/eglo.d.ts.map +1 -0
  308. package/devices/eglo.js +132 -0
  309. package/devices/eglo.js.map +1 -0
  310. package/devices/elko.d.ts +4 -0
  311. package/devices/elko.d.ts.map +1 -0
  312. package/devices/elko.js +240 -0
  313. package/devices/elko.js.map +1 -0
  314. package/devices/enbrighten.d.ts +4 -0
  315. package/devices/enbrighten.d.ts.map +1 -0
  316. package/devices/enbrighten.js +97 -0
  317. package/devices/enbrighten.js.map +1 -0
  318. package/devices/enocean.d.ts +4 -0
  319. package/devices/enocean.d.ts.map +1 -0
  320. package/devices/enocean.js +153 -0
  321. package/devices/enocean.js.map +1 -0
  322. package/devices/envilar.d.ts +4 -0
  323. package/devices/envilar.d.ts.map +1 -0
  324. package/devices/envilar.js +100 -0
  325. package/devices/envilar.js.map +1 -0
  326. package/devices/essentialb.d.ts +4 -0
  327. package/devices/essentialb.d.ts.map +1 -0
  328. package/devices/essentialb.js +137 -0
  329. package/devices/essentialb.js.map +1 -0
  330. package/devices/essentials.d.ts +4 -0
  331. package/devices/essentials.d.ts.map +1 -0
  332. package/devices/essentials.js +151 -0
  333. package/devices/essentials.js.map +1 -0
  334. package/devices/eucontrols.d.ts +4 -0
  335. package/devices/eucontrols.d.ts.map +1 -0
  336. package/devices/eucontrols.js +15 -0
  337. package/devices/eucontrols.js.map +1 -0
  338. package/devices/eurotronic.d.ts +4 -0
  339. package/devices/eurotronic.d.ts.map +1 -0
  340. package/devices/eurotronic.js +128 -0
  341. package/devices/eurotronic.js.map +1 -0
  342. package/devices/evanell.d.ts +4 -0
  343. package/devices/evanell.d.ts.map +1 -0
  344. package/devices/evanell.js +75 -0
  345. package/devices/evanell.js.map +1 -0
  346. package/devices/evn.d.ts +4 -0
  347. package/devices/evn.d.ts.map +1 -0
  348. package/devices/evn.js +94 -0
  349. package/devices/evn.js.map +1 -0
  350. package/devices/evology.d.ts +4 -0
  351. package/devices/evology.d.ts.map +1 -0
  352. package/devices/evology.js +64 -0
  353. package/devices/evology.js.map +1 -0
  354. package/devices/evvr.d.ts +4 -0
  355. package/devices/evvr.d.ts.map +1 -0
  356. package/devices/evvr.js +15 -0
  357. package/devices/evvr.js.map +1 -0
  358. package/devices/ewelink.d.ts +4 -0
  359. package/devices/ewelink.d.ts.map +1 -0
  360. package/devices/ewelink.js +343 -0
  361. package/devices/ewelink.js.map +1 -0
  362. package/devices/ezex.d.ts +4 -0
  363. package/devices/ezex.d.ts.map +1 -0
  364. package/devices/ezex.js +15 -0
  365. package/devices/ezex.js.map +1 -0
  366. package/devices/fantem.d.ts +4 -0
  367. package/devices/fantem.d.ts.map +1 -0
  368. package/devices/fantem.js +118 -0
  369. package/devices/fantem.js.map +1 -0
  370. package/devices/feibit.d.ts +4 -0
  371. package/devices/feibit.d.ts.map +1 -0
  372. package/devices/feibit.js +334 -0
  373. package/devices/feibit.js.map +1 -0
  374. package/devices/fireangel.d.ts +4 -0
  375. package/devices/fireangel.d.ts.map +1 -0
  376. package/devices/fireangel.js +55 -0
  377. package/devices/fireangel.js.map +1 -0
  378. package/devices/frankever.d.ts +4 -0
  379. package/devices/frankever.d.ts.map +1 -0
  380. package/devices/frankever.js +71 -0
  381. package/devices/frankever.js.map +1 -0
  382. package/devices/frient.d.ts +4 -0
  383. package/devices/frient.d.ts.map +1 -0
  384. package/devices/frient.js +42 -0
  385. package/devices/frient.js.map +1 -0
  386. package/devices/futurehome.d.ts +4 -0
  387. package/devices/futurehome.d.ts.map +1 -0
  388. package/devices/futurehome.js +124 -0
  389. package/devices/futurehome.js.map +1 -0
  390. package/devices/ge.d.ts +4 -0
  391. package/devices/ge.d.ts.map +1 -0
  392. package/devices/ge.js +134 -0
  393. package/devices/ge.js.map +1 -0
  394. package/devices/gewiss.d.ts +4 -0
  395. package/devices/gewiss.d.ts.map +1 -0
  396. package/devices/gewiss.js +78 -0
  397. package/devices/gewiss.js.map +1 -0
  398. package/devices/gidealed.d.ts +4 -0
  399. package/devices/gidealed.d.ts.map +1 -0
  400. package/devices/gidealed.js +15 -0
  401. package/devices/gidealed.js.map +1 -0
  402. package/devices/giderwel.d.ts +4 -0
  403. package/devices/giderwel.d.ts.map +1 -0
  404. package/devices/giderwel.js +15 -0
  405. package/devices/giderwel.js.map +1 -0
  406. package/devices/giex.d.ts +4 -0
  407. package/devices/giex.d.ts.map +1 -0
  408. package/devices/giex.js +121 -0
  409. package/devices/giex.js.map +1 -0
  410. package/devices/girier.d.ts +4 -0
  411. package/devices/girier.d.ts.map +1 -0
  412. package/devices/girier.js +56 -0
  413. package/devices/girier.js.map +1 -0
  414. package/devices/gledopto.d.ts +4 -0
  415. package/devices/gledopto.d.ts.map +1 -0
  416. package/devices/gledopto.js +1046 -0
  417. package/devices/gledopto.js.map +1 -0
  418. package/devices/gmmts.d.ts +4 -0
  419. package/devices/gmmts.d.ts.map +1 -0
  420. package/devices/gmmts.js +2287 -0
  421. package/devices/gmmts.js.map +1 -0
  422. package/devices/gmy.d.ts +4 -0
  423. package/devices/gmy.d.ts.map +1 -0
  424. package/devices/gmy.js +15 -0
  425. package/devices/gmy.js.map +1 -0
  426. package/devices/gs.d.ts +4 -0
  427. package/devices/gs.d.ts.map +1 -0
  428. package/devices/gs.js +89 -0
  429. package/devices/gs.js.map +1 -0
  430. package/devices/gumax.d.ts +4 -0
  431. package/devices/gumax.d.ts.map +1 -0
  432. package/devices/gumax.js +15 -0
  433. package/devices/gumax.js.map +1 -0
  434. package/devices/halemeier.d.ts +4 -0
  435. package/devices/halemeier.d.ts.map +1 -0
  436. package/devices/halemeier.js +129 -0
  437. package/devices/halemeier.js.map +1 -0
  438. package/devices/hampton_bay.d.ts +4 -0
  439. package/devices/hampton_bay.d.ts.map +1 -0
  440. package/devices/hampton_bay.js +72 -0
  441. package/devices/hampton_bay.js.map +1 -0
  442. package/devices/heatit.d.ts +4 -0
  443. package/devices/heatit.d.ts.map +1 -0
  444. package/devices/heatit.js +15 -0
  445. package/devices/heatit.js.map +1 -0
  446. package/devices/heiman.d.ts +4 -0
  447. package/devices/heiman.d.ts.map +1 -0
  448. package/devices/heiman.js +807 -0
  449. package/devices/heiman.js.map +1 -0
  450. package/devices/heimgard_technologies.d.ts +4 -0
  451. package/devices/heimgard_technologies.d.ts.map +1 -0
  452. package/devices/heimgard_technologies.js +193 -0
  453. package/devices/heimgard_technologies.js.map +1 -0
  454. package/devices/hej.d.ts +4 -0
  455. package/devices/hej.d.ts.map +1 -0
  456. package/devices/hej.js +73 -0
  457. package/devices/hej.js.map +1 -0
  458. package/devices/hfh.d.ts +4 -0
  459. package/devices/hfh.d.ts.map +1 -0
  460. package/devices/hfh.js +15 -0
  461. package/devices/hfh.js.map +1 -0
  462. package/devices/hilux.d.ts +4 -0
  463. package/devices/hilux.d.ts.map +1 -0
  464. package/devices/hilux.js +22 -0
  465. package/devices/hilux.js.map +1 -0
  466. package/devices/hive.d.ts +4 -0
  467. package/devices/hive.d.ts.map +1 -0
  468. package/devices/hive.js +766 -0
  469. package/devices/hive.js.map +1 -0
  470. package/devices/hommyn.d.ts +4 -0
  471. package/devices/hommyn.d.ts.map +1 -0
  472. package/devices/hommyn.js +64 -0
  473. package/devices/hommyn.js.map +1 -0
  474. package/devices/honyar.d.ts +4 -0
  475. package/devices/honyar.d.ts.map +1 -0
  476. package/devices/honyar.js +171 -0
  477. package/devices/honyar.js.map +1 -0
  478. package/devices/hornbach.d.ts +4 -0
  479. package/devices/hornbach.d.ts.map +1 -0
  480. package/devices/hornbach.js +99 -0
  481. package/devices/hornbach.js.map +1 -0
  482. package/devices/hzc_electric.d.ts +4 -0
  483. package/devices/hzc_electric.d.ts.map +1 -0
  484. package/devices/hzc_electric.js +94 -0
  485. package/devices/hzc_electric.js.map +1 -0
  486. package/devices/icasa.d.ts +4 -0
  487. package/devices/icasa.d.ts.map +1 -0
  488. package/devices/icasa.js +167 -0
  489. package/devices/icasa.js.map +1 -0
  490. package/devices/idinio.d.ts +4 -0
  491. package/devices/idinio.d.ts.map +1 -0
  492. package/devices/idinio.js +15 -0
  493. package/devices/idinio.js.map +1 -0
  494. package/devices/ihorn.d.ts +4 -0
  495. package/devices/ihorn.d.ts.map +1 -0
  496. package/devices/ihorn.js +109 -0
  497. package/devices/ihorn.js.map +1 -0
  498. package/devices/ikea.d.ts +4 -0
  499. package/devices/ikea.d.ts.map +1 -0
  500. package/devices/ikea.js +927 -0
  501. package/devices/ikea.js.map +1 -0
  502. package/devices/ilightsin.d.ts +4 -0
  503. package/devices/ilightsin.d.ts.map +1 -0
  504. package/devices/ilightsin.js +15 -0
  505. package/devices/ilightsin.js.map +1 -0
  506. package/devices/iluminize.d.ts +4 -0
  507. package/devices/iluminize.d.ts.map +1 -0
  508. package/devices/iluminize.js +376 -0
  509. package/devices/iluminize.js.map +1 -0
  510. package/devices/ilux.d.ts +4 -0
  511. package/devices/ilux.d.ts.map +1 -0
  512. package/devices/ilux.js +15 -0
  513. package/devices/ilux.js.map +1 -0
  514. package/devices/imhotepcreation.d.ts +4 -0
  515. package/devices/imhotepcreation.d.ts.map +1 -0
  516. package/devices/imhotepcreation.js +251 -0
  517. package/devices/imhotepcreation.js.map +1 -0
  518. package/devices/immax.d.ts +4 -0
  519. package/devices/immax.d.ts.map +1 -0
  520. package/devices/immax.js +304 -0
  521. package/devices/immax.js.map +1 -0
  522. package/devices/imou.d.ts +4 -0
  523. package/devices/imou.d.ts.map +1 -0
  524. package/devices/imou.js +28 -0
  525. package/devices/imou.js.map +1 -0
  526. package/devices/index.d.ts +13 -0
  527. package/devices/index.d.ts.map +1 -0
  528. package/devices/index.js +642 -0
  529. package/devices/index.js.map +1 -0
  530. package/devices/innr.d.ts +4 -0
  531. package/devices/innr.d.ts.map +1 -0
  532. package/devices/innr.js +878 -0
  533. package/devices/innr.js.map +1 -0
  534. package/devices/inovelli.d.ts +4 -0
  535. package/devices/inovelli.d.ts.map +1 -0
  536. package/devices/inovelli.js +1977 -0
  537. package/devices/inovelli.js.map +1 -0
  538. package/devices/insta.d.ts +4 -0
  539. package/devices/insta.d.ts.map +1 -0
  540. package/devices/insta.js +186 -0
  541. package/devices/insta.js.map +1 -0
  542. package/devices/iolloi.d.ts +4 -0
  543. package/devices/iolloi.d.ts.map +1 -0
  544. package/devices/iolloi.js +16 -0
  545. package/devices/iolloi.js.map +1 -0
  546. package/devices/iotperfect.d.ts +4 -0
  547. package/devices/iotperfect.d.ts.map +1 -0
  548. package/devices/iotperfect.js +62 -0
  549. package/devices/iotperfect.js.map +1 -0
  550. package/devices/iris.d.ts +4 -0
  551. package/devices/iris.d.ts.map +1 -0
  552. package/devices/iris.js +211 -0
  553. package/devices/iris.js.map +1 -0
  554. package/devices/istar.d.ts +4 -0
  555. package/devices/istar.d.ts.map +1 -0
  556. package/devices/istar.js +22 -0
  557. package/devices/istar.js.map +1 -0
  558. package/devices/jasco.d.ts +4 -0
  559. package/devices/jasco.d.ts.map +1 -0
  560. package/devices/jasco.js +34 -0
  561. package/devices/jasco.js.map +1 -0
  562. package/devices/javis.d.ts +4 -0
  563. package/devices/javis.d.ts.map +1 -0
  564. package/devices/javis.js +84 -0
  565. package/devices/javis.js.map +1 -0
  566. package/devices/jethome.d.ts +4 -0
  567. package/devices/jethome.d.ts.map +1 -0
  568. package/devices/jethome.js +124 -0
  569. package/devices/jethome.js.map +1 -0
  570. package/devices/jiawen.d.ts +4 -0
  571. package/devices/jiawen.d.ts.map +1 -0
  572. package/devices/jiawen.js +22 -0
  573. package/devices/jiawen.js.map +1 -0
  574. package/devices/jumitech.d.ts +4 -0
  575. package/devices/jumitech.d.ts.map +1 -0
  576. package/devices/jumitech.js +15 -0
  577. package/devices/jumitech.js.map +1 -0
  578. package/devices/jxuan.d.ts +4 -0
  579. package/devices/jxuan.d.ts.map +1 -0
  580. package/devices/jxuan.js +89 -0
  581. package/devices/jxuan.js.map +1 -0
  582. package/devices/kami.d.ts +4 -0
  583. package/devices/kami.d.ts.map +1 -0
  584. package/devices/kami.js +55 -0
  585. package/devices/kami.js.map +1 -0
  586. package/devices/keen_home.d.ts +4 -0
  587. package/devices/keen_home.d.ts.map +1 -0
  588. package/devices/keen_home.js +160 -0
  589. package/devices/keen_home.js.map +1 -0
  590. package/devices/klikaanklikuit.d.ts +4 -0
  591. package/devices/klikaanklikuit.d.ts.map +1 -0
  592. package/devices/klikaanklikuit.js +22 -0
  593. package/devices/klikaanklikuit.js.map +1 -0
  594. package/devices/kmpcil.d.ts +4 -0
  595. package/devices/kmpcil.d.ts.map +1 -0
  596. package/devices/kmpcil.js +219 -0
  597. package/devices/kmpcil.js.map +1 -0
  598. package/devices/konke.d.ts +4 -0
  599. package/devices/konke.d.ts.map +1 -0
  600. package/devices/konke.js +210 -0
  601. package/devices/konke.js.map +1 -0
  602. package/devices/ksentry.d.ts +4 -0
  603. package/devices/ksentry.d.ts.map +1 -0
  604. package/devices/ksentry.js +15 -0
  605. package/devices/ksentry.js.map +1 -0
  606. package/devices/kurvia.d.ts +4 -0
  607. package/devices/kurvia.d.ts.map +1 -0
  608. package/devices/kurvia.js +20 -0
  609. package/devices/kurvia.js.map +1 -0
  610. package/devices/kwikset.d.ts +4 -0
  611. package/devices/kwikset.d.ts.map +1 -0
  612. package/devices/kwikset.js +157 -0
  613. package/devices/kwikset.js.map +1 -0
  614. package/devices/lanesto.d.ts +4 -0
  615. package/devices/lanesto.d.ts.map +1 -0
  616. package/devices/lanesto.js +15 -0
  617. package/devices/lanesto.js.map +1 -0
  618. package/devices/lds.d.ts +4 -0
  619. package/devices/lds.d.ts.map +1 -0
  620. package/devices/lds.js +15 -0
  621. package/devices/lds.js.map +1 -0
  622. package/devices/led_trading.d.ts +4 -0
  623. package/devices/led_trading.d.ts.map +1 -0
  624. package/devices/led_trading.js +112 -0
  625. package/devices/led_trading.js.map +1 -0
  626. package/devices/ledvance.d.ts +4 -0
  627. package/devices/ledvance.d.ts.map +1 -0
  628. package/devices/ledvance.js +337 -0
  629. package/devices/ledvance.js.map +1 -0
  630. package/devices/leedarson.d.ts +4 -0
  631. package/devices/leedarson.d.ts.map +1 -0
  632. package/devices/leedarson.js +182 -0
  633. package/devices/leedarson.js.map +1 -0
  634. package/devices/legrand.d.ts +4 -0
  635. package/devices/legrand.d.ts.map +1 -0
  636. package/devices/legrand.js +740 -0
  637. package/devices/legrand.js.map +1 -0
  638. package/devices/lellki.d.ts +4 -0
  639. package/devices/lellki.d.ts.map +1 -0
  640. package/devices/lellki.js +169 -0
  641. package/devices/lellki.js.map +1 -0
  642. package/devices/letsled.d.ts +4 -0
  643. package/devices/letsled.d.ts.map +1 -0
  644. package/devices/letsled.js +15 -0
  645. package/devices/letsled.js.map +1 -0
  646. package/devices/letv.d.ts +4 -0
  647. package/devices/letv.d.ts.map +1 -0
  648. package/devices/letv.js +90 -0
  649. package/devices/letv.js.map +1 -0
  650. package/devices/leviton.d.ts +4 -0
  651. package/devices/leviton.d.ts.map +1 -0
  652. package/devices/leviton.js +164 -0
  653. package/devices/leviton.js.map +1 -0
  654. package/devices/lg.d.ts +4 -0
  655. package/devices/lg.d.ts.map +1 -0
  656. package/devices/lg.js +29 -0
  657. package/devices/lg.js.map +1 -0
  658. package/devices/lidl.d.ts +4 -0
  659. package/devices/lidl.d.ts.map +1 -0
  660. package/devices/lidl.js +674 -0
  661. package/devices/lidl.js.map +1 -0
  662. package/devices/lifecontrol.d.ts +4 -0
  663. package/devices/lifecontrol.d.ts.map +1 -0
  664. package/devices/lifecontrol.js +149 -0
  665. package/devices/lifecontrol.js.map +1 -0
  666. package/devices/lightsolutions.d.ts +4 -0
  667. package/devices/lightsolutions.d.ts.map +1 -0
  668. package/devices/lightsolutions.js +36 -0
  669. package/devices/lightsolutions.js.map +1 -0
  670. package/devices/linkind.d.ts +4 -0
  671. package/devices/linkind.d.ts.map +1 -0
  672. package/devices/linkind.js +275 -0
  673. package/devices/linkind.js.map +1 -0
  674. package/devices/linptech.d.ts +4 -0
  675. package/devices/linptech.d.ts.map +1 -0
  676. package/devices/linptech.js +159 -0
  677. package/devices/linptech.js.map +1 -0
  678. package/devices/livingwise.d.ts +4 -0
  679. package/devices/livingwise.d.ts.map +1 -0
  680. package/devices/livingwise.js +119 -0
  681. package/devices/livingwise.js.map +1 -0
  682. package/devices/livolo.d.ts +4 -0
  683. package/devices/livolo.d.ts.map +1 -0
  684. package/devices/livolo.js +422 -0
  685. package/devices/livolo.js.map +1 -0
  686. package/devices/lixee.d.ts +4 -0
  687. package/devices/lixee.d.ts.map +1 -0
  688. package/devices/lixee.js +1926 -0
  689. package/devices/lixee.js.map +1 -0
  690. package/devices/lonsonho.d.ts +4 -0
  691. package/devices/lonsonho.d.ts.map +1 -0
  692. package/devices/lonsonho.js +303 -0
  693. package/devices/lonsonho.js.map +1 -0
  694. package/devices/ls.d.ts +4 -0
  695. package/devices/ls.d.ts.map +1 -0
  696. package/devices/ls.js +68 -0
  697. package/devices/ls.js.map +1 -0
  698. package/devices/lubeez.d.ts +4 -0
  699. package/devices/lubeez.d.ts.map +1 -0
  700. package/devices/lubeez.js +15 -0
  701. package/devices/lubeez.js.map +1 -0
  702. package/devices/lumi.d.ts +4 -0
  703. package/devices/lumi.d.ts.map +1 -0
  704. package/devices/lumi.js +4387 -0
  705. package/devices/lumi.js.map +1 -0
  706. package/devices/lupus.d.ts +4 -0
  707. package/devices/lupus.d.ts.map +1 -0
  708. package/devices/lupus.js +98 -0
  709. package/devices/lupus.js.map +1 -0
  710. package/devices/lutron.d.ts +4 -0
  711. package/devices/lutron.d.ts.map +1 -0
  712. package/devices/lutron.js +71 -0
  713. package/devices/lutron.js.map +1 -0
  714. package/devices/lux.d.ts +4 -0
  715. package/devices/lux.d.ts.map +1 -0
  716. package/devices/lux.js +91 -0
  717. package/devices/lux.js.map +1 -0
  718. package/devices/lytko.d.ts +4 -0
  719. package/devices/lytko.d.ts.map +1 -0
  720. package/devices/lytko.js +788 -0
  721. package/devices/lytko.js.map +1 -0
  722. package/devices/m_elec.d.ts +4 -0
  723. package/devices/m_elec.d.ts.map +1 -0
  724. package/devices/m_elec.js +36 -0
  725. package/devices/m_elec.js.map +1 -0
  726. package/devices/makegood.d.ts +4 -0
  727. package/devices/makegood.d.ts.map +1 -0
  728. package/devices/makegood.js +66 -0
  729. package/devices/makegood.js.map +1 -0
  730. package/devices/matcall_bv.d.ts +4 -0
  731. package/devices/matcall_bv.d.ts.map +1 -0
  732. package/devices/matcall_bv.js +22 -0
  733. package/devices/matcall_bv.js.map +1 -0
  734. package/devices/mazda.d.ts +4 -0
  735. package/devices/mazda.d.ts.map +1 -0
  736. package/devices/mazda.js +174 -0
  737. package/devices/mazda.js.map +1 -0
  738. package/devices/meazon.d.ts +4 -0
  739. package/devices/meazon.d.ts.map +1 -0
  740. package/devices/meazon.js +99 -0
  741. package/devices/meazon.js.map +1 -0
  742. package/devices/mercator.d.ts +4 -0
  743. package/devices/mercator.d.ts.map +1 -0
  744. package/devices/mercator.js +256 -0
  745. package/devices/mercator.js.map +1 -0
  746. package/devices/miboxer.d.ts +4 -0
  747. package/devices/miboxer.d.ts.map +1 -0
  748. package/devices/miboxer.js +93 -0
  749. package/devices/miboxer.js.map +1 -0
  750. package/devices/micromatic.d.ts +4 -0
  751. package/devices/micromatic.d.ts.map +1 -0
  752. package/devices/micromatic.js +15 -0
  753. package/devices/micromatic.js.map +1 -0
  754. package/devices/modular.d.ts +4 -0
  755. package/devices/modular.d.ts.map +1 -0
  756. package/devices/modular.js +15 -0
  757. package/devices/modular.js.map +1 -0
  758. package/devices/moes.d.ts +4 -0
  759. package/devices/moes.d.ts.map +1 -0
  760. package/devices/moes.js +654 -0
  761. package/devices/moes.js.map +1 -0
  762. package/devices/muller_licht.d.ts +4 -0
  763. package/devices/muller_licht.d.ts.map +1 -0
  764. package/devices/muller_licht.js +341 -0
  765. package/devices/muller_licht.js.map +1 -0
  766. package/devices/multiterm.d.ts +4 -0
  767. package/devices/multiterm.d.ts.map +1 -0
  768. package/devices/multiterm.js +123 -0
  769. package/devices/multiterm.js.map +1 -0
  770. package/devices/namron.d.ts +4 -0
  771. package/devices/namron.d.ts.map +1 -0
  772. package/devices/namron.js +1464 -0
  773. package/devices/namron.js.map +1 -0
  774. package/devices/nanoleaf.d.ts +4 -0
  775. package/devices/nanoleaf.d.ts.map +1 -0
  776. package/devices/nanoleaf.js +15 -0
  777. package/devices/nanoleaf.js.map +1 -0
  778. package/devices/nedis.d.ts +4 -0
  779. package/devices/nedis.d.ts.map +1 -0
  780. package/devices/nedis.js +88 -0
  781. package/devices/nedis.js.map +1 -0
  782. package/devices/neo.d.ts +4 -0
  783. package/devices/neo.d.ts.map +1 -0
  784. package/devices/neo.js +558 -0
  785. package/devices/neo.js.map +1 -0
  786. package/devices/net2grid.d.ts +4 -0
  787. package/devices/net2grid.d.ts.map +1 -0
  788. package/devices/net2grid.js +68 -0
  789. package/devices/net2grid.js.map +1 -0
  790. package/devices/netvox.d.ts +4 -0
  791. package/devices/netvox.d.ts.map +1 -0
  792. package/devices/netvox.js +75 -0
  793. package/devices/netvox.js.map +1 -0
  794. package/devices/nexelec.d.ts +4 -0
  795. package/devices/nexelec.d.ts.map +1 -0
  796. package/devices/nexelec.js +15 -0
  797. package/devices/nexelec.js.map +1 -0
  798. package/devices/niko.d.ts +4 -0
  799. package/devices/niko.d.ts.map +1 -0
  800. package/devices/niko.js +495 -0
  801. package/devices/niko.js.map +1 -0
  802. package/devices/ninja_blocks.d.ts +4 -0
  803. package/devices/ninja_blocks.d.ts.map +1 -0
  804. package/devices/ninja_blocks.js +64 -0
  805. package/devices/ninja_blocks.js.map +1 -0
  806. package/devices/niviss.d.ts +4 -0
  807. package/devices/niviss.d.ts.map +1 -0
  808. package/devices/niviss.js +15 -0
  809. package/devices/niviss.js.map +1 -0
  810. package/devices/nodon.d.ts +4 -0
  811. package/devices/nodon.d.ts.map +1 -0
  812. package/devices/nodon.js +386 -0
  813. package/devices/nodon.js.map +1 -0
  814. package/devices/nordtronic.d.ts +4 -0
  815. package/devices/nordtronic.d.ts.map +1 -0
  816. package/devices/nordtronic.js +41 -0
  817. package/devices/nordtronic.js.map +1 -0
  818. package/devices/nous.d.ts +4 -0
  819. package/devices/nous.d.ts.map +1 -0
  820. package/devices/nous.js +151 -0
  821. package/devices/nous.js.map +1 -0
  822. package/devices/novo.d.ts +4 -0
  823. package/devices/novo.d.ts.map +1 -0
  824. package/devices/novo.js +57 -0
  825. package/devices/novo.js.map +1 -0
  826. package/devices/nue_3a.d.ts +4 -0
  827. package/devices/nue_3a.d.ts.map +1 -0
  828. package/devices/nue_3a.js +361 -0
  829. package/devices/nue_3a.js.map +1 -0
  830. package/devices/nyce.d.ts +4 -0
  831. package/devices/nyce.d.ts.map +1 -0
  832. package/devices/nyce.js +134 -0
  833. package/devices/nyce.js.map +1 -0
  834. package/devices/onenuo.d.ts +4 -0
  835. package/devices/onenuo.d.ts.map +1 -0
  836. package/devices/onenuo.js +86 -0
  837. package/devices/onenuo.js.map +1 -0
  838. package/devices/onesti.d.ts +4 -0
  839. package/devices/onesti.d.ts.map +1 -0
  840. package/devices/onesti.js +208 -0
  841. package/devices/onesti.js.map +1 -0
  842. package/devices/openlumi.d.ts +4 -0
  843. package/devices/openlumi.d.ts.map +1 -0
  844. package/devices/openlumi.js +62 -0
  845. package/devices/openlumi.js.map +1 -0
  846. package/devices/orvibo.d.ts +4 -0
  847. package/devices/orvibo.d.ts.map +1 -0
  848. package/devices/orvibo.js +391 -0
  849. package/devices/orvibo.js.map +1 -0
  850. package/devices/osram.d.ts +4 -0
  851. package/devices/osram.d.ts.map +1 -0
  852. package/devices/osram.js +516 -0
  853. package/devices/osram.js.map +1 -0
  854. package/devices/oujiabao.d.ts +4 -0
  855. package/devices/oujiabao.d.ts.map +1 -0
  856. package/devices/oujiabao.js +55 -0
  857. package/devices/oujiabao.js.map +1 -0
  858. package/devices/owon.d.ts +4 -0
  859. package/devices/owon.d.ts.map +1 -0
  860. package/devices/owon.js +478 -0
  861. package/devices/owon.js.map +1 -0
  862. package/devices/ozsmartthings.d.ts +4 -0
  863. package/devices/ozsmartthings.d.ts.map +1 -0
  864. package/devices/ozsmartthings.js +48 -0
  865. package/devices/ozsmartthings.js.map +1 -0
  866. package/devices/paul_neuhaus.d.ts +4 -0
  867. package/devices/paul_neuhaus.d.ts.map +1 -0
  868. package/devices/paul_neuhaus.js +194 -0
  869. package/devices/paul_neuhaus.js.map +1 -0
  870. package/devices/paulmann.d.ts +4 -0
  871. package/devices/paulmann.d.ts.map +1 -0
  872. package/devices/paulmann.js +330 -0
  873. package/devices/paulmann.js.map +1 -0
  874. package/devices/peq.d.ts +4 -0
  875. package/devices/peq.d.ts.map +1 -0
  876. package/devices/peq.js +64 -0
  877. package/devices/peq.js.map +1 -0
  878. package/devices/perenio.d.ts +4 -0
  879. package/devices/perenio.d.ts.map +1 -0
  880. package/devices/perenio.js +468 -0
  881. package/devices/perenio.js.map +1 -0
  882. package/devices/philio.d.ts +4 -0
  883. package/devices/philio.d.ts.map +1 -0
  884. package/devices/philio.js +16 -0
  885. package/devices/philio.js.map +1 -0
  886. package/devices/philips.d.ts +4 -0
  887. package/devices/philips.d.ts.map +1 -0
  888. package/devices/philips.js +4051 -0
  889. package/devices/philips.js.map +1 -0
  890. package/devices/plaid.d.ts +4 -0
  891. package/devices/plaid.d.ts.map +1 -0
  892. package/devices/plaid.js +65 -0
  893. package/devices/plaid.js.map +1 -0
  894. package/devices/plugwise.d.ts +4 -0
  895. package/devices/plugwise.d.ts.map +1 -0
  896. package/devices/plugwise.js +210 -0
  897. package/devices/plugwise.js.map +1 -0
  898. package/devices/profalux.d.ts +4 -0
  899. package/devices/profalux.d.ts.map +1 -0
  900. package/devices/profalux.js +191 -0
  901. package/devices/profalux.js.map +1 -0
  902. package/devices/prolight.d.ts +4 -0
  903. package/devices/prolight.d.ts.map +1 -0
  904. package/devices/prolight.js +115 -0
  905. package/devices/prolight.js.map +1 -0
  906. package/devices/pushok.d.ts +4 -0
  907. package/devices/pushok.d.ts.map +1 -0
  908. package/devices/pushok.js +300 -0
  909. package/devices/pushok.js.map +1 -0
  910. package/devices/qa.d.ts +4 -0
  911. package/devices/qa.d.ts.map +1 -0
  912. package/devices/qa.js +295 -0
  913. package/devices/qa.js.map +1 -0
  914. package/devices/qmotion.d.ts +4 -0
  915. package/devices/qmotion.d.ts.map +1 -0
  916. package/devices/qmotion.js +73 -0
  917. package/devices/qmotion.js.map +1 -0
  918. package/devices/qoto.d.ts +4 -0
  919. package/devices/qoto.d.ts.map +1 -0
  920. package/devices/qoto.js +87 -0
  921. package/devices/qoto.js.map +1 -0
  922. package/devices/quotra.d.ts +4 -0
  923. package/devices/quotra.d.ts.map +1 -0
  924. package/devices/quotra.js +22 -0
  925. package/devices/quotra.js.map +1 -0
  926. package/devices/rademacher.d.ts +4 -0
  927. package/devices/rademacher.d.ts.map +1 -0
  928. package/devices/rademacher.js +29 -0
  929. package/devices/rademacher.js.map +1 -0
  930. package/devices/radium.d.ts +4 -0
  931. package/devices/radium.d.ts.map +1 -0
  932. package/devices/radium.js +15 -0
  933. package/devices/radium.js.map +1 -0
  934. package/devices/raex.d.ts +4 -0
  935. package/devices/raex.d.ts.map +1 -0
  936. package/devices/raex.js +15 -0
  937. package/devices/raex.js.map +1 -0
  938. package/devices/rgb_genie.d.ts +4 -0
  939. package/devices/rgb_genie.d.ts.map +1 -0
  940. package/devices/rgb_genie.js +279 -0
  941. package/devices/rgb_genie.js.map +1 -0
  942. package/devices/robb.d.ts +4 -0
  943. package/devices/robb.d.ts.map +1 -0
  944. package/devices/robb.js +449 -0
  945. package/devices/robb.js.map +1 -0
  946. package/devices/roome.d.ts +4 -0
  947. package/devices/roome.d.ts.map +1 -0
  948. package/devices/roome.js +55 -0
  949. package/devices/roome.js.map +1 -0
  950. package/devices/rtx.d.ts +4 -0
  951. package/devices/rtx.d.ts.map +1 -0
  952. package/devices/rtx.js +151 -0
  953. package/devices/rtx.js.map +1 -0
  954. package/devices/salus_controls.d.ts +4 -0
  955. package/devices/salus_controls.d.ts.map +1 -0
  956. package/devices/salus_controls.js +136 -0
  957. package/devices/salus_controls.js.map +1 -0
  958. package/devices/samotech.d.ts +4 -0
  959. package/devices/samotech.d.ts.map +1 -0
  960. package/devices/samotech.js +75 -0
  961. package/devices/samotech.js.map +1 -0
  962. package/devices/saswell.d.ts +4 -0
  963. package/devices/saswell.d.ts.map +1 -0
  964. package/devices/saswell.js +125 -0
  965. package/devices/saswell.js.map +1 -0
  966. package/devices/sber.d.ts +4 -0
  967. package/devices/sber.d.ts.map +1 -0
  968. package/devices/sber.js +66 -0
  969. package/devices/sber.js.map +1 -0
  970. package/devices/scanproducts.d.ts +4 -0
  971. package/devices/scanproducts.d.ts.map +1 -0
  972. package/devices/scanproducts.js +22 -0
  973. package/devices/scanproducts.js.map +1 -0
  974. package/devices/schlage.d.ts +4 -0
  975. package/devices/schlage.d.ts.map +1 -0
  976. package/devices/schlage.js +64 -0
  977. package/devices/schlage.js.map +1 -0
  978. package/devices/schneider_electric.d.ts +4 -0
  979. package/devices/schneider_electric.d.ts.map +1 -0
  980. package/devices/schneider_electric.js +2187 -0
  981. package/devices/schneider_electric.js.map +1 -0
  982. package/devices/schwaiger.d.ts +4 -0
  983. package/devices/schwaiger.d.ts.map +1 -0
  984. package/devices/schwaiger.js +109 -0
  985. package/devices/schwaiger.js.map +1 -0
  986. package/devices/seastar_intelligence.d.ts +4 -0
  987. package/devices/seastar_intelligence.d.ts.map +1 -0
  988. package/devices/seastar_intelligence.js +20 -0
  989. package/devices/seastar_intelligence.js.map +1 -0
  990. package/devices/securifi.d.ts +4 -0
  991. package/devices/securifi.d.ts.map +1 -0
  992. package/devices/securifi.js +83 -0
  993. package/devices/securifi.js.map +1 -0
  994. package/devices/sengled.d.ts +7 -0
  995. package/devices/sengled.d.ts.map +1 -0
  996. package/devices/sengled.js +358 -0
  997. package/devices/sengled.js.map +1 -0
  998. package/devices/sercomm.d.ts +4 -0
  999. package/devices/sercomm.d.ts.map +1 -0
  1000. package/devices/sercomm.js +189 -0
  1001. package/devices/sercomm.js.map +1 -0
  1002. package/devices/shade_control.d.ts +4 -0
  1003. package/devices/shade_control.d.ts.map +1 -0
  1004. package/devices/shade_control.js +65 -0
  1005. package/devices/shade_control.js.map +1 -0
  1006. package/devices/shenzhen_homa.d.ts +4 -0
  1007. package/devices/shenzhen_homa.d.ts.map +1 -0
  1008. package/devices/shenzhen_homa.js +111 -0
  1009. package/devices/shenzhen_homa.js.map +1 -0
  1010. package/devices/shinasystem.d.ts +4 -0
  1011. package/devices/shinasystem.d.ts.map +1 -0
  1012. package/devices/shinasystem.js +961 -0
  1013. package/devices/shinasystem.js.map +1 -0
  1014. package/devices/shyugj.d.ts +4 -0
  1015. package/devices/shyugj.d.ts.map +1 -0
  1016. package/devices/shyugj.js +21 -0
  1017. package/devices/shyugj.js.map +1 -0
  1018. package/devices/siglis.d.ts +4 -0
  1019. package/devices/siglis.d.ts.map +1 -0
  1020. package/devices/siglis.js +457 -0
  1021. package/devices/siglis.js.map +1 -0
  1022. package/devices/sikom.d.ts +4 -0
  1023. package/devices/sikom.d.ts.map +1 -0
  1024. package/devices/sikom.js +68 -0
  1025. package/devices/sikom.js.map +1 -0
  1026. package/devices/sinope.d.ts +4 -0
  1027. package/devices/sinope.d.ts.map +1 -0
  1028. package/devices/sinope.js +1755 -0
  1029. package/devices/sinope.js.map +1 -0
  1030. package/devices/siterwell.d.ts +4 -0
  1031. package/devices/siterwell.d.ts.map +1 -0
  1032. package/devices/siterwell.js +111 -0
  1033. package/devices/siterwell.js.map +1 -0
  1034. package/devices/skydance.d.ts +4 -0
  1035. package/devices/skydance.d.ts.map +1 -0
  1036. package/devices/skydance.js +156 -0
  1037. package/devices/skydance.js.map +1 -0
  1038. package/devices/slv.d.ts +4 -0
  1039. package/devices/slv.d.ts.map +1 -0
  1040. package/devices/slv.js +38 -0
  1041. package/devices/slv.js.map +1 -0
  1042. package/devices/smart9.d.ts +4 -0
  1043. package/devices/smart9.d.ts.map +1 -0
  1044. package/devices/smart9.js +67 -0
  1045. package/devices/smart9.js.map +1 -0
  1046. package/devices/smart_home_pty.d.ts +4 -0
  1047. package/devices/smart_home_pty.d.ts.map +1 -0
  1048. package/devices/smart_home_pty.js +22 -0
  1049. package/devices/smart_home_pty.js.map +1 -0
  1050. package/devices/smartenit.d.ts +4 -0
  1051. package/devices/smartenit.d.ts.map +1 -0
  1052. package/devices/smartenit.js +81 -0
  1053. package/devices/smartenit.js.map +1 -0
  1054. package/devices/smartthings.d.ts +4 -0
  1055. package/devices/smartthings.d.ts.map +1 -0
  1056. package/devices/smartthings.js +527 -0
  1057. package/devices/smartthings.js.map +1 -0
  1058. package/devices/smartwings.d.ts +4 -0
  1059. package/devices/smartwings.d.ts.map +1 -0
  1060. package/devices/smartwings.js +64 -0
  1061. package/devices/smartwings.js.map +1 -0
  1062. package/devices/smlight.d.ts +4 -0
  1063. package/devices/smlight.d.ts.map +1 -0
  1064. package/devices/smlight.js +22 -0
  1065. package/devices/smlight.js.map +1 -0
  1066. package/devices/sohan_electric.d.ts +4 -0
  1067. package/devices/sohan_electric.d.ts.map +1 -0
  1068. package/devices/sohan_electric.js +20 -0
  1069. package/devices/sohan_electric.js.map +1 -0
  1070. package/devices/solaredge.d.ts +4 -0
  1071. package/devices/solaredge.d.ts.map +1 -0
  1072. package/devices/solaredge.js +15 -0
  1073. package/devices/solaredge.js.map +1 -0
  1074. package/devices/soma.d.ts +4 -0
  1075. package/devices/soma.d.ts.map +1 -0
  1076. package/devices/soma.js +15 -0
  1077. package/devices/soma.js.map +1 -0
  1078. package/devices/somfy.d.ts +4 -0
  1079. package/devices/somfy.d.ts.map +1 -0
  1080. package/devices/somfy.js +88 -0
  1081. package/devices/somfy.js.map +1 -0
  1082. package/devices/somgoms.d.ts +4 -0
  1083. package/devices/somgoms.d.ts.map +1 -0
  1084. package/devices/somgoms.js +84 -0
  1085. package/devices/somgoms.js.map +1 -0
  1086. package/devices/sonoff.d.ts +4 -0
  1087. package/devices/sonoff.d.ts.map +1 -0
  1088. package/devices/sonoff.js +1452 -0
  1089. package/devices/sonoff.js.map +1 -0
  1090. package/devices/sowilo.d.ts +4 -0
  1091. package/devices/sowilo.d.ts.map +1 -0
  1092. package/devices/sowilo.js +15 -0
  1093. package/devices/sowilo.js.map +1 -0
  1094. package/devices/spotmau.d.ts +4 -0
  1095. package/devices/spotmau.d.ts.map +1 -0
  1096. package/devices/spotmau.js +42 -0
  1097. package/devices/spotmau.js.map +1 -0
  1098. package/devices/stelpro.d.ts +4 -0
  1099. package/devices/stelpro.d.ts.map +1 -0
  1100. package/devices/stelpro.js +366 -0
  1101. package/devices/stelpro.js.map +1 -0
  1102. package/devices/sunricher.d.ts +4 -0
  1103. package/devices/sunricher.d.ts.map +1 -0
  1104. package/devices/sunricher.js +1308 -0
  1105. package/devices/sunricher.js.map +1 -0
  1106. package/devices/swann.d.ts +4 -0
  1107. package/devices/swann.d.ts.map +1 -0
  1108. package/devices/swann.js +73 -0
  1109. package/devices/swann.js.map +1 -0
  1110. package/devices/sylvania.d.ts +4 -0
  1111. package/devices/sylvania.d.ts.map +1 -0
  1112. package/devices/sylvania.js +226 -0
  1113. package/devices/sylvania.js.map +1 -0
  1114. package/devices/tapestry.d.ts +4 -0
  1115. package/devices/tapestry.d.ts.map +1 -0
  1116. package/devices/tapestry.js +56 -0
  1117. package/devices/tapestry.js.map +1 -0
  1118. package/devices/tci.d.ts +4 -0
  1119. package/devices/tci.d.ts.map +1 -0
  1120. package/devices/tci.js +29 -0
  1121. package/devices/tci.js.map +1 -0
  1122. package/devices/tech.d.ts +4 -0
  1123. package/devices/tech.d.ts.map +1 -0
  1124. package/devices/tech.js +131 -0
  1125. package/devices/tech.js.map +1 -0
  1126. package/devices/technicolor.d.ts +4 -0
  1127. package/devices/technicolor.d.ts.map +1 -0
  1128. package/devices/technicolor.js +102 -0
  1129. package/devices/technicolor.js.map +1 -0
  1130. package/devices/terncy.d.ts +4 -0
  1131. package/devices/terncy.d.ts.map +1 -0
  1132. package/devices/terncy.js +116 -0
  1133. package/devices/terncy.js.map +1 -0
  1134. package/devices/the_light_group.d.ts +4 -0
  1135. package/devices/the_light_group.d.ts.map +1 -0
  1136. package/devices/the_light_group.js +130 -0
  1137. package/devices/the_light_group.js.map +1 -0
  1138. package/devices/third_reality.d.ts +4 -0
  1139. package/devices/third_reality.d.ts.map +1 -0
  1140. package/devices/third_reality.js +569 -0
  1141. package/devices/third_reality.js.map +1 -0
  1142. package/devices/titan_products.d.ts +4 -0
  1143. package/devices/titan_products.d.ts.map +1 -0
  1144. package/devices/titan_products.js +62 -0
  1145. package/devices/titan_products.js.map +1 -0
  1146. package/devices/tlwglobal.d.ts +4 -0
  1147. package/devices/tlwglobal.d.ts.map +1 -0
  1148. package/devices/tlwglobal.js +32 -0
  1149. package/devices/tlwglobal.js.map +1 -0
  1150. package/devices/tplink.d.ts +4 -0
  1151. package/devices/tplink.d.ts.map +1 -0
  1152. package/devices/tplink.js +82 -0
  1153. package/devices/tplink.js.map +1 -0
  1154. package/devices/trust.d.ts +4 -0
  1155. package/devices/trust.d.ts.map +1 -0
  1156. package/devices/trust.js +183 -0
  1157. package/devices/trust.js.map +1 -0
  1158. package/devices/tubeszb.d.ts +4 -0
  1159. package/devices/tubeszb.d.ts.map +1 -0
  1160. package/devices/tubeszb.js +60 -0
  1161. package/devices/tubeszb.js.map +1 -0
  1162. package/devices/tuya.d.ts +4 -0
  1163. package/devices/tuya.d.ts.map +1 -0
  1164. package/devices/tuya.js +13607 -0
  1165. package/devices/tuya.js.map +1 -0
  1166. package/devices/ubisys.d.ts +4 -0
  1167. package/devices/ubisys.d.ts.map +1 -0
  1168. package/devices/ubisys.js +1300 -0
  1169. package/devices/ubisys.js.map +1 -0
  1170. package/devices/uhome.d.ts +4 -0
  1171. package/devices/uhome.d.ts.map +1 -0
  1172. package/devices/uhome.js +64 -0
  1173. package/devices/uhome.js.map +1 -0
  1174. package/devices/universal_electronics_inc.d.ts +4 -0
  1175. package/devices/universal_electronics_inc.d.ts.map +1 -0
  1176. package/devices/universal_electronics_inc.js +186 -0
  1177. package/devices/universal_electronics_inc.js.map +1 -0
  1178. package/devices/vbled.d.ts +4 -0
  1179. package/devices/vbled.d.ts.map +1 -0
  1180. package/devices/vbled.js +15 -0
  1181. package/devices/vbled.js.map +1 -0
  1182. package/devices/vesternet.d.ts +4 -0
  1183. package/devices/vesternet.d.ts.map +1 -0
  1184. package/devices/vesternet.js +330 -0
  1185. package/devices/vesternet.js.map +1 -0
  1186. package/devices/viessmann.d.ts +4 -0
  1187. package/devices/viessmann.d.ts.map +1 -0
  1188. package/devices/viessmann.js +115 -0
  1189. package/devices/viessmann.js.map +1 -0
  1190. package/devices/villeroy_boch.d.ts +4 -0
  1191. package/devices/villeroy_boch.d.ts.map +1 -0
  1192. package/devices/villeroy_boch.js +22 -0
  1193. package/devices/villeroy_boch.js.map +1 -0
  1194. package/devices/vimar.d.ts +4 -0
  1195. package/devices/vimar.d.ts.map +1 -0
  1196. package/devices/vimar.js +137 -0
  1197. package/devices/vimar.js.map +1 -0
  1198. package/devices/visonic.d.ts +4 -0
  1199. package/devices/visonic.d.ts.map +1 -0
  1200. package/devices/visonic.js +138 -0
  1201. package/devices/visonic.js.map +1 -0
  1202. package/devices/vrey.d.ts +4 -0
  1203. package/devices/vrey.d.ts.map +1 -0
  1204. package/devices/vrey.js +18 -0
  1205. package/devices/vrey.js.map +1 -0
  1206. package/devices/wally.d.ts +4 -0
  1207. package/devices/wally.d.ts.map +1 -0
  1208. package/devices/wally.js +64 -0
  1209. package/devices/wally.js.map +1 -0
  1210. package/devices/waxman.d.ts +4 -0
  1211. package/devices/waxman.d.ts.map +1 -0
  1212. package/devices/waxman.js +85 -0
  1213. package/devices/waxman.js.map +1 -0
  1214. package/devices/weiser.d.ts +4 -0
  1215. package/devices/weiser.d.ts.map +1 -0
  1216. package/devices/weiser.js +103 -0
  1217. package/devices/weiser.js.map +1 -0
  1218. package/devices/weten.d.ts +4 -0
  1219. package/devices/weten.d.ts.map +1 -0
  1220. package/devices/weten.js +89 -0
  1221. package/devices/weten.js.map +1 -0
  1222. package/devices/wirenboard.d.ts +4 -0
  1223. package/devices/wirenboard.d.ts.map +1 -0
  1224. package/devices/wirenboard.js +626 -0
  1225. package/devices/wirenboard.js.map +1 -0
  1226. package/devices/wisdom.d.ts +4 -0
  1227. package/devices/wisdom.d.ts.map +1 -0
  1228. package/devices/wisdom.js +15 -0
  1229. package/devices/wisdom.js.map +1 -0
  1230. package/devices/woolley.d.ts +4 -0
  1231. package/devices/woolley.d.ts.map +1 -0
  1232. package/devices/woolley.js +88 -0
  1233. package/devices/woolley.js.map +1 -0
  1234. package/devices/woox.d.ts +4 -0
  1235. package/devices/woox.d.ts.map +1 -0
  1236. package/devices/woox.js +137 -0
  1237. package/devices/woox.js.map +1 -0
  1238. package/devices/wyze.d.ts +4 -0
  1239. package/devices/wyze.d.ts.map +1 -0
  1240. package/devices/wyze.js +63 -0
  1241. package/devices/wyze.js.map +1 -0
  1242. package/devices/xinghuoyuan.d.ts +4 -0
  1243. package/devices/xinghuoyuan.d.ts.map +1 -0
  1244. package/devices/xinghuoyuan.js +15 -0
  1245. package/devices/xinghuoyuan.js.map +1 -0
  1246. package/devices/xyzroe.d.ts +4 -0
  1247. package/devices/xyzroe.d.ts.map +1 -0
  1248. package/devices/xyzroe.js +519 -0
  1249. package/devices/xyzroe.js.map +1 -0
  1250. package/devices/yale.d.ts +4 -0
  1251. package/devices/yale.d.ts.map +1 -0
  1252. package/devices/yale.js +503 -0
  1253. package/devices/yale.js.map +1 -0
  1254. package/devices/yandex.d.ts +4 -0
  1255. package/devices/yandex.d.ts.map +1 -0
  1256. package/devices/yandex.js +410 -0
  1257. package/devices/yandex.js.map +1 -0
  1258. package/devices/ynoa.d.ts +4 -0
  1259. package/devices/ynoa.d.ts.map +1 -0
  1260. package/devices/ynoa.js +113 -0
  1261. package/devices/ynoa.js.map +1 -0
  1262. package/devices/yookee.d.ts +4 -0
  1263. package/devices/yookee.d.ts.map +1 -0
  1264. package/devices/yookee.js +63 -0
  1265. package/devices/yookee.js.map +1 -0
  1266. package/devices/ysrsai.d.ts +4 -0
  1267. package/devices/ysrsai.d.ts.map +1 -0
  1268. package/devices/ysrsai.js +66 -0
  1269. package/devices/ysrsai.js.map +1 -0
  1270. package/devices/zemismart.d.ts +4 -0
  1271. package/devices/zemismart.d.ts.map +1 -0
  1272. package/devices/zemismart.js +405 -0
  1273. package/devices/zemismart.js.map +1 -0
  1274. package/devices/zen.d.ts +4 -0
  1275. package/devices/zen.d.ts.map +1 -0
  1276. package/devices/zen.js +96 -0
  1277. package/devices/zen.js.map +1 -0
  1278. package/devices/zigbeetlc.d.ts +13 -0
  1279. package/devices/zigbeetlc.d.ts.map +1 -0
  1280. package/devices/zigbeetlc.js +201 -0
  1281. package/devices/zigbeetlc.js.map +1 -0
  1282. package/devices/zipato.d.ts +4 -0
  1283. package/devices/zipato.d.ts.map +1 -0
  1284. package/devices/zipato.js +15 -0
  1285. package/devices/zipato.js.map +1 -0
  1286. package/index.d.ts +21 -0
  1287. package/index.d.ts.map +1 -0
  1288. package/index.js +488 -0
  1289. package/index.js.map +1 -0
  1290. package/lib/color.d.ts +272 -0
  1291. package/lib/color.d.ts.map +1 -0
  1292. package/lib/color.js +765 -0
  1293. package/lib/color.js.map +1 -0
  1294. package/lib/configureKey.d.ts +3 -0
  1295. package/lib/configureKey.d.ts.map +1 -0
  1296. package/lib/configureKey.js +939 -0
  1297. package/lib/configureKey.js.map +1 -0
  1298. package/lib/constants.d.ts +68 -0
  1299. package/lib/constants.d.ts.map +1 -0
  1300. package/lib/constants.js +293 -0
  1301. package/lib/constants.js.map +1 -0
  1302. package/lib/develco.d.ts +15 -0
  1303. package/lib/develco.d.ts.map +1 -0
  1304. package/lib/develco.js +183 -0
  1305. package/lib/develco.js.map +1 -0
  1306. package/lib/ewelink.d.ts +30 -0
  1307. package/lib/ewelink.d.ts.map +1 -0
  1308. package/lib/ewelink.js +718 -0
  1309. package/lib/ewelink.js.map +1 -0
  1310. package/lib/exposes.d.ts +344 -0
  1311. package/lib/exposes.d.ts.map +1 -0
  1312. package/lib/exposes.js +1065 -0
  1313. package/lib/exposes.js.map +1 -0
  1314. package/lib/generateDefinition.d.ts +6 -0
  1315. package/lib/generateDefinition.d.ts.map +1 -0
  1316. package/lib/generateDefinition.js +356 -0
  1317. package/lib/generateDefinition.js.map +1 -0
  1318. package/lib/ikea.d.ts +39 -0
  1319. package/lib/ikea.d.ts.map +1 -0
  1320. package/lib/ikea.js +776 -0
  1321. package/lib/ikea.js.map +1 -0
  1322. package/lib/kelvinToXy.d.ts +8 -0
  1323. package/lib/kelvinToXy.d.ts.map +1 -0
  1324. package/lib/kelvinToXy.js +1914 -0
  1325. package/lib/kelvinToXy.js.map +1 -0
  1326. package/lib/ledvance.d.ts +20 -0
  1327. package/lib/ledvance.d.ts.map +1 -0
  1328. package/lib/ledvance.js +103 -0
  1329. package/lib/ledvance.js.map +1 -0
  1330. package/lib/legacy.d.ts +5128 -0
  1331. package/lib/legacy.d.ts.map +1 -0
  1332. package/lib/legacy.js +6603 -0
  1333. package/lib/legacy.js.map +1 -0
  1334. package/lib/legrand.d.ts +69 -0
  1335. package/lib/legrand.d.ts.map +1 -0
  1336. package/lib/legrand.js +282 -0
  1337. package/lib/legrand.js.map +1 -0
  1338. package/lib/light.d.ts +6 -0
  1339. package/lib/light.d.ts.map +1 -0
  1340. package/lib/light.js +146 -0
  1341. package/lib/light.js.map +1 -0
  1342. package/lib/logger.d.ts +4 -0
  1343. package/lib/logger.d.ts.map +1 -0
  1344. package/lib/logger.js +14 -0
  1345. package/lib/logger.js.map +1 -0
  1346. package/lib/lumi.d.ts +953 -0
  1347. package/lib/lumi.d.ts.map +1 -0
  1348. package/lib/lumi.js +4973 -0
  1349. package/lib/lumi.js.map +1 -0
  1350. package/lib/modernExtend.d.ts +325 -0
  1351. package/lib/modernExtend.d.ts.map +1 -0
  1352. package/lib/modernExtend.js +1995 -0
  1353. package/lib/modernExtend.js.map +1 -0
  1354. package/lib/ota.d.ts +71 -0
  1355. package/lib/ota.d.ts.map +1 -0
  1356. package/lib/ota.js +663 -0
  1357. package/lib/ota.js.map +1 -0
  1358. package/lib/philips.d.ts +84 -0
  1359. package/lib/philips.d.ts.map +1 -0
  1360. package/lib/philips.js +657 -0
  1361. package/lib/philips.js.map +1 -0
  1362. package/lib/reporting.d.ts +58 -0
  1363. package/lib/reporting.d.ts.map +1 -0
  1364. package/lib/reporting.js +336 -0
  1365. package/lib/reporting.js.map +1 -0
  1366. package/lib/store.d.ts +7 -0
  1367. package/lib/store.d.ts.map +1 -0
  1368. package/lib/store.js +56 -0
  1369. package/lib/store.js.map +1 -0
  1370. package/lib/sunricher.d.ts +13 -0
  1371. package/lib/sunricher.d.ts.map +1 -0
  1372. package/lib/sunricher.js +14 -0
  1373. package/lib/sunricher.js.map +1 -0
  1374. package/lib/tuya.d.ts +764 -0
  1375. package/lib/tuya.d.ts.map +1 -0
  1376. package/lib/tuya.js +2425 -0
  1377. package/lib/tuya.js.map +1 -0
  1378. package/lib/types.d.ts +433 -0
  1379. package/lib/types.d.ts.map +1 -0
  1380. package/lib/types.js +4 -0
  1381. package/lib/types.js.map +1 -0
  1382. package/lib/ubisys.d.ts +19 -0
  1383. package/lib/ubisys.d.ts.map +1 -0
  1384. package/lib/ubisys.js +293 -0
  1385. package/lib/ubisys.js.map +1 -0
  1386. package/lib/utils.d.ts +93 -0
  1387. package/lib/utils.d.ts.map +1 -0
  1388. package/lib/utils.js +790 -0
  1389. package/lib/utils.js.map +1 -0
  1390. package/lib/zosung.d.ts +52 -0
  1391. package/lib/zosung.d.ts.map +1 -0
  1392. package/lib/zosung.js +256 -0
  1393. package/lib/zosung.js.map +1 -0
  1394. package/package.json +2 -2
@@ -0,0 +1,1464 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __importDefault = (this && this.__importDefault) || function (mod) {
36
+ return (mod && mod.__esModule) ? mod : { "default": mod };
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ const zigbee_herdsman_1 = require("zigbee-herdsman");
40
+ const fromZigbee_1 = __importDefault(require("../converters/fromZigbee"));
41
+ const toZigbee_1 = __importDefault(require("../converters/toZigbee"));
42
+ const constants = __importStar(require("../lib/constants"));
43
+ const exposes = __importStar(require("../lib/exposes"));
44
+ const modernExtend_1 = require("../lib/modernExtend");
45
+ const reporting = __importStar(require("../lib/reporting"));
46
+ const globalStore = __importStar(require("../lib/store"));
47
+ const tuya = __importStar(require("../lib/tuya"));
48
+ const utils = __importStar(require("../lib/utils"));
49
+ const ea = exposes.access;
50
+ const e = exposes.presets;
51
+ const sunricherManufacturer = { manufacturerCode: zigbee_herdsman_1.Zcl.ManufacturerCode.SHENZHEN_SUNRICHER_TECHNOLOGY_LTD };
52
+ const fzLocal = {
53
+ namron_panelheater: {
54
+ cluster: 'hvacThermostat',
55
+ type: ['attributeReport', 'readResponse'],
56
+ convert: (model, msg, publish, options, meta) => {
57
+ const result = {};
58
+ const data = msg.data;
59
+ if (data[0x1000] !== undefined) {
60
+ // OperateDisplayBrightnesss
61
+ result.display_brightnesss = data[0x1000];
62
+ }
63
+ if (data[0x1001] !== undefined) {
64
+ // DisplayAutoOffActivation
65
+ const lookup = { 0: 'deactivated', 1: 'activated' };
66
+ result.display_auto_off = utils.getFromLookup(data[0x1001], lookup);
67
+ }
68
+ if (data[0x1004] !== undefined) {
69
+ // PowerUpStatus
70
+ const lookup = { 0: 'manual', 1: 'last_state' };
71
+ result.power_up_status = utils.getFromLookup(data[0x1004], lookup);
72
+ }
73
+ if (data[0x1009] !== undefined) {
74
+ // WindowOpenCheck
75
+ const lookup = { 0: 'enable', 1: 'disable' };
76
+ result.window_open_check = utils.getFromLookup(data[0x1009], lookup);
77
+ }
78
+ if (data[0x100a] !== undefined) {
79
+ // Hysterersis
80
+ result.hysterersis = utils.precisionRound(data[0x100a], 2) / 10;
81
+ }
82
+ return result;
83
+ },
84
+ },
85
+ namron_thermostat2: {
86
+ cluster: 'hvacThermostat',
87
+ type: ['attributeReport', 'readResponse'],
88
+ options: [exposes.options.local_temperature_based_on_sensor()],
89
+ convert: (model, msg, publish, options, meta) => {
90
+ const runningModeStateMap = { 0: 0, 3: 2, 4: 5 };
91
+ // override mode "idle" - not a supported running mode
92
+ if (msg.data['runningMode'] == 0x10)
93
+ msg.data['runningMode'] = 0;
94
+ // map running *mode* to *state*, as that's what used
95
+ // in homeAssistant climate ui card (red background)
96
+ if (msg.data['runningMode'] !== undefined)
97
+ msg.data['runningState'] = runningModeStateMap[msg.data['runningMode']];
98
+ return fromZigbee_1.default.thermostat.convert(model, msg, publish, options, meta); // as KeyValue;
99
+ },
100
+ },
101
+ };
102
+ const tzLocal = {
103
+ namron_panelheater: {
104
+ key: ['display_brightnesss', 'display_auto_off', 'power_up_status', 'window_open_check', 'hysterersis'],
105
+ convertSet: async (entity, key, value, meta) => {
106
+ if (key === 'display_brightnesss') {
107
+ const payload = { 0x1000: { value: value, type: zigbee_herdsman_1.Zcl.DataType.ENUM8 } };
108
+ await entity.write('hvacThermostat', payload, sunricherManufacturer);
109
+ }
110
+ else if (key === 'display_auto_off') {
111
+ const lookup = { deactivated: 0, activated: 1 };
112
+ const payload = { 0x1001: { value: utils.getFromLookup(value, lookup), type: zigbee_herdsman_1.Zcl.DataType.ENUM8 } };
113
+ await entity.write('hvacThermostat', payload, sunricherManufacturer);
114
+ }
115
+ else if (key === 'power_up_status') {
116
+ const lookup = { manual: 0, last_state: 1 };
117
+ const payload = { 0x1004: { value: utils.getFromLookup(value, lookup), type: zigbee_herdsman_1.Zcl.DataType.ENUM8 } };
118
+ await entity.write('hvacThermostat', payload, sunricherManufacturer);
119
+ }
120
+ else if (key === 'window_open_check') {
121
+ const lookup = { enable: 0, disable: 1 };
122
+ const payload = { 0x1009: { value: utils.getFromLookup(value, lookup), type: zigbee_herdsman_1.Zcl.DataType.ENUM8 } };
123
+ await entity.write('hvacThermostat', payload, sunricherManufacturer);
124
+ }
125
+ else if (key === 'hysterersis') {
126
+ const payload = { 0x100a: { value: utils.toNumber(value, 'hysterersis') * 10, type: 0x20 } };
127
+ await entity.write('hvacThermostat', payload, sunricherManufacturer);
128
+ }
129
+ },
130
+ convertGet: async (entity, key, meta) => {
131
+ switch (key) {
132
+ case 'display_brightnesss':
133
+ await entity.read('hvacThermostat', [0x1000], sunricherManufacturer);
134
+ break;
135
+ case 'display_auto_off':
136
+ await entity.read('hvacThermostat', [0x1001], sunricherManufacturer);
137
+ break;
138
+ case 'power_up_status':
139
+ await entity.read('hvacThermostat', [0x1004], sunricherManufacturer);
140
+ break;
141
+ case 'window_open_check':
142
+ await entity.read('hvacThermostat', [0x1009], sunricherManufacturer);
143
+ break;
144
+ case 'hysterersis':
145
+ await entity.read('hvacThermostat', [0x100a], sunricherManufacturer);
146
+ break;
147
+ default: // Unknown key
148
+ throw new Error(`Unhandled key toZigbee.namron_panelheater.convertGet ${key}`);
149
+ }
150
+ },
151
+ },
152
+ };
153
+ const definitions = [
154
+ {
155
+ zigbeeModel: ['3308431'],
156
+ model: '3308431',
157
+ vendor: 'Namron',
158
+ description: 'Luna ceiling light',
159
+ extend: [(0, modernExtend_1.light)({ colorTemp: { range: [153, 370] } })],
160
+ },
161
+ {
162
+ zigbeeModel: ['3802967'],
163
+ model: '3802967',
164
+ vendor: 'Namron',
165
+ description: 'Led bulb 6w RGBW',
166
+ extend: [(0, modernExtend_1.light)({ colorTemp: { range: [153, 555] }, color: true })],
167
+ },
168
+ {
169
+ zigbeeModel: ['4512700'],
170
+ model: '4512700',
171
+ vendor: 'Namron',
172
+ description: 'Zigbee dimmer 400W',
173
+ ota: true,
174
+ extend: [(0, modernExtend_1.light)({ configureReporting: true })],
175
+ },
176
+ {
177
+ zigbeeModel: ['4512760'],
178
+ model: '4512760',
179
+ vendor: 'Namron',
180
+ description: 'Zigbee dimmer 400W',
181
+ ota: true,
182
+ extend: [(0, modernExtend_1.light)({ configureReporting: true })],
183
+ },
184
+ {
185
+ zigbeeModel: ['4512708'],
186
+ model: '4512708',
187
+ vendor: 'Namron',
188
+ description: 'Zigbee LED dimmer',
189
+ extend: [(0, modernExtend_1.light)({ configureReporting: true })],
190
+ },
191
+ {
192
+ zigbeeModel: ['4512766'],
193
+ model: '4512766',
194
+ vendor: 'Namron',
195
+ description: 'Zigbee smart plug 16A',
196
+ ota: true,
197
+ extend: [(0, modernExtend_1.onOff)(), (0, modernExtend_1.electricityMeter)()],
198
+ },
199
+ {
200
+ zigbeeModel: ['4512767'],
201
+ model: '4512767',
202
+ vendor: 'Namron',
203
+ description: 'Zigbee smart plug 16A',
204
+ ota: true,
205
+ extend: [(0, modernExtend_1.onOff)(), (0, modernExtend_1.electricityMeter)()],
206
+ },
207
+ {
208
+ zigbeeModel: ['1402767'],
209
+ model: '1402767',
210
+ vendor: 'Namron',
211
+ description: 'Zigbee LED dimmer',
212
+ extend: [(0, modernExtend_1.light)({ effect: false, configureReporting: true }), (0, modernExtend_1.forcePowerSource)({ powerSource: 'Mains (single phase)' })],
213
+ meta: { disableDefaultResponse: true },
214
+ },
215
+ {
216
+ zigbeeModel: ['1402768'],
217
+ model: '1402768',
218
+ vendor: 'Namron',
219
+ description: 'Zigbee LED dimmer TW 250W',
220
+ extend: [(0, modernExtend_1.light)({ effect: false, configureReporting: true, colorTemp: { range: [250, 65279] } })],
221
+ },
222
+ {
223
+ zigbeeModel: ['4512733'],
224
+ model: '4512733',
225
+ vendor: 'Namron',
226
+ description: 'ZigBee dimmer 2-pol 400W',
227
+ extend: [(0, modernExtend_1.light)({ configureReporting: true })],
228
+ },
229
+ {
230
+ zigbeeModel: ['4512704'],
231
+ model: '4512704',
232
+ vendor: 'Namron',
233
+ description: 'Zigbee switch 400W',
234
+ extend: [(0, modernExtend_1.onOff)()],
235
+ ota: true,
236
+ },
237
+ {
238
+ zigbeeModel: ['1402755'],
239
+ model: '1402755',
240
+ vendor: 'Namron',
241
+ description: 'ZigBee LED dimmer',
242
+ extend: [(0, modernExtend_1.light)({ configureReporting: true })],
243
+ },
244
+ {
245
+ zigbeeModel: ['4512703'],
246
+ model: '4512703',
247
+ vendor: 'Namron',
248
+ description: 'Zigbee 4 channel switch K8 (white)',
249
+ fromZigbee: [fromZigbee_1.default.command_on, fromZigbee_1.default.command_off, fromZigbee_1.default.battery, fromZigbee_1.default.command_move, fromZigbee_1.default.command_stop],
250
+ exposes: [
251
+ e.battery(),
252
+ e.action([
253
+ 'on_l1',
254
+ 'off_l1',
255
+ 'brightness_move_up_l1',
256
+ 'brightness_move_down_l1',
257
+ 'brightness_stop_l1',
258
+ 'on_l2',
259
+ 'off_l2',
260
+ 'brightness_move_up_l2',
261
+ 'brightness_move_down_l2',
262
+ 'brightness_stop_l2',
263
+ 'on_l3',
264
+ 'off_l3',
265
+ 'brightness_move_up_l3',
266
+ 'brightness_move_down_l3',
267
+ 'brightness_stop_l3',
268
+ 'on_l4',
269
+ 'off_l4',
270
+ 'brightness_move_up_l4',
271
+ 'brightness_move_down_l4',
272
+ 'brightness_stop_l4',
273
+ ]),
274
+ ],
275
+ toZigbee: [],
276
+ meta: { multiEndpoint: true },
277
+ endpoint: (device) => {
278
+ return { l1: 1, l2: 2, l3: 3, l4: 4 };
279
+ },
280
+ ota: true,
281
+ },
282
+ {
283
+ zigbeeModel: ['4512721'],
284
+ model: '4512721',
285
+ vendor: 'Namron',
286
+ description: 'Zigbee 4 channel switch K8 (black)',
287
+ fromZigbee: [fromZigbee_1.default.command_on, fromZigbee_1.default.command_off, fromZigbee_1.default.battery, fromZigbee_1.default.command_move, fromZigbee_1.default.command_stop],
288
+ toZigbee: [],
289
+ meta: { multiEndpoint: true },
290
+ exposes: [
291
+ e.battery(),
292
+ e.action([
293
+ 'on_l1',
294
+ 'off_l1',
295
+ 'brightness_move_up_l1',
296
+ 'brightness_move_down_l1',
297
+ 'brightness_stop_l1',
298
+ 'on_l2',
299
+ 'off_l2',
300
+ 'brightness_move_up_l2',
301
+ 'brightness_move_down_l2',
302
+ 'brightness_stop_l2',
303
+ 'on_l3',
304
+ 'off_l3',
305
+ 'brightness_move_up_l3',
306
+ 'brightness_move_down_l3',
307
+ 'brightness_stop_l3',
308
+ 'on_l4',
309
+ 'off_l4',
310
+ 'brightness_move_up_l4',
311
+ 'brightness_move_down_l4',
312
+ 'brightness_stop_l4',
313
+ ]),
314
+ ],
315
+ endpoint: (device) => {
316
+ return { l1: 1, l2: 2, l3: 3, l4: 4 };
317
+ },
318
+ ota: true,
319
+ },
320
+ {
321
+ zigbeeModel: ['4512701'],
322
+ model: '4512701',
323
+ vendor: 'Namron',
324
+ description: 'Zigbee 1 channel switch K2 (White)',
325
+ fromZigbee: [fromZigbee_1.default.command_on, fromZigbee_1.default.command_off, fromZigbee_1.default.battery, fromZigbee_1.default.command_move, fromZigbee_1.default.command_stop],
326
+ exposes: [e.battery(), e.action(['on', 'off', 'brightness_move_up', 'brightness_move_down', 'brightness_stop'])],
327
+ toZigbee: [],
328
+ },
329
+ {
330
+ zigbeeModel: ['4512728'],
331
+ model: '4512728',
332
+ vendor: 'Namron',
333
+ description: 'Zigbee 1 channel switch K2 (Black)',
334
+ fromZigbee: [fromZigbee_1.default.command_on, fromZigbee_1.default.command_off, fromZigbee_1.default.battery, fromZigbee_1.default.command_move, fromZigbee_1.default.command_stop],
335
+ exposes: [e.battery(), e.action(['on', 'off', 'brightness_move_up', 'brightness_move_down', 'brightness_stop'])],
336
+ toZigbee: [],
337
+ },
338
+ {
339
+ zigbeeModel: ['1402769'],
340
+ model: '1402769',
341
+ vendor: 'Namron',
342
+ description: 'ZigBee LED dimmer',
343
+ extend: [(0, modernExtend_1.light)({ configureReporting: true }), (0, modernExtend_1.forcePowerSource)({ powerSource: 'Mains (single phase)' })],
344
+ },
345
+ {
346
+ zigbeeModel: ['4512702'],
347
+ model: '4512702',
348
+ vendor: 'Namron',
349
+ description: 'Zigbee 1 channel switch K4',
350
+ fromZigbee: [fromZigbee_1.default.command_on, fromZigbee_1.default.command_off, fromZigbee_1.default.battery, fromZigbee_1.default.command_move, fromZigbee_1.default.command_stop, fromZigbee_1.default.command_step],
351
+ exposes: [
352
+ e.battery(),
353
+ e.action(['on', 'off', 'brightness_move_up', 'brightness_move_down', 'brightness_stop', 'brightness_step_up', 'brightness_step_down']),
354
+ ],
355
+ toZigbee: [],
356
+ },
357
+ {
358
+ zigbeeModel: ['4512719'],
359
+ model: '4512719',
360
+ vendor: 'Namron',
361
+ description: 'Zigbee 2 channel switch K4 (white)',
362
+ fromZigbee: [fromZigbee_1.default.command_on, fromZigbee_1.default.command_off, fromZigbee_1.default.battery, fromZigbee_1.default.command_move, fromZigbee_1.default.command_stop],
363
+ meta: { multiEndpoint: true },
364
+ exposes: [
365
+ e.battery(),
366
+ e.action([
367
+ 'on_l1',
368
+ 'off_l1',
369
+ 'brightness_move_up_l1',
370
+ 'brightness_move_down_l1',
371
+ 'brightness_stop_l1',
372
+ 'on_l2',
373
+ 'off_l2',
374
+ 'brightness_move_up_l2',
375
+ 'brightness_move_down_l2',
376
+ 'brightness_stop_l2',
377
+ ]),
378
+ ],
379
+ toZigbee: [],
380
+ endpoint: (device) => {
381
+ return { l1: 1, l2: 2 };
382
+ },
383
+ ota: true,
384
+ },
385
+ {
386
+ fingerprint: [{ modelID: 'DIM Lighting', manufacturerName: 'Namron As' }],
387
+ model: '4512707',
388
+ vendor: 'Namron',
389
+ description: 'Zigbee LED-Controller',
390
+ extend: [(0, modernExtend_1.light)()],
391
+ },
392
+ {
393
+ zigbeeModel: ['4512726'],
394
+ model: '4512726',
395
+ vendor: 'Namron',
396
+ description: 'Zigbee 4 in 1 dimmer',
397
+ fromZigbee: [
398
+ fromZigbee_1.default.battery,
399
+ fromZigbee_1.default.command_on,
400
+ fromZigbee_1.default.command_off,
401
+ fromZigbee_1.default.command_move_to_level,
402
+ fromZigbee_1.default.command_move_to_color_temp,
403
+ fromZigbee_1.default.command_move_to_hue,
404
+ fromZigbee_1.default.ignore_genOta,
405
+ ],
406
+ toZigbee: [],
407
+ exposes: [e.battery(), e.battery_voltage(), e.action(['on', 'off', 'brightness_move_to_level', 'color_temperature_move', 'move_to_hue'])],
408
+ meta: { battery: { dontDividePercentage: true } },
409
+ configure: async (device, coordinatorEndpoint) => {
410
+ const endpoint = device.getEndpoint(1);
411
+ const binds = ['genBasic', 'genPowerCfg', 'genIdentify', 'haDiagnostic', 'genOta'];
412
+ await reporting.bind(endpoint, coordinatorEndpoint, binds);
413
+ await reporting.batteryPercentageRemaining(endpoint);
414
+ await reporting.batteryVoltage(endpoint);
415
+ },
416
+ ota: true,
417
+ },
418
+ {
419
+ zigbeeModel: ['4512729'],
420
+ model: '4512729',
421
+ vendor: 'Namron',
422
+ description: 'Zigbee 2 channel switch K4 (black)',
423
+ fromZigbee: [fromZigbee_1.default.command_on, fromZigbee_1.default.command_off, fromZigbee_1.default.battery, fromZigbee_1.default.command_move, fromZigbee_1.default.command_stop],
424
+ meta: { multiEndpoint: true },
425
+ exposes: [
426
+ e.battery(),
427
+ e.action([
428
+ 'on_l1',
429
+ 'off_l1',
430
+ 'brightness_move_up_l1',
431
+ 'brightness_move_down_l1',
432
+ 'brightness_stop_l1',
433
+ 'on_l2',
434
+ 'off_l2',
435
+ 'brightness_move_up_l2',
436
+ 'brightness_move_down_l2',
437
+ 'brightness_stop_l2',
438
+ ]),
439
+ ],
440
+ toZigbee: [],
441
+ endpoint: (device) => {
442
+ return { l1: 1, l2: 2 };
443
+ },
444
+ ota: true,
445
+ },
446
+ {
447
+ zigbeeModel: ['4512706'],
448
+ model: '4512706',
449
+ vendor: 'Namron',
450
+ description: 'Remote control',
451
+ fromZigbee: [
452
+ fromZigbee_1.default.command_on,
453
+ fromZigbee_1.default.command_off,
454
+ fromZigbee_1.default.command_step,
455
+ fromZigbee_1.default.command_step_color_temperature,
456
+ fromZigbee_1.default.command_recall,
457
+ fromZigbee_1.default.command_move_to_color_temp,
458
+ fromZigbee_1.default.battery,
459
+ fromZigbee_1.default.command_move_to_hue,
460
+ ],
461
+ exposes: [
462
+ e.battery(),
463
+ e.action([
464
+ 'on',
465
+ 'off',
466
+ 'brightness_step_up',
467
+ 'brightness_step_down',
468
+ 'color_temperature_step_up',
469
+ 'color_temperature_step_down',
470
+ 'recall_*',
471
+ 'color_temperature_move',
472
+ 'move_to_hue_l1',
473
+ 'move_to_hue_l2',
474
+ 'move_to_hue_l3',
475
+ 'move_to_hue_l4',
476
+ ]),
477
+ ],
478
+ toZigbee: [],
479
+ meta: { multiEndpoint: true },
480
+ endpoint: (device) => {
481
+ return { l1: 1, l2: 2, l3: 3, l4: 4 };
482
+ },
483
+ },
484
+ {
485
+ zigbeeModel: ['4512705'],
486
+ model: '4512705',
487
+ vendor: 'Namron',
488
+ description: 'Zigbee 4 channel remote control',
489
+ fromZigbee: [fromZigbee_1.default.command_on, fromZigbee_1.default.command_off, fromZigbee_1.default.battery, fromZigbee_1.default.command_move, fromZigbee_1.default.command_stop, fromZigbee_1.default.command_recall],
490
+ toZigbee: [],
491
+ ota: true,
492
+ exposes: [
493
+ e.battery(),
494
+ e.action([
495
+ 'on_l1',
496
+ 'off_l1',
497
+ 'brightness_move_up_l1',
498
+ 'brightness_move_down_l1',
499
+ 'brightness_stop_l1',
500
+ 'on_l2',
501
+ 'off_l2',
502
+ 'brightness_move_up_l2',
503
+ 'brightness_move_down_l2',
504
+ 'brightness_stop_l2',
505
+ 'on_l3',
506
+ 'off_l3',
507
+ 'brightness_move_up_l3',
508
+ 'brightness_move_down_l3',
509
+ 'brightness_stop_l3',
510
+ 'on_l4',
511
+ 'off_l4',
512
+ 'brightness_move_up_l4',
513
+ 'brightness_move_down_l4',
514
+ 'brightness_stop_l4',
515
+ 'recall_*',
516
+ ]),
517
+ ],
518
+ meta: { multiEndpoint: true },
519
+ endpoint: (device) => {
520
+ return { l1: 1, l2: 2, l3: 3, l4: 4 };
521
+ },
522
+ },
523
+ {
524
+ zigbeeModel: ['3802960'],
525
+ model: '3802960',
526
+ vendor: 'Namron',
527
+ description: 'LED 9W DIM E27',
528
+ extend: [(0, modernExtend_1.light)()],
529
+ },
530
+ {
531
+ zigbeeModel: ['3802961'],
532
+ model: '3802961',
533
+ vendor: 'Namron',
534
+ description: 'LED 9W CCT E27',
535
+ extend: [(0, modernExtend_1.light)({ colorTemp: { range: [153, 370] } })],
536
+ },
537
+ {
538
+ zigbeeModel: ['3802962'],
539
+ model: '3802962',
540
+ vendor: 'Namron',
541
+ description: 'LED 9W RGBW E27',
542
+ extend: [(0, modernExtend_1.light)({ colorTemp: { range: undefined }, color: true, turnsOffAtBrightness1: true })],
543
+ },
544
+ {
545
+ zigbeeModel: ['3802963'],
546
+ model: '3802963',
547
+ vendor: 'Namron',
548
+ description: 'LED 5,3W DIM E14',
549
+ extend: [(0, modernExtend_1.light)()],
550
+ },
551
+ {
552
+ zigbeeModel: ['3802964'],
553
+ model: '3802964',
554
+ vendor: 'Namron',
555
+ description: 'LED 5,3W CCT E14',
556
+ extend: [(0, modernExtend_1.light)({ colorTemp: { range: undefined } })],
557
+ },
558
+ {
559
+ zigbeeModel: ['3802965'],
560
+ model: '3802965',
561
+ vendor: 'Namron',
562
+ description: 'LED 4,8W DIM GU10',
563
+ extend: [(0, modernExtend_1.light)()],
564
+ },
565
+ {
566
+ zigbeeModel: ['3802966'],
567
+ model: '3802966',
568
+ vendor: 'Namron',
569
+ description: 'LED 4.8W CCT GU10',
570
+ extend: [(0, modernExtend_1.light)({ colorTemp: { range: [153, 370] } })],
571
+ },
572
+ {
573
+ zigbeeModel: ['89665'],
574
+ model: '89665',
575
+ vendor: 'Namron',
576
+ description: 'LED Strip RGB+W (5m) IP20',
577
+ extend: [(0, modernExtend_1.light)({ colorTemp: { range: undefined }, color: true, turnsOffAtBrightness1: true })],
578
+ },
579
+ {
580
+ zigbeeModel: ['4512737', '4512738'],
581
+ model: '4512737/4512738',
582
+ vendor: 'Namron',
583
+ description: 'Touch thermostat',
584
+ fromZigbee: [fromZigbee_1.default.thermostat, fromZigbee_1.default.namron_thermostat, fromZigbee_1.default.metering, fromZigbee_1.default.electrical_measurement, fromZigbee_1.default.namron_hvac_user_interface],
585
+ toZigbee: [
586
+ toZigbee_1.default.thermostat_occupied_heating_setpoint,
587
+ toZigbee_1.default.thermostat_unoccupied_heating_setpoint,
588
+ toZigbee_1.default.thermostat_occupancy,
589
+ toZigbee_1.default.thermostat_local_temperature_calibration,
590
+ toZigbee_1.default.thermostat_local_temperature,
591
+ toZigbee_1.default.thermostat_outdoor_temperature,
592
+ toZigbee_1.default.thermostat_system_mode,
593
+ toZigbee_1.default.thermostat_control_sequence_of_operation,
594
+ toZigbee_1.default.thermostat_running_state,
595
+ toZigbee_1.default.namron_thermostat_child_lock,
596
+ toZigbee_1.default.namron_thermostat,
597
+ ],
598
+ exposes: [
599
+ e.local_temperature(),
600
+ e.numeric('outdoor_temperature', ea.STATE_GET).withUnit('°C').withDescription('Current temperature measured from the floor sensor'),
601
+ e
602
+ .climate()
603
+ .withSetpoint('occupied_heating_setpoint', 0, 40, 0.1)
604
+ .withLocalTemperature()
605
+ .withLocalTemperatureCalibration(-3, 3, 0.1)
606
+ .withSystemMode(['off', 'auto', 'dry', 'heat'])
607
+ .withRunningState(['idle', 'heat']),
608
+ e.binary('away_mode', ea.ALL, 'ON', 'OFF').withDescription('Enable/disable away mode'),
609
+ e.binary('child_lock', ea.ALL, 'LOCK', 'UNLOCK').withDescription('Enables/disables physical input on the device'),
610
+ e.power(),
611
+ e.current(),
612
+ e.voltage(),
613
+ e.energy(),
614
+ e.enum('lcd_brightness', ea.ALL, ['low', 'mid', 'high']).withDescription('OLED brightness when operating the buttons. Default: Medium.'),
615
+ e.enum('button_vibration_level', ea.ALL, ['off', 'low', 'high']).withDescription('Key beep volume and vibration level. Default: Low.'),
616
+ e
617
+ .enum('floor_sensor_type', ea.ALL, ['10k', '15k', '50k', '100k', '12k'])
618
+ .withDescription('Type of the external floor sensor. Default: NTC 10K/25.'),
619
+ e.enum('sensor', ea.ALL, ['air', 'floor', 'both']).withDescription('The sensor used for heat control. Default: Room Sensor.'),
620
+ e.enum('powerup_status', ea.ALL, ['default', 'last_status']).withDescription('The mode after a power reset. Default: Previous Mode.'),
621
+ e
622
+ .numeric('floor_sensor_calibration', ea.ALL)
623
+ .withUnit('°C')
624
+ .withValueMin(-3)
625
+ .withValueMax(3)
626
+ .withValueStep(0.1)
627
+ .withDescription('The tempearatue calibration for the external floor sensor, between -3 and 3 in 0.1°C. Default: 0.'),
628
+ e
629
+ .numeric('dry_time', ea.ALL)
630
+ .withUnit('min')
631
+ .withValueMin(5)
632
+ .withValueMax(100)
633
+ .withDescription('The duration of Dry Mode, between 5 and 100 minutes. Default: 5.'),
634
+ e.enum('mode_after_dry', ea.ALL, ['off', 'manual', 'auto', 'away']).withDescription('The mode after Dry Mode. Default: Auto.'),
635
+ e.enum('temperature_display', ea.ALL, ['room', 'floor']).withDescription('The temperature on the display. Default: Room Temperature.'),
636
+ e
637
+ .numeric('window_open_check', ea.ALL)
638
+ .withUnit('°C')
639
+ .withValueMin(0)
640
+ .withValueMax(4)
641
+ .withValueStep(0.5)
642
+ .withDescription('The threshold to detect window open, between 1.5 and 4 in 0.5 °C. Default: 0 (disabled).'),
643
+ e
644
+ .numeric('hysterersis', ea.ALL)
645
+ .withUnit('°C')
646
+ .withValueMin(0.5)
647
+ .withValueMax(5)
648
+ .withValueStep(0.1)
649
+ .withDescription('Hysteresis setting, between 0.5 and 5 in 0.1 °C. Default: 0.5.'),
650
+ e.enum('display_auto_off_enabled', ea.ALL, ['enabled', 'disabled']),
651
+ e
652
+ .numeric('alarm_airtemp_overvalue', ea.ALL)
653
+ .withUnit('°C')
654
+ .withValueMin(0)
655
+ .withValueMax(35)
656
+ .withDescription('Floor temperature over heating threshold, range is 0-35, unit is 1ºC, ' +
657
+ '0 means this function is disabled, default value is 27.'),
658
+ ],
659
+ onEvent: async (type, data, device, options) => {
660
+ const endpoint = device.getEndpoint(1);
661
+ if (type === 'stop') {
662
+ clearInterval(globalStore.getValue(device, 'time'));
663
+ globalStore.clearValue(device, 'time');
664
+ }
665
+ else if (!globalStore.hasValue(device, 'time')) {
666
+ const hours24 = 1000 * 60 * 60 * 24;
667
+ const interval = setInterval(async () => {
668
+ try {
669
+ // Device does not asks for the time with binding, therefore we write the time every 24 hours
670
+ const time = Math.round((new Date().getTime() - constants.OneJanuary2000) / 1000 + new Date().getTimezoneOffset() * -1 * 60);
671
+ const values = { time: time };
672
+ await endpoint.write('genTime', values);
673
+ }
674
+ catch {
675
+ /* Do nothing*/
676
+ }
677
+ }, hours24);
678
+ globalStore.putValue(device, 'time', interval);
679
+ }
680
+ },
681
+ configure: async (device, coordinatorEndpoint) => {
682
+ const endpoint = device.getEndpoint(1);
683
+ const binds = [
684
+ 'genBasic',
685
+ 'genIdentify',
686
+ 'hvacThermostat',
687
+ 'seMetering',
688
+ 'haElectricalMeasurement',
689
+ 'genAlarms',
690
+ 'msOccupancySensing',
691
+ 'genTime',
692
+ 'hvacUserInterfaceCfg',
693
+ ];
694
+ await reporting.bind(endpoint, coordinatorEndpoint, binds);
695
+ // standard ZCL attributes
696
+ await reporting.thermostatTemperature(endpoint, { min: 0, change: 50 });
697
+ await reporting.thermostatOccupiedHeatingSetpoint(endpoint);
698
+ await reporting.thermostatUnoccupiedHeatingSetpoint(endpoint);
699
+ await reporting.thermostatKeypadLockMode(endpoint);
700
+ // Metering
701
+ await endpoint.read('haElectricalMeasurement', ['acVoltageMultiplier', 'acVoltageDivisor', 'acCurrentMultiplier']);
702
+ await endpoint.read('haElectricalMeasurement', ['acCurrentDivisor']);
703
+ await reporting.rmsVoltage(endpoint, { min: 10, change: 20 }); // Voltage - Min change of 2v
704
+ await reporting.rmsCurrent(endpoint, { min: 10, change: 10 }); // A - z2m displays only the first decimals, so change of 10 (0,01)
705
+ await reporting.activePower(endpoint, { min: 10, change: 15 }); // W - Min change of 1,5W
706
+ await reporting.currentSummDelivered(endpoint, { min: 300 }); // Report KWH every 5min
707
+ await reporting.readMeteringMultiplierDivisor(endpoint);
708
+ // OperateDisplayLcdBrightnesss
709
+ await endpoint.configureReporting('hvacThermostat', [
710
+ {
711
+ attribute: { ID: 0x1000, type: 0x30 },
712
+ minimumReportInterval: 0,
713
+ maximumReportInterval: constants.repInterval.HOUR,
714
+ reportableChange: null,
715
+ },
716
+ ], sunricherManufacturer);
717
+ // ButtonVibrationLevel
718
+ await endpoint.configureReporting('hvacThermostat', [
719
+ {
720
+ attribute: { ID: 0x1001, type: 0x30 },
721
+ minimumReportInterval: 0,
722
+ maximumReportInterval: constants.repInterval.HOUR,
723
+ reportableChange: null,
724
+ },
725
+ ], sunricherManufacturer);
726
+ // FloorSensorType
727
+ await endpoint.configureReporting('hvacThermostat', [
728
+ {
729
+ attribute: { ID: 0x1002, type: 0x30 },
730
+ minimumReportInterval: 0,
731
+ maximumReportInterval: constants.repInterval.HOUR,
732
+ reportableChange: null,
733
+ },
734
+ ], sunricherManufacturer);
735
+ // ControlType
736
+ await endpoint.configureReporting('hvacThermostat', [
737
+ {
738
+ attribute: { ID: 0x1003, type: 0x30 },
739
+ minimumReportInterval: 0,
740
+ maximumReportInterval: constants.repInterval.HOUR,
741
+ reportableChange: null,
742
+ },
743
+ ], sunricherManufacturer);
744
+ // PowerUpStatus
745
+ await endpoint.configureReporting('hvacThermostat', [
746
+ {
747
+ attribute: { ID: 0x1004, type: 0x30 },
748
+ minimumReportInterval: 0,
749
+ maximumReportInterval: constants.repInterval.HOUR,
750
+ reportableChange: null,
751
+ },
752
+ ], sunricherManufacturer);
753
+ // FloorSensorCalibration
754
+ await endpoint.configureReporting('hvacThermostat', [
755
+ {
756
+ attribute: { ID: 0x1005, type: 0x28 },
757
+ minimumReportInterval: 0,
758
+ maximumReportInterval: constants.repInterval.HOUR,
759
+ reportableChange: 0,
760
+ },
761
+ ], sunricherManufacturer);
762
+ // DryTime
763
+ await endpoint.configureReporting('hvacThermostat', [
764
+ {
765
+ attribute: { ID: 0x1006, type: 0x20 },
766
+ minimumReportInterval: 0,
767
+ maximumReportInterval: constants.repInterval.HOUR,
768
+ reportableChange: 0,
769
+ },
770
+ ], sunricherManufacturer);
771
+ // ModeAfterDry
772
+ await endpoint.configureReporting('hvacThermostat', [
773
+ {
774
+ attribute: { ID: 0x1007, type: 0x30 },
775
+ minimumReportInterval: 0,
776
+ maximumReportInterval: constants.repInterval.HOUR,
777
+ reportableChange: null,
778
+ },
779
+ ], sunricherManufacturer);
780
+ // TemperatureDisplay
781
+ await endpoint.configureReporting('hvacThermostat', [
782
+ {
783
+ attribute: { ID: 0x1008, type: 0x30 },
784
+ minimumReportInterval: 0,
785
+ maximumReportInterval: constants.repInterval.HOUR,
786
+ reportableChange: null,
787
+ },
788
+ ], sunricherManufacturer);
789
+ // WindowOpenCheck
790
+ await endpoint.configureReporting('hvacThermostat', [
791
+ {
792
+ attribute: { ID: 0x1009, type: 0x20 },
793
+ minimumReportInterval: 0,
794
+ maximumReportInterval: constants.repInterval.HOUR,
795
+ reportableChange: 0,
796
+ },
797
+ ], sunricherManufacturer);
798
+ // Hysterersis
799
+ await endpoint.configureReporting('hvacThermostat', [
800
+ {
801
+ attribute: { ID: 0x100a, type: 0x20 },
802
+ minimumReportInterval: 0,
803
+ maximumReportInterval: constants.repInterval.HOUR,
804
+ reportableChange: 0,
805
+ },
806
+ ], sunricherManufacturer);
807
+ // DisplayAutoOffEnable
808
+ await endpoint.configureReporting('hvacThermostat', [
809
+ {
810
+ attribute: { ID: 0x100b, type: 0x30 },
811
+ minimumReportInterval: 0,
812
+ maximumReportInterval: constants.repInterval.HOUR,
813
+ reportableChange: null,
814
+ },
815
+ ], sunricherManufacturer);
816
+ // AlarmAirTempOverValue
817
+ await endpoint.configureReporting('hvacThermostat', [
818
+ {
819
+ attribute: { ID: 0x2001, type: 0x20 },
820
+ minimumReportInterval: 0,
821
+ maximumReportInterval: constants.repInterval.HOUR,
822
+ reportableChange: 0,
823
+ },
824
+ ], sunricherManufacturer);
825
+ // Away Mode Set
826
+ await endpoint.configureReporting('hvacThermostat', [
827
+ {
828
+ attribute: { ID: 0x2002, type: 0x30 },
829
+ minimumReportInterval: 0,
830
+ maximumReportInterval: constants.repInterval.HOUR,
831
+ reportableChange: null,
832
+ },
833
+ ], sunricherManufacturer);
834
+ // Trigger initial read
835
+ await endpoint.read('hvacThermostat', ['systemMode', 'runningState', 'occupiedHeatingSetpoint']);
836
+ await endpoint.read('hvacThermostat', [0x1000, 0x1001, 0x1002, 0x1003], sunricherManufacturer);
837
+ await endpoint.read('hvacThermostat', [0x1004, 0x1005, 0x1006, 0x1007], sunricherManufacturer);
838
+ await endpoint.read('hvacThermostat', [0x1008, 0x1009, 0x100a, 0x100b], sunricherManufacturer);
839
+ await endpoint.read('hvacThermostat', [0x2001, 0x2002], sunricherManufacturer);
840
+ },
841
+ ota: true,
842
+ },
843
+ {
844
+ zigbeeModel: ['4512735'],
845
+ model: '4512735',
846
+ vendor: 'Namron',
847
+ description: 'Multiprise with 4 AC outlets and 2 USB super charging ports (16A)',
848
+ fromZigbee: [fromZigbee_1.default.on_off],
849
+ toZigbee: [toZigbee_1.default.on_off],
850
+ exposes: [
851
+ e.switch().withEndpoint('l1'),
852
+ e.switch().withEndpoint('l2'),
853
+ e.switch().withEndpoint('l3'),
854
+ e.switch().withEndpoint('l4'),
855
+ e.switch().withEndpoint('l5'),
856
+ ],
857
+ endpoint: (device) => {
858
+ return { l1: 1, l2: 2, l3: 3, l4: 4, l5: 5 };
859
+ },
860
+ meta: { multiEndpoint: true },
861
+ configure: async (device, coordinatorEndpoint) => {
862
+ for (const ID of [1, 2, 3, 4, 5]) {
863
+ const endpoint = device.getEndpoint(ID);
864
+ await reporting.bind(endpoint, coordinatorEndpoint, ['genOnOff']);
865
+ }
866
+ device.powerSource = 'Mains (single phase)';
867
+ device.save();
868
+ },
869
+ },
870
+ {
871
+ zigbeeModel: ['5401392', '5401396', '5401393', '5401397', '5401394', '5401398', '5401395', '5401399', '5401395'],
872
+ model: '540139X',
873
+ vendor: 'Namron',
874
+ description: 'Panel heater 400/600/800/1000 W',
875
+ ota: true,
876
+ fromZigbee: [fromZigbee_1.default.thermostat, fromZigbee_1.default.metering, fromZigbee_1.default.electrical_measurement, fzLocal.namron_panelheater, fromZigbee_1.default.namron_hvac_user_interface],
877
+ toZigbee: [
878
+ toZigbee_1.default.thermostat_occupied_heating_setpoint,
879
+ toZigbee_1.default.thermostat_local_temperature_calibration,
880
+ toZigbee_1.default.thermostat_system_mode,
881
+ toZigbee_1.default.thermostat_running_state,
882
+ toZigbee_1.default.thermostat_local_temperature,
883
+ tzLocal.namron_panelheater,
884
+ toZigbee_1.default.namron_thermostat_child_lock,
885
+ ],
886
+ exposes: [
887
+ e.power(),
888
+ e.current(),
889
+ e.voltage(),
890
+ e.energy(),
891
+ e
892
+ .climate()
893
+ .withSetpoint('occupied_heating_setpoint', 5, 35, 0.5)
894
+ .withLocalTemperature()
895
+ // Unit also supports Auto, but i haven't added support the scheduler yet
896
+ // so the function is not listed for now, as this doesn´t allow you the set the temperature
897
+ .withSystemMode(['off', 'heat'])
898
+ .withLocalTemperatureCalibration(-3, 3, 0.1)
899
+ .withRunningState(['idle', 'heat']),
900
+ // Namron proprietary stuff
901
+ e.binary('child_lock', ea.ALL, 'LOCK', 'UNLOCK').withDescription('Enables/disables physical input on the device'),
902
+ e
903
+ .numeric('hysterersis', ea.ALL)
904
+ .withUnit('°C')
905
+ .withValueMin(0.5)
906
+ .withValueMax(2)
907
+ .withValueStep(0.1)
908
+ .withDescription('Hysteresis setting, default: 0.5'),
909
+ e
910
+ .numeric('display_brightnesss', ea.ALL)
911
+ .withValueMin(1)
912
+ .withValueMax(7)
913
+ .withValueStep(1)
914
+ .withDescription('Adjust brightness of display values 1(Low)-7(High)'),
915
+ e.enum('display_auto_off', ea.ALL, ['deactivated', 'activated']).withDescription('Enable / Disable display auto off'),
916
+ e
917
+ .enum('power_up_status', ea.ALL, ['manual', 'last_state'])
918
+ .withDescription('The mode after a power reset. Default: Previous Mode. See instructions for information about manual'),
919
+ e.enum('window_open_check', ea.ALL, ['enable', 'disable']).withDescription('Turn on/off window check mode'),
920
+ ],
921
+ configure: async (device, coordinatorEndpoint) => {
922
+ const endpoint = device.getEndpoint(1);
923
+ const binds = [
924
+ 'genBasic',
925
+ 'genIdentify',
926
+ 'hvacThermostat',
927
+ 'seMetering',
928
+ 'haElectricalMeasurement',
929
+ 'genAlarms',
930
+ 'genTime',
931
+ 'hvacUserInterfaceCfg',
932
+ ];
933
+ // Reporting
934
+ // Metering
935
+ await reporting.readEletricalMeasurementMultiplierDivisors(endpoint);
936
+ await reporting.readMeteringMultiplierDivisor(endpoint);
937
+ await reporting.rmsVoltage(endpoint, { min: 10, change: 20 }); // Voltage - Min change of 2v
938
+ await reporting.rmsCurrent(endpoint, { min: 10, change: 10 }); // A - z2m displays only the first decimals, so change of 10 (0,01)
939
+ await reporting.activePower(endpoint, { min: 10, change: 15 }); // W - Min change of 1,5W
940
+ await reporting.currentSummDelivered(endpoint, { min: 300 }); // Report KWH every 5min
941
+ // Thermostat reporting
942
+ await reporting.thermostatTemperature(endpoint);
943
+ await reporting.thermostatOccupiedHeatingSetpoint(endpoint);
944
+ await reporting.thermostatTemperature(endpoint);
945
+ await reporting.thermostatKeypadLockMode(endpoint);
946
+ // LocalTemp is spammy, reports 0.01C diff by default, min change is now 0.5C
947
+ await reporting.thermostatTemperature(endpoint, { min: 0, change: 50 });
948
+ // display_brightnesss
949
+ await endpoint.configureReporting('hvacThermostat', [
950
+ {
951
+ attribute: { ID: 0x1000, type: 0x30 },
952
+ minimumReportInterval: 0,
953
+ maximumReportInterval: constants.repInterval.HOUR,
954
+ reportableChange: null,
955
+ },
956
+ ], sunricherManufacturer);
957
+ // display_auto_off
958
+ await endpoint.configureReporting('hvacThermostat', [
959
+ {
960
+ attribute: { ID: 0x1001, type: 0x30 },
961
+ minimumReportInterval: 0,
962
+ maximumReportInterval: constants.repInterval.HOUR,
963
+ reportableChange: null,
964
+ },
965
+ ], sunricherManufacturer);
966
+ // power_up_status
967
+ await endpoint.configureReporting('hvacThermostat', [
968
+ {
969
+ attribute: { ID: 0x1004, type: 0x30 },
970
+ minimumReportInterval: 0,
971
+ maximumReportInterval: constants.repInterval.HOUR,
972
+ reportableChange: null,
973
+ },
974
+ ], sunricherManufacturer);
975
+ // window_open_check
976
+ await endpoint.configureReporting('hvacThermostat', [
977
+ {
978
+ attribute: { ID: 0x1009, type: 0x30 },
979
+ minimumReportInterval: 0,
980
+ maximumReportInterval: constants.repInterval.HOUR,
981
+ reportableChange: null,
982
+ },
983
+ ], sunricherManufacturer);
984
+ // hysterersis
985
+ await endpoint.configureReporting('hvacThermostat', [
986
+ {
987
+ attribute: { ID: 0x100a, type: 0x20 },
988
+ minimumReportInterval: 0,
989
+ maximumReportInterval: constants.repInterval.HOUR,
990
+ reportableChange: null,
991
+ },
992
+ ], sunricherManufacturer);
993
+ await endpoint.read('hvacThermostat', ['systemMode', 'runningState', 'occupiedHeatingSetpoint']);
994
+ await endpoint.read('hvacUserInterfaceCfg', ['keypadLockout']);
995
+ await endpoint.read('hvacThermostat', [0x1000, 0x1001, 0x1004, 0x1009, 0x100a], sunricherManufacturer);
996
+ await reporting.bind(endpoint, coordinatorEndpoint, binds);
997
+ },
998
+ },
999
+ {
1000
+ zigbeeModel: ['3802968'],
1001
+ model: '3802968',
1002
+ vendor: 'Namron',
1003
+ description: 'LED Filament Flex 5W CCT E27 Clear',
1004
+ extend: [(0, modernExtend_1.light)({ colorTemp: { range: [153, 555] }, turnsOffAtBrightness1: true })],
1005
+ },
1006
+ {
1007
+ zigbeeModel: ['4512749'],
1008
+ model: '4512749',
1009
+ vendor: 'Namron',
1010
+ description: 'Thermostat outlet socket',
1011
+ fromZigbee: [fromZigbee_1.default.metering, fromZigbee_1.default.electrical_measurement, fromZigbee_1.default.on_off, fromZigbee_1.default.temperature],
1012
+ toZigbee: [toZigbee_1.default.on_off, toZigbee_1.default.power_on_behavior],
1013
+ exposes: [e.temperature(), e.power(), e.current(), e.voltage(), e.switch(), e.power_on_behavior()],
1014
+ configure: async (device, coordinatorEndpoint) => {
1015
+ const endpoint = device.getEndpoint(1);
1016
+ await reporting.bind(endpoint, coordinatorEndpoint, ['genOnOff', 'haElectricalMeasurement', 'msTemperatureMeasurement']);
1017
+ await endpoint.read('haElectricalMeasurement', ['acVoltageMultiplier', 'acVoltageDivisor']);
1018
+ await endpoint.read('haElectricalMeasurement', ['acPowerMultiplier', 'acPowerDivisor']);
1019
+ await endpoint.read('haElectricalMeasurement', ['acCurrentMultiplier', 'acCurrentDivisor']);
1020
+ await reporting.onOff(endpoint);
1021
+ await reporting.temperature(endpoint);
1022
+ await reporting.rmsVoltage(endpoint);
1023
+ await reporting.rmsCurrent(endpoint);
1024
+ await reporting.activePower(endpoint);
1025
+ },
1026
+ },
1027
+ {
1028
+ zigbeeModel: ['4512749-N'],
1029
+ model: '4512749-N',
1030
+ vendor: 'Namron',
1031
+ description: 'Thermostat outlet socket',
1032
+ fromZigbee: [fromZigbee_1.default.metering, fromZigbee_1.default.electrical_measurement, fromZigbee_1.default.on_off, fromZigbee_1.default.temperature],
1033
+ toZigbee: [toZigbee_1.default.on_off, toZigbee_1.default.power_on_behavior],
1034
+ exposes: [e.temperature(), e.power(), e.current(), e.voltage(), e.switch(), e.power_on_behavior()],
1035
+ configure: async (device, coordinatorEndpoint) => {
1036
+ const endpoint = device.getEndpoint(1);
1037
+ await reporting.bind(endpoint, coordinatorEndpoint, ['genOnOff', 'haElectricalMeasurement', 'msTemperatureMeasurement']);
1038
+ await endpoint.read('haElectricalMeasurement', ['acVoltageMultiplier', 'acVoltageDivisor']);
1039
+ await endpoint.read('haElectricalMeasurement', ['acPowerMultiplier', 'acPowerDivisor']);
1040
+ await endpoint.read('haElectricalMeasurement', ['acCurrentMultiplier', 'acCurrentDivisor']);
1041
+ await reporting.onOff(endpoint);
1042
+ await reporting.temperature(endpoint, { min: 10, change: 10 });
1043
+ await reporting.rmsVoltage(endpoint, { min: 10, change: 20 }); // Voltage - Min change of 2v
1044
+ await reporting.rmsCurrent(endpoint, { min: 10, change: 10 }); // A - z2m displays only the first decimals, so change of 10
1045
+ await reporting.activePower(endpoint, { min: 10, change: 1 }); // W - Min change of 0,1W
1046
+ },
1047
+ },
1048
+ {
1049
+ zigbeeModel: ['4512747'],
1050
+ model: '4512747',
1051
+ vendor: 'Namron',
1052
+ description: 'Curtain motor controller',
1053
+ fromZigbee: [fromZigbee_1.default.cover_position_tilt],
1054
+ toZigbee: [toZigbee_1.default.cover_state, toZigbee_1.default.cover_position_tilt],
1055
+ exposes: [e.cover_position()],
1056
+ configure: async (device, coordinatorEndpoint) => {
1057
+ const endpoint = device.getEndpoint(1);
1058
+ await reporting.bind(endpoint, coordinatorEndpoint, ['closuresWindowCovering']);
1059
+ await reporting.currentPositionLiftPercentage(endpoint);
1060
+ },
1061
+ },
1062
+ {
1063
+ zigbeeModel: ['4512758'],
1064
+ model: '4512758',
1065
+ vendor: 'Namron',
1066
+ description: 'Zigbee thermostat 16A',
1067
+ fromZigbee: [fzLocal.namron_thermostat2, fromZigbee_1.default.metering, fromZigbee_1.default.electrical_measurement, fromZigbee_1.default.namron_hvac_user_interface],
1068
+ toZigbee: [
1069
+ {
1070
+ // map running *mode* to *state*, as that's what used
1071
+ // in homeAssistant climate ui card (red background)
1072
+ key: ['running_state'],
1073
+ convertGet: async (entity, key, meta) => {
1074
+ await entity.read('hvacThermostat', ['runningMode']);
1075
+ },
1076
+ },
1077
+ toZigbee_1.default.thermostat_local_temperature,
1078
+ toZigbee_1.default.thermostat_min_heat_setpoint_limit,
1079
+ toZigbee_1.default.thermostat_max_heat_setpoint_limit,
1080
+ // tz.thermostat_min_cool_setpoint_limit,
1081
+ // tz.thermostat_max_cool_setpoint_limit,
1082
+ // tz.thermostat_pi_heating_demand,
1083
+ toZigbee_1.default.thermostat_local_temperature_calibration,
1084
+ // tz.thermostat_occupied_cooling_setpoint,
1085
+ toZigbee_1.default.thermostat_occupied_heating_setpoint,
1086
+ toZigbee_1.default.thermostat_control_sequence_of_operation,
1087
+ toZigbee_1.default.thermostat_system_mode,
1088
+ toZigbee_1.default.thermostat_running_mode,
1089
+ toZigbee_1.default.namron_thermostat_child_lock,
1090
+ ],
1091
+ extend: [
1092
+ (0, modernExtend_1.onOff)({ powerOnBehavior: false }),
1093
+ (0, modernExtend_1.electricityMeter)({ voltage: false }),
1094
+ (0, modernExtend_1.binary)({
1095
+ name: 'away_mode',
1096
+ valueOn: ['ON', 1],
1097
+ valueOff: ['OFF', 0],
1098
+ cluster: 'hvacThermostat',
1099
+ attribute: { ID: 0x8001, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
1100
+ description: 'Enable or Disable Away/Anti-freeze mode',
1101
+ }),
1102
+ (0, modernExtend_1.binary)({
1103
+ name: 'window_open_check',
1104
+ valueOn: ['ON', 1],
1105
+ valueOff: ['OFF', 0],
1106
+ cluster: 'hvacThermostat',
1107
+ attribute: { ID: 0x8000, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
1108
+ description: 'Enable or Disable open window detection',
1109
+ entityCategory: 'config',
1110
+ }),
1111
+ (0, modernExtend_1.binary)({
1112
+ name: 'window_open',
1113
+ valueOn: ['ON', 1],
1114
+ valueOff: ['OFF', 0],
1115
+ cluster: 'hvacThermostat',
1116
+ attribute: { ID: 0x8002, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
1117
+ description: 'On if window is currently detected as open',
1118
+ }),
1119
+ (0, modernExtend_1.numeric)({
1120
+ name: 'backlight_level',
1121
+ unit: '%',
1122
+ valueMin: 0,
1123
+ valueMax: 100,
1124
+ valueStep: 10,
1125
+ cluster: 'hvacThermostat',
1126
+ attribute: { ID: 0x8005, type: zigbee_herdsman_1.Zcl.DataType.UINT8 },
1127
+ description: 'Brightness of the display',
1128
+ entityCategory: 'config',
1129
+ }),
1130
+ (0, modernExtend_1.binary)({
1131
+ name: 'backlight_onoff',
1132
+ valueOn: ['ON', 1],
1133
+ valueOff: ['OFF', 0],
1134
+ cluster: 'hvacThermostat',
1135
+ attribute: { ID: 0x8009, type: zigbee_herdsman_1.Zcl.DataType.BOOLEAN },
1136
+ description: 'Enable or Disable display light',
1137
+ entityCategory: 'config',
1138
+ }),
1139
+ (0, modernExtend_1.enumLookup)({
1140
+ name: 'sensor_mode',
1141
+ lookup: { air: 0, floor: 1, both: 2, percent: 6 },
1142
+ cluster: 'hvacThermostat',
1143
+ attribute: { ID: 0x8004, type: zigbee_herdsman_1.Zcl.DataType.ENUM8 },
1144
+ description: 'Select which sensor the thermostat uses to control the room',
1145
+ entityCategory: 'config',
1146
+ }),
1147
+ ],
1148
+ exposes: [
1149
+ // FUTURE: could maybe translate to a common cooling/heating setpoint depending on the mode
1150
+ // and state.. HomeAssistant climate widget doesn't play nice with two setpoints.
1151
+ e
1152
+ .climate()
1153
+ .withLocalTemperature()
1154
+ .withSetpoint('occupied_heating_setpoint', 0, 40, 0.5)
1155
+ //.withSetpoint('occupied_cooling_setpoint', 0, 40, 0.5)
1156
+ .withLocalTemperatureCalibration(-10, 10, 1)
1157
+ //.withSystemMode(['off', 'auto', 'cool', 'heat'])
1158
+ .withSystemMode(['off', 'heat'])
1159
+ //.withRunningMode(['off', 'cool','heat'])
1160
+ .withRunningState(['idle', 'cool', 'heat']),
1161
+ //.withPiHeatingDemand()
1162
+ e.binary('child_lock', ea.ALL, 'LOCK', 'UNLOCK').withDescription('Enables/disables physical input on the device'),
1163
+ ],
1164
+ configure: async (device, coordinatorEndpoint, logger) => {
1165
+ const endpoint = device.getEndpoint(1);
1166
+ const binds = ['genBasic', 'genIdentify', 'hvacThermostat', 'seMetering', 'haElectricalMeasurement', 'genAlarms', 'hvacUserInterfaceCfg'];
1167
+ await reporting.bind(endpoint, coordinatorEndpoint, binds);
1168
+ await reporting.thermostatTemperature(endpoint, { min: 0, change: 50 });
1169
+ // await reporting.thermostatPIHeatingDemand(endpoint);
1170
+ await reporting.thermostatOccupiedHeatingSetpoint(endpoint);
1171
+ await reporting.thermostatKeypadLockMode(endpoint);
1172
+ // Trigger initial read
1173
+ await endpoint.read('hvacThermostat', ['systemMode', 'runningMode', 'occupiedHeatingSetpoint']);
1174
+ await endpoint.read('hvacThermostat', [0x8000, 0x8001, 0x8002, 0x8004]);
1175
+ device.powerSource = 'Mains (single phase)';
1176
+ device.save();
1177
+ },
1178
+ },
1179
+ {
1180
+ zigbeeModel: ['4512762'],
1181
+ model: '4512762',
1182
+ vendor: 'Namron',
1183
+ description: 'Zigbee Door Sensor',
1184
+ fromZigbee: [fromZigbee_1.default.ias_contact_alarm_1, fromZigbee_1.default.battery, fromZigbee_1.default.ias_contact_alarm_1_report],
1185
+ toZigbee: [],
1186
+ exposes: [e.contact(), e.battery(), e.battery_voltage()],
1187
+ configure: async (device, coordinatorEndpoint) => {
1188
+ const endpoint = device.getEndpoint(1);
1189
+ await reporting.bind(endpoint, coordinatorEndpoint, ['genPowerCfg']);
1190
+ await reporting.batteryPercentageRemaining(endpoint);
1191
+ await reporting.batteryVoltage(endpoint);
1192
+ },
1193
+ },
1194
+ {
1195
+ zigbeeModel: ['4512763'],
1196
+ model: '4512763',
1197
+ vendor: 'Namron',
1198
+ description: 'Zigbee movement sensor',
1199
+ fromZigbee: [fromZigbee_1.default.ias_occupancy_alarm_1],
1200
+ toZigbee: [],
1201
+ exposes: [e.occupancy()],
1202
+ },
1203
+ {
1204
+ zigbeeModel: ['4512764'],
1205
+ model: '4512764',
1206
+ vendor: 'Namron',
1207
+ description: 'Zigbee water leak sensor',
1208
+ fromZigbee: [fromZigbee_1.default.ias_water_leak_alarm_1, fromZigbee_1.default.battery],
1209
+ toZigbee: [],
1210
+ exposes: [e.battery_low(), e.water_leak(), e.battery()],
1211
+ configure: async (device, coordinatorEndpoint) => {
1212
+ const endpoint = device.getEndpoint(1);
1213
+ await reporting.bind(endpoint, coordinatorEndpoint, ['genPowerCfg']);
1214
+ await reporting.batteryPercentageRemaining(endpoint);
1215
+ },
1216
+ },
1217
+ {
1218
+ zigbeeModel: ['4512765'],
1219
+ model: '4512765',
1220
+ vendor: 'Namron',
1221
+ description: 'Zigbee humidity and temperature Sensor',
1222
+ fromZigbee: [fromZigbee_1.default.battery, fromZigbee_1.default.temperature, fromZigbee_1.default.humidity],
1223
+ toZigbee: [],
1224
+ exposes: [e.battery(), e.temperature(), e.humidity()],
1225
+ },
1226
+ {
1227
+ zigbeeModel: ['4512750', '4512751'],
1228
+ model: '4512750',
1229
+ vendor: 'Namron',
1230
+ description: 'Zigbee dimmer 2.0',
1231
+ ota: true,
1232
+ extend: [(0, modernExtend_1.light)({ configureReporting: true })],
1233
+ whiteLabel: [{ vendor: 'Namron', model: '4512751', description: 'Zigbee dimmer 2.0', fingerprint: [{ modelID: '4512751' }] }],
1234
+ },
1235
+ {
1236
+ zigbeeModel: ['4512772', '4512773'],
1237
+ model: '4512773',
1238
+ vendor: 'Namron',
1239
+ description: 'Zigbee 8 channel switch black',
1240
+ whiteLabel: [{ vendor: 'Namron', model: '4512772', description: 'Zigbee 8 channel switch white', fingerprint: [{ modelID: '4512772' }] }],
1241
+ fromZigbee: [fromZigbee_1.default.battery, fromZigbee_1.default.command_on, fromZigbee_1.default.command_off, fromZigbee_1.default.command_move, fromZigbee_1.default.command_stop],
1242
+ toZigbee: [],
1243
+ meta: { multiEndpoint: true },
1244
+ exposes: [
1245
+ e.battery(),
1246
+ e.action([
1247
+ 'on_l1',
1248
+ 'off_l1',
1249
+ 'brightness_move_up_l1',
1250
+ 'brightness_move_down_l1',
1251
+ 'brightness_stop_l1',
1252
+ 'on_l2',
1253
+ 'off_l2',
1254
+ 'brightness_move_up_l2',
1255
+ 'brightness_move_down_l2',
1256
+ 'brightness_stop_l2',
1257
+ 'on_l3',
1258
+ 'off_l3',
1259
+ 'brightness_move_up_l3',
1260
+ 'brightness_move_down_l3',
1261
+ 'brightness_stop_l3',
1262
+ 'on_l4',
1263
+ 'off_l4',
1264
+ 'brightness_move_up_l4',
1265
+ 'brightness_move_down_l4',
1266
+ 'brightness_stop_l4',
1267
+ ]),
1268
+ ],
1269
+ endpoint: (device) => {
1270
+ return { l1: 1, l2: 2, l3: 3, l4: 4 };
1271
+ },
1272
+ ota: true,
1273
+ },
1274
+ {
1275
+ zigbeeModel: ['4512768'],
1276
+ model: '4512768',
1277
+ vendor: 'Namron',
1278
+ description: 'Zigbee 2 channel switch',
1279
+ fromZigbee: [fromZigbee_1.default.on_off, fromZigbee_1.default.electrical_measurement, fromZigbee_1.default.metering, fromZigbee_1.default.power_on_behavior, fromZigbee_1.default.ignore_genOta],
1280
+ toZigbee: [toZigbee_1.default.on_off, toZigbee_1.default.power_on_behavior],
1281
+ exposes: [
1282
+ e.switch().withEndpoint('l1'),
1283
+ e.switch().withEndpoint('l2'),
1284
+ e.power_on_behavior(['off', 'on', 'previous']),
1285
+ e.energy(),
1286
+ e.numeric('voltage_l1', ea.STATE).withUnit('V').withDescription('Phase 1 voltage'),
1287
+ e.numeric('voltage_l2', ea.STATE).withUnit('V').withDescription('Phase 2 voltage'),
1288
+ e.numeric('current_l1', ea.STATE).withUnit('A').withDescription('Phase 1 current'),
1289
+ e.numeric('current_l2', ea.STATE).withUnit('A').withDescription('Phase 2 current'),
1290
+ e.numeric('power_l1', ea.STATE).withUnit('W').withDescription('Phase 1 power'),
1291
+ e.numeric('power_l2', ea.STATE).withUnit('W').withDescription('Phase 2 power'),
1292
+ ],
1293
+ endpoint: (device) => {
1294
+ return { l1: 1, l2: 2 };
1295
+ },
1296
+ meta: { multiEndpoint: true, publishDuplicateTransaction: true, multiEndpointSkip: ['power', 'energy'] },
1297
+ configure: async (device, coordinatorEndpoint) => {
1298
+ const endpoint1 = device.getEndpoint(1);
1299
+ const endpoint2 = device.getEndpoint(2);
1300
+ await reporting.bind(endpoint1, coordinatorEndpoint, ['genOnOff', 'haElectricalMeasurement', 'seMetering']);
1301
+ await reporting.bind(endpoint2, coordinatorEndpoint, ['genOnOff']);
1302
+ await reporting.onOff(endpoint1);
1303
+ await reporting.onOff(endpoint2);
1304
+ await reporting.currentSummDelivered(endpoint1);
1305
+ },
1306
+ },
1307
+ {
1308
+ zigbeeModel: ['4512761'],
1309
+ model: '4512761',
1310
+ vendor: 'Namron',
1311
+ description: 'Zigbee relais 16A',
1312
+ fromZigbee: [fromZigbee_1.default.on_off, fromZigbee_1.default.electrical_measurement, fromZigbee_1.default.metering, fromZigbee_1.default.power_on_behavior],
1313
+ toZigbee: [toZigbee_1.default.on_off, toZigbee_1.default.power_on_behavior],
1314
+ exposes: [e.switch(), e.power(), e.current(), e.voltage(), e.energy(), e.power_on_behavior()],
1315
+ configure: async (device, coordinatorEndpoint) => {
1316
+ const endpoint = device.getEndpoint(1);
1317
+ await reporting.bind(endpoint, coordinatorEndpoint, ['genBasic', 'genOnOff', 'haElectricalMeasurement', 'seMetering']);
1318
+ await reporting.readEletricalMeasurementMultiplierDivisors(endpoint);
1319
+ await reporting.readMeteringMultiplierDivisor(endpoint);
1320
+ await reporting.onOff(endpoint);
1321
+ },
1322
+ ota: true,
1323
+ },
1324
+ {
1325
+ zigbeeModel: ['4512770', '4512771'],
1326
+ model: '4512770',
1327
+ vendor: 'Namron',
1328
+ description: 'Zigbee multisensor (white)',
1329
+ fromZigbee: [fromZigbee_1.default.ias_occupancy_alarm_1, fromZigbee_1.default.battery, fromZigbee_1.default.temperature, fromZigbee_1.default.humidity, fromZigbee_1.default.illuminance],
1330
+ toZigbee: [],
1331
+ exposes: [e.occupancy(), e.battery(), e.battery_voltage(), e.illuminance(), e.temperature(), e.humidity()],
1332
+ whiteLabel: [{ vendor: 'Namron', model: '4512771', description: 'Zigbee multisensor (black)', fingerprint: [{ modelID: '4512771' }] }],
1333
+ configure: async (device, coordinatorEndpoint) => {
1334
+ const endpoint3 = device.getEndpoint(3);
1335
+ const endpoint4 = device.getEndpoint(4);
1336
+ const endpoint5 = device.getEndpoint(5);
1337
+ await reporting.bind(endpoint3, coordinatorEndpoint, ['msTemperatureMeasurement']);
1338
+ await reporting.bind(endpoint4, coordinatorEndpoint, ['msRelativeHumidity']);
1339
+ await reporting.bind(endpoint5, coordinatorEndpoint, ['msIlluminanceMeasurement']);
1340
+ },
1341
+ },
1342
+ {
1343
+ fingerprint: tuya.fingerprint('TS0601', ['_TZE204_p3lqqy2r']),
1344
+ model: '4512752/4512753',
1345
+ vendor: 'Namron',
1346
+ description: 'Touch thermostat 16A 2.0',
1347
+ fromZigbee: [tuya.fz.datapoints],
1348
+ toZigbee: [tuya.tz.datapoints],
1349
+ onEvent: tuya.onEventSetTime,
1350
+ configure: tuya.configureMagicPacket,
1351
+ options: [],
1352
+ exposes: [
1353
+ e
1354
+ .enum('mode', ea.STATE_SET, ['regulator', 'thermostat'])
1355
+ .withDescription('Controls how the operating mode of the device. Possible values:' +
1356
+ ' regulator (open-loop controller), thermostat (control with target temperature)'),
1357
+ e
1358
+ .enum('regulator_period', ea.STATE_SET, ['15min', '30min', '45min', '60min', '90min'])
1359
+ .withLabel('Regulator cycle duration')
1360
+ .withDescription('Regulator cycle duration. Not applicable when in thermostat mode.'),
1361
+ e
1362
+ .numeric('regulator_set_point', ea.STATE_SET)
1363
+ .withUnit('%')
1364
+ .withDescription('Desired heating set point (%) when in regulator mode.')
1365
+ .withValueMin(0)
1366
+ .withValueMax(95),
1367
+ e
1368
+ .climate()
1369
+ .withSystemMode(['off', 'heat'], ea.STATE_SET, 'Whether the thermostat is turned on or off')
1370
+ .withPreset(['manual', 'home', 'away'])
1371
+ .withLocalTemperature(ea.STATE)
1372
+ .withLocalTemperatureCalibration(-9, 9, 1, ea.STATE_SET)
1373
+ .withRunningState(['idle', 'heat'], ea.STATE)
1374
+ .withSetpoint('current_heating_setpoint', 5, 35, 1, ea.STATE_SET),
1375
+ e.current(),
1376
+ e.power(),
1377
+ e.energy(),
1378
+ e.voltage(),
1379
+ e.temperature_sensor_select(['air_sensor', 'floor_sensor', 'both']),
1380
+ e
1381
+ .numeric('local_temperature', ea.STATE)
1382
+ .withUnit('°C')
1383
+ .withDescription('Current temperature measured with internal sensor')
1384
+ .withValueStep(1),
1385
+ e
1386
+ .numeric('local_temperature_floor', ea.STATE)
1387
+ .withUnit('°C')
1388
+ .withDescription('Current temperature measured on the external sensor (floor)')
1389
+ .withValueStep(1),
1390
+ e.child_lock(),
1391
+ e.window_detection().withLabel('Open window detection'),
1392
+ e
1393
+ .numeric('hysteresis', ea.STATE_SET)
1394
+ .withUnit('°C')
1395
+ .withDescription('The offset from the target temperature in which the temperature has to ' +
1396
+ 'change for the heating state to change. This is to prevent erratically turning on/off ' +
1397
+ 'when the temperature is close to the target.')
1398
+ .withValueMin(1)
1399
+ .withValueMax(9)
1400
+ .withValueStep(1),
1401
+ e
1402
+ .numeric('max_temperature_protection', ea.STATE_SET)
1403
+ .withUnit('°C')
1404
+ .withDescription('Max guarding temperature')
1405
+ .withValueMin(20)
1406
+ .withValueMax(95)
1407
+ .withValueStep(1),
1408
+ ],
1409
+ meta: {
1410
+ tuyaDatapoints: [
1411
+ [1, 'system_mode', tuya.valueConverterBasic.lookup({ off: false, heat: true })],
1412
+ [2, 'preset', tuya.valueConverterBasic.lookup({ manual: tuya.enum(0), home: tuya.enum(1), away: tuya.enum(2) })],
1413
+ [16, 'current_heating_setpoint', tuya.valueConverter.raw],
1414
+ [24, 'local_temperature', tuya.valueConverter.raw],
1415
+ [28, 'local_temperature_calibration', tuya.valueConverter.localTempCalibration2],
1416
+ [30, 'child_lock', tuya.valueConverter.lockUnlock],
1417
+ [101, 'local_temperature_floor', tuya.valueConverter.raw],
1418
+ [102, 'sensor', tuya.valueConverterBasic.lookup({ air_sensor: tuya.enum(0), floor_sensor: tuya.enum(1), both: tuya.enum(2) })],
1419
+ [103, 'hysteresis', tuya.valueConverter.raw],
1420
+ [104, 'running_state', tuya.valueConverterBasic.lookup({ idle: false, heat: true })],
1421
+ [106, 'window_detection', tuya.valueConverter.onOff],
1422
+ [107, 'max_temperature_protection', tuya.valueConverter.raw],
1423
+ [108, 'mode', tuya.valueConverterBasic.lookup({ regulator: tuya.enum(0), thermostat: tuya.enum(1) })],
1424
+ [
1425
+ 109,
1426
+ 'regulator_period',
1427
+ tuya.valueConverterBasic.lookup({
1428
+ '15min': tuya.enum(0),
1429
+ '30min': tuya.enum(1),
1430
+ '45min': tuya.enum(2),
1431
+ '60min': tuya.enum(3),
1432
+ '90min': tuya.enum(4),
1433
+ }),
1434
+ ],
1435
+ [110, 'regulator_set_point', tuya.valueConverter.raw],
1436
+ [120, 'current', tuya.valueConverter.divideBy10],
1437
+ [121, 'voltage', tuya.valueConverter.raw],
1438
+ [122, 'power', tuya.valueConverter.raw],
1439
+ [123, 'energy', tuya.valueConverter.divideBy100],
1440
+ ],
1441
+ },
1442
+ },
1443
+ {
1444
+ zigbeeModel: ['4512782', '4512781'],
1445
+ model: '4512782',
1446
+ vendor: 'Namron',
1447
+ description: 'Rotary dimmer with screen',
1448
+ extend: [
1449
+ (0, modernExtend_1.light)({ effect: false, configureReporting: true, powerOnBehavior: false }),
1450
+ (0, modernExtend_1.electricityMeter)({ voltage: false, current: false, configureReporting: true }),
1451
+ ],
1452
+ meta: {},
1453
+ },
1454
+ {
1455
+ zigbeeModel: ['4512788'],
1456
+ model: '4512788',
1457
+ vendor: 'Namron',
1458
+ description: 'Zigbee smart plug dimmer 150W',
1459
+ extend: [(0, modernExtend_1.light)(), (0, modernExtend_1.electricityMeter)({ cluster: 'electrical' })],
1460
+ },
1461
+ ];
1462
+ exports.default = definitions;
1463
+ module.exports = definitions;
1464
+ //# sourceMappingURL=namron.js.map