Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Custom integration 'ramses_cc' registers an entity service with a non entity service schema which will stop working in HA Core 2025.9 #205

Open
pocketware opened this issue Sep 7, 2024 · 6 comments
Assignees

Comments

@pocketware
Copy link

In HA Core 2024.9.1 I'm getting the following warning:

WARNING (MainThread) [homeassistant.helpers.frame] Detected that custom integration 'ramses_cc' registers an entity service with a non entity service schema which will stop working in HA Core 2025.9 at custom_components/ramses_cc/climate.py, line 113: platform.async_register_entity_service(k, v, f"async_{k}"), please create a bug report at https://github.com/zxdavb/ramses_cc/issues

@sciorty
Copy link

sciorty commented Sep 9, 2024

[EDIT] This is not the same bug as the OP, it is related to: #198.

I also have a problem after 2024.9.1.

This scheme always worked:

#RAMSES RF
ramses_cc:
  scan_interval: 3
  serial_port: /dev/ttyACM0
  #packet_log: packets.log
  advanced_features:
    send_packet: true
  ramses_rf:
    enforce_known_list: true
  orphans_hvac: [32:142858, 32:126818]
  known_list:
    18:136974:
        class: HGI
    32:142858:
        class: FAN
    32:126818:
      class: REM
      faked: true
      commands:
        away:         ' I --- 32:126818 32:142858 --:------ 22F1 003 000007'
        low:          ' I --- 32:126818 32:142858 --:------ 22F1 003 000207'
        medium:       ' I --- 32:126818 32:142858 --:------ 22F1 003 000307'
        high:         ' I --- 32:126818 32:142858 --:------ 22F1 003 000707'
        bypass_open:  ' W --- 32:126818 32:142858 --:------ 22F7 003 00C8EF'
        bypass_close: ' W --- 32:126818 32:142858 --:------ 22F7 003 0000EF'
        bypass_auto:  ' W --- 32:126818 32:142858 --:------ 22F7 003 00FFEF'
        reset_filter: ' W --- 32:126818 32:142858 --:------ 10D0 002 00FF'

After the update I get:

024-09-09 17:39:03.379 DEBUG (MainThread) [custom_components.ramses_cc] Setting up entry c6509887066098f382c00f2221a2dc12...
2024-09-09 17:39:03.380 DEBUG (MainThread) [custom_components.ramses_cc.broker] Config = {'ramses_rf': {'enforce_known_list': True}, 'serial_port': {'port_name': '/dev/serial/by-id/usb-SparkFun_evofw3_atmega32u4-if00'}, 'scan_interval': 3, 'advanced_features': {'send_packet': True}, 'known_list': {'18:136974': {'class': 'HGI'}, '32:142858': {'class': 'FAN'}, '32:126818': {'class': 'REM', 'faked': True, 'commands': {'away': ' I --- 32:126818 32:142858 --:------ 22F1 003 000007', 'low': ' I --- 32:126818 32:142858 --:------ 22F1 003 000207', 'medium': ' I --- 32:126818 32:142858 --:------ 22F1 003 000307', 'high': ' I --- 32:126818 32:142858 --:------ 22F1 003 000707', 'bypass_open': ' W --- 32:126818 32:142858 --:------ 22F7 003 00C8EF', 'bypass_close': ' W --- 32:126818 32:142858 --:------ 22F7 003 0000EF', 'bypass_auto': ' W --- 32:126818 32:142858 --:------ 22F7 003 00FFEF', 'reset_filter': ' W --- 32:126818 32:142858 --:------ 10D0 002 00FF'}}}, 'schema': {'orphans_hvac': ['32:142858', '32:126818']}}
2024-09-09 17:39:03.383 DEBUG (MainThread) [custom_components.ramses_cc.broker] Storage = {'client_state': {'schema': {'main_tcs': None, 'orphans_heat': [], 'orphans_hvac': ['32:142858']}, 'packets': {'2024-09-08T16:01:40.788000': '...  I --- 32:142858 63:262142 --:------ 10E0 038 000001C88E0C0A6AFEFFFFFFFFFF1D0307E5564D442D30325250533636000000000000000000 # 10E0| I|32:142858', '2024-09-08T19:32:58.114000': '...  I --- 32:142858 --:------ 32:142858 313F 009 007C041246170207D0 # 313F| I|32:142858', '2024-09-08T19:47:09.290000': '...  I 005 32:142858 --:------ 32:142858 31D9 017 003A020020202020202020202020202008 # 31D9| I|32:142858|00 (00)', '2024-09-08T19:52:09.702000': '...  I --- 32:142858 --:------ 32:142858 31DA 030 00EF007FFFEFEF096B7FFF0A0708B1F000C84150500000EFEF7FFF7FFF00 # 31DA| I|32:142858|00 (00)'}}, 'remotes': {'32:126818': {'away': ' I --- 32:126818 32:142858 --:------ 22F1 003 000007', 'low': ' I --- 32:126818 32:142858 --:------ 22F1 003 000207', 'medium': ' I --- 32:126818 32:142858 --:------ 22F1 003 000307', 'high': ' I --- 32:126818 32:142858 --:------ 22F1 003 000707', 'bypass_open': ' W --- 32:126818 32:142858 --:------ 22F7 003 00C8EF', 'bypass_close': ' W --- 32:126818 32:142858 --:------ 22F7 003 0000EF', 'bypass_auto': ' W --- 32:126818 32:142858 --:------ 22F7 003 00FFEF', 'reset_filter': ' W --- 32:126818 32:142858 --:------ 10D0 002 00FF'}, '32:126819': {'low': ' I --- 32:126819 32:142858 --:------ 22F1 003 000207', 'medium': ' I --- 32:126819 32:142858 --:------ 22F1 003 000307', 'high': ' I --- 32:126819 32:142858 --:------ 22F1 003 000707', 'bypass_open': ' W --- 32:126819 32:142858 --:------ 22F7 003 00C8EF', 'bypass_close': ' W --- 32:126819 32:142858 --:------ 22F7 003 0000EF', 'bypass_auto': ' W --- 32:126819 32:142858 --:------ 22F7 003 00FFEF', 'reset_filter': ' W --- 32:126819 32:142858 --:------ 10D0 002 00FF'}}}
2024-09-09 17:39:03.383 INFO (MainThread) [custom_components.ramses_cc.schemas] Using a merged schema
2024-09-09 17:39:03.388 DEBUG (MainThread) [ramses_rf.device] Using an explicitly-defined class for: 32:142858 (FAN)
2024-09-09 17:39:03.388 DEBUG (MainThread) [ramses_rf.device.base] Creating a Device: 32:142858 (<class 'ramses_rf.device.hvac.HvacVentilator'>)
2024-09-09 17:39:03.393 ERROR (MainThread) [homeassistant.config_entries] Error setting up entry RAMSES RF for ramses_cc
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/config_entries.py", line 604, in async_setup
    result = await component.async_setup_entry(hass, self)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/config/custom_components/ramses_cc/__init__.py", line 89, in async_setup_entry
    await broker.async_setup()
  File "/config/custom_components/ramses_cc/broker.py", line 146, in async_setup
    await self.client.start(cached_packets=cached_packets())
  File "/usr/local/lib/python3.12/site-packages/ramses_rf/gateway.py", line 184, in start
    load_schema(self, known_list=self._include, **self._schema)  # create faked too
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/ramses_rf/schemas.py", line 370, in load_schema
    _get_device(gwy, device_id)  # domain=key[-4:])
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/ramses_rf/schemas.py", line 343, in _get_device
    return gwy.get_device(dev_id, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/ramses_rf/gateway.py", line 396, in get_device
    traits: dict[str, Any] = SCH_TRAITS(self._include.get(device_id, {}))
                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/voluptuous/validators.py", line 259, in __call__
    return self._exec((Schema(val) for val in self.validators), v)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/voluptuous/validators.py", line 315, in _exec
    raise error if self.msg is None else AnyInvalid(self.msg, path=path)
  File "/usr/local/lib/python3.12/site-packages/voluptuous/validators.py", line 307, in _exec
    return func(v)
           ^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/voluptuous/schema_builder.py", line 205, in __call__
    return self._compiled([], data)
           ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/voluptuous/validators.py", line 256, in _run
    return self._exec(self._compiled, value, path)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/voluptuous/validators.py", line 315, in _exec
    raise error if self.msg is None else AnyInvalid(self.msg, path=path)
  File "/usr/local/lib/python3.12/site-packages/voluptuous/validators.py", line 309, in _exec
    return func(path, v)
           ^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/voluptuous/schema_builder.py", line 779, in validate_callable
    return schema(data)
           ^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/voluptuous/schema_builder.py", line 205, in __call__
    return self._compiled([], data)
           ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/voluptuous/schema_builder.py", line 549, in validate_dict
    return base_validate(path, data.items(), out)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/voluptuous/schema_builder.py", line 382, in validate_mapping
    raise er.MultipleInvalid(errors)
voluptuous.error.MultipleInvalid: not a valid value for dictionary value @ data['class']

@arthuriansoft
Copy link

I also get the exact same errors above after updating the HA container from 2024.7.4 to 2024.8.3.
The integration fails to initialise.

@zxdavb
Copy link
Owner

zxdavb commented Sep 11, 2024

WARNING (MainThread) [homeassistant.helpers.frame] Detected that custom integration 'ramses_cc' registers an entity service with a non entity service schema which will stop working in HA Core 2025.9

I am working on this warning.

It will not stop the integration from starting.

@zxdavb zxdavb self-assigned this Sep 11, 2024
@zxdavb
Copy link
Owner

zxdavb commented Sep 11, 2024

voluptuous.error.MultipleInvalid: not a valid value for dictionary value @ data['class']

@sciorty This is a separate issue - it may have been fixed in #198. If it has not, please raise it as a separate issue.

@arthuriansoft I don't know if you are referring to #205, or #198.

@arthuriansoft
Copy link

@arthuriansoft I don't know if you are referring to #205, or #198.

@zxdavb I actually had the issue from #198 which was resolved by upgrading to 0.42.0. I'd just missed it as it was already closed!
Thanks for all your work on this :-)

@remyderuysscher
Copy link

I have also problems with 2024.9.1 and .2 with the 0.42.0 release. 2024.8.3 is the last working version of HA core.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants