ramses-rf 0.52.1__tar.gz → 0.52.3__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 (375) hide show
  1. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/.github/workflows/check-lint.yml +1 -1
  2. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/.github/workflows/check-test.yml +1 -1
  3. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/.github/workflows/check-type.yml +1 -1
  4. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/.github/workflows/publish-hatch.yml +2 -2
  5. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/.pre-commit-config.yaml +1 -1
  6. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/PKG-INFO +1 -1
  7. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/README-developers.md +3 -0
  8. ramses_rf-0.52.3/docs/Makefile +20 -0
  9. ramses_rf-0.52.3/docs/make.bat +35 -0
  10. ramses_rf-0.52.3/docs/source/_static/ramses_rf_logo.png +0 -0
  11. ramses_rf-0.52.3/docs/source/binding_process_diagram.md +159 -0
  12. ramses_rf-0.52.3/docs/source/conf.py +76 -0
  13. ramses_rf-0.52.3/docs/source/glossary.rst +16 -0
  14. ramses_rf-0.52.3/docs/source/index.rst +20 -0
  15. ramses_rf-0.52.3/docs/source/modules.rst +9 -0
  16. ramses_rf-0.52.3/docs/source/ramses_cli.rst +37 -0
  17. ramses_rf-0.52.3/docs/source/ramses_rf.device.rst +37 -0
  18. ramses_rf-0.52.3/docs/source/ramses_rf.rst +102 -0
  19. ramses_rf-0.52.3/docs/source/ramses_rf.system.rst +45 -0
  20. ramses_rf-0.52.3/docs/source/ramses_tx.rst +181 -0
  21. ramses_rf-0.52.3/docs/source/usage.md +22 -0
  22. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/ramses_rf/__init__.py +1 -0
  23. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/ramses_rf/binding_fsm.py +18 -4
  24. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/ramses_rf/database.py +57 -39
  25. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/ramses_rf/device/heat.py +4 -6
  26. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/ramses_rf/device/hvac.py +116 -56
  27. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/ramses_rf/dispatcher.py +9 -4
  28. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/ramses_rf/entity_base.py +133 -66
  29. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/ramses_rf/gateway.py +2 -2
  30. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/ramses_rf/schemas.py +1 -1
  31. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/ramses_rf/system/zones.py +1 -1
  32. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/ramses_rf/version.py +1 -1
  33. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/ramses_tx/__init__.py +3 -1
  34. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/ramses_tx/command.py +6 -5
  35. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/ramses_tx/gateway.py +3 -0
  36. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/ramses_tx/logger.py +8 -0
  37. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/ramses_tx/parsers.py +41 -37
  38. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/ramses_tx/schemas.py +28 -15
  39. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/ramses_tx/transport.py +45 -25
  40. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/ramses_tx/version.py +1 -1
  41. ramses_rf-0.52.3/requirements/requirements_docs.txt +15 -0
  42. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/test_systems.py +1 -4
  43. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests_rf/test_database.py +32 -0
  44. ramses_rf-0.52.3/tests/tests_rf/test_entity_base.py +228 -0
  45. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
  46. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/.github/dependabot.yml +0 -0
  47. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/.gitignore +0 -0
  48. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/LICENSE +0 -0
  49. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/README.md +0 -0
  50. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/client.py +0 -0
  51. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/misc/2411_parser.py +0 -0
  52. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/misc/fingerprints.log +0 -0
  53. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/misc/ser2net.yaml +0 -0
  54. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/misc/ti_3410/notes.sh +0 -0
  55. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/misc/ti_3410/ti_3410.fw +0 -0
  56. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/pyproject.toml +0 -0
  57. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/ramses_cli/__init__.py +0 -0
  58. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/ramses_cli/client.py +0 -0
  59. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/ramses_cli/debug.py +0 -0
  60. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/ramses_cli/discovery.py +0 -0
  61. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/ramses_cli/utils/cat_slow.py +0 -0
  62. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/ramses_cli/utils/convert.py +0 -0
  63. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/ramses_rf/const.py +0 -0
  64. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/ramses_rf/device/__init__.py +0 -0
  65. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/ramses_rf/device/base.py +0 -0
  66. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/ramses_rf/exceptions.py +0 -0
  67. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/ramses_rf/helpers.py +0 -0
  68. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/ramses_rf/py.typed +0 -0
  69. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/ramses_rf/system/__init__.py +0 -0
  70. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/ramses_rf/system/faultlog.py +0 -0
  71. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/ramses_rf/system/heat.py +0 -0
  72. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/ramses_rf/system/schedule.py +0 -0
  73. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/ramses_tx/address.py +0 -0
  74. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/ramses_tx/const.py +0 -0
  75. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/ramses_tx/exceptions.py +0 -0
  76. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/ramses_tx/fingerprints.py +0 -0
  77. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/ramses_tx/frame.py +0 -0
  78. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/ramses_tx/helpers.py +0 -0
  79. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/ramses_tx/message.py +0 -0
  80. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/ramses_tx/opentherm.py +0 -0
  81. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/ramses_tx/packet.py +0 -0
  82. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/ramses_tx/protocol.py +0 -0
  83. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/ramses_tx/protocol_fsm.py +0 -0
  84. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/ramses_tx/py.typed +0 -0
  85. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/ramses_tx/ramses.py +0 -0
  86. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/ramses_tx/typed_dicts.py +0 -0
  87. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/ramses_tx/typing.py +0 -0
  88. {ramses_rf-0.52.1 → ramses_rf-0.52.3/requirements}/requirements.txt +0 -0
  89. {ramses_rf-0.52.1 → ramses_rf-0.52.3/requirements}/requirements_dev.txt +0 -0
  90. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/deprecated/_test_apis_mock.py +0 -0
  91. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/deprecated/_test_mock_faultlog.py +0 -0
  92. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/deprecated/_test_mock_schedule.py +0 -0
  93. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/deprecated/_test_packets_bad.py +0 -0
  94. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/deprecated/_test_performance_WIP.py +0 -0
  95. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/deprecated/_test_state_mgt.py +0 -0
  96. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/deprecated/common.py +0 -0
  97. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/deprecated/mocked_devices/__init__.py +0 -0
  98. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/deprecated/mocked_devices/command.py +0 -0
  99. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/deprecated/mocked_devices/const.py +0 -0
  100. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/deprecated/mocked_devices/device_heat.py +0 -0
  101. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/deprecated/mocked_devices/device_hvac.py +0 -0
  102. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/deprecated/mocked_devices/transport.py +0 -0
  103. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/__init__.py +0 -0
  104. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/bindings/heat/ctl_bdr_91t.log +0 -0
  105. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/bindings/heat/dts_ctl_sensor.log +0 -0
  106. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/bindings/heat/hcw_ctl_sensor.log +0 -0
  107. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/bindings/heat/rnd_ctl_sensor.log +0 -0
  108. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/bindings/heat/rnd_ctl_sensor.yaml +0 -0
  109. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/bindings/heat/trv_ctl.log +0 -0
  110. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/bindings/hvac/co2_fan_itho.json +0 -0
  111. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/bindings/hvac/co2_fan_itho.log +0 -0
  112. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/bindings/hvac/co2_fan_itho.yaml +0 -0
  113. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/bindings/hvac/dis_fan_orcon.json +0 -0
  114. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/bindings/hvac/dis_fan_orcon.log +0 -0
  115. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/bindings/hvac/rem_fan_climarad.log +0 -0
  116. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/bindings/hvac/rem_fan_nuaire.json +0 -0
  117. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/bindings/hvac/rem_fan_nuaire.log +0 -0
  118. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/bindings/hvac/rem_fan_nuaire.yaml +0 -0
  119. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/bindings/hvac/rem_fan_vasco.log +0 -0
  120. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/bindings/hvac/rem_fan_ventura.log +0 -0
  121. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/devices/device_02.log +0 -0
  122. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/devices/device_04.log +0 -0
  123. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/devices/device_10.log +0 -0
  124. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/devices/device_13.log +0 -0
  125. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/devices/device_22.log +0 -0
  126. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/eavesdrop_dev_class/hvac/known_list_eavesdrop_off.json +0 -0
  127. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/eavesdrop_dev_class/hvac/known_list_eavesdrop_on.json +0 -0
  128. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/eavesdrop_dev_class/hvac/packet.log +0 -0
  129. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/eavesdrop_schema/_trv_actuator_long/packet.log +0 -0
  130. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/eavesdrop_schema/_trv_actuator_long/schema_eavesdrop_off.json +0 -0
  131. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/eavesdrop_schema/_trv_actuator_long/schema_eavesdrop_on.json +0 -0
  132. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/eavesdrop_schema/_trv_actuator_mixed/packet.log +0 -0
  133. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/eavesdrop_schema/_trv_actuator_mixed/schema_eavesdrop_off.json +0 -0
  134. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/eavesdrop_schema/_trv_actuator_mixed/schema_eavesdrop_on.json +0 -0
  135. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/eavesdrop_schema/_ufh_circuits/packet.log +0 -0
  136. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/eavesdrop_schema/_ufh_circuits/schema_eavesdrop_off.json +0 -0
  137. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/eavesdrop_schema/_ufh_circuits/schema_eavesdrop_on.json +0 -0
  138. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/eavesdrop_schema/app_cntrl/packet.log +0 -0
  139. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/eavesdrop_schema/app_cntrl/schema_eavesdrop_off.json +0 -0
  140. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/eavesdrop_schema/app_cntrl/schema_eavesdrop_on.json +0 -0
  141. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/eavesdrop_schema/trv_actuators/packet.log +0 -0
  142. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/eavesdrop_schema/trv_actuators/schema_eavesdrop_off.json +0 -0
  143. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/eavesdrop_schema/trv_actuators/schema_eavesdrop_on.json +0 -0
  144. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/eavesdrop_schema/zone_sensors_000/packet.log +0 -0
  145. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/eavesdrop_schema/zone_sensors_000/schema_eavesdrop_off.json +0 -0
  146. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/eavesdrop_schema/zone_sensors_000/schema_eavesdrop_on.json +0 -0
  147. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/eavesdrop_schema/zone_sensors_001/packet.log +0 -0
  148. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/eavesdrop_schema/zone_sensors_001/schema_eavesdrop_off.json +0 -0
  149. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/eavesdrop_schema/zone_sensors_001/schema_eavesdrop_on.json +0 -0
  150. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/eavesdrop_schema/zone_sensors_002/packet.log +0 -0
  151. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/eavesdrop_schema/zone_sensors_002/schema_eavesdrop_off.json +0 -0
  152. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/eavesdrop_schema/zone_sensors_002/schema_eavesdrop_on.json +0 -0
  153. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/eavesdrop_schema/zone_sensors_003/packet.log +0 -0
  154. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/eavesdrop_schema/zone_sensors_003/schema_eavesdrop_off.json +0 -0
  155. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/eavesdrop_schema/zone_sensors_003/schema_eavesdrop_on.json +0 -0
  156. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/eavesdrop_schema/zone_sensors_004/packet.log +0 -0
  157. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/eavesdrop_schema/zone_sensors_004/schema_eavesdrop_off.json +0 -0
  158. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/eavesdrop_schema/zone_sensors_004/schema_eavesdrop_on.json +0 -0
  159. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/fingerprints/10e0_xxxx.log +0 -0
  160. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/fingerprints/_gather.sh +0 -0
  161. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/fingerprints/heat/01_EvoTouch_Colour.log +0 -0
  162. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/fingerprints/heat/01_Evo_Color.log +0 -0
  163. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/fingerprints/heat/01_IONA_RAI_Prototype.log +0 -0
  164. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/fingerprints/heat/02_HCE80_V3.10_061117..log +0 -0
  165. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/fingerprints/heat/04_HR92 Radiator Ctrl_.log +0 -0
  166. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/fingerprints/heat/08_Jasper_EIM.log +0 -0
  167. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/fingerprints/heat/10_R8810A_Bridge.log +0 -0
  168. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/fingerprints/heat/10_R8820.log +0 -0
  169. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/fingerprints/heat/30_Internet_Gateway.log +0 -0
  170. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/fingerprints/heat/31_Jasper_Stat_TXXX.log +0 -0
  171. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/fingerprints/heat/34_T87RF2025.log +0 -0
  172. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/fingerprints/hvac/18_BRDG-02A55.log +0 -0
  173. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/fingerprints/hvac/18_HRA82.log +0 -0
  174. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/fingerprints/hvac/20.log +0 -0
  175. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/fingerprints/hvac/21_CCU-12T20.log +0 -0
  176. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/fingerprints/hvac/29_VMC-07RP01.log +0 -0
  177. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/fingerprints/hvac/29_VMC-15RP01.log +0 -0
  178. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/fingerprints/hvac/29_VMC-17RP01.log +0 -0
  179. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/fingerprints/hvac/29_VMN-07LM01.log +0 -0
  180. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/fingerprints/hvac/29_VMN-15LF01.log +0 -0
  181. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/fingerprints/hvac/29_VMN-17LMP01.log +0 -0
  182. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/fingerprints/hvac/29_VMS-15C16.log +0 -0
  183. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/fingerprints/hvac/29_VMS-17HB01.log +0 -0
  184. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/fingerprints/hvac/30_BRDG-02EM23.log +0 -0
  185. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/fingerprints/hvac/30_BRDG-02JAS01.log +0 -0
  186. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/fingerprints/hvac/32_VMC-15RPS34.log +0 -0
  187. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/fingerprints/hvac/32_VMD-15RMS64.log +0 -0
  188. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/fingerprints/hvac/32_VMD-15RMS86.log +0 -0
  189. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/fingerprints/hvac/32_VMD-17RPS01.log +0 -0
  190. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/fingerprints/hvac/32_VMN-23LM33.log +0 -0
  191. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/fingerprints/hvac/32_VMN-23LMH23.log +0 -0
  192. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/fingerprints/hvac/32_VMS-15CM17.log +0 -0
  193. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/fingerprints/hvac/32_VMS-23C33.log +0 -0
  194. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/fingerprints/hvac/32_VMS-23HB33.log +0 -0
  195. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/fingerprints/hvac/32_VMZ-15V13.log +0 -0
  196. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/fingerprints/hvac/37_VMD-07RPS13.log +0 -0
  197. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/fingerprints/hvac/37_VMI-15MC01log +0 -0
  198. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/fingerprints/hvac/37_VMI-15WSJ53.log +0 -0
  199. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/fingerprints/hvac/37_VMS-02J52.log +0 -0
  200. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/fingerprints/hvac/37_VMS-12C39.log +0 -0
  201. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/fingerprints/hvac/99_CVE-RF.log +0 -0
  202. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/fingerprints/hvac/99_VMS-17C01.log +0 -0
  203. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/helpers.py +0 -0
  204. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/logger/packet_in.log +0 -0
  205. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/logger/packet_out.log +0 -0
  206. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/logs/pkts_bad_000.log +0 -0
  207. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/logs/pkts_tba_000.log +0 -0
  208. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/logs/system_cache.json +0 -0
  209. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parser_helpers/pkt_addr_set.log +0 -0
  210. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parser_helpers/pkt_dev_class.log +0 -0
  211. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parsers/code_0001_wip.log +0 -0
  212. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parsers/code_0002.log +0 -0
  213. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parsers/code_0004_wip.log +0 -0
  214. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parsers/code_0005.log +0 -0
  215. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parsers/code_0006.log +0 -0
  216. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parsers/code_0008.log +0 -0
  217. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parsers/code_0009.log +0 -0
  218. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parsers/code_000a.log +0 -0
  219. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parsers/code_000c.log +0 -0
  220. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parsers/code_000e.log +0 -0
  221. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parsers/code_01ff_wip.log +0 -0
  222. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parsers/code_0418.log +0 -0
  223. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parsers/code_042f.log +0 -0
  224. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parsers/code_1030.log +0 -0
  225. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parsers/code_1060.log +0 -0
  226. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parsers/code_10d0.log +0 -0
  227. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parsers/code_10e0.log +0 -0
  228. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parsers/code_1260.log +0 -0
  229. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parsers/code_1298.log +0 -0
  230. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parsers/code_12a0.log +0 -0
  231. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parsers/code_12c0.log +0 -0
  232. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parsers/code_1300.log +0 -0
  233. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parsers/code_1f09.log +0 -0
  234. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parsers/code_1fc9.log +0 -0
  235. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parsers/code_1fd4.log +0 -0
  236. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parsers/code_2210.log +0 -0
  237. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parsers/code_22c9.log +0 -0
  238. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parsers/code_22d0.log +0 -0
  239. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parsers/code_22d9.log +0 -0
  240. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parsers/code_22e0.log +0 -0
  241. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parsers/code_22e5.log +0 -0
  242. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parsers/code_22e9.log +0 -0
  243. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parsers/code_22f1.log +0 -0
  244. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parsers/code_22f2.log +0 -0
  245. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parsers/code_22f3.log +0 -0
  246. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parsers/code_22f4.log +0 -0
  247. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parsers/code_22f7.log +0 -0
  248. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parsers/code_2309.log +0 -0
  249. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parsers/code_2349.log +0 -0
  250. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parsers/code_2411_wip.log +0 -0
  251. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parsers/code_2e04.log +0 -0
  252. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parsers/code_2e10_wip.log +0 -0
  253. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parsers/code_30c9.log +0 -0
  254. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parsers/code_3110_wip.log +0 -0
  255. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parsers/code_3120.log +0 -0
  256. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parsers/code_313e_wip.log +0 -0
  257. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parsers/code_3150.log +0 -0
  258. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parsers/code_31d9.log +0 -0
  259. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parsers/code_31da.log +0 -0
  260. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parsers/code_3200.log +0 -0
  261. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parsers/code_3210.log +0 -0
  262. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parsers/code_3220.log +0 -0
  263. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parsers/code_3222.log +0 -0
  264. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parsers/code_3ef0_wip.log +0 -0
  265. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parsers/code_3ef1_wip.log +0 -0
  266. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parsers/code_4e01.log +0 -0
  267. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parsers/code_4e02.log +0 -0
  268. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parsers/code_4e04.log +0 -0
  269. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/parsers/code_4e15.log +0 -0
  270. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/schedules/_sched_002/packet.log +0 -0
  271. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/schedules/_sched_002/schedule.json +0 -0
  272. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/schedules/sched_001/packet.log +0 -0
  273. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/schedules/sched_001/schedule.json +0 -0
  274. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/schedules/sched_dhw/packet.log +0 -0
  275. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/schedules/sched_dhw/schedule.json +0 -0
  276. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/schemas/jsn_files/schema_100.json +0 -0
  277. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/schemas/jsn_files/schema_101.json +0 -0
  278. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/schemas/jsn_files/schema_102.json +0 -0
  279. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/schemas/jsn_files/schema_103.json +0 -0
  280. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/schemas/jsn_files/schema_104.json +0 -0
  281. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/schemas/jsn_files/schema_105.json +0 -0
  282. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/schemas/jsn_files/schema_108.json +0 -0
  283. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/schemas/log_files/schema_000.json +0 -0
  284. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/schemas/log_files/schema_000.log +0 -0
  285. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/schemas/log_files/schema_001.json +0 -0
  286. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/schemas/log_files/schema_001.log +0 -0
  287. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/schemas/log_files/schema_002.json +0 -0
  288. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/schemas/log_files/schema_002.log +0 -0
  289. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/schemas/log_files/schema_010.json +0 -0
  290. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/schemas/log_files/schema_010.log +0 -0
  291. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/schemas/log_files/schema_011.json +0 -0
  292. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/schemas/log_files/schema_011.log +0 -0
  293. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/schemas/log_files/schema_012.json +0 -0
  294. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/schemas/log_files/schema_012.log +0 -0
  295. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/schemas/log_files/schema_013.json +0 -0
  296. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/schemas/log_files/schema_013.log +0 -0
  297. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/schemas/log_files/schema_014.json +0 -0
  298. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/schemas/log_files/schema_014.log +0 -0
  299. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/schemas/log_files/schema_300.json +0 -0
  300. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/schemas/log_files/schema_300.log +0 -0
  301. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/schemas/log_files/schema_301.json +0 -0
  302. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/schemas/log_files/schema_301.log +0 -0
  303. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/schemas/log_files/schema_302.json +0 -0
  304. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/schemas/log_files/schema_302.log +0 -0
  305. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/schemas/log_files/schema_303.json +0 -0
  306. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/schemas/log_files/schema_303.log +0 -0
  307. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/schemas/log_files/schema_304.json +0 -0
  308. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/schemas/log_files/schema_304.log +0 -0
  309. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/schemas/log_files/schema_310.json +0 -0
  310. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/schemas/log_files/schema_310.log +0 -0
  311. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/systems/_heat_trv_00/config.json +0 -0
  312. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/systems/_heat_trv_00/packet.log +0 -0
  313. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/systems/_heat_trv_00/schema.json +0 -0
  314. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/systems/_hvac_nuaire/config.json +0 -0
  315. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/systems/_hvac_nuaire/known_list.json +0 -0
  316. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/systems/_hvac_nuaire/packet.log +0 -0
  317. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/systems/_hvac_nuaire/schema.json +0 -0
  318. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/systems/_hvac_nuaire/status.json +0 -0
  319. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/systems/heat_otb_00/config.json +0 -0
  320. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/systems/heat_otb_00/packet.log +0 -0
  321. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/systems/heat_otb_00/schema.json +0 -0
  322. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/systems/heat_simple/packet.log +0 -0
  323. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/systems/heat_simple/schema.json +0 -0
  324. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/systems/heat_ufc_00/config.json +0 -0
  325. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/systems/heat_ufc_00/packet.log +0 -0
  326. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/systems/heat_ufc_01/packet.log +0 -0
  327. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/systems/heat_zxdavb/config.json +0 -0
  328. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/systems/heat_zxdavb/known_list.json +0 -0
  329. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/systems/heat_zxdavb/packet.log +0 -0
  330. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/systems/heat_zxdavb/schema.json +0 -0
  331. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/test_api_faultlog.py +0 -0
  332. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/test_api_schedule.py +0 -0
  333. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/test_apis_binding.py +0 -0
  334. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/test_apis_common.py +0 -0
  335. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/test_apis_heat.py +0 -0
  336. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/test_apis_hvac.py +0 -0
  337. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/test_cli_utility.py +0 -0
  338. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/test_devices.py +0 -0
  339. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/test_eavesdrop_dev_class.py +0 -0
  340. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/test_eavesdrop_schema.py +0 -0
  341. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/test_helpers.py +0 -0
  342. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/test_parser_helpers.py +0 -0
  343. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/test_parsers.py +0 -0
  344. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/test_ramses_schema.py +0 -0
  345. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/test_schema_bits.py +0 -0
  346. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/test_schemas.py +0 -0
  347. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests/test_vol_schemas.py +0 -0
  348. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests_rf/__init__.py +0 -0
  349. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests_rf/configs/config_heat.json +0 -0
  350. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests_rf/configs/config_hvac.json +0 -0
  351. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests_rf/conftest.py +0 -0
  352. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests_rf/device/__init__.py +0 -0
  353. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests_rf/device/test_hvac_ventilator.py +0 -0
  354. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests_rf/logs/test_api_faultlog.log +0 -0
  355. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests_rf/test_api_faultlog.py +0 -0
  356. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests_rf/test_api_schedule.py +0 -0
  357. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests_rf/test_binding_fsm.py +0 -0
  358. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests_rf/test_create_stack.py +0 -0
  359. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests_rf/test_dispatcher.py +0 -0
  360. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests_rf/test_hgi_behaviors.py +0 -0
  361. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests_rf/test_protocol_fsm.py +0 -0
  362. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests_rf/test_use_regex.py +0 -0
  363. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests_rf/test_virt_network.py +0 -0
  364. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests_rf/virtual_rf/__init__.py +0 -0
  365. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests_rf/virtual_rf/const.py +0 -0
  366. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests_rf/virtual_rf/helpers.py +0 -0
  367. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests_rf/virtual_rf/virtual_rf.py +0 -0
  368. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests_tx/__init__.py +0 -0
  369. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/tests_tx/test_command.py +0 -0
  370. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/wip/_test_eavesdrop_dhw_sensor.py +0 -0
  371. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/wip/_test_eavesdrop_htg_control.py +0 -0
  372. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/wip/_test_eavesdrop_ufc_circuits.py +0 -0
  373. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/wip/_test_eavesdrop_zone_sensors.py +0 -0
  374. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/wip/_test_eavesdrop_zone_type.py +0 -0
  375. {ramses_rf-0.52.1 → ramses_rf-0.52.3}/tests/wip/test_wip_cli.sh +0 -0
