Skip to content

AttributeError: 'Ledvance' object has no attribute 'get' #23

@MostEmpire

Description

@MostEmpire

Hello, I am new to Zigbee stuff, so sorry if I am poisoning the issues section.
I know that the zigbee network can have multiple end-devices from various vendors and a coordinator.
End devices pair to the coordinator over the mesh network and the coordinator can poll the state of the end device and it can modify it too.

I have compiled esp_zigbee_ncp project in hopes that I would be able to control via a serial line to the esp32c6 and I would see pairing status of my outlet and that I would be able to toggle it on or off.

I see that the esp_zigbee_ncp listens on UART and has some specific protocol that zigpy-espzb might just implement.
I have however absolutely no idea how to use this repository and how to start up even a simple thing.
I have installed zigpy and zigpy-espzb.
I tried this code:

import asyncio, zigpy.config as zc
from zigpy_espzb.zigbee.application import ControllerApplication

CFG = {
    zc.CONF_DEVICE: {
        zc.CONF_DEVICE_PATH: "COM14",
        zc.CONF_DEVICE_BAUDRATE: 115200,   # int
    },
    "database_path": "zigbee.db",
    "ota": {"enabled": False},             # avoid provider schema
}

async def main():
    app = await ControllerApplication.new(CFG)
    try:
        await app.form_network()
    except Exception:
        pass
    print(await app.network_info())
    await app.permit(120)

asyncio.run(main())

and this is the error I am getting:

Traceback (most recent call last):
  File "C:\Users\Patrik\AppData\Roaming\JetBrains\PyCharm2024.2\scratches\zigbee_dzigat.py", line 22, in <module>
    asyncio.run(main())
  File "C:\Program Files\Applications\python_3_12_7\Lib\asyncio\runners.py", line 194, in run
    return runner.run(main)
           ^^^^^^^^^^^^^^^^
  File "C:\Program Files\Applications\python_3_12_7\Lib\asyncio\runners.py", line 118, in run
    return self._loop.run_until_complete(task)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Program Files\Applications\python_3_12_7\Lib\asyncio\base_events.py", line 687, in run_until_complete
    return future.result()
           ^^^^^^^^^^^^^^^
  File "C:\Users\Patrik\AppData\Roaming\JetBrains\PyCharm2024.2\scratches\zigbee_dzigat.py", line 14, in main
    app = await ControllerApplication.new(CFG)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Program Files\Applications\python_3_12_7\Lib\site-packages\zigpy\application.py", line 237, in new
    app = cls(config)
          ^^^^^^^^^^^
  File "C:\Program Files\Applications\python_3_12_7\Lib\site-packages\zigpy_espzb\zigbee\application.py", line 63, in __init__
    super().__init__(config=zigpy.config.ZIGPY_SCHEMA(config))
  File "C:\Program Files\Applications\python_3_12_7\Lib\site-packages\zigpy\application.py", line 70, in __init__
    self._config = self.SCHEMA(config)
                   ^^^^^^^^^^^^^^^^^^^
  File "C:\Program Files\Applications\python_3_12_7\Lib\site-packages\voluptuous\schema_builder.py", line 205, in __call__
    return self._compiled([], data)
           ^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Program Files\Applications\python_3_12_7\Lib\site-packages\voluptuous\schema_builder.py", line 549, in validate_dict
    return base_validate(path, data.items(), out)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Program Files\Applications\python_3_12_7\Lib\site-packages\voluptuous\schema_builder.py", line 330, in validate_mapping
    cval = cvalue(key_path, value)
           ^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Program Files\Applications\python_3_12_7\Lib\site-packages\voluptuous\schema_builder.py", line 779, in validate_callable
    return schema(data)
           ^^^^^^^^^^^^
  File "C:\Program Files\Applications\python_3_12_7\Lib\site-packages\voluptuous\schema_builder.py", line 205, in __call__
    return self._compiled([], data)
           ^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Program Files\Applications\python_3_12_7\Lib\site-packages\voluptuous\schema_builder.py", line 549, in validate_dict
    return base_validate(path, data.items(), out)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Program Files\Applications\python_3_12_7\Lib\site-packages\voluptuous\schema_builder.py", line 330, in validate_mapping
    cval = cvalue(key_path, value)
           ^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Program Files\Applications\python_3_12_7\Lib\site-packages\voluptuous\schema_builder.py", line 590, in validate_sequence
    cval = validate(index_path, value)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Program Files\Applications\python_3_12_7\Lib\site-packages\voluptuous\schema_builder.py", line 779, in validate_callable
    return schema(data)
           ^^^^^^^^^^^^
  File "C:\Program Files\Applications\python_3_12_7\Lib\site-packages\zigpy\config\validators.py", line 124, in cv_ota_provider
    provider_type = obj.get(zigpy.config.CONF_OTA_PROVIDER_TYPE)
                    ^^^^^^^
AttributeError: 'Ledvance' object has no attribute 'get'

I have no idea on how to get rid of that Ledvance error. I don't even know which library is misconfigured.
Can someone guide me on how to get the pairing done and polling/toggling of the outlet done?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions