Skip to content

All devices unavailable / 0 appliances loaded after June 2026 — Haier retired Salesforce login #330

Open

Description

@david-romero

Problem

After June 2026, all devices show as unavailable in Home Assistant and the
integration loads 0 appliances, even though authentication appears to succeed.

Enabling debug logging shows:

HON SETUP: hon.create() succeeded — 0 appliance(s) loaded, refresh_token present=True

Querying the API directly confirms the root cause:

GET /commands/v1/appliance → {"payload": {"appliances": []}, "authInfo": {}}

Root cause

Haier retired the legacy Salesforce / OAuth2 login flow and the
/commands/v1/appliance endpoint in June 2026. The old auth (via
account2.hon-smarthome.com) still returns tokens, but the appliance
listing endpoint always returns an empty array for sessions authenticated
through it.

Workaround

The fork mmalolepszy/pyhon-revived
contains the fix. It replaces the Salesforce login with the new CIAM/PKCE
auth flow and updates the appliance listing to use
/unified-api/v1/view/appliance-list.

Since pyhOn==0.17.5 (the version required by this integration) is not yet
updated on PyPI, you need to manually patch the installed pyhon package inside
the HA container.

Step 1 — find where pyhon is installed:

docker exec homeassistant find /usr/local/lib -name 'auth.py' -path '*/pyhon/connection/*'

Step 2 — download the patched files from the fork:

docker exec homeassistant /bin/sh -c "
pip install git+https://github.com/mmalolepszy/pyhon-revived.git --target /tmp/pyhon_new --no-deps -q
"

Step 3 — overwrite the installed files:

docker exec homeassistant /bin/sh -c "
CONN=\$(find /usr/local/lib -name 'auth.py' -path '*/pyhon/connection/*' | head -1 | xargs dirname) &&
ROOT=\$(dirname \$CONN) &&
cp /tmp/pyhon_new/pyhon/connection/auth.py \$CONN/auth.py &&
cp /tmp/pyhon_new/pyhon/connection/api.py \$CONN/api.py &&
cp /tmp/pyhon_new/pyhon/connection/hon.py \$CONN/hon.py &&
cp /tmp/pyhon_new/pyhon/const.py \$ROOT/const.py &&
cp /tmp/pyhon_new/pyhon/helper.py \$ROOT/helper.py &&
find \$ROOT -name '__pycache__' -type d | xargs rm -rf &&
echo Patched at \$ROOT
"

Step 4 — restart HA:

ha core restart

Appliances should now be discovered and all entities become available.

Expected fix

Update the pyhOn requirement to the revived fork or a new PyPI release that
includes the CIAM login and the new appliances endpoint.

Activity

  1. byte4geek commented on Jun 24, 2026

    @byte4geek
  2. Demarcation commented on Jun 29, 2026

    @Demarcation

    Having the same issue… will check if fix works later

  3. fnog commented on Jul 5, 2026

    @fnog

    I just checked and I also confirm that it works.
    My simplest approach to fix my custom python script setup (I'm not using HA) was just to clone https://github.com/mmalolepszy/pyhon-revived repo and update my site-packages/pyhon directory structure under my active venv with the cloned pyhon version.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions