boneio 1.1.0.dev2__tar.gz → 1.1.0.dev3__tar.gz

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 (414) hide show
  1. {boneio-1.1.0.dev2/boneio.egg-info → boneio-1.1.0.dev3}/PKG-INFO +2 -1
  2. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/core/manager/manager.py +12 -3
  3. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/core/manager/remote.py +113 -4
  4. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/core/remote/__init__.py +9 -0
  5. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/core/remote/base.py +2 -0
  6. boneio-1.1.0.dev3/boneio/core/remote/wled.py +572 -0
  7. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/integration/homeassistant.py +1 -2
  8. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/runner.py +2 -2
  9. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/schema/actions.yaml +18 -0
  10. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/schema/remote_devices.yaml +106 -3
  11. boneio-1.1.0.dev3/boneio/version.py +2 -0
  12. boneio-1.1.0.dev2/boneio/webui/frontend-dist/assets/cssMode-Ca1DAf9-.js → boneio-1.1.0.dev3/boneio/webui/frontend-dist/assets/cssMode-D_Y1ZXCG.js +1 -1
  13. boneio-1.1.0.dev2/boneio/webui/frontend-dist/assets/freemarker2-C5IgNKwL.js → boneio-1.1.0.dev3/boneio/webui/frontend-dist/assets/freemarker2-CzSRjwLP.js +1 -1
  14. boneio-1.1.0.dev2/boneio/webui/frontend-dist/assets/handlebars-coN2SbcA.js → boneio-1.1.0.dev3/boneio/webui/frontend-dist/assets/handlebars-CZgWREM_.js +1 -1
  15. boneio-1.1.0.dev2/boneio/webui/frontend-dist/assets/html-DauOMz0u.js → boneio-1.1.0.dev3/boneio/webui/frontend-dist/assets/html-l_-Dx9v2.js +1 -1
  16. boneio-1.1.0.dev2/boneio/webui/frontend-dist/assets/htmlMode-CmodurAE.js → boneio-1.1.0.dev3/boneio/webui/frontend-dist/assets/htmlMode-C94ufgZC.js +1 -1
  17. boneio-1.1.0.dev2/boneio/webui/frontend-dist/assets/index-CeFOvpPM.js → boneio-1.1.0.dev3/boneio/webui/frontend-dist/assets/index-BtWe9nS_.js +201 -201
  18. boneio-1.1.0.dev3/boneio/webui/frontend-dist/assets/index-D0XGmf2O.css +1 -0
  19. boneio-1.1.0.dev2/boneio/webui/frontend-dist/assets/javascript-N6k9oxRy.js → boneio-1.1.0.dev3/boneio/webui/frontend-dist/assets/javascript-CTWNFYCB.js +1 -1
  20. boneio-1.1.0.dev2/boneio/webui/frontend-dist/assets/jsonMode-DCkYHItT.js → boneio-1.1.0.dev3/boneio/webui/frontend-dist/assets/jsonMode-6lY0okwf.js +1 -1
  21. boneio-1.1.0.dev2/boneio/webui/frontend-dist/assets/liquid-CuYEfgul.js → boneio-1.1.0.dev3/boneio/webui/frontend-dist/assets/liquid-BpvwlD2T.js +1 -1
  22. boneio-1.1.0.dev2/boneio/webui/frontend-dist/assets/mdx-DEiUIP8w.js → boneio-1.1.0.dev3/boneio/webui/frontend-dist/assets/mdx-CLQNFljY.js +1 -1
  23. boneio-1.1.0.dev2/boneio/webui/frontend-dist/assets/python-DBpf3_HZ.js → boneio-1.1.0.dev3/boneio/webui/frontend-dist/assets/python-Cq5ZYn3v.js +1 -1
  24. boneio-1.1.0.dev2/boneio/webui/frontend-dist/assets/razor-S1P72cEP.js → boneio-1.1.0.dev3/boneio/webui/frontend-dist/assets/razor-kCTdL12M.js +1 -1
  25. boneio-1.1.0.dev2/boneio/webui/frontend-dist/assets/tsMode-A2L2Jxa9.js → boneio-1.1.0.dev3/boneio/webui/frontend-dist/assets/tsMode-C1oHUIMn.js +1 -1
  26. boneio-1.1.0.dev2/boneio/webui/frontend-dist/assets/typescript-CupJHRfY.js → boneio-1.1.0.dev3/boneio/webui/frontend-dist/assets/typescript-Bg5eEWu8.js +1 -1
  27. boneio-1.1.0.dev2/boneio/webui/frontend-dist/assets/xml-DDPTy55c.js → boneio-1.1.0.dev3/boneio/webui/frontend-dist/assets/xml-CMwCv6rv.js +1 -1
  28. boneio-1.1.0.dev2/boneio/webui/frontend-dist/assets/yaml-CuImUjrc.js → boneio-1.1.0.dev3/boneio/webui/frontend-dist/assets/yaml-CVxeQdw0.js +1 -1
  29. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/index.html +2 -2
  30. {boneio-1.1.0.dev2/boneio/webui/schema → boneio-1.1.0.dev3/boneio/webui/frontend-dist/schem}/binary_sensor.schema.json +32 -0
  31. {boneio-1.1.0.dev2/boneio/webui/schema → boneio-1.1.0.dev3/boneio/webui/frontend-dist/schem}/config.schema.json +327 -5
  32. {boneio-1.1.0.dev2/boneio/webui/schema → boneio-1.1.0.dev3/boneio/webui/frontend-dist/schem}/event.schema.json +112 -0
  33. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/schem/remote_devices.schema.json +179 -1
  34. {boneio-1.1.0.dev2/boneio/webui/schema → boneio-1.1.0.dev3/boneio/webui/frontend-dist/schem}/web.schema.json +4 -4
  35. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/routes/config.py +3 -0
  36. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/routes/remote_devices.py +84 -0
  37. {boneio-1.1.0.dev2/boneio/webui/frontend-dist/schem → boneio-1.1.0.dev3/boneio/webui/schema}/binary_sensor.schema.json +32 -0
  38. {boneio-1.1.0.dev2/boneio/webui/frontend-dist/schem → boneio-1.1.0.dev3/boneio/webui/schema}/config.schema.json +327 -5
  39. {boneio-1.1.0.dev2/boneio/webui/frontend-dist/schem → boneio-1.1.0.dev3/boneio/webui/schema}/event.schema.json +112 -0
  40. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/schema/remote_devices.schema.json +179 -1
  41. {boneio-1.1.0.dev2/boneio/webui/frontend-dist/schem → boneio-1.1.0.dev3/boneio/webui/schema}/web.schema.json +4 -4
  42. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/web_server.py +34 -29
  43. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3/boneio.egg-info}/PKG-INFO +2 -1
  44. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio.egg-info/SOURCES.txt +18 -17
  45. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio.egg-info/requires.txt +1 -0
  46. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/pyproject.toml +1 -0
  47. boneio-1.1.0.dev2/boneio/version.py +0 -2
  48. boneio-1.1.0.dev2/boneio/webui/frontend-dist/assets/index-BGHXdp7U.css +0 -1
  49. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/LICENSE +0 -0
  50. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/MANIFEST.in +0 -0
  51. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/README.md +0 -0
  52. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/__init__.py +0 -0
  53. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/boards/0.2/input.yaml +0 -0
  54. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/boards/0.2/output_24_16.yaml +0 -0
  55. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/boards/0.2/output_32_10.yaml +0 -0
  56. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/boards/0.2/output_32_5.yaml +0 -0
  57. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/boards/0.2/output_cover.yaml +0 -0
  58. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/boards/0.2/output_cover_mix.yaml +0 -0
  59. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/boards/0.3/input.yaml +0 -0
  60. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/boards/0.3/output_24_16.yaml +0 -0
  61. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/boards/0.3/output_32_10.yaml +0 -0
  62. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/boards/0.3/output_32_5.yaml +0 -0
  63. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/boards/0.3/output_cover.yaml +0 -0
  64. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/boards/0.3/output_cover_mix.yaml +0 -0
  65. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/boards/0.4/input.yaml +0 -0
  66. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/boards/0.4/output_24_16.yaml +0 -0
  67. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/boards/0.4/output_32_10.yaml +0 -0
  68. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/boards/0.4/output_32_5.yaml +0 -0
  69. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/boards/0.4/output_cover.yaml +0 -0
  70. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/boards/0.4/output_cover_mix.yaml +0 -0
  71. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/boards/0.5/input.yaml +0 -0
  72. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/boards/0.5/output_24_16.yaml +0 -0
  73. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/boards/0.5/output_32_10.yaml +0 -0
  74. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/boards/0.5/output_cover.yaml +0 -0
  75. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/boards/0.5/output_cover_mix.yaml +0 -0
  76. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/boards/0.6/input.yaml +0 -0
  77. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/boards/0.6/output_24_16.yaml +0 -0
  78. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/boards/0.6/output_32_10.yaml +0 -0
  79. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/boards/0.6/output_cover.yaml +0 -0
  80. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/boards/0.6/output_cover_mix.yaml +0 -0
  81. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/boards/0.7/input.yaml +0 -0
  82. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/boards/0.7/output_24_16.yaml +0 -0
  83. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/boards/0.7/output_32_10.yaml +0 -0
  84. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/boards/0.7/output_cover.yaml +0 -0
  85. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/boards/0.7/output_cover_mix.yaml +0 -0
  86. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/boards/0.8/input.yaml +0 -0
  87. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/boards/0.8/output_24_16.yaml +0 -0
  88. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/boards/0.8/output_32_10.yaml +0 -0
  89. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/boards/0.8/output_cover.yaml +0 -0
  90. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/boards/0.8/output_cover_mix.yaml +0 -0
  91. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/bonecli.py +0 -0
  92. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/components/__init__.py +0 -0
  93. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/components/cover/__init__.py +0 -0
  94. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/components/cover/cover.py +0 -0
  95. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/components/cover/previous.py +0 -0
  96. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/components/cover/time_based.py +0 -0
  97. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/components/cover/venetian.py +0 -0
  98. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/components/group/__init__.py +0 -0
  99. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/components/group/output_group.py +0 -0
  100. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/components/input/__init__.py +0 -0
  101. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/components/input/binary_sensor.py +0 -0
  102. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/components/input/detectors.py +0 -0
  103. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/components/input/event.py +0 -0
  104. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/components/output/__init__.py +0 -0
  105. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/components/output/basic.py +0 -0
  106. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/components/output/mcp.py +0 -0
  107. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/components/output/pca.py +0 -0
  108. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/components/output/pcf.py +0 -0
  109. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/components/sensor/__init__.py +0 -0
  110. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/components/sensor/virtual_energy.py +0 -0
  111. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/const.py +0 -0
  112. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/core/__init__.py +0 -0
  113. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/core/config/__init__.py +0 -0
  114. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/core/config/config_helper.py +0 -0
  115. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/core/config/package-lock.json +0 -0
  116. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/core/config/package.json +0 -0
  117. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/core/config/schema_converter.py +0 -0
  118. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/core/config/yaml_util.py +0 -0
  119. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/core/discovery.py +0 -0
  120. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/core/events/__init__.py +0 -0
  121. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/core/events/bus.py +0 -0
  122. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/core/manager/__init__.py +0 -0
  123. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/core/manager/covers.py +0 -0
  124. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/core/manager/display.py +0 -0
  125. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/core/manager/inputs.py +0 -0
  126. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/core/manager/modbus.py +0 -0
  127. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/core/manager/outputs.py +0 -0
  128. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/core/manager/sensors.py +0 -0
  129. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/core/messaging/__init__.py +0 -0
  130. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/core/messaging/basic.py +0 -0
  131. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/core/messaging/basic_mqtt.py +0 -0
  132. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/core/messaging/local.py +0 -0
  133. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/core/messaging/mqtt.py +0 -0
  134. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/core/messaging/queue.py +0 -0
  135. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/core/remote/esphome.py +0 -0
  136. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/core/remote/mqtt.py +0 -0
  137. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/core/sensor/__init__.py +0 -0
  138. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/core/sensor/base.py +0 -0
  139. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/core/sensor/system.py +0 -0
  140. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/core/state/__init__.py +0 -0
  141. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/core/state/manager.py +0 -0
  142. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/core/system/__init__.py +0 -0
  143. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/core/system/host_data.py +0 -0
  144. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/core/system/monitor.py +0 -0
  145. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/core/utils/__init__.py +0 -0
  146. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/core/utils/async_updater.py +0 -0
  147. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/core/utils/filter.py +0 -0
  148. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/core/utils/font_util.py +0 -0
  149. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/core/utils/logger.py +0 -0
  150. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/core/utils/timeperiod.py +0 -0
  151. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/core/utils/util.py +0 -0
  152. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/example_config/24x16/adc.yaml +0 -0
  153. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/example_config/24x16/binary_sensor.yaml +0 -0
  154. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/example_config/24x16/config.yaml +0 -0
  155. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/example_config/24x16/event.yaml +0 -0
  156. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/example_config/24x16/mqtt.yaml +0 -0
  157. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/example_config/24x16/output24x16A.yaml +0 -0
  158. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/example_config/32x10/adc.yaml +0 -0
  159. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/example_config/32x10/binary_sensor.yaml +0 -0
  160. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/example_config/32x10/config.yaml +0 -0
  161. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/example_config/32x10/event.yaml +0 -0
  162. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/example_config/32x10/mqtt.yaml +0 -0
  163. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/example_config/32x10/output32x10A.yaml +0 -0
  164. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/example_config/__init__.py +0 -0
  165. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/example_config/cover/adc.yaml +0 -0
  166. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/example_config/cover/binary_sensor.yaml +0 -0
  167. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/example_config/cover/config.yaml +0 -0
  168. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/example_config/cover/cover.yaml +0 -0
  169. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/example_config/cover/event.yaml +0 -0
  170. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/example_config/cover/mqtt.yaml +0 -0
  171. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/example_config/cover/outputCover.yaml +0 -0
  172. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/example_config/cover_mix/adc.yaml +0 -0
  173. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/example_config/cover_mix/binary_sensor.yaml +0 -0
  174. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/example_config/cover_mix/config.yaml +0 -0
  175. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/example_config/cover_mix/cover.yaml +0 -0
  176. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/example_config/cover_mix/event.yaml +0 -0
  177. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/example_config/cover_mix/mqtt.yaml +0 -0
  178. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/example_config/cover_mix/outputCoverMix.yaml +0 -0
  179. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/example_config/different_configs/adc.yaml +0 -0
  180. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/example_config/different_configs/all_binary_sensor.yaml +0 -0
  181. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/example_config/different_configs/binary_sensor.yaml +0 -0
  182. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/example_config/different_configs/binary_sensor_v_0_7.yaml +0 -0
  183. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/example_config/different_configs/config_24_16.yaml +0 -0
  184. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/example_config/different_configs/event_all.yaml +0 -0
  185. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/example_config/different_configs/event_v_0_7.yaml +0 -0
  186. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/example_config/different_configs/led32x4A.yaml +0 -0
  187. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/example_config/different_configs/output24x16A.yaml +0 -0
  188. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/example_config/different_configs/output24x16A_v0.3.yaml +0 -0
  189. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/example_config/different_configs/output32x10A.yaml +0 -0
  190. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/example_config/different_configs/output32x5A.yaml +0 -0
  191. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/exceptions.py +0 -0
  192. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/hardware/__init__.py +0 -0
  193. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/hardware/analog/__init__.py +0 -0
  194. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/hardware/analog/adc.py +0 -0
  195. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/hardware/display/__init__.py +0 -0
  196. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/hardware/display/fonts/danube__.ttf +0 -0
  197. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/hardware/display/oled.py +0 -0
  198. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/hardware/gpio/__init__.py +0 -0
  199. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/hardware/gpio/expanders/__init__.py +0 -0
  200. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/hardware/gpio/expanders/mcp23017.py +0 -0
  201. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/hardware/gpio/expanders/pca9685.py +0 -0
  202. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/hardware/gpio/expanders/pcf8575.py +0 -0
  203. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/hardware/gpio/input/__init__.py +0 -0
  204. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/hardware/gpio/input/base.py +0 -0
  205. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/hardware/gpio/input/manager.py +0 -0
  206. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/hardware/i2c/__init__.py +0 -0
  207. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/hardware/i2c/bus.py +0 -0
  208. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/hardware/i2c/ina219.py +0 -0
  209. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/hardware/i2c/ina219_driver.py +0 -0
  210. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/hardware/i2c/mcp9808.py +0 -0
  211. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/hardware/i2c/pct2075.py +0 -0
  212. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/hardware/onewire/__init__.py +0 -0
  213. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/hardware/onewire/bus.py +0 -0
  214. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/hardware/onewire/dallas.py +0 -0
  215. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/hardware/onewire/ds2482.py +0 -0
  216. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/hardware/sensor/__init__.py +0 -0
  217. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/hardware/sensor/temperature/__init__.py +0 -0
  218. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/hardware/sensor/temperature/base.py +0 -0
  219. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/hardware/sensor/temperature/mcp9808.py +0 -0
  220. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/hardware/sensor/temperature/pct2075.py +0 -0
  221. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/integration/__init__.py +0 -0
  222. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/integration/interlock.py +0 -0
  223. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/modbus/__init__.py +0 -0
  224. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/modbus/cli.py +0 -0
  225. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/modbus/client.py +0 -0
  226. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/modbus/coordinator.py +0 -0
  227. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/modbus/devices/__init__.py +0 -0
  228. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/modbus/devices/energy_meters/orno-or-we-517.json +0 -0
  229. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/modbus/devices/energy_meters/sdm120.json +0 -0
  230. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/modbus/devices/energy_meters/sdm630.json +0 -0
  231. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/modbus/devices/energy_meters/socomec_e03.json +0 -0
  232. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/modbus/devices/energy_meters/socomec_e23.json +0 -0
  233. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/modbus/devices/hvac/fujitsu-ac.json +0 -0
  234. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/modbus/devices/hvac/ventclear.json +0 -0
  235. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/modbus/devices/inverters/sofar.json +0 -0
  236. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/modbus/devices/inverters/thessla.json +0 -0
  237. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/modbus/devices/other/r4dcb08.json +0 -0
  238. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/modbus/devices/other/wanas415.json +0 -0
  239. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/modbus/devices/sensors/cwt.json +0 -0
  240. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/modbus/devices/sensors/dts1964_3f.json +0 -0
  241. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/modbus/devices/sensors/dyp-a12-ultrasonic.json +0 -0
  242. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/modbus/devices/sensors/liquid-sensor.json +0 -0
  243. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/modbus/devices/sensors/pt100.json +0 -0
  244. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/modbus/devices/sensors/sht20.json +0 -0
  245. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/modbus/devices/sensors/sht30.json +0 -0
  246. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/modbus/entities/__init__.py +0 -0
  247. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/modbus/entities/base.py +0 -0
  248. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/modbus/entities/derived/__init__.py +0 -0
  249. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/modbus/entities/derived/numeric.py +0 -0
  250. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/modbus/entities/derived/select.py +0 -0
  251. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/modbus/entities/derived/switch.py +0 -0
  252. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/modbus/entities/derived/text.py +0 -0
  253. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/modbus/entities/sensor/__init__.py +0 -0
  254. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/modbus/entities/sensor/binary.py +0 -0
  255. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/modbus/entities/sensor/numeric.py +0 -0
  256. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/modbus/entities/sensor/text.py +0 -0
  257. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/modbus/entities/writeable/__init__.py +0 -0
  258. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/modbus/entities/writeable/binary.py +0 -0
  259. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/modbus/entities/writeable/numeric.py +0 -0
  260. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/modbus/utils.py +0 -0
  261. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/models/__init__.py +0 -0
  262. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/models/actions.py +0 -0
  263. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/models/events.py +0 -0
  264. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/models/files.py +0 -0
  265. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/models/logs.py +0 -0
  266. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/models/mqtt.py +0 -0
  267. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/models/state.py +0 -0
  268. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/schema/actions_sensor.yaml +0 -0
  269. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/schema/actions_switch.yaml +0 -0
  270. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/schema/filters.yaml +0 -0
  271. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/schema/filters_adc.yaml +0 -0
  272. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/schema/id.yaml +0 -0
  273. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/schema/schema.yaml +0 -0
  274. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/schema/temp_unit.yaml +0 -0
  275. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/schema/update_interval.yaml +0 -0
  276. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/app.py +0 -0
  277. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/abap-CRCWOmpq.js +0 -0
  278. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/apex-DnsZk_dE.js +0 -0
  279. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/azcli-1IWB1ccx.js +0 -0
  280. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/bat-DPkNLes8.js +0 -0
  281. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/bicep-Corcdgou.js +0 -0
  282. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/cameligo-CGrWLZr3.js +0 -0
  283. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/clojure-D9WOWImG.js +0 -0
  284. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/codicon-DCmgc-ay.ttf +0 -0
  285. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/coffee-B7EJu28W.js +0 -0
  286. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/cpp-SEyurbux.js +0 -0
  287. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/csharp-BoL64M5l.js +0 -0
  288. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/csp-C46ZqvIl.js +0 -0
  289. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/css-DQU6DXDx.js +0 -0
  290. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/cypher-D84EuPTj.js +0 -0
  291. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/dart-D8lhlL1r.js +0 -0
  292. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/dockerfile-DLk6rpji.js +0 -0
  293. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/ecl-BO6FnfXk.js +0 -0
  294. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/editor.worker-DsAeyiJ5.js +0 -0
  295. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/elixir-BRjLKONM.js +0 -0
  296. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/flow9-Cac8vKd7.js +0 -0
  297. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/fsharp-fd1GTHhf.js +0 -0
  298. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/go-O9LJTZXk.js +0 -0
  299. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/graphql-LQdxqEYJ.js +0 -0
  300. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/hcl-DxDQ3s82.js +0 -0
  301. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/ini-BvajGCUy.js +0 -0
  302. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/java-SYsfObOQ.js +0 -0
  303. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/json.worker-DaRII17c.js +0 -0
  304. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/julia-DQXNmw_w.js +0 -0
  305. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/kotlin-qQ0MG-9I.js +0 -0
  306. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/less-GGFNNJHn.js +0 -0
  307. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/lexon-Canl7DCW.js +0 -0
  308. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/lua-D28Ae8-K.js +0 -0
  309. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/m3-DPitgjJI.js +0 -0
  310. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/markdown-B811l8j2.js +0 -0
  311. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/mips-CdjsipkG.js +0 -0
  312. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/msdax-CYqgjx_P.js +0 -0
  313. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/mysql-BHd6q0vd.js +0 -0
  314. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/objective-c-B1aVtJYH.js +0 -0
  315. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/pascal-BhNW15KB.js +0 -0
  316. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/pascaligo-5jv8CcQD.js +0 -0
  317. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/perl-DlYyT36c.js +0 -0
  318. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/pgsql-Dy0bjov7.js +0 -0
  319. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/php-120yhfDK.js +0 -0
  320. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/pla-CjnFlu4u.js +0 -0
  321. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/postiats-CQpG440k.js +0 -0
  322. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/powerquery-DdJtto1Z.js +0 -0
  323. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/powershell-Bu_VLpJB.js +0 -0
  324. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/protobuf-IBS6jZEB.js +0 -0
  325. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/pug-kFxLfcjb.js +0 -0
  326. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/qsharp-q7JyzKFN.js +0 -0
  327. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/r-BIFz-_sK.js +0 -0
  328. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/redis-CHOsPHWR.js +0 -0
  329. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/redshift-CBifECDb.js +0 -0
  330. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/restructuredtext-CghPJEOS.js +0 -0
  331. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/ruby-CYWGW-b1.js +0 -0
  332. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/rust-DMDD0SHb.js +0 -0
  333. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/sb-BYAiYHFx.js +0 -0
  334. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/scala-Bqvq8jcR.js +0 -0
  335. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/scheme-Dhb-2j9p.js +0 -0
  336. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/scss-CTwUZ5N7.js +0 -0
  337. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/shell-CsDZo4DB.js +0 -0
  338. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/solidity-CME5AdoB.js +0 -0
  339. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/sophia-RYC1BQQz.js +0 -0
  340. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/sparql-KEyrF7De.js +0 -0
  341. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/sql-BdTr02Mf.js +0 -0
  342. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/st-C7iG7M4S.js +0 -0
  343. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/swift-D7IUmUK8.js +0 -0
  344. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/systemverilog-DgMryOEJ.js +0 -0
  345. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/tcl-PloMZuKG.js +0 -0
  346. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/twig-BfRIq3la.js +0 -0
  347. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/typespec-CzxlYoT_.js +0 -0
  348. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/vb-BwAE3J76.js +0 -0
  349. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/wgsl-B_1kOXbF.js +0 -0
  350. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/assets/yaml.worker-BTE-_K6g.js +0 -0
  351. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/boneio.svg +0 -0
  352. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/boneio_fav.svg +0 -0
  353. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/schem/adc.schema.json +0 -0
  354. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/schem/areas.schema.json +0 -0
  355. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/schem/boneio.schema.json +0 -0
  356. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/schem/cover.schema.json +0 -0
  357. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/schem/dallas.schema.json +0 -0
  358. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/schem/ds2482.schema.json +0 -0
  359. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/schem/ina219.schema.json +0 -0
  360. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/schem/lm75.schema.json +0 -0
  361. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/schem/logger.schema.json +0 -0
  362. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/schem/mcp23017.schema.json +0 -0
  363. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/schem/mcp9808.schema.json +0 -0
  364. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/schem/modbus.schema.json +0 -0
  365. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/schem/modbus_devices.schema.json +0 -0
  366. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/schem/mqtt.schema.json +0 -0
  367. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/schem/oled.schema.json +0 -0
  368. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/schem/output.schema.json +0 -0
  369. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/schem/output_group.schema.json +0 -0
  370. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/schem/pca9685.schema.json +0 -0
  371. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/schem/pcf8575.schema.json +0 -0
  372. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/schem/sensor.schema.json +0 -0
  373. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/frontend-dist/schem/virtual_energy_sensor.schema.json +0 -0
  374. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/middleware/__init__.py +0 -0
  375. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/middleware/auth.py +0 -0
  376. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/routes/__init__.py +0 -0
  377. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/routes/auth.py +0 -0
  378. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/routes/caddy.py +0 -0
  379. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/routes/covers.py +0 -0
  380. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/routes/modbus.py +0 -0
  381. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/routes/outputs.py +0 -0
  382. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/routes/sensors.py +0 -0
  383. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/routes/system.py +0 -0
  384. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/routes/update.py +0 -0
  385. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/schema/adc.schema.json +0 -0
  386. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/schema/areas.schema.json +0 -0
  387. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/schema/boneio.schema.json +0 -0
  388. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/schema/cover.schema.json +0 -0
  389. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/schema/dallas.schema.json +0 -0
  390. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/schema/ds2482.schema.json +0 -0
  391. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/schema/ina219.schema.json +0 -0
  392. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/schema/lm75.schema.json +0 -0
  393. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/schema/logger.schema.json +0 -0
  394. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/schema/mcp23017.schema.json +0 -0
  395. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/schema/mcp9808.schema.json +0 -0
  396. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/schema/modbus.schema.json +0 -0
  397. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/schema/modbus_devices.schema.json +0 -0
  398. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/schema/mqtt.schema.json +0 -0
  399. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/schema/oled.schema.json +0 -0
  400. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/schema/output.schema.json +0 -0
  401. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/schema/output_group.schema.json +0 -0
  402. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/schema/pca9685.schema.json +0 -0
  403. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/schema/pcf8575.schema.json +0 -0
  404. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/schema/sensor.schema.json +0 -0
  405. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/schema/virtual_energy_sensor.schema.json +0 -0
  406. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/services/__init__.py +0 -0
  407. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/services/logs.py +0 -0
  408. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio/webui/websocket_manager.py +0 -0
  409. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio.egg-info/dependency_links.txt +0 -0
  410. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio.egg-info/entry_points.txt +0 -0
  411. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/boneio.egg-info/top_level.txt +0 -0
  412. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/setup.cfg +0 -0
  413. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/setup.py +0 -0
  414. {boneio-1.1.0.dev2 → boneio-1.1.0.dev3}/tests/test_py313_compatibility.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: boneio
3
- Version: 1.1.0.dev2
3
+ Version: 1.1.0.dev3
4
4
  Summary: Python App for BoneIO
5
5
  Author-email: Paweł Szafer <pszafer@gmail.com>
6
6
  License: GNU General Public License v3.0
@@ -13,6 +13,7 @@ Description-Content-Type: text/markdown
13
13
  License-File: LICENSE
14
14
  Requires-Dist: smbus2==0.4.3
15
15
  Requires-Dist: aiomqtt==2.4.0
16
+ Requires-Dist: aiohttp==3.13.3
16
17
  Requires-Dist: Cerberus==1.3.7
17
18
  Requires-Dist: colorlog==6.9.0
18
19
  Requires-Dist: luma-core==2.5.1
@@ -698,7 +698,7 @@ class Manager:
698
698
  )
699
699
 
700
700
  elif action == REMOTE_OUTPUT:
701
- # Control output on remote device
701
+ # Control output on remote device (supports ESPHome lights with brightness/color and WLED effects)
702
702
  remote_device_id = action_definition.get("remote_device")
703
703
  output_id = action_definition.get("output_id")
704
704
  action_output = action_definition.get("action_output", "TOGGLE")
@@ -706,6 +706,14 @@ class Manager:
706
706
  device_id=remote_device_id,
707
707
  output_id=output_id,
708
708
  action=action_output,
709
+ brightness=action_definition.get("brightness"),
710
+ color_temp=action_definition.get("color_temp"),
711
+ rgb=action_definition.get("rgb"),
712
+ transition=action_definition.get("transition"),
713
+ effect=action_definition.get("effect"),
714
+ palette=action_definition.get("palette"),
715
+ effect_speed=action_definition.get("effect_speed"),
716
+ effect_intensity=action_definition.get("effect_intensity"),
709
717
  )
710
718
 
711
719
  elif action == REMOTE_COVER:
@@ -740,16 +748,17 @@ class Manager:
740
748
  configure_logger(log_config, debug=0)
741
749
  _LOGGER.info("Logger configuration reloaded successfully")
742
750
 
743
- def _reload_remote_devices(self) -> None:
751
+ async def _reload_remote_devices(self) -> None:
744
752
  """Reload remote devices configuration from config file.
745
753
 
746
754
  This allows hot-reloading of remote devices without restarting the application.
755
+ Handles ESPHome connections properly (stops old, starts new).
747
756
  """
748
757
  config = self._config_helper.get_config()
749
758
  remote_devices_config = config.get("remote_devices", [])
750
759
 
751
760
  _LOGGER.info("Reloading remote devices configuration")
752
- self.remote_devices.reload(remote_devices_config)
761
+ await self.remote_devices.reload(remote_devices_config)
753
762
  _LOGGER.info("Remote devices configuration reloaded successfully")
754
763
 
755
764
  async def publish_discovery(self) -> None:
@@ -18,6 +18,7 @@ from boneio.core.remote.base import (
18
18
  )
19
19
  from boneio.core.remote.mqtt import MQTTRemoteDevice
20
20
  from boneio.core.remote.esphome import ESPHomeRemoteDevice, ESPHOME_API_AVAILABLE
21
+ from boneio.core.remote.wled import WLEDRemoteDevice
21
22
 
22
23
  if TYPE_CHECKING:
23
24
  from boneio.core.messaging import MessageBus
@@ -176,6 +177,8 @@ class RemoteDeviceManager:
176
177
  return None
177
178
  elif protocol == RemoteDeviceProtocol.ESPHOME_API:
178
179
  return self._create_esphome_device(device_id, name, config)
180
+ elif protocol == RemoteDeviceProtocol.WLED:
181
+ return self._create_wled_device(device_id, name, config)
179
182
  else:
180
183
  _LOGGER.error("Unsupported protocol '%s' for device '%s'", protocol, device_id)
181
184
  return None
@@ -259,6 +262,40 @@ class RemoteDeviceManager:
259
262
  covers=covers,
260
263
  )
261
264
 
265
+ def _create_wled_device(
266
+ self,
267
+ device_id: str,
268
+ name: str,
269
+ config: dict[str, Any],
270
+ ) -> WLEDRemoteDevice | None:
271
+ """Create WLED remote device.
272
+
273
+ Args:
274
+ device_id: Device ID
275
+ name: Device name
276
+ config: Full device configuration
277
+
278
+ Returns:
279
+ WLEDRemoteDevice instance or None if creation failed
280
+ """
281
+ wled_config = config.get("wled", {})
282
+ host = wled_config.get("host")
283
+
284
+ if not host:
285
+ _LOGGER.error("WLED device '%s' missing 'host' in wled config", device_id)
286
+ return None
287
+
288
+ port = wled_config.get("port", 80)
289
+ segments = wled_config.get("segments", [])
290
+
291
+ return WLEDRemoteDevice(
292
+ id=device_id,
293
+ name=name,
294
+ host=host,
295
+ port=port,
296
+ segments=segments,
297
+ )
298
+
262
299
  async def start_all_connections(self, delay_seconds: float = 10.0) -> None:
263
300
  """Start persistent connections for all ESPHome devices.
264
301
 
@@ -332,19 +369,32 @@ class RemoteDeviceManager:
332
369
  output_id: str,
333
370
  action: str,
334
371
  brightness: int | None = None,
372
+ color_temp: int | None = None,
373
+ rgb: list[int] | tuple[int, int, int] | None = None,
335
374
  transition: float | None = None,
375
+ effect: int | None = None,
376
+ palette: int | None = None,
377
+ effect_speed: int | None = None,
378
+ effect_intensity: int | None = None,
336
379
  ) -> bool:
337
- """Control output on remote device (BoneIO MQTT or ESPHome API).
380
+ """Control output on remote device (BoneIO MQTT, ESPHome API, or WLED).
338
381
 
339
382
  Automatically detects device protocol and routes to appropriate method.
340
383
  For ESPHome devices, output_id can be a switch or light entity.
384
+ For WLED devices, output_id can be "main" or segment ID.
341
385
 
342
386
  Args:
343
387
  device_id: ID of the remote device
344
388
  output_id: ID of the output/switch/light to control
345
389
  action: Action to perform (ON, OFF, TOGGLE, BRIGHTNESS_UP, BRIGHTNESS_DOWN, SET_BRIGHTNESS)
346
- brightness: Brightness level (0-255) - only for ESPHome lights
347
- transition: Transition time in seconds - only for ESPHome lights
390
+ brightness: Brightness level (0-255) - for ESPHome/WLED lights
391
+ color_temp: Color temperature in mireds - only for ESPHome lights
392
+ rgb: RGB color as [R, G, B] list or tuple (0-255 each) - for ESPHome/WLED lights
393
+ transition: Transition time in seconds - for ESPHome/WLED lights
394
+ effect: WLED effect ID
395
+ palette: WLED color palette ID
396
+ effect_speed: WLED effect speed (0-255)
397
+ effect_intensity: WLED effect intensity (0-255)
348
398
 
349
399
  Returns:
350
400
  True if command was sent successfully
@@ -359,10 +409,16 @@ class RemoteDeviceManager:
359
409
  # Check if output_id is a light
360
410
  if device.has_light(output_id):
361
411
  _LOGGER.debug("Controlling ESPHome light '%s' on device '%s'", output_id, device_id)
412
+ # Convert rgb list to tuple[int, int, int] if needed
413
+ rgb_tuple: tuple[int, int, int] | None = None
414
+ if rgb and len(rgb) >= 3:
415
+ rgb_tuple = (int(rgb[0]), int(rgb[1]), int(rgb[2]))
362
416
  return await device.control_light(
363
417
  light_id=output_id,
364
418
  action=action,
365
419
  brightness=brightness,
420
+ color_temp=color_temp,
421
+ rgb=rgb_tuple,
366
422
  transition=transition if transition is not None else 0.0,
367
423
  )
368
424
  # Otherwise treat as switch
@@ -372,6 +428,27 @@ class RemoteDeviceManager:
372
428
  action=action,
373
429
  )
374
430
 
431
+ # For WLED devices, use HTTP JSON API
432
+ if isinstance(device, WLEDRemoteDevice):
433
+ _LOGGER.debug("Controlling WLED '%s' segment '%s' on device '%s'", output_id, action, device_id)
434
+ # Parse segment_id - "main" means whole device, otherwise it's segment ID
435
+ segment_id = None if output_id == "main" else int(output_id)
436
+ # Convert rgb list to tuple if needed
437
+ wled_rgb: tuple[int, int, int] | None = None
438
+ if rgb and len(rgb) >= 3:
439
+ wled_rgb = (int(rgb[0]), int(rgb[1]), int(rgb[2]))
440
+ return await device.control_light(
441
+ segment_id=segment_id,
442
+ action=action,
443
+ brightness=brightness,
444
+ rgb=wled_rgb,
445
+ transition=transition if transition is not None else 0.0,
446
+ effect=effect,
447
+ palette=palette,
448
+ effect_speed=effect_speed,
449
+ effect_intensity=effect_intensity,
450
+ )
451
+
375
452
  # For MQTT devices, use standard control_output
376
453
  return await device.control_output(
377
454
  output_id=output_id,
@@ -420,20 +497,52 @@ class RemoteDeviceManager:
420
497
  **kwargs,
421
498
  )
422
499
 
423
- def reload(self, remote_devices_config: list[dict[str, Any]] | None = None) -> None:
500
+ async def reload(self, remote_devices_config: list[dict[str, Any]] | None = None) -> None:
424
501
  """Reload remote devices from config.
425
502
 
503
+ Stops existing ESPHome connections, reconfigures devices,
504
+ and starts new ESPHome connections.
505
+
426
506
  Args:
427
507
  remote_devices_config: New list of remote device configurations
428
508
  """
429
509
  _LOGGER.info("Reloading remote devices configuration")
510
+
511
+ # Stop existing ESPHome connections first
512
+ await self.stop_all_connections()
513
+
430
514
  self._devices.clear()
431
515
 
432
516
  if remote_devices_config:
433
517
  self._configure_devices(remote_devices_config)
434
518
 
519
+ # Start ESPHome connections immediately (no delay for reload)
520
+ await self._start_esphome_connections_immediate()
521
+
435
522
  _LOGGER.info("Reloaded %d remote devices", len(self._devices))
436
523
 
524
+ async def _start_esphome_connections_immediate(self) -> None:
525
+ """Start ESPHome connections immediately without delay.
526
+
527
+ Used during reload when we want connections to start right away.
528
+ """
529
+ esphome_devices = [
530
+ (device_id, device)
531
+ for device_id, device in self._devices.items()
532
+ if isinstance(device, ESPHomeRemoteDevice)
533
+ ]
534
+
535
+ if not esphome_devices:
536
+ return
537
+
538
+ _LOGGER.info("Starting %d ESPHome connection(s)...", len(esphome_devices))
539
+ for device_id, device in esphome_devices:
540
+ try:
541
+ await device.start_connection()
542
+ _LOGGER.info("Started connection for ESPHome device '%s'", device_id)
543
+ except Exception as e:
544
+ _LOGGER.error("Failed to start connection for ESPHome device '%s': %s", device_id, e)
545
+
437
546
  def to_dict(self) -> dict[str, Any]:
438
547
  """Convert to dictionary representation.
