home-assistant/core

Platform error: climate - Requirements for eq3btsmart not found: ['python-eq3bt==0.1.11']

Closed this issue · 12 comments

The problem

On the newest python version I you can not install bluepy with pip install. You can only build it.

What version of Home Assistant Core has the issue?

Home Assistant 2022.7.2

What was the last working version of Home Assistant Core?

No response

What type of installation are you running?

Home Assistant Container

Integration causing the issue

eq3btsmart

Link to integration documentation on our website

https://www.home-assistant.io/integrations/eq3btsmart/

Diagnostics information

No response

Example YAML snippet

No response

Anything in the logs that might be useful for us?

No response

Additional information

No response

Hey there @rytilahti, mind taking a look at this issue as it has been labeled with an integration (eq3btsmart) you are listed as a code owner for? Thanks!
(message by CodeOwnersMention)

This was listed as a breaking change / known issue:

CleanShot 2022-07-11 at 10 37 46

https://www.home-assistant.io/blog/2022/07/06/release-20227/#breaking-changes

@frenck so anything I can do about it? Or is eq3bt just dead if I want to update HA

As per breaking change: these will no longer work as of 2022.7.0.
If there was a solution, we didn't have to break it.

At this point, we are hoping/awaiting for someone to pick it up and contribute a fix.

I am using docker and I tryed to return to version 2022.6 but now I still get this error:
Platform error climate.eq3btsmart - No module named 'bluepy.btle'
Do you know how I can get back to a working state?

See #74864 and rytilahti/python-eq3bt#50 for ongoing work to make eq3bt usable again on new homeassistant versions.

Hi @frenck,

Sorry for the duplicate issue.

I just tried installing the required build tools (apk add make g++ glib-dev), restarted Home Assistant and let it handle the installation of python-eq3bt==0.1.11, which worked.

I am now on 2022.7.5 and using the eq3btsmart integration. My climate controls show the correct values and I am able to change the temperature as well. Is it possible to add the build tools to the container or would that result in a container size that is too large?

EDIT

I just saw #75145 which is going to upgrade python-eq3bt to version 0.2 and therefore use bleak as the default backend. Please ignore my request for adding the build tools. I will just wait for the next release containing this PR and use my workaround until then 🙂

@krakowski feel free to test that PR, I have just a single test device and I haven't heard anyone else checking out if the bleak backend works fine for them.

@krakowski
Hi, I used your workaround, but didn`t wor for me.
Installed the neede tools (apk add make g++ glib-dev) on my RPi3+
and used pip install python-eq3bt==0.1.11, what worked. But in terminal eq3cli is not available. Any advice?
Thank you

@krakowski Hi, I used your workaround, but didn`t wor for me. Installed the neede tools (apk add make g++ glib-dev) on my RPi3+ and used pip install python-eq3bt==0.1.11, what worked. But in terminal eq3cli is not available. Any advice? Thank you

This is strange. Did you perform a shut down and restart of your container after the installation? In this case the installed packages won't persist.

I just tried installing everything in a fresh alpine:latest container on my Raspberry Pi 3+ which worked. Here are my steps:

[host]> docker pull alpine:latest
[host]> docker run -it alpine sh

[container]> apk add python3 make g++ glib-dev
[container]> python3 -m ensurepip --upgrade
[container]> pip3 install python-eq3bt==0.1.11
[container]> eq3cli --help
Usage: eq3cli [OPTIONS] COMMAND [ARGS]...

  Tool to query and modify the state of EQ3 BT smart thermostat.

Options:
  --mac TEXT          [required]
  --debug / --normal
  --help              Show this message and exit.

Commands:
  away         Enables or disables the away mode.
  boost        Gets or sets the boost mode.
  device       Displays basic device information.
  locked       Gets or sets the lock.
  low-battery  Gets the low battery status.
  mode         Gets or sets the active mode.
  offset       Sets the temperature offset [-3,5 3,5]
  presets      Sets the preset temperatures for auto mode.
  schedule     Gets the schedule from the thermostat.
  state        Prints out all available information.
  temp         Gets or sets the target temperature.
  valve-state  Gets the state of the valve.
  window-open  Gets and sets the window open settings.

Hi Krakowski,
thank you for your help. The restart was the problem. It works now...

Again thx...