@@ -41,7 +41,7 @@ jobs:
41
41
  - name: Install dependencies
42
42
  run: |
43
43
  python -m pip install --upgrade pip
44
- pip install ruff # pip install -r requirements_dev.txt
44
+ pip install ruff # pip install -r requirements/requirements_dev.txt
45
45
 
46
46
  - name: Check with ruff
47
47
  run: ruff check --output-format=github .
@@ -41,7 +41,7 @@ jobs:
41
41
  - name: Install dependencies
42
42
  run: |
43
43
  python -m pip install --upgrade pip
44
- pip install -r requirements_dev.txt
44
+ pip install -r requirements/requirements_dev.txt
45
45
 
46
46
  - name: Install the package (and its dependencies)
47
47
  run: pip install -e .
@@ -41,7 +41,7 @@ jobs:
41
41
  - name: Install dependencies
42
42
  run: |
43
43
  python -m pip install --upgrade pip
44
- pip install -r requirements_dev.txt
44
+ pip install -r requirements/requirements_dev.txt
45
45
 
46
46
  - name: Install the package (its dependencies are needed for typing)
47
47
  run: pip install -e .
@@ -26,7 +26,7 @@ jobs:
26
26
  run: hatch build
27
27
 
28
28
  - name: Upload dist
29
- uses: actions/upload-artifact@v4
29
+ uses: actions/upload-artifact@v5
30
30
  with:
