Installation Issues
Qt WebSocket package is not installed
Qt WebSocket package is not installed
The plasmoid requires the Qt WebSocket package to communicate with Home Assistant. If you see errors about missing WebSocket components, install the appropriate package for your distribution:
After installation, restart Plasma or re-login for the changes to take effect:
| Distribution | Required Package |
|---|---|
| Debian, Ubuntu | qml6-module-qtwebsockets |
| Arch | qt6-websockets |
| Fedora | qt6-qtwebsockets-devel |
| openSUSE | qt6-websockets-imports |
| NixOS | kdePackages.qtwebsockets |
KDE Wallet is not active
KDE Wallet is not active
The plasmoid uses KDE Wallet to securely store your Home Assistant access token. If KDE Wallet is disabled or not configured, the plasmoid cannot save your credentials.Solution:
- Open System Settings
- Navigate to Security & Privacy → KDE Wallet
- Enable KDE Wallet
- Configure a wallet (either with or without encryption)
- Restart the plasmoid
KDE Wallet must be active before configuring the plasmoid for the first time.
Plasmoid shows configuration required
Plasmoid shows configuration required
If the plasmoid displays a configuration required message, it means one or more required settings are missing:Checklist:
- Home Assistant URL is configured
- Long-Lived Access Token is set
- At least one entity is added to the plasmoid
- Right-click the plasmoid
- Select Configure Home Assistant
- Enter your URL and token
- Add entities in the Items tab
Connection Issues
Invalid URL format
Invalid URL format
The Home Assistant URL must include the protocol and port. Common mistakes include:Incorrect formats:
homeassistant.local(missing protocol)http://homeassistant.local(missing port for custom setups)http://homeassistant.local:8123/(trailing slash)
http://homeassistant.local:8123https://example.duckdns.orghttp://192.168.1.100:8123
http:// or https://).The URL is automatically converted from HTTP(S) to the WebSocket protocol (WS/WSS) internally. See
Client.qml:17 for implementation details.Authentication failed
Authentication failed
If you see an
auth_invalid error, the access token is incorrect or expired.Solutions:- Generate a new Long-Lived Access Token:
- Go to your Home Assistant profile:
https://your-ha-url/profile/security - Scroll to Long-Lived Access Tokens
- Click Create Token
- Copy the token immediately (it won’t be shown again)
- Go to your Home Assistant profile:
- Update the token in plasmoid configuration
- Ensure the token hasn’t been revoked in Home Assistant
WebSocket connection drops
WebSocket connection drops
The plasmoid uses a ping-pong mechanism to keep the WebSocket connection alive. If connections drop frequently:Common causes:
- Network instability or firewall issues
- Home Assistant server restarting
- Reverse proxy timeout settings too aggressive
- The plasmoid sends a ping every 30 seconds (
Client.qml:28) - If no pong response is received within 30 seconds, it automatically reconnects
- Check the error string in the plasmoid interface for specific connection errors
- Verify network connectivity between your machine and Home Assistant
- Check Home Assistant logs for WebSocket errors
- If using a reverse proxy (nginx, Apache), increase WebSocket timeout settings
- Ensure your Home Assistant version is 2022.4 or newer
Cannot connect over HTTPS
Cannot connect over HTTPS
If your Home Assistant uses HTTPS with a self-signed certificate, you may encounter connection issues.Solutions:
- Add the certificate to your system’s trusted certificates
- Use a valid certificate from Let’s Encrypt or another CA
- For testing only: temporarily use HTTP instead of HTTPS
Entity Configuration Issues
Entities not updating
Entities not updating
If entity states don’t update in the plasmoid:Troubleshooting steps:
- Verify the entity exists and is available in Home Assistant
- Check that the entity ID is correct (case-sensitive)
- Ensure the WebSocket connection is active (check for error messages)
- Try removing and re-adding the entity
- The plasmoid subscribes to entity state changes via
subscribe_entitiesWebSocket command (Client.qml:98) - State updates are received as events with type
event(Client.qml:64) - Only configured entities receive update subscriptions
Service calls not working
Service calls not working
If clicking entities or using scroll actions doesn’t trigger services:Check:
- The service domain and service name are correct
- The entity supports the service being called
- Required service data fields are properly configured
- Check Home Assistant logs for service call errors
call_service WebSocket command (Client.qml:109-117). Service call responses are handled asynchronously.Entity shows as unavailable
Entity shows as unavailable
Debugging
Checking Logs
To view plasmoid logs and errors:Error Messages
The plasmoid exposes error messages through theerrorString property (Client.qml:13). Common error messages:
| Error Message | Meaning | Solution |
|---|---|---|
auth_invalid | Token authentication failed | Regenerate and update access token |
Component.Error | Qt component failed to load | Check Qt WebSocket package installation |
| Connection error | Network/WebSocket connection failed | Verify URL format and network connectivity |
| Empty response | No data received from Home Assistant | Check entity IDs and Home Assistant availability |
Debug Mode
To enable verbose QML logging:Verifying WebSocket Connection
You can test the WebSocket connection independently:Component Load Errors
If the plasmoid fails to load entirely, check for component errors:Getting Help
If you continue experiencing issues:- Search existing issues: Check the GitHub Issues page
- Gather information:
- Your distribution and version
- KDE Plasma version
- Home Assistant version
- Error messages from logs
- Steps to reproduce the issue
- File a bug report: Use the bug report template
When reporting issues, include your system information, KDE Plasma version, and relevant log output. Never include your access token in bug reports.
System Requirements
Verify your system meets the minimum requirements:- KDE Plasma: 6.0 or newer
- Home Assistant: 2022.4 or newer
- Qt WebSocket package: Must be installed
- KDE Wallet: Must be active
