-
-
Notifications
You must be signed in to change notification settings - Fork 8.3k
Add Homecast integration documentation #44342
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Closed
Closed
Changes from 1 commit
Commits
Show all changes
5 commits
Select commit
Hold shift + click to select a range
95299aa
Add Homecast integration documentation
robjampar 74be146
Address review feedback: macOS naming, unquoted ha_release, select vs…
robjampar af72a76
Update docs: WebSocket push, HACS install option, cloud_push iot_class
robjampar 20f6990
Address review feedback: remove HACS reference, use list not table, m…
robjampar ea41cd6
Merge branch 'next' into add-homecast-docs-v2
robjampar File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,104 @@ | ||
| --- | ||
| title: Homecast | ||
| description: Instructions on setting up Homecast within Home Assistant. | ||
| ha_category: | ||
| - Alarm | ||
| - Binary sensor | ||
| - Climate | ||
| - Cover | ||
| - Fan | ||
| - Hub | ||
| - Light | ||
| - Lock | ||
| - Sensor | ||
| - Switch | ||
| ha_release: "2025.12" | ||
| ha_iot_class: Cloud Polling | ||
| ha_config_flow: true | ||
| ha_domain: homecast | ||
| ha_platforms: | ||
| - alarm_control_panel | ||
| - binary_sensor | ||
| - climate | ||
| - cover | ||
| - fan | ||
| - light | ||
| - lock | ||
| - sensor | ||
| - switch | ||
| ha_integration_type: hub | ||
| ha_codeowners: | ||
| - '@parob' | ||
| ha_quality_scale: bronze | ||
| --- | ||
|
|
||
| [Homecast](https://homecast.cloud) bridges Apple HomeKit smart home devices to open standards, enabling remote control, API access, and AI assistant integration. The Homecast Mac or iOS app runs on your home network as a relay between HomeKit and the Homecast cloud. | ||
|
|
||
|
robjampar marked this conversation as resolved.
Outdated
|
||
| This integration connects Home Assistant to the Homecast cloud API, exposing your HomeKit devices as native Home Assistant entities. | ||
|
|
||
| {% include integrations/config_flow.md %} | ||
|
|
||
| ## Prerequisites | ||
|
|
||
| - A [Homecast](https://homecast.cloud) account | ||
| - The Homecast Mac or iOS app running on your home network as a relay | ||
| - At least one HomeKit home with devices | ||
|
robjampar marked this conversation as resolved.
Outdated
|
||
|
|
||
| ## Setup | ||
|
|
||
| 1. Go to **{% my integrations title="Settings > Devices & services" %}** and click **Add integration**. | ||
|
robjampar marked this conversation as resolved.
Outdated
|
||
| 2. Search for **Homecast** and select it. | ||
| 3. You will be redirected to the Homecast OAuth consent screen. | ||
| 4. Log in with your Homecast account. | ||
| 5. Select which homes to share and the permission level (view or control). | ||
| 6. Confirm — your HomeKit devices will appear in Home Assistant within seconds. | ||
|
|
||
| No manual OAuth client registration is needed — the integration handles this automatically using PKCE. | ||
|
robjampar marked this conversation as resolved.
Outdated
|
||
|
|
||
| ## Supported devices | ||
|
|
||
| | HomeKit device | Home Assistant platform | What you can control | | ||
|
robjampar marked this conversation as resolved.
Outdated
|
||
| | --- | --- | --- | | ||
| | Lightbulb | Light | On/off, brightness, color, color temperature | | ||
| | Switch / Outlet | Switch | On/off | | ||
|
robjampar marked this conversation as resolved.
Outdated
|
||
| | Thermostat / Heater-Cooler | Climate | HVAC mode, temperature targets | | ||
| | Lock | Lock | Lock / unlock | | ||
| | Window Covering | Cover | Position (0–100%), open/close | | ||
| | Fan | Fan | On/off, speed | | ||
| | Security System | Alarm control panel | Arm home/away/night, disarm | | ||
| | Motion Sensor | Binary sensor | Motion detected | | ||
| | Contact Sensor | Binary sensor | Open/closed | | ||
| | Temperature Sensor | Sensor | Temperature (°C) | | ||
| | Light Sensor | Sensor | Illuminance (lux) | | ||
|
|
||
| Devices with batteries automatically get battery level and low battery entities. | ||
|
|
||
| ## How it works | ||
|
|
||
| The integration polls the Homecast REST API (`GET /rest/state`) every 30 seconds to fetch device state. When you control a device through Home Assistant, it sends the command via `POST /rest/state` and triggers an immediate refresh. | ||
|
|
||
| Devices are automatically organized into Home Assistant areas based on their HomeKit room names. If you have multiple homes, room names are prefixed with the home name (for example, "County Hall - Living Room"). | ||
|
|
||
| ## Data updates | ||
|
|
||
| The integration polls the Homecast cloud API every 30 seconds. After sending a control command, an additional refresh is triggered for faster feedback. | ||
|
|
||
| ## Removing the integration | ||
|
robjampar marked this conversation as resolved.
Outdated
|
||
|
|
||
| This integration follows standard integration removal. No extra steps are required. | ||
|
|
||
| {% include integrations/remove_device_service.md %} | ||
|
|
||
| ## Troubleshooting | ||
|
|
||
| ### Devices not appearing | ||
|
|
||
| Make sure the Homecast relay app (Mac or iOS) is running and connected. The relay must be online for the API to return device state. | ||
|
|
||
| ### Stale or delayed state | ||
|
|
||
| State updates every 30 seconds via polling. WebSocket-based real-time updates are planned for a future release. | ||
|
|
||
| ### Re-authentication | ||
|
|
||
| If your OAuth token expires, Home Assistant will show a notification prompting you to re-authenticate. Go to **{% my integrations title="Settings > Devices & services" %}** > **Homecast** and follow the re-auth flow. | ||
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.