31
31
  name: dist
32
32
  path: dist/
@@ -40,7 +40,7 @@ jobs:
40
40
  url: https://pypi.org/project/ramses_rf
41
41
  steps:
42
42
  - name: Download dist
43
- uses: actions/download-artifact@v5
43
+ uses: actions/download-artifact@v6
44
44
  with:
45
45
  name: dist
46
46
  path: dist/
@@ -21,7 +21,7 @@ repos:
21
21
  - --py311-plus
22
22
  - --force
23
23
  - --keep-updates
24
- files: ^(src|tests)/.+\.py$
24
+ files: ^(src|tests|docs)/.+\.py$
25
25
 
26
26
  - repo: https://github.com/codespell-project/codespell
27
27
  rev: v2.4.1
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: ramses_rf
3
- Version: 0.52.1
3
+ Version: 0.52.3
4
4
  Summary: A stateful RAMSES-II protocol decoder & analyser.
5
5
  Project-URL: Homepage, https://github.com/ramses-rf/ramses_rf
6
6
  Project-URL: Bug Tracker, https://github.com/ramses-rf/ramses_rf/issues
@@ -66,4 +66,7 @@ The rules for pre-commit are in git in `.pre-commit-config.yaml`.
66
66
  Check [issue 170](https://github.com/ramses-rf/ramses_rf/issues/170) when you run into troubles here.
67
67
 
68
68
  ## More
69
+ Build and view the code documentation locally for easier access and to confirm that
70
+ your own code contribution include proper documentation. See [Usage](docs/source/usage.md) for details.
71
+
69
72
  For more hints, see the [How to submit a PR wiki page](https://github.com/ramses-rf/ramses_cc/wiki/7.-How-to-submit-a-PR)
@@ -0,0 +1,20 @@
1
+ # Minimal makefile for Sphinx documentation
2
+ #
3
+
4
+ # You can set these variables from the command line, and also
5
+ # from the environment for the first two.
6
+ SPHINXOPTS ?=
7
+ SPHINXBUILD ?= sphinx-build
8
+ SOURCEDIR = source
9
+ BUILDDIR = build
10
+
11
+ # Put it first so that "make" without argument is like "make help".
12
+ help:
13
+ @$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
14
+
15
+ .PHONY: help Makefile
16
+
17
+ # Catch-all target: route all unknown targets to Sphinx using the new
18
+ # "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
19
+ %: Makefile
20
+ @$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
@@ -0,0 +1,35 @@
1
+ @ECHO OFF
2
+
3
+ pushd %~dp0
4
+
5
+ REM Command file for Sphinx documentation
6
+
7
+ if "%SPHINXBUILD%" == "" (
8
+ set SPHINXBUILD=sphinx-build
9
+ )
10
+ set SOURCEDIR=source
11
+ set BUILDDIR=build
12
+
13
+ %SPHINXBUILD% >NUL 2>NUL
14
+ if errorlevel 9009 (
15
+ echo.
16
+ echo.The 'sphinx-build' command was not found. Make sure you have Sphinx
17
+ echo.installed, then set the SPHINXBUILD environment variable to point
18
+ echo.to the full path of the 'sphinx-build' executable. Alternatively you
19
+ echo.may add the Sphinx directory to PATH.
20
+ echo.
21
+ echo.If you don't have Sphinx installed, grab it from
22
+ echo.https://www.sphinx-doc.org/
23
+ exit /b 1
24
+ )
25
+
26
+ if "%1" == "" goto help
27
+
28
+ %SPHINXBUILD% -M %1 %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O%
29
+ goto end
30
+
31
+ :help
32
+ %SPHINXBUILD% -M help %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O%
33
+
34
+ :end
35
+ popd
@@ -0,0 +1,159 @@
1
+ # RAMSES RF Binding Process Diagram
2
+
3
+ ## Overview
4
+ This diagram shows the binding finite state machine (FSM) for RAMSES RF devices, illustrating the complete process from initial state to binding completion.
5
+
6
+ ## State Machine Diagram
7
+
8
+ ```mermaid
9
+ stateDiagram-v2
10
+ direction LR
11
+ [*] --> DevIsNotBinding
12
+ DevIsNotBinding --> InitiateBindingProcess : initiate_binding_process()
13
+ InitiateBindingProcess --> SuppSendOfferWaitForAccept
14
+ SuppSendOfferWaitForAccept --> OfferSent : _make_offer()
15
+ OfferSent --> SuppSendOfferWaitForAccept : wait_for_accept()
16
+ DevIsNotBinding --> RespIsWaitingForOffer : wait_for_binding_request()
17
+ RespIsWaitingForOffer --> OfferReceived : _wait_for_offer()
18
+ OfferReceived --> RespSendAcceptWaitForConfirm : _accept_offer()
19
+ RespSendAcceptWaitForConfirm --> SuppIsReadyToSendConfirm : wait_for_confirm()
20
+ SuppIsReadyToSendConfirm --> StateDecisionPoint : cast_confirm_accept()
21
+ StateDecisionPoint --> RespHasBoundAsRespondent : No addenda
22
+ StateDecisionPoint --> SuppHasBoundAsSupplicant : Yes addenda / Complete
23
+ RespHasBoundAsRespondent --> DevIsNotBinding
24
+ SuppHasBoundAsSupplicant --> DevIsNotBinding
25
+ DevIsNotBinding --> [*] : Binding Complete
26
+
27
+ subgraph Supplicant Role
28
+ SuppSendOfferWaitForAccept
29
+ OfferSent
30
+ SuppIsReadyToSendConfirm
31
+ SuppHasBoundAsSupplicant
32
+ end
33
+
34
+ subgraph Respondent Role
35
+ RespIsWaitingForOffer
36
+ OfferReceived
37
+ RespSendAcceptWaitForConfirm
38
+ RespHasBoundAsRespondent
39
+ end
40
+
41
+ classDef supplicant fill:#006400,stroke:#ffffff,stroke-width:2px
42
+ classDef respondent fill:#00008B,stroke:#ffffff,stroke-width:2px
43
+
44
+ class SuppSendOfferWaitForAccept,OfferSent,SuppIsReadyToSendConfirm,SuppHasBoundAsSupplicant supplicant
45
+ class RespIsWaitingForOffer,OfferReceived,RespSendAcceptWaitForConfirm,RespHasBoundAsRespondent respondent
46
+ class Supplicant Role supplicant
47
+ class Respondent Role respondent
48
+
49
+ note right of DevIsNotBinding
50
+ Not binding<br/>Ready to start
51
+ end note
52
+
53
+ note right of SuppSendOfferWaitForAccept
54
+ Made Offer<br/>Waiting for Accept
55
+ end note
56
+
57
+ note right of RespIsWaitingForOffer
58
+ Waiting for Offer
59
+ end note
60
+
61
+ note right of RespSendAcceptWaitForConfirm
62
+ Sent Accept<br/>Waiting for Confirm
63
+ end note
64
+
65
+ note right of SuppIsReadyToSendConfirm
66
+ Received Accept<br/>Ready to send Confirm
67
+ end note
68
+
69
+ note right of StateDecisionPoint
70
+ If addenda: SendAddenda<br/>If no addenda: Complete
71
+ end note
72
+
73
+ note right of RespHasBoundAsRespondent
74
+ Binding Complete
75
+ end note
76
+
77
+ note right of SuppHasBoundAsSupplicant
78
+ Binding Complete<br/>Nothing more to do
79
+ end note
80
+ ```
81
+
82
+ ## Method Flow by Role
83
+
84
+ ### Supplicant Flow (Device initiating binding)
85
+ ```python
86
+ async def initiate_binding_process(self, offer_codes, confirm_code=None, ratify_cmd=None):
87
+ 1. _make_offer(offer_codes, oem_code) # Send Offer packet
88
+ 2. _wait_for_accept(tender) # Wait for Accept response
89
+ 3. _confirm_accept(accept, confirm_code) # Send Confirm packet
90
+ 4. _cast_addenda(accept, ratify_cmd) # Optional: Send Addenda
91
+
92
+ # Result: SuppHasBoundAsSupplicant state
93
+ ```
94
+
95
+ ### Respondent Flow (Device responding to binding)
96
+ ```python
97
+ async def wait_for_binding_request(self, accept_codes, idx="00", require_ratify=False):
98
+ 1. _wait_for_offer() # Wait for Offer packet
99
+ 2. _accept_offer(tender, accept_codes, idx) # Send Accept packet
100
+ 3. _wait_for_confirm(accept) # Wait for Confirm packet
101
+ 4. _wait_for_addenda(accept) # Optional: Wait for Addenda
102
+
103
+ # Result: RespHasBoundAsRespondent state
104
+ ```
105
+
106
+ ## State Details
107
+
108
+ | State | Role | Description | Key Methods |
109
+ |-------|------|-------------|-------------|
110
+ | `DevIsNotBinding` | Any | Initial/final state, not participating in binding | - |
111
+ | `RespIsWaitingForOffer` | Respondent | Waiting for binding offer from supplicant | `wait_for_offer()` |
112
+ | `RespSendAcceptWaitForConfirm` | Respondent | Sent Accept, waiting for Confirm | `cast_accept_offer()`, `wait_for_confirm()` |
113
+ | `RespIsWaitingForAddenda` | Respondent | Received Confirm, waiting for optional Addenda | `wait_for_addenda()` |
114
+ | `RespHasBoundAsRespondent` | Respondent | Binding completed successfully | ✅ **NEW LOGGING HERE** |
115
+ | `SuppSendOfferWaitForAccept` | Supplicant | Sent Offer, waiting for Accept | `cast_offer()`, `wait_for_accept()` |
116
+ | `SuppIsReadyToSendConfirm` | Supplicant | Received Accept, ready to send Confirm | `cast_confirm_accept()` |
117
+ | `SuppIsReadyToSendAddenda` | Supplicant | Sent Confirm, ready to send Addenda | `cast_addenda()` |
118
+ | `SuppHasBoundAsSupplicant` | Supplicant | Binding completed successfully | ✅ **NEW LOGGING HERE** |
119
+ | `DevHasFailedBinding` | Any | Binding failed, error state | - |
120
+
121
+ ## Binding Phases (Packet Types)
122
+
123
+ | Phase | Packet Type | Description | Direction |
124
+ |-------|-------------|-------------|-----------|
125
+ | `TENDER` | `1FC9` (I_) | Offer phase - initial binding proposal | Supplicant → Respondent |
126
+ | `ACCEPT` | `1FC9` (W_) | Accept phase - acceptance of offer | Respondent → Supplicant |
127
+ | `AFFIRM` | `1FC9` (I_) | Confirm phase - confirmation of acceptance | Supplicant → Respondent |
128
+ | `RATIFY` | `10E0` (I_) | Addenda phase - optional additional binding info | Either direction |
129
+
130
+ ## New Logging Implementation
131
+
132
+ The following log.info statements have been added at binding completion points:
133
+
134
+ ### 1. Constructor Logging (Immediate Confirmation)
135
+ - **`RespHasBoundAsRespondent.__init__()`**: Logs when respondent binding completes
136
+ - **`SuppHasBoundAsSupplicant.__init__()`**: Logs when supplicant binding completes
137
+
138
+ ### 2. State Transition Logging (Complete Flow)
139
+ - **`BindContextBase.set_state()`**: Logs the complete state transition to bound states, including:
140
+ - Previous state name
141
+ - New bound state name
142
+ - Final role (respondent/supplicant)
143
+
144
+ ## Example Log Output
145
+ ```
146
+ INFO:ramses_rf.binding_fsm:32:123456: Binding completed as respondent
147
+ INFO:ramses_rf.binding_fsm:37:789012: Binding completed as supplicant
148
+ INFO:ramses_rf.binding_fsm:32:123456: Binding process completed: RespSendAcceptWaitForConfirm -> RespHasBoundAsRespondent (role: BindRole.RESPONDENT)
149
+ ```
150
+
151
+ ## Error Handling
152
+ - **Timeout**: Binding fails if expected packets not received within timeout periods
153
+ - **Retry Limits**: Automatic failure after retry limits exceeded
154
+ - **Exception**: `BindingFlowFailed` raised on binding errors
155
+
156
+ ## Configuration Constants
157
+ - `CONFIRM_RETRY_LIMIT`: 3 (automatic binding after this many confirm sends)
158
+ - `CONFIRM_TIMEOUT_SECS`: 3 (automatic binding after this many seconds)
159
+ - `WAITING_TIMEOUT_SECS`: 5 (fail if no packet received within this time)
@@ -0,0 +1,76 @@
1
+ #!/usr/bin/env python3
2
+ # Configuration file for the ramses_rf Sphinx documentation builder.
3
+ #
4
+ # For the full list of built-in configuration values, see the documentation:
5
+ # https://www.sphinx-doc.org/en/master/usage/configuration.html
6
+
7
+ import os
8
+ import sys
9
+ from datetime import datetime
10
+
11
+ sys.path.insert(0, os.path.abspath("."))
12
+ sys.path.insert(0, os.path.abspath("../../src"))
13
+
14
+ from ramses_rf import VERSION # noqa: E402
15
+
16
+ version = VERSION
17
+ authors = "D. Bonnes, E. Broerse"
18
+
19
+ # -- Project information -----------------------------------------------------
20
+ # see https://www.sphinx-doc.org/en/master/usage/configuration.html#project-information
21
+
22
+ project = "Ramses RF"
23
+ copyright = f"{datetime.now().year}, {authors}"
24
+ author = authors
25
+ release = version
26
+
27
+ # -- General configuration ---------------------------------------------------
28
+ # https://www.sphinx-doc.org/en/master/usage/configuration.html#general-configuration
29
+ # adapted following https://medium.com/@cissyshu/a-step-by-step-guide-to-automatic-documentation-using-sphinx-a697dbbce0e7
30
+
31
+ extensions = [
32
+ "sphinx.ext.autodoc",
33
+ "sphinx.ext.napoleon",
34
+ "sphinx.ext.intersphinx",
35
+ "sphinx.ext.viewcode", # link to local code (button)
36
+ "sphinx.ext.githubpages",
37
+ "sphinx_design",
38
+ "myst_parser", # to use Markdown inside reST
39
+ "sphinxcontrib.mermaid", # to show mermaid diagrams in docs
40
+ ]
41
+ pygments_style = "sphinx" # enable syntax highlighting
42
+
43
+ templates_path = ["_templates"]
44
+ exclude_patterns = []
45
+
46
+ # Language
47
+ language = "en"
48
+
49
+ # -- Options for HTML / Thema output -------------------------------------------------
50
+ # https://www.sphinx-doc.org/en/master/usage/configuration.html#options-for-html-output
51
+
52
+ html_theme = "furo"
53
+ html_static_path = ["_static"]
54
+ html_logo = "_static/ramses_rf_logo.png"
55
+ html_theme_options = {
56
+ "announcement": "Build the new <em>ramses_rf</em> documentation locally",
57
+ }
58
+
59
+ # --- Extension config ----
60
+
61
+ # Autodoc
62
+ autodoc_default_options = {
63
+ # Autodoc members
64
+ "members": True,
65
+ # Autodoc private members
66
+ "private-members": True,
67
+ }
68
+
69
+ # Autosummary
70
+ autosummary_generate = True
71
+ autosummary_generate_overwrite = True
72
+
73
+ # Myst
74
+ myst_enable_extensions = ["colon_fence"]
75
+ myst_heading_anchors = 4
76
+ myst_fence_as_directive = ["mermaid"]
@@ -0,0 +1,16 @@
1
+ Glossary
2
+ ========
3
+
4
+ .. glossary::
5
+ :sorted:
6
+
7
+ a_new_important_word
8
+ You are invited to help build this glossary of Ramses RF terms.
9
+ In your code ``docstr``, mark a new occurrence by putting in inside a 'term' block containing
10
+ single backticks, like so:
11
+ ``:term:`a_new_important_word```
12
+ Then, add an entry below. Don't worry about the (exact) sorting as Sphinx will sort that out for us.
13
+
14
+ schema
15
+ A description of valid contents of an entity, often defined
16
+ using voluptuous classes.
@@ -0,0 +1,20 @@
1
+ .. ramses_rf documentation master file, created by
2
+ sphinx-quickstart.
3
+ This file should at least contain the root `toctree` directive.
4
+
5
+ ramses_rf
6
+ =================================
7
+
8
+ .. toctree::
9
+ :maxdepth: 1
10
+ :caption: Intro:
11
+
12
+ usage
13
+ glossary
14
+ binding_process_diagram
15
+
16
+ .. toctree::
17
+ :maxdepth: 2
18
+ :caption: Contents:
19
+
20
+ modules
@@ -0,0 +1,9 @@
1
+ ramses_rf/src/
2
+ ===
3
+
4
+ .. toctree::
5
+ :maxdepth: 4
6
+
7
+ ramses_cli
8
+ ramses_rf
9
+ ramses_tx
@@ -0,0 +1,37 @@
1
+ ramses\_cli package
2
+ ===================
3
+
4
+ Submodules
5
+ ----------
6
+
7
+ ramses\_cli.client module
8
+ -------------------------
9
+
10
+ .. automodule:: ramses_cli.client
11
+ :members:
12
+ :show-inheritance:
13
+ :undoc-members:
14
+
15
+ ramses\_cli.debug module
16
+ ------------------------
17
+
18
+ .. automodule:: ramses_cli.debug
19
+ :members:
20
+ :show-inheritance:
21
+ :undoc-members:
22
+
23
+ ramses\_cli.discovery module
24
+ ----------------------------
25
+
26
+ .. automodule:: ramses_cli.discovery
27
+ :members:
28
+ :show-inheritance:
29
+ :undoc-members:
30
+
31
+ Module contents
32
+ ---------------
33
+
34
+ .. automodule:: ramses_cli
35
+ :members:
36
+ :show-inheritance:
37
+ :undoc-members:
@@ -0,0 +1,37 @@
1
+ ramses\_rf.device package
2
+ =========================
3
+
4
+ Submodules
5
+ ----------
6
+
7
+ ramses\_rf.device.base module
8
+ -----------------------------
9
+
10
+ .. automodule:: ramses_rf.device.base
11
+ :members:
12
+ :show-inheritance:
13
+ :undoc-members:
14
+
15
+ ramses\_rf.device.heat module
16
+ -----------------------------
17
+
18
+ .. automodule:: ramses_rf.device.heat
19
+ :members:
20
+ :show-inheritance:
21
+ :undoc-members:
22
+
23
+ ramses\_rf.device.hvac module
24
+ -----------------------------
25
+
26
+ .. automodule:: ramses_rf.device.hvac
27
+ :members:
28
+ :show-inheritance:
29
+ :undoc-members:
30
+
31
+ Module contents
32
+ ---------------
33
+
34
+ .. automodule:: ramses_rf.device
35
+ :members:
36
+ :show-inheritance:
37
+ :undoc-members:
@@ -0,0 +1,102 @@
1
+ ramses\_rf package
2
+ ==================
3
+
4
+ Subpackages
5
+ -----------
6
+
7
+ .. toctree::
8
+ :maxdepth: 4
9
+
10
+ ramses_rf.device
11
+ ramses_rf.system
12
+
13
+ Submodules
14
+ ----------
15
+
16
+ ramses\_rf.binding\_fsm module
17
+ ------------------------------
18
+
19
+ .. automodule:: ramses_rf.binding_fsm
20
+ :members:
21
+ :show-inheritance:
22
+ :undoc-members:
23
+
24
+ ramses\_rf.const module
25
+ -----------------------
26
+
27
+ .. automodule:: ramses_rf.const
28
+ :members:
29
+ :show-inheritance:
30
+ :undoc-members:
31
+
32
+ ramses\_rf.database module
33
+ --------------------------
34
+
35
+ .. automodule:: ramses_rf.database
36
+ :members:
37
+ :show-inheritance:
38
+ :undoc-members:
39
+
40
+ ramses\_rf.dispatcher module
41
+ ----------------------------
42
+
43
+ .. automodule:: ramses_rf.dispatcher
44
+ :members:
45
+ :show-inheritance:
46
+ :undoc-members:
47
+
48
+ ramses\_rf.entity\_base module
49
+ ------------------------------
50
+
51
+ .. automodule:: ramses_rf.entity_base
52
+ :members:
53
+ :show-inheritance:
54
+ :undoc-members:
55
+
56
+ ramses\_rf.exceptions module
57
+ ----------------------------
58
+
59
+ .. automodule:: ramses_rf.exceptions
60
+ :members:
61
+ :show-inheritance:
62
+ :undoc-members:
63
+
64
+ ramses\_rf.gateway module
65
+ -------------------------
66
+
67
+ .. automodule:: ramses_rf.gateway
68
+ :members:
69
+ :show-inheritance:
70
+ :undoc-members:
71
+
72
+ ramses\_rf.helpers module
73
+ -------------------------
74
+
75
+ .. automodule:: ramses_rf.helpers
76
+ :members:
77
+ :show-inheritance:
78
+ :undoc-members:
79
+
80
+ ramses\_rf.schemas module
81
+ -------------------------
82
+
83
+ .. automodule:: ramses_rf.schemas
84
+ :members:
85
+ :show-inheritance:
86
+ :undoc-members:
87
+
88
+ ramses\_rf.version module
89
+ -------------------------
90
+
91
+ .. automodule:: ramses_rf.version
92
+ :members:
93
+ :show-inheritance:
94
+ :undoc-members:
95
+
96
+ Module contents
97
+ ---------------
98
+
99
+ .. automodule:: ramses_rf
100
+ :members:
101
+ :show-inheritance:
102
+ :undoc-members:
@@ -0,0 +1,45 @@
1
+ ramses\_rf.system package
2
+ =========================
3
+
4
+ Submodules
5
+ ----------
6
+
7
+ ramses\_rf.system.faultlog module
8
+ ---------------------------------
9
+
10
+ .. automodule:: ramses_rf.system.faultlog
11
+ :members:
12
+ :show-inheritance:
13
+ :undoc-members:
14
+
15
+ ramses\_rf.system.heat module
16
+ -----------------------------
17
+
18
+ .. automodule:: ramses_rf.system.heat
19
+ :members:
20
+ :show-inheritance:
21
+ :undoc-members:
22
+
23
+ ramses\_rf.system.schedule module
24
+ ---------------------------------
25
+
26
+ .. automodule:: ramses_rf.system.schedule
27
+ :members:
28
+ :show-inheritance:
29
+ :undoc-members:
30
+
31
+ ramses\_rf.system.zones module
32
+ ------------------------------
33
+
34
+ .. automodule:: ramses_rf.system.zones
35
+ :members:
36
+ :show-inheritance:
37
+ :undoc-members:
38
+
39
+ Module contents
40
+ ---------------
41
+
42
+ .. automodule:: ramses_rf.system
43
+ :members:
44
+ :show-inheritance:
45
+ :undoc-members: