Skip to content

Unknown color temperature range error when attempting to query KL125 bulb state #141

@brianthedavis

Description

@brianthedavis

I get an exception while trying to query the bulb state on a KL125 bulb. All other commands seem to work fine with the exception of the temperature command which fails with the same error.

Here's the output when I query the state:

$ kasa --bulb --host kasa-bc01 state
== kasa-bc01 - KL125(US) ==
        Host: kasa-bc01
        Device state: ON

        == Generic information ==
        Time:         None
        Hardware:     1.20
        Software:     1.0.5 Build 200831 Rel.141525
        MAC (rssi):   40:3f:8c:ab:90:4c (-41)
        Location:     {'latitude': <removed>, 'longitude': <removed>}

        == Device specific information ==
Traceback (most recent call last):
  File "/usr/local/bin/kasa", line 10, in <module>
    sys.exit(cli())
  File "/usr/local/lib/python3.7/dist-packages/asyncclick/core.py", line 862, in __call__
    return anyio.run(self._main, main, args, kwargs, **({"backend":_anyio_backend} if _anyio_backend is not None else {}))
  File "/usr/local/lib/python3.7/dist-packages/anyio/_core/_eventloop.py", line 52, in run
    return asynclib.run(func, *args, **backend_options)  # type: ignore
  File "/usr/local/lib/python3.7/dist-packages/anyio/_backends/_asyncio.py", line 160, in run
    return native_run(wrapper(), debug=debug)
  File "/usr/lib/python3.7/asyncio/runners.py", line 43, in run
    return loop.run_until_complete(main)
  File "/usr/lib/python3.7/asyncio/base_events.py", line 584, in run_until_complete
    return future.result()
  File "/usr/local/lib/python3.7/dist-packages/anyio/_backends/_asyncio.py", line 155, in wrapper
    return await func(*args)
  File "/usr/local/lib/python3.7/dist-packages/asyncclick/core.py", line 865, in _main
    return await main(*args, **kwargs)
  File "/usr/local/lib/python3.7/dist-packages/asyncclick/core.py", line 814, in main
    rv = await self.invoke(ctx)
  File "/usr/local/lib/python3.7/dist-packages/asyncclick/core.py", line 1295, in invoke
    return await _process_result(await sub_ctx.command.invoke(sub_ctx))
  File "/usr/local/lib/python3.7/dist-packages/asyncclick/core.py", line 1102, in invoke
    return await ctx.invoke(self.callback, **ctx.params)
  File "/usr/local/lib/python3.7/dist-packages/asyncclick/core.py", line 644, in invoke
    rv = await rv
  File "/usr/local/lib/python3.7/dist-packages/asyncclick/core.py", line 644, in invoke
    rv = await rv
  File "/usr/local/lib/python3.7/dist-packages/kasa/cli.py", line 256, in state
    for k, v in dev.state_information.items():
  File "/usr/local/lib/python3.7/dist-packages/kasa/smartdevice.py", line 115, in wrapped
    return f(*args, **kwargs)
  File "/usr/local/lib/python3.7/dist-packages/kasa/smartbulb.py", line 329, in state_information
    info["Valid temperature range"] = self.valid_temperature_range
  File "/usr/local/lib/python3.7/dist-packages/kasa/smartdevice.py", line 115, in wrapped
    return f(*args, **kwargs)
  File "/usr/local/lib/python3.7/dist-packages/kasa/smartbulb.py", line 136, in valid_temperature_range
    "Unknown color temperature range, please open an issue on github"
kasa.exceptions.SmartDeviceException: Unknown color temperature range, please open an issue on github

Here's a dump of the sysinfo command:

== System info ==
{'active_mode': 'none',
 'alias': 'kasa-bc01',
 'ctrl_protocols': {'name': 'Linkie', 'version': '1.0'},
 'description': 'Smart Wi-Fi LED Bulb with Color Changing',
 'dev_state': 'normal',
 'deviceId': '801200F3AB0486A46375B75DC9D1A4DA1DC0B6CA',
 'disco_ver': '1.0',
 'err_code': 0,
 'hwId': 'B4AA8A24294C772C6D70D0AFB805FF38',
 'hw_ver': '1.20',
 'is_color': 1,
 'is_dimmable': 1,
 'is_factory': False,
 'is_variable_color_temp': 1,
 'latitude_i': <removed>,
 'light_state': {'brightness': 0,
                 'color_temp': 0,
                 'hue': 120,
                 'mode': 'normal',
                 'on_off': 1,
                 'saturation': 69},
 'longitude_i': <removed>
 'mic_mac': '403F8CAB904C',
 'mic_type': 'IOT.SMARTBULB',
 'model': 'KL125(US)',
 'oemId': 'E260847F622C8C11C5CD258C3D0BA048',
 'preferred_state': [{'brightness': 50,
                      'color_temp': 2700,
                      'hue': 0,
                      'index': 0,
                      'saturation': 0},
                     {'brightness': 100,
                      'color_temp': 0,
                      'hue': 0,
                      'index': 1,
                      'saturation': 100},
                     {'brightness': 100,
                      'color_temp': 0,
                      'hue': 120,
                      'index': 2,
                      'saturation': 100},
                     {'brightness': 100,
                      'color_temp': 0,
                      'hue': 240,
                      'index': 3,
                      'saturation': 100}],
 'rssi': -41,
 'status': 'new',
 'sw_ver': '1.0.5 Build 200831 Rel.141525'}

Running 0.4.0.dev2 on Python 3.7 on a Raspberry Pi 3:

$ pip3 install --upgrade python-kasa
Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple
Cache entry deserialization failed, entry ignored
Cache entry deserialization failed, entry ignored
Requirement already up-to-date: python-kasa in /usr/local/lib/python3.7/dist-packages (0.4.0.dev2)
Requirement already satisfied, skipping upgrade: importlib-metadata in /usr/local/lib/python3.7/dist-packages (from python-kasa) (3.3.0)
Requirement already satisfied, skipping upgrade: asyncclick<8,>=7 in /usr/local/lib/python3.7/dist-packages (from python-kasa) (7.1.2.3)
Requirement already satisfied, skipping upgrade: zipp>=0.5 in /usr/local/lib/python3.7/dist-packages (from importlib-metadata->python-kasa) (3.4.0)
Requirement already satisfied, skipping upgrade: typing-extensions>=3.6.4; python_version < "3.8" in /usr/local/lib/python3.7/dist-packages (from importlib-metadata->python-kasa) (3.7.4.3)
Requirement already satisfied, skipping upgrade: anyio>=2 in /usr/local/lib/python3.7/dist-packages (from asyncclick<8,>=7->python-kasa) (2.0.2)
Requirement already satisfied, skipping upgrade: sniffio>=1.1 in /usr/local/lib/python3.7/dist-packages (from anyio>=2->asyncclick<8,>=7->python-kasa) (1.2.0)
Requirement already satisfied, skipping upgrade: idna>=2.8 in /usr/local/lib/python3.7/dist-packages (from anyio>=2->asyncclick<8,>=7->python-kasa) (2.10)

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions