dahlb / ha_blueair Goto Github PK
View Code? Open in Web Editor NEWHome Assistant Integration for Blueair Class Filters
License: MIT License
Home Assistant Integration for Blueair Class Filters
License: MIT License
Hi,
Currently trying to setup Sense+ filter and Aware sensors for HA, but kept getting error 'wifi_status' and fail
2024-01-01 13:32:07.471 DEBUG (MainThread) [blueair_api.util_http] response status: 200
2024-01-01 13:32:07.473 DEBUG (MainThread) [blueair_api.util_http] response raw: [{"userId":99963,"uuid":"2503466FF88007A2","scope":"device","name":"auto_mode_dependency","currentValue":"pm","defaultValue":"pm"},{"userId":434707,"uuid":"2503466FF88007A2","scope":"device","name":"brightness","currentValue":"4","defaultValue":"0"},{"userId":434707,"uuid":"2503466FF88007A2","scope":"device","name":"child_lock","currentValue":"0","defaultValue":"0"},{"userId":99963,"uuid":"2503466FF88007A2","scope":"device","name":"dealerCountry","currentValue":"","defaultValue":""},{"userId":99963,"uuid":"2503466FF88007A2","scope":"device","name":"dealerName","currentValue":"","defaultValue":""},{"userId":434707,"uuid":"2503466FF88007A2","scope":"device","name":"fan_speed","currentValue":"1","defaultValue":"0"},{"userId":434707,"uuid":"2503466FF88007A2","scope":"device","name":"fan_usage","currentValue":"0;0;0;0;0;51840","defaultValue":""},{"userId":434707,"uuid":"2503466FF88007A2","scope":"device","name":"filterType","currentValue":"row","defaultValue":"row"},{"userId":99963,"uuid":"2503466FF88007A2","scope":"device","name":"filter_status","currentValue":"OK","defaultValue":""},{"userId":434707,"uuid":"2503466FF88007A2","scope":"device","name":"mode","currentValue":"auto","defaultValue":"auto"},{"userId":99963,"uuid":"2503466FF88007A2","scope":"device","name":"model","currentValue":"Blueair Sense+","defaultValue":"Blueair Sense+"},{"userId":99963,"uuid":"2503466FF88007A2","scope":"device","name":"purchaseDate","currentValue":"","defaultValue":""},{"userId":99963,"uuid":"2503466FF88007A2","scope":"device","name":"serial","currentValue":"","defaultValue":""}]
2024-01-01 13:32:07.473 DEBUG (MainThread) [blueair_api.device] result: {'auto_mode_dependency': 'pm', 'brightness': '4', 'child_lock': '0', 'dealerCountry': '', 'dealerName': '', 'fan_speed': '1', 'fan_usage': '0;0;0;0;0;51840', 'filterType': 'row', 'filter_status': 'OK', 'mode': 'auto', 'model': 'Blueair Sense+', 'purchaseDate': '', 'serial': ''}
2024-01-01 13:32:07.473 ERROR (MainThread) [custom_components.ha_blueair.blueair_data_update_coordinator] 'wifi_status'
2024-01-01 13:32:07.474 DEBUG (MainThread) [custom_components.ha_blueair.blueair_data_update_coordinator] Finished fetching ha_blueair-Sense+ data in 0.214 seconds (success: False)
After upgrading HA to 2023.12.1 image seeing issue with Service Fan: Turn on with Blueair filter.
Fan: Turn off and Fan: Toggle seem to work fine.
Logger: homeassistant.components.websocket_api.http.connection
Source: components/websocket_api/commands.py:238
Integration: Home Assistant WebSocket API (documentation, issues)
First occurred: 1:28:49 AM (3 occurrences)
Last logged: 1:30:14 PM
[140469330725184] BlueairAwsFan.async_turn_on() takes from 1 to 2 positional arguments but 3 were given
[140469176831936] BlueairAwsFan.async_turn_on() takes from 1 to 2 positional arguments but 3 were given
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/components/websocket_api/commands.py", line 238, in handle_call_service
response = await hass.services.async_call(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/core.py", line 2067, in async_call
response_data = await coro
^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/core.py", line 2104, in _execute_service
return await target(service_call)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/helpers/entity_component.py", line 272, in handle_service
return await service.entity_service_call(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 878, in entity_service_call
single_response = await _handle_entity_call(
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 948, in _handle_entity_call
result = await task
^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/components/fan/__init__.py", line 305, in async_handle_turn_on_service
await self.async_turn_on(percentage, preset_mode, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: BlueairAwsFan.async_turn_on() takes from 1 to 2 positional arguments but 3 were given
@dahlb Thank you for the work on the integration, and for the Auto Mode fix in the previous release. I've updated to v1.5.0, and Auto Mode is now working.
I'm also seeing another issue I wanted to make you aware of (also seen on v1.4.0, which was the first version I installed).
I see the following behavior:
The LED brightness slider works when changed in Home Assistant (i.e. the LED brightness does actually change and that change is reflected in the app), but the % is often incorrect by 1%, e.g. 10% in HA is 11% in the app.
The LED on/off icons in HA do turn the LED on/off, but when used to turn the LED on, the brightness goes to 100% (reflected in the app), and the slider in HA does not change from whatever it was before.
When the LED brightness is changed in the app, the slider in HA goes dark (i.e. set to 0%) and does not reflect what was set in the app.
The LED Entity state in HA never changes from "Unknown".
Screenshots attached.
Please let me know if there is any other info I can provide that would be of use.
sOriginally had an issue logging in after adding the integration. Tried restarting HA and deleting integration. Finally added the Blueair username and password manually instead of iOS Keychain. Today my system reboots every morning at 3am and it failed on restart. It was fine for 2 days. Not sure if it was because of the update to HA Core 2023.12.2. Using Raspberry Pi 4 with HAOS 11.2, Supervisor 2023.11.6
`Logger: homeassistant.config_entries
Source: config_entries.py:402
First occurred: 3:34:06 AM (1 occurrences)
Last logged: 3:34:06 AM
Error setting up entry for ha_blueair
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/config_entries.py", line 402, in async_setup
result = await component.async_setup_entry(hass, self)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/config/custom_components/ha_blueair/init.py", line 72, in async_setup_entry
_, devices = await get_devices(
^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/blueair_api/util_bootstrap.py", line 27, in get_devices
api_devices = await api.get_devices()
^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/blueair_api/http_blueair.py", line 116, in get_devices
"X-AUTH-TOKEN": await self.get_auth_token(),
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/blueair_api/http_blueair.py", line 42, in get_auth_token
self.auth_token = await self._get_auth_token()
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/blueair_api/http_blueair.py", line 100, in _get_auth_token
raise LoginError("invalid password")
blueair_api.errors.LoginError: invalid password
`
Hello! For the first time today my air purifier has gone unavailable in HA and the integration will not reload. Is anyone else having this problem?
I've a new purifier (3250i) set up in a room that has widely variable pollutant levels. While it's in auto mode and clearing things up relatively quickly, I'd like to track this a bit better within HA.
Believe changing the update interval to a configurable value would allow better insight.
Ideally, I'd want to drop my poll time down to 60s or 30s, as my purifier is updating the cloud at a much finer detail when looking at the graphs within the app.
Hi,
I try to connect to my blueair account using version 1.6.2 of ha_blueair on home assistant core 2023.1.1.
Unfortunately I get authentication failures after trying to set up the connection. username/password do work, so the issue seems to be somewhere else.
Here ist the debug log:
Logger: homeassistant.config_entries
Source: custom_components/ha_blueair/init.py:58
Integration: Blueair (documentation, issues)
First occurred: 6 January 2023 at 19:07:12 (5 occurrences)
Last logged: 21:18:26
Error setting up entry [my_email_address] for ha_blueair
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/config_entries.py", line 382, in async_setup
result = await component.async_setup_entry(hass, self)
File "/config/custom_components/ha_blueair/init.py", line 58, in async_setup_entry
_, aws_devices = await get_aws_devices(
File "/usr/local/lib/python3.10/site-packages/blueair_api/util_bootstrap.py", line 51, in get_aws_devices
api_devices = await api.devices()
File "/usr/local/lib/python3.10/site-packages/blueair_api/http_aws_blueair.py", line 157, in devices
'Authorization': f"Bearer {await self.get_access_token()}",
File "/usr/local/lib/python3.10/site-packages/blueair_api/http_aws_blueair.py", line 151, in get_access_token
await self.refresh_access_token()
File "/usr/local/lib/python3.10/site-packages/blueair_api/http_aws_blueair.py", line 136, in refresh_access_token
await self.refresh_jwt()
File "/usr/local/lib/python3.10/site-packages/blueair_api/http_aws_blueair.py", line 120, in refresh_jwt
await self.refresh_session()
File "/usr/local/lib/python3.10/site-packages/blueair_api/http_aws_blueair.py", line 110, in refresh_session
await self._post_request_with_logging_and_errors_raised(
File "/usr/local/lib/python3.10/site-packages/blueair_api/http_aws_blueair.py", line 20, in request_with_active_session_wrapper
raise e
File "/usr/local/lib/python3.10/site-packages/blueair_api/http_aws_blueair.py", line 16, in request_with_active_session_wrapper
return await func(*args, **kwargs)
File "/usr/local/lib/python3.10/site-packages/blueair_api/http_aws_blueair.py", line 54, in request_with_errors_wrapper
raise AuthError(await response.text())
blueair_api.errors.AuthError: {
"callId": "a4c25467229f4e69bd66d4454c236cbd",
"errorCode": 403042,
"errorDetails": "invalid loginID or password",
"errorMessage": "Invalid LoginID",
"apiVersion": 2,
"statusCode": 403,
"statusReason": "Forbidden",
"time": "2023-01-06T18:07:12.475Z"
}
Do I miss a step?
Dominik
Logger: homeassistant.const
Source: helpers/deprecation.py:205
First occurred: 8:13:54 AM (1 occurrences)
Last logged: 8:13:54 AM
TEMP_CELSIUS was used from ha_blueair, this is a deprecated constant which will be removed in HA Core 2025.1. Use UnitOfTemperature.CELSIUS instead, please create a bug report at https://github.com/dahlb/ha_blueair/issues
Hello! Thanks for your work on this! I noticed with the 411i Max and 311i Max there is a discrepancy between the fan speed reported in the Blueair app and the attribute reported in HA. For example, when the fan is running at full speed, it is shown as only 91% in HA.
Here is what I found:
App -> HA
0 -> 0
12 -> 11
16 -> 15
21 -> 19
25 -> 23
30 -> 27
34 -> 31
38 -> 35
43 -> 39
47 -> 43
52 -> 47
56 -> 51
60 -> 55
65 -> 59
69 -> 63
74 -> 67
78 -> 71
82 -> 75
87 -> 79
91 -> 83
96 -> 87
100 -> 91
Any idea what is causing this and how it can be fixed?
Hi! I can provide a Swedish translation when there is a directory for translations. Tag me when it's time :)
Hi,
While it's clearly not an "issue", just wanted to let you know my 3250i air purifier popped straight up in your Blue Air integration. Added the purifier to the Blue Air app, refreshed your integration and every option/setting appeared straight away. So easy. Thank you 😊
I can't settting up ha_blueair with an error. And it operate in Home Assistant 2022.10.3
it's error log
Logger: homeassistant.config_entries
Source: custom_components/ha_blueair/init.py:56
Integration: Blueair (documentation, issues)
First occurred: 00:40:38 (1 occurrences)
Last logged: 00:40:38
Error setting up entry [email protected] for ha_blueair
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/config_entries.py", line 365, in async_setup
result = await component.async_setup_entry(hass, self)
File "/config/custom_components/ha_blueair/init.py", line 56, in async_setup_entry
_, aws_devices = await get_aws_devices(username=username, password=password, client_session=client_session)
File "/usr/local/lib/python3.10/site-packages/blueair_api/util_bootstrap.py", line 51, in get_aws_devices
api_devices = await api.devices()
File "/usr/local/lib/python3.10/site-packages/blueair_api/http_aws_blueair.py", line 157, in devices
'Authorization': f"Bearer {await self.get_access_token()}",
File "/usr/local/lib/python3.10/site-packages/blueair_api/http_aws_blueair.py", line 151, in get_access_token
await self.refresh_access_token()
File "/usr/local/lib/python3.10/site-packages/blueair_api/http_aws_blueair.py", line 136, in refresh_access_token
await self.refresh_jwt()
File "/usr/local/lib/python3.10/site-packages/blueair_api/http_aws_blueair.py", line 120, in refresh_jwt
await self.refresh_session()
File "/usr/local/lib/python3.10/site-packages/blueair_api/http_aws_blueair.py", line 110, in refresh_session
await self._post_request_with_logging_and_errors_raised(
File "/usr/local/lib/python3.10/site-packages/blueair_api/http_aws_blueair.py", line 20, in request_with_active_session_wrapper
raise e
File "/usr/local/lib/python3.10/site-packages/blueair_api/http_aws_blueair.py", line 16, in request_with_active_session_wrapper
return await func(*args, **kwargs)
File "/usr/local/lib/python3.10/site-packages/blueair_api/http_aws_blueair.py", line 54, in request_with_errors_wrapper
raise AuthError(response.text())
blueair_api.errors.AuthError: <coroutine object ClientResponse.text at 0x7f669f0eb0>
Error below:
2024-01-02 15:46:16.961 ERROR (MainThread) [custom_components.ha_blueair.blueair_data_update_coordinator] 'wifi_status' 2024-01-02 15:46:16.962 DEBUG (MainThread) [custom_components.ha_blueair.blueair_data_update_coordinator] Finished fetching ha_blueair-Little Blue data in 0.102 seconds (success: False) 2024-01-02 15:46:27.356 DEBUG (MainThread) [custom_components.ha_blueair] async setup entry: <homeassistant.config_entries.ConfigEntry object at 0x7fd688128940>
Integration returns an error and unfortunately nothing loads
Errors in logs after 2024.8 installed:
[homeassistant.components.fan] Entity None (<class 'custom_components.ha_blueair.fan.BlueairAwsFan'>) does not set FanEntityFeature.TURN_OFF but implements the turn_off method. Please create a bug report at https://github.com/dahlb/ha_blueair/issues
[homeassistant.components.fan] Entity None (<class 'custom_components.ha_blueair.fan.BlueairAwsFan'>) does not set FanEntityFeature.TURN_ON but implements the turn_on method. Please create a bug report at https://github.com/dahlb/ha_blueair/issues
Setting up for a 5440i - i get the error
Logger: custom_components.ha_blueair.blueair_data_update_coordinator
Source: custom_components/ha_blueair/blueair_data_update_coordinator.py:40
integration: Blueair (documentation, issues)
First occurred: 2:33:15 PM (17 occurrences)
Last logged: 2:45:24 PM
'child_lock'
I can't seem to get any further. Any help would be great.
Andy
Hi,
I have a 411i that works perfectly other than the fact I can’t set night mode from the integration. Is there any way it could be added or could I help add it?
Thanks
Hello,
I am seeing an error "retrying setup: pm1" loop right now. I have a different product than is listed. My product is a DustMagnet.
I have the full debug log information but was hesitant to post as it looks like there is a lot of tokens and serial numbers. i'm happy to share privately if you think there might be something in it to help resolve the problem.
Thank you
M
I've tried this with my 411i max and the integration says no entities detected. Would it be difficult to add support for this?
I'm trying to get the integration to authenticate but it keeps erroring out. I've updated my password with blueair via a "password reset" and a normal "change password" both times I synced it up in the integration but it is continues to report "invalid password".
First it reports this:
Uncaught error from Chrome WebView 119.0.6045.193 on Android 13 TypeError: Cannot read properties of undefined (reading 'friendly_name') friendly_name (src/common/entity/compute_state_name.ts:8:13) entityId (src/data/history.ts:318:6) computeGroupKey (src/data/history.ts:481:8) computeHistory (src/data/history.ts:431:28) this.hass!, (src/panels/lovelace/cards/hui-history-graph-card.ts:118:10) callbackFunction (src/data/history.ts:259:17) callback (node_modules/home-assistant-js-websocket/dist/connection.js:23:33) forEach (node_modules/home-assistant-js-websocket/dist/connection.js:15:25)
After trying a few times it then returns this:
Error setting up entry XXXXXXXXXXXXX for ha_blueair
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/config_entries.py", line 402, in async_setup
result = await component.async_setup_entry(hass, self)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/config/custom_components/ha_blueair/__init__.py", line 72, in async_setup_entry
_, devices = await get_devices(
^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/blueair_api/util_bootstrap.py", line 27, in get_devices
api_devices = await api.get_devices()
^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/blueair_api/http_blueair.py", line 116, in get_devices
"X-AUTH-TOKEN": await self.get_auth_token(),
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/blueair_api/http_blueair.py", line 42, in get_auth_token
self.auth_token = await self._get_auth_token()
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/blueair_api/http_blueair.py", line 100, in _get_auth_token
raise LoginError("invalid password")
blueair_api.errors.LoginError: invalid password
This is with debug logging enabled.
I';m trying to add my BlueAir 311i MAx, but getting invalid user.
Logs:
2024-05-31 11:47:25.019 DEBUG (MainThread) [blueair_api.util_http] sending https://api.blueair.io/v2/user/[[email protected]]/homehost/ requestheaders: {'X-API-KEY-TOKEN': '[obfuscated]'}
2024-05-31 11:47:25.176 DEBUG (MainThread) [blueair_api.util_http] response headers:<CIMultiDict('Content-Encoding': 'gzip', 'Content-Type': 'application/json;charset=UTF-8', 'Date': 'Fri, 31 May 2024 15:47:25 GMT', 'Server': 'nginx/1.12.1', 'Vary': 'Accept-Encoding,Accept-Encoding', 'Transfer-Encoding': 'chunked', 'Connection': 'keep-alive')>
2024-05-31 11:47:25.176 DEBUG (MainThread) [blueair_api.util_http] response status: 200
2024-05-31 11:47:25.177 DEBUG (MainThread) [blueair_api.util_http] response raw: "api.blueair.io"
2024-05-31 11:47:25.177 DEBUG (MainThread) [blueair_api.util_http] sending https://api.blueair.io/v2/user/[[email protected]]/login/ requestheaders: {'X-API-KEY-TOKEN': '[obfuscated]='}
2024-05-31 11:47:25.221 DEBUG (MainThread) [blueair_api.util_http] response headers:<CIMultiDict('Content-Encoding': 'gzip', 'Content-Type': 'application/json;charset=UTF-8', 'Date': 'Fri, 31 May 2024 15:47:25 GMT', 'Server': 'nginx/1.12.1', 'Vary': 'Accept-Encoding,Accept-Encoding', 'Transfer-Encoding': 'chunked', 'Connection': 'keep-alive')>
2024-05-31 11:47:25.221 DEBUG (MainThread) [blueair_api.util_http] response status: 404
2024-05-31 11:47:25.222 DEBUG (MainThread) [blueair_api.util_http] response json: {'state': 404, 'message': 'This AuthUser does not exist.', 'requestedUri': '/v2/user/[[email protected]]/login/', 'stack': '[obfuscated]', 'propagatedException': None}
Hi!
I have a few 411i Max and a 211i Max. I've noticed that pm1
, pm10
, and pm25
(pm25
on 211i Max) display as Unavailable
when the fan has been off. Is there a way to still get the pm#
data when the fan is off?
I have some automation that keeps the fan on (auto) if the pm#
is above a certain threshold and off when it's below a different threshold, however, most of the time the value is Unavailable
mainly if it's been a few minutes that the device is on.
I constantly have the pm#
data available on a different device that is mostly on.
This custom integration uses deprecated DEVICE_CLASS_*
constants in its codebase.
The DEVICE_CLASS_*
constants have been deprecated and replaced in Home Assistant Core 2021.12 (over a year ago). I would highly suggest updating/migrating this integration to the new enums.
For example, for the device classes supported by the sensor
platform, there is now a SensorDeviceClass
enum. So if a sensor previously used the DEVICE_CLASS_ENERGY
constant, it should now use SensorDeviceClass.ENERGY
. Other platforms (like binary_sensor
, and number
) provide similar enumerations for their supported device classes.
The migration thus only consists of replacing constants with an enumeration member and is, therefore, very low impact and should be fairly straightforward.
If I can help resolve any questions regarding this change or migration, feel free to ask or respond to this issue. I'm happy to help!
Kindest regards,
../Frenck
It's failing setup and does not pull in entities but in the log it pulls all my air purifiers. I and running 2024.3.3 Below is the only error I see.
2024-03-22 22:49:40.705 ERROR (MainThread) [custom_components.ha_blueair.blueair_data_update_coordinator] 'filter_status'
This error originated from a custom integration.
Logger: custom_components.ha_blueair.blueair_data_update_coordinator
Source: custom_components/ha_blueair/blueair_data_update_coordinator.py:40
integration: Blueair (documentation, issues)
First occurred: 10:19:21 PM (29 occurrences)
Last logged: 10:42:46 PM
'filter_status'
First off, awesome integration and appreciate all the work!
I recently had deleted device from BlueAir iOS app and re-added the same device with a new name when changing its wifi network.
Now the integration seems to have data for the device with old name, some sensors Unavailable, switches don’t actually change anything on device.
I turned on the debug logs, but it seems all fine there. 200 on responses, don’t see any errors.
I have tried deleting integration and removing HACS add-on before re-adding it all.
I must be doing something wrong :)
Home Assistant 2023.4.6
Frontend 20230411.1 - latest
Protect 7770i
Hi!
I have a classic 680i.
I get an error when I add the integration from HACS an install it (email changed):
2022-07-22 14:06:27 ERROR (MainThread) [homeassistant.config_entries] Error setting up entry ******@*****.com for ha_blueair
File "/config/custom_components/ha_blueair/__init__.py", line 56, in async_setup_entry
Any ideas?
This problem has been occurring for months and I did not find a solution for it.
I searched for similar problems but did not find them.
After the update, I get this message:
“failed to set up.”
I looked at the log and it says 👎
“errorDetails”: “Account temporarily locked out.”
"errorMessage": "Account Temporarily Locked Out","
Is there a solution to this problem?
"Failed to call service light/turn_on"
"Failed to call service light/turn_off"
v1.7.4
HA v2023.4.6
Hello.
Verified username and password several times.
Debug log:
2024-05-08 18:40:00.615 DEBUG (MainThread) [custom_components.ha_blueair] login failure, ha should retry
2024-05-08 18:41:20.799 DEBUG (MainThread) [custom_components.ha_blueair] async setup entry:
2024-05-08 18:41:22.117 DEBUG (MainThread) [custom_components.ha_blueair] login failure, ha should retry
2024-05-08 18:42:42.542 DEBUG (MainThread) [custom_components.ha_blueair] async setup entry:
2024-05-08 18:42:44.628 DEBUG (MainThread) [custom_components.ha_blueair] login failure, ha should retry
2024-05-08 18:44:04.961 DEBUG (MainThread) [custom_components.ha_blueair] async setup entry:
2024-05-08 18:44:05.786 DEBUG (MainThread) [custom_components.ha_blueair] login failure, ha should retry
I can't seem to get my Home Assistant to log in and see the devices, even though i can log in and it is all working fine in the native BlueAir app. I'm based in the UK
Below is the error log from HA
`This error originated from a custom integration.
Logger: homeassistant.config_entries
Source: custom_components/ha_blueair/init.py:73
Integration: Blueair (documentation, issues)
First occurred: 10:59:40 AM (1 occurrences)
Last logged: 10:59:40 AM
Error setting up entry [email protected] for ha_blueair
Traceback (most recent call last):
File "/usr/local/lib/python3.10/site-packages/aiohttp/connector.py", line 986, in _wrap_create_connection
return await self._loop.create_connection(*args, **kwargs) # type: ignore[return-value] # noqa
File "/usr/local/lib/python3.10/asyncio/base_events.py", line 1089, in create_connection
transport, protocol = await self._create_connection_transport(
File "/usr/local/lib/python3.10/asyncio/base_events.py", line 1119, in _create_connection_transport
await waiter
File "/usr/local/lib/python3.10/asyncio/sslproto.py", line 534, in data_received
ssldata, appdata = self._sslpipe.feed_ssldata(data)
File "/usr/local/lib/python3.10/asyncio/sslproto.py", line 188, in feed_ssldata
self._sslobj.do_handshake()
File "/usr/local/lib/python3.10/ssl.py", line 975, in do_handshake
self._sslobj.do_handshake()
ssl.SSLCertVerificationError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:997)
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/config_entries.py", line 382, in async_setup
result = await component.async_setup_entry(hass, self)
File "/config/custom_components/ha_blueair/init.py", line 73, in async_setup_entry
_, devices = await get_devices(
File "/usr/local/lib/python3.10/site-packages/blueair_api/util_bootstrap.py", line 27, in get_devices
api_devices = await api.get_devices()
File "/usr/local/lib/python3.10/site-packages/blueair_api/http_blueair.py", line 111, in get_devices
url = f"https://{await self.get_home_host()}/v2/owner/{self.username}/device/"
File "/usr/local/lib/python3.10/site-packages/blueair_api/http_blueair.py", line 37, in get_home_host
self.home_host = await self._get_home_host()
File "/usr/local/lib/python3.10/site-packages/blueair_api/http_blueair.py", line 68, in _get_home_host
await self._get_request_with_logging_and_errors_raised(
File "/usr/local/lib/python3.10/site-packages/blueair_api/util_http.py", line 22, in request_with_logging_wrapper
response = await func(*args, **kwargs)
File "/usr/local/lib/python3.10/site-packages/blueair_api/http_blueair.py", line 49, in _get_request_with_logging_and_errors_raised
return await self.api_session.get(url=url, headers=headers)
File "/usr/local/lib/python3.10/site-packages/aiohttp/client.py", line 535, in _request
conn = await self._connector.connect(
File "/usr/local/lib/python3.10/site-packages/aiohttp/connector.py", line 542, in connect
proto = await self._create_connection(req, traces, timeout)
File "/usr/local/lib/python3.10/site-packages/aiohttp/connector.py", line 907, in _create_connection
_, proto = await self._create_direct_connection(req, traces, timeout)
File "/usr/local/lib/python3.10/site-packages/aiohttp/connector.py", line 1206, in _create_direct_connection
raise last_exc
File "/usr/local/lib/python3.10/site-packages/aiohttp/connector.py", line 1175, in _create_direct_connection
transp, proto = await self._wrap_create_connection(
File "/usr/local/lib/python3.10/site-packages/aiohttp/connector.py", line 988, in _wrap_create_connection
raise ClientConnectorCertificateError(req.connection_key, exc) from exc
aiohttp.client_exceptions.ClientConnectorCertificateError: Cannot connect to host api.blueair.io:443 ssl:True [SSLCertVerificationError: (1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:997)')]`
Logger: homeassistant.helpers.entity
Source: helpers/entity.py:1524
First occurred: 8:13:54 AM (1 occurrences)
Last logged: 8:13:54 AM
Entity None (<class 'custom_components.ha_blueair.fan.BlueairAwsFan'>) is using deprecated supported features values which will be removed in HA Core 2025.1. Instead it should use <FanEntityFeature.SET_SPEED: 1>, please create a bug report at https://github.com/dahlb/ha_blueair/issues and reference https://developers.home-assistant.io/blog/2023/12/28/support-feature-magic-numbers-deprecation
Hello,
With the retirement of the other BlueAir HA Integration from HACS (https://github.com/aijayadams/hass-blueair) I found your integration.
As the title states, I have a Classic 480i. The BA login was successful and I can control the fan speed. Having the filter status is a nice new touch.
However, I don't have any of the sensor readings. The Temperature, Humidity, VOC, PM1, PM2.5, and PM10 are all missing. I'm not sure if I've done something wrong with it just being freshly installed.
I've also noticed that the other integration had CO2 and Total Pollution readouts but the official app doesn't have those sensors displayed so it might've been bogus.
I can help test new code or provide logs if desired. I looked under Settings -> System -> Logs and didn't find anything saying that your integration was having an error and that's why the sensor data wasn't appearing.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.