439
548
 
@@ -3,6 +3,7 @@
3
3
  Supports multiple protocols:
4
4
  - MQTT: Standard MQTT communication (boneIO Black, ESPHome, etc.)
5
5
  - ESPHome API: Native ESPHome API via TCP/IP
6
+ - WLED: WLED HTTP JSON API for LED strips
6
7
  - CAN: CAN bus communication (future)
7
8
  - Loxone: Loxone Miniserver integration (future)
8
9
  """
@@ -16,6 +17,11 @@ from boneio.core.remote.esphome import (
16
17
  ESPHOME_API_AVAILABLE,
17
18
  ZEROCONF_AVAILABLE,
18
19
  )
20
+ from boneio.core.remote.wled import (
21
+ WLEDRemoteDevice,
22
+ scan_wled_devices,
23
+ discover_wled_info,
24
+ )
19
25
 
20
26
  __all__ = [
21
27
  "RemoteDevice",
@@ -26,4 +32,7 @@ __all__ = [
26
32
  "scan_esphome_devices",
27
33
  "ESPHOME_API_AVAILABLE",
28
34
  "ZEROCONF_AVAILABLE",
35
+ "WLEDRemoteDevice",
36
+ "scan_wled_devices",
37
+ "discover_wled_info",
29
38
  ]
@@ -25,6 +25,7 @@ class RemoteDeviceProtocol(str, Enum):
25
25
  LOXONE = "loxone"
26
26
  ESPHOME_UDP = "esphome_udp"
27
27
  ESPHOME_API = "esphome_api"
28
+ WLED = "wled"
28
29
 
29
30
 
30
31
  class RemoteDeviceType(str, Enum):
@@ -33,6 +34,7 @@ class RemoteDeviceType(str, Enum):
33
34
  BONEIO_BLACK = "boneio_black"
34
35
  ESPHOME = "esphome"
35
36
  LOXONE_MINISERVER = "loxone_miniserver"
37
+ WLED = "wled"
36
38
  GENERIC = "generic"
37
39
 
38
40