Merge branch 'rc' into current

This commit is contained in:
Franck Nijhof 2025-02-05 19:13:38 +00:00
commit 02f1a91cc2
No known key found for this signature in database
GPG Key ID: D62583BA8AB11CA3
142 changed files with 5663 additions and 448 deletions

View File

@ -117,7 +117,7 @@ source/_integrations/bluetooth_adapters.markdown @bdraco
source/_integrations/bmw_connected_drive.markdown @gerard33 @rikroe
source/_integrations/bond.markdown @bdraco @prystupa @joshs85 @marciogranzotto
source/_integrations/bosch_shc.markdown @tschamm
source/_integrations/brandt.markdown @imicknl @vlebourl @tetienne @nyroDev @tronix117 @alexfp14
source/_integrations/brandt.markdown @imicknl
source/_integrations/braviatv.markdown @bieniu @Drafteed
source/_integrations/brel_home.markdown @starkillerOG
source/_integrations/bring.markdown @miaucl @tr4nt0r
@ -166,7 +166,7 @@ source/_integrations/coolmaster.markdown @OnFreund
source/_integrations/counter.markdown @fabaff
source/_integrations/cover.markdown @home-assistant/core
source/_integrations/cover.template.markdown @home-assistant/core
source/_integrations/cozytouch.markdown @imicknl @vlebourl @tetienne @nyroDev @tronix117 @alexfp14
source/_integrations/cozytouch.markdown @imicknl
source/_integrations/cpuspeed.markdown @fabaff
source/_integrations/cribl.markdown @Bre77
source/_integrations/crownstone.markdown @Crownstone @RicArch97
@ -178,6 +178,7 @@ source/_integrations/datetime.markdown @home-assistant/core
source/_integrations/deako.markdown @sebirdman @balake @deakolights
source/_integrations/debugpy.markdown @frenck
source/_integrations/deconz.markdown @Kane610
source/_integrations/decorquip.markdown @starkillerOG
source/_integrations/default_config.markdown @home-assistant/core
source/_integrations/delijn.markdown @bollewolle @Emilv2
source/_integrations/delmarva.markdown @tronikos
@ -279,7 +280,7 @@ source/_integrations/fitbit.markdown @allenporter
source/_integrations/fivem.markdown @Sander0542
source/_integrations/fjaraskupan.markdown @elupus
source/_integrations/flexit_bacnet.markdown @lellky @piotrbulinski
source/_integrations/flexom.markdown @imicknl @vlebourl @tetienne @nyroDev @tronix117 @alexfp14
source/_integrations/flexom.markdown @imicknl
source/_integrations/flick_electric.markdown @ZephireNZ
source/_integrations/flipr.markdown @cnico
source/_integrations/flo.markdown @dmulcahey
@ -325,6 +326,7 @@ source/_integrations/google.markdown @allenporter
source/_integrations/google_assistant.markdown @home-assistant/cloud
source/_integrations/google_assistant_sdk.markdown @tronikos
source/_integrations/google_cloud.markdown @lufton @tronikos
source/_integrations/google_drive.markdown @tronikos
source/_integrations/google_generative_ai_conversation.markdown @tronikos
source/_integrations/google_mail.markdown @tkdrob
source/_integrations/google_photos.markdown @allenporter
@ -341,6 +343,7 @@ source/_integrations/guardian.markdown @bachya
source/_integrations/habitica.markdown @tr4nt0r
source/_integrations/hardware.markdown @home-assistant/core
source/_integrations/harmony.markdown @ehendrix23 @bdraco @mkeesey @Aohzan
source/_integrations/harvey.markdown @Jordi1990
source/_integrations/hassio.markdown @home-assistant/supervisor
source/_integrations/havana_shade.markdown @starkillerOG
source/_integrations/hdmi_cec.markdown @inytar
@ -348,8 +351,8 @@ source/_integrations/heatmiser.markdown @andylockran
source/_integrations/heiwa.markdown @cmroche
source/_integrations/heos.markdown @andrewsayre
source/_integrations/here_travel_time.markdown @eifinger
source/_integrations/hexaom.markdown @imicknl @vlebourl @tetienne @nyroDev @tronix117 @alexfp14
source/_integrations/hi_kumo.markdown @imicknl @vlebourl @tetienne @nyroDev @tronix117 @alexfp14
source/_integrations/hexaom.markdown @imicknl
source/_integrations/hi_kumo.markdown @imicknl
source/_integrations/hikvision.markdown @mezz64
source/_integrations/hikvisioncam.markdown @fbradyirl
source/_integrations/hisense_aehw4a1.markdown @bannhead
@ -366,6 +369,7 @@ source/_integrations/homeassistant_green.markdown @home-assistant/core
source/_integrations/homeassistant_hardware.markdown @home-assistant/core
source/_integrations/homeassistant_sky_connect.markdown @home-assistant/core
source/_integrations/homeassistant_yellow.markdown @home-assistant/core
source/_integrations/homee.markdown @Taraman17
source/_integrations/homekit.markdown @bdraco
source/_integrations/homekit_controller.markdown @Jc2k @bdraco
source/_integrations/homematic.markdown @pvizeli
@ -389,9 +393,9 @@ source/_integrations/hyperion.markdown @dermotduffy
source/_integrations/ialarm.markdown @RyuzakiKK
source/_integrations/iammeter.markdown @lewei50
source/_integrations/iaqualink.markdown @flz
source/_integrations/ibeacon.markdown @bdraco
source/_integrations/icloud.markdown @Quentame @nzapponi
source/_integrations/idasen_desk.markdown @abmantis
source/_integrations/igloohome.markdown @keithle888
source/_integrations/ign_sismologia.markdown @exxamalte
source/_integrations/image.markdown @home-assistant/core
source/_integrations/image_processing.markdown @home-assistant/core
@ -470,6 +474,7 @@ source/_integrations/leaone.markdown @bdraco
source/_integrations/led_ble.markdown @bdraco
source/_integrations/legrand.markdown @cgtobi
source/_integrations/lektrico.markdown @lektrico
source/_integrations/letpot.markdown @jpelgrom
source/_integrations/leviton_z_wave.markdown @home-assistant/z-wave
source/_integrations/lg_netcast.markdown @Drafteed @splinter98
source/_integrations/lg_thinq.markdown @LG-ThinQ-Integration
@ -506,6 +511,8 @@ source/_integrations/martec.markdown @starkillerOG
source/_integrations/mastodon.markdown @fabaff @andrew-codechimp
source/_integrations/matrix.markdown @PaarthShah
source/_integrations/matter.markdown @home-assistant/matter
source/_integrations/mcp.markdown @allenporter
source/_integrations/mcp_server.markdown @allenporter
source/_integrations/mealie.markdown @joostlek @andrew-codechimp
source/_integrations/meater.markdown @Sotolotl @emontnemery
source/_integrations/medcom_ble.markdown @elafargue
@ -566,7 +573,7 @@ source/_integrations/netgear.markdown @hacf-fr @Quentame @starkillerOG
source/_integrations/netgear_lte.markdown @tkdrob
source/_integrations/network.markdown @home-assistant/core
source/_integrations/nexia.markdown @bdraco
source/_integrations/nexity.markdown @imicknl @vlebourl @tetienne @nyroDev @tronix117 @alexfp14
source/_integrations/nexity.markdown @imicknl
source/_integrations/nextbus.markdown @vividboarder
source/_integrations/nextcloud.markdown @mib1185
source/_integrations/nextdns.markdown @bieniu
@ -578,7 +585,6 @@ source/_integrations/niko_home_control.markdown @VandeurenGlenn
source/_integrations/nilu.markdown @hfurubotten
source/_integrations/nina.markdown @DeerMaximum
source/_integrations/nissan_leaf.markdown @filcole
source/_integrations/nmbs.markdown @thibmaek
source/_integrations/noaa_tides.markdown @jdelaney72
source/_integrations/nobo_hub.markdown @echoromeo @oyvindwe
source/_integrations/nordpool.markdown @gjohansson-ST
@ -605,9 +611,10 @@ source/_integrations/ombi.markdown @larssont
source/_integrations/onboarding.markdown @home-assistant/core
source/_integrations/oncue.markdown @bdraco @peterager
source/_integrations/ondilo_ico.markdown @JeromeHXP
source/_integrations/onedrive.markdown @zweckj
source/_integrations/onewire.markdown @garbled1 @epenet
source/_integrations/onkyo.markdown @arturpragacz @eclair4151
source/_integrations/onvif.markdown @hunterjm
source/_integrations/onvif.markdown @hunterjm @jterrace
source/_integrations/open_meteo.markdown @frenck
source/_integrations/openai_conversation.markdown @balloob
source/_integrations/openerz.markdown @misialq
@ -626,7 +633,8 @@ source/_integrations/oru_opower.markdown @tronikos
source/_integrations/osoenergy.markdown @osohotwateriot
source/_integrations/otbr.markdown @home-assistant/core
source/_integrations/ourgroceries.markdown @OnFreund
source/_integrations/overkiz.markdown @imicknl @vlebourl @tetienne @nyroDev @tronix117 @alexfp14
source/_integrations/overkiz.markdown @imicknl
source/_integrations/overseerr.markdown @joostlek
source/_integrations/ovo_energy.markdown @timmo001
source/_integrations/p1_monitor.markdown @klaasnicolaas
source/_integrations/palazzetti.markdown @dotvav
@ -648,7 +656,7 @@ source/_integrations/ping.markdown @jpbede
source/_integrations/piper.markdown @balloob @synesthesiam
source/_integrations/plaato.markdown @JohNan
source/_integrations/plex.markdown @jjlawren
source/_integrations/plugwise.markdown @CoMPaTech @bouwew @frenck
source/_integrations/plugwise.markdown @CoMPaTech @bouwew
source/_integrations/plum_lightpad.markdown @ColinHarrington @prystupa
source/_integrations/point.markdown @fredrike
source/_integrations/poolsense.markdown @haemishkyd
@ -675,6 +683,7 @@ source/_integrations/pvoutput.markdown @frenck
source/_integrations/pvpc_hourly_pricing.markdown @azogue
source/_integrations/pyload.markdown @tr4nt0r
source/_integrations/qbittorrent.markdown @geoffreylagaisse @finder39
source/_integrations/qbus.markdown @Qbus-iot @thomasddn
source/_integrations/qingping.markdown @bdraco
source/_integrations/qld_bushfire.markdown @exxamalte
source/_integrations/qnap.markdown @disforw
@ -708,7 +717,7 @@ source/_integrations/reolink.markdown @starkillerOG
source/_integrations/repairs.markdown @home-assistant/core
source/_integrations/repetier.markdown @ShadowBr0ther
source/_integrations/rest_command.markdown @jpbede
source/_integrations/rexel.markdown @imicknl @vlebourl @tetienne @nyroDev @tronix117 @alexfp14
source/_integrations/rexel.markdown @imicknl
source/_integrations/rflink.markdown @javicalle
source/_integrations/rfxtrx.markdown @danielhiversen @elupus @RobBie1221
source/_integrations/rhasspy.markdown @balloob @synesthesiam
@ -717,7 +726,7 @@ source/_integrations/ring.markdown @sdb9696
source/_integrations/risco.markdown @OnFreund
source/_integrations/rituals_perfume_genie.markdown @milanmeu @frenck
source/_integrations/rmvtransport.markdown @cgtobi
source/_integrations/roborock.markdown @Lash-L
source/_integrations/roborock.markdown @Lash-L @allenporter
source/_integrations/roku.markdown @ctalkington
source/_integrations/romy.markdown @xeniter
source/_integrations/roomba.markdown @pschmitt @cyr-ius @shenxn @Orhideous
@ -726,6 +735,7 @@ source/_integrations/rpi_power.markdown @shenxn @swetoast
source/_integrations/rss_feed_template.markdown @home-assistant/core
source/_integrations/ruckus_unleashed.markdown @lanrat @ms264556 @gabe565
source/_integrations/russound_rio.markdown @noahhusby
source/_integrations/russound_rnet.markdown @noahhusby
source/_integrations/ruuvi_gateway.markdown @akx
source/_integrations/ruuvitag_ble.markdown @akx
source/_integrations/rympro.markdown @OnFreund @elad-bar @maorcc
@ -771,7 +781,7 @@ source/_integrations/simplefin.markdown @scottg489 @jeeftor
source/_integrations/simplepush.markdown @engrbm87
source/_integrations/simplisafe.markdown @bachya
source/_integrations/simply_automated.markdown @gwww
source/_integrations/simu.markdown @imicknl @vlebourl @tetienne @nyroDev @tronix117 @alexfp14
source/_integrations/simu.markdown @imicknl
source/_integrations/sinch.markdown @bendikrb
source/_integrations/siren.markdown @home-assistant/core @raman325
source/_integrations/sisyphus.markdown @jkeljo
@ -783,7 +793,7 @@ source/_integrations/sleepiq.markdown @mfugate1 @kbickar
source/_integrations/slide.markdown @ualex73
source/_integrations/slide_local.markdown @dontinelli
source/_integrations/slimproto.markdown @marcelveldt
source/_integrations/sma.markdown @kellerza @rklomp
source/_integrations/sma.markdown @kellerza @rklomp @erwindouna
source/_integrations/smappee.markdown @bsmappee
source/_integrations/smart_blinds.markdown @starkillerOG
source/_integrations/smart_home.markdown @starkillerOG
@ -801,9 +811,9 @@ source/_integrations/snooz.markdown @AustinBrunkhorst
source/_integrations/solaredge.markdown @frenck @bdraco
source/_integrations/solaredge_local.markdown @drobtravels @scheric
source/_integrations/solarlog.markdown @Ernst79 @dontinelli
source/_integrations/solax.markdown @squishykid
source/_integrations/solax.markdown @squishykid @Darsstar
source/_integrations/soma.markdown @ratsept @sebfortier2288
source/_integrations/somfy.markdown @imicknl @vlebourl @tetienne @nyroDev @tronix117 @alexfp14
source/_integrations/somfy.markdown @imicknl
source/_integrations/sonarr.markdown @ctalkington
source/_integrations/songpal.markdown @rytilahti @shenxn
source/_integrations/sonos.markdown @jjlawren @peterager
@ -848,7 +858,7 @@ source/_integrations/synology_dsm.markdown @hacf-fr @Quentame @mib1185
source/_integrations/synology_srm.markdown @aerialls
source/_integrations/system_bridge.markdown @timmo001
source/_integrations/systemmonitor.markdown @gjohansson-ST
source/_integrations/tado.markdown @chiefdragon @erwindouna
source/_integrations/tado.markdown @erwindouna
source/_integrations/tag.markdown @balloob @dmulcahey
source/_integrations/tailscale.markdown @frenck
source/_integrations/tailwind.markdown @frenck
@ -898,11 +908,11 @@ source/_integrations/transmission.markdown @engrbm87 @JPHutchins
source/_integrations/trend.markdown @jpbede
source/_integrations/triggercmd.markdown @rvmey
source/_integrations/tts.markdown @home-assistant/core
source/_integrations/tuya.markdown @Tuya @zlinoliver @frenck
source/_integrations/tuya.markdown @Tuya @zlinoliver
source/_integrations/twentemilieu.markdown @frenck
source/_integrations/twinkly.markdown @dr1rrb @Robbie1221 @Olen
source/_integrations/twitch.markdown @joostlek
source/_integrations/ubiwizz.markdown @imicknl @vlebourl @tetienne @nyroDev @tronix117 @alexfp14
source/_integrations/ubiwizz.markdown @imicknl
source/_integrations/ukraine_alarm.markdown @PaulAnnekov
source/_integrations/unifi.markdown @Kane610
source/_integrations/unifi_direct.markdown @tofuSCHNITZEL
@ -925,12 +935,12 @@ source/_integrations/vacuum.template.markdown @home-assistant/core
source/_integrations/vallox.markdown @andre-richter @slovdahl @viiru- @yozik04
source/_integrations/valve.markdown @home-assistant/core
source/_integrations/velbus.markdown @Cereal2nd @brefra
source/_integrations/velux.markdown @Julius2342 @DeerMaximum
source/_integrations/velux.markdown @Julius2342 @DeerMaximum @pawlizio
source/_integrations/venstar.markdown @garbled1 @jhollowe
source/_integrations/vermont_castings.markdown @jeeftor
source/_integrations/versasense.markdown @imstevenxyz
source/_integrations/version.markdown @ludeeus
source/_integrations/vesync.markdown @markperdue @webdjoe @thegardenmonkey @cdnninja
source/_integrations/vesync.markdown @markperdue @webdjoe @thegardenmonkey @cdnninja @iprak
source/_integrations/vicare.markdown @CFenner
source/_integrations/vilfo.markdown @ManneW
source/_integrations/vivotek.markdown @HarlemSquirrel

View File

@ -107,9 +107,9 @@ social:
# Home Assistant release details
current_major_version: 2025
current_minor_version: 1
current_patch_version: 4
date_released: 2025-01-24
current_minor_version: 2
current_patch_version: 0
date_released: 2025-02-05
# Either # or the anchor link to latest release notes in the blog post.
# Must be prefixed with a # and have double quotes around it.

View File

@ -62,7 +62,7 @@ title:
type: string
period:
required: false
description: The period of the rendered graph. `5minute`, `hour`, `day`, `week` or `month`
description: The period of the rendered graph. `5minute`, `hour`, `day`, `week` or `month`. If `energy_date_selection` is true, and `period` is not defined, the chart period will auto-select between month/day/hour based on the selected date range.
type: string
hide_legend:
required: false
@ -87,6 +87,15 @@ fit_y_data:
description: If true, configured Y-axis bounds would automatically extend (but not shrink) to fit the data.
type: boolean
default: false
energy_date_selection:
required: false
description: If true, chart date range will follow the date selected on an `energy-date-selection` card on the same view, similar to energy cards.
type: boolean
default: false
collection_key:
required: false
description: If using `energy_date_selection`, you can set a custom key to match the optional key of an `energy-date-selection` card. This is not typically required, but can be useful if multiple date selection cards are used on the same view.
type: string
{% endconfiguration %}
### Options for entities

View File

@ -66,6 +66,16 @@ hide_completed:
description: Hide the completed items section in the card.
type: boolean
default: "false"
hide_create:
required: false
description: Hide the textbox for creating new tasks at the top of the card.
type: boolean
default: "false"
display_order:
required: false
description: "Optionally sorts the items in the to-do list for display. Options are: `none`: Show the list in its original order. `alpha_asc`: Sort the list in alphabetical order. `alpha_desc`: Sort the list in reverse alphabetical order. `duedate_asc`: Sort the list by due date (soonest first). `duedate_desc`: Sort the list by reverse due date (soonest last)."
type: string
default: "none"
{% endconfiguration %}
### Examples

View File

@ -20,11 +20,11 @@ Before creating a backup, check if you can reduce the size of the backup. This i
1. Check if your configuration directory contains a large database file:
- Go to {% my system_health title="**Settings** > **System** > **Repairs**" %}.
- From the three dot menu, select **System information** and under the **Recorder** section, look for the **Estimated Database Size (MiB)**.
- From the three dots {% icon "mdi:dots-vertical" %} menu, select **System information** and under the **Recorder** section, look for the **Estimated Database Size (MiB)**.
- By default, the data is kept for 10 days. If you have modified that to a longer period, check the [`recorder`](/integrations/recorder/) integration page for options to keep your database data down to a size that won't cause issues.
- Note the keep days, purge interval, and include/exclude options.
2. To check how much space you've used in total, go to {% my system_health title="**Settings** > **System** > **Repairs**" %}.
- From the three dot menu, select **System information**, and check under **Home Assistant Supervisor** > **Disk used**.
- From the three dots {% icon "mdi:dots-vertical" %} menu, select **System information**, and check under **Home Assistant Supervisor** > **Disk used**.
- If you have add-ons installed that you no longer use, uninstall those add-ons. Some add-ons require quite a bit of space.
3. If you want to store the backup on your network storage instead of just locally on your system, follow the steps on [adding a new network storage](/common-tasks/os/#add-a-new-network-storage) and select the **Backup** option.
@ -33,35 +33,53 @@ Before creating a backup, check if you can reduce the size of the backup. This i
The automatic backup process creates a backup on a predefined schedule and also deletes old, redundant backups.
1. Go to {% my supervisor_backups title="**Settings** > **System** > **Backups**" %}.
2. Under **Automatic backups**, select **Configure automatic backups**.
3. Enable automatic backup.
4. Define the backup schedule. It is recommended to back up daily.
2. Under **Set up backups**, select **Set up backups**.
3. Download the emergency kit and store it somewhere safe.
- You need it to restore encrypted backups.
- To learn more about backup encryption, refer to the documentation on the [backup emergency kit](/more-info/backup-emergency-kit/).
4. Define the backup schedule.
- It is recommended to back up **Daily**, but you can also choose to back up on specific days.
- Define the time:
- **System optimal** sets a time in a predefined time window as shown in the UI.
- **Custom** lets you pick the time when you want the backup to start.
- Make sure you pick a time when all your backup locations are up and running and available. Otherwise, the backup will fail for locations which are not available.
5. Define how many backups you want to keep.
- Older backups will be automatically deleted.
- For example: if you back up daily, and select 7 backups, then the backup from 8 days ago and older will be deleted.
6. Define the data you want to back up.
- It is recommended to disable media and the share folder to reduce the size of the backup.
- It is recommended to disable media and the shared folder to reduce the size of the backup.
- A large backup also takes longer to restore.
- Some add-ons may also be quite large.
7. [Define the location for backups](#defining-backup-locations).
8. Backups are encrypted. To be able to restore encrypted backups, download the emergency kit and store it somewhere safe.
- To learn more, refer to the documentation on the [backup emergency kit](/more-info/backup-emergency-kit/).
### Defining backup locations
You might need a backup in case your system has crashed. If you only store backups on the device itself, you won't be able to access them easily. It is recommended to keep a copy on another system and ideally also one off-site.
You might need a backup in case your system has crashed. If you only store backups on the device itself, you won't be able to access them easily. It is recommended to keep a copy on another system (outside of Home Assistant) and ideally also one off-site.
{% note %}
You will find an overview of integrations which provide a backup location [here](/integrations/#backup).
{% endnote %}
#### About the backup storage on Home Assistant Cloud
If you have Home Assistant Cloud, you can store a backup of maximum 5 GB on Home Assistant Cloud. This cloud storage space is available for all existing and new Home Assistant Cloud subscribers without additional cost. It stores one backup file: the backup that was last saved to Home Assistant Cloud. Backups are always encrypted. To restore encrypted backups, you need the encryption key stored in the [backup emergency kit](/more-info/backup-emergency-kit/).
If you have Home Assistant Cloud, you can store a backup of maximum 5 GB on Home Assistant Cloud. This cloud storage space is available for all existing and new Home Assistant Cloud subscribers without additional cost. It stores one backup file: the backup that was last saved to Home Assistant Cloud. These backups are always encrypted. To restore encrypted backups, you need the encryption key stored in the [backup emergency kit](/more-info/backup-emergency-kit/).
#### To define the backup location for automatic backups
1. Go to {% my supervisor_backups title="**Settings** > **System** > **Backups**" %} and under **Automatic backups**, select **Configure automatic backups**.
2. Under **Locations**, enable all the backup locations you want to use.
2. Under **Locations**, use the toggle to enable all the backup locations you want to use.
- If you don't see Home Assistant Cloud in the list, you are not [logged in](https://www.nabucasa.com/config/).
- If you want to back up to your NAS (such as [Synology](/integrations/synology_dsm/#backup-location)) or a cloud provider (such as [Google Drive](/integrations/google_drive/) or [Microsoft OneDrive](/integrations/onedrive/)), check their integration documentation for specific instructions on setting up a Home Assistant backup.
- If you don't see a network storage, you haven't added one. Follow the steps on [adding a new network storage](/common-tasks/os/#add-a-new-network-storage) and select the **Backup** option.
![Define the backup locations](/images/screenshots/network-storage/backup_locations_all.png)
![Define the backup locations](/images/screenshots/network-storage/backup_locations_encryption.png)
3. For each enabled location, select the cog {% icon "mdi:cog-outline" %} to enable/disable encryption.
- **Info**: The backup stored on Home Assistant Cloud is always encrypted.
### Creating a backup automation using the backup action
If the backup automation settings provided in the UI do not match your use case, you can manually configure your own backup automation using the [backup.create_automatic](/integrations/backup/#action-backupcreate_automatic) action.
Using the {% my developer_call_service service="backup.create_automatic" %} action in your own automation allows you to create automated backups on any schedule you like, or even add conditions and actions around it. For example, you could make an automation that triggers on a calendar, turns on your NAS, waits until it is online, and then triggers a backup.
### Creating a manual backup
@ -86,10 +104,11 @@ There are multiple ways to download your local backup from your Home Assistant i
**Option 1**: Download from the backup page:
1. Under {% my supervisor_backups title="**Settings** > **System** > **Backups**" %}, select **Show all backups**.
2. To select one backup, on the list, single-click or tap the backup of interest.
- To select multiple backups, select the {% icon "mdi:order-checkbox-ascending" %} button.
3. In the dialog, select the three dots {% icon "mdi:dots-vertical" %} menu and select **Download backup**.
2. To select multiple backups, select the {% icon "mdi:order-checkbox-ascending" %} button.
3. Select the three dots {% icon "mdi:dots-vertical" %} menu and select **Download backup**.
- **Result**: The selected backup is stored in the **Downloads** folder of your computer.
4. If a backup is stored on multiple locations, you can select where you download it from:
- Select the backup, and under **Locations**, select the three dots {% icon "mdi:dots-vertical" %} and select **Download from this location**.
**Option 2**: Copy backups from the backups folder:
@ -101,8 +120,16 @@ There are multiple ways to download your local backup from your Home Assistant i
If you were logged in to Home Assistant Cloud and had Cloud backup enabled when creating a backup, your last backup is stored on Home Assistant Cloud.
1. To download the backup, log in to your [Home Assistant Cloud account](https://account.nabucasa.com/).
2. Under **Stored files**, you can see the latest available backup file. Select the download button.
There are two ways to download the backup from Home Assistant Cloud:
- **Option 1**: From the backups page
1. Got to {% my supervisor_backups title="**Settings** > **System** > **Backups**" %} and select **Show all backups**.
2. Under **Stored files**, you can see the latest available backup file. Select the download button.
- **Option 2**: From your Home Assistant Cloud account
1. Log in to your [Home Assistant Cloud account](https://account.nabucasa.com/).
2. Select the backup from the list.
3. Under **Locations**, select the three dots {% icon "mdi:dots-vertical" %} and select **Download from this location**.
### Deleting obsolete backups
@ -112,7 +139,7 @@ To delete old backups, follow these steps:
1. Under {% my supervisor_backups title="**Settings** > **System** > **Backups**" %}, select **Show all backups**.
2. To delete one backup, on the list, select the backup of interest.
- Select the three dots {% icon "mdi:dots-vertical" %} menu and select **Delete**
- Select the three dots {% icon "mdi:dots-vertical" %} menu and select **Delete**.
3. To delete multiple backups, select the {% icon "mdi:order-checkbox-ascending" %} button.
- From the list of backups, select all the ones you want to delete and select **Delete selected**.
- {% icon "mdi:information-outline" %} Consider keeping at least one recent backup for recovery purposes.

View File

@ -20,8 +20,9 @@ ha_codeowners:
The AEMET weather platform uses [AEMET OpenData](https://opendata.aemet.es/) as a source for current meteorological data for your location. AEMET stands for "Agencia Estatal de Meteorología", which is the Spanish Meteorological Agency.
There is currently support for the following device types within Home Assistant:
There is currently support for the following entity types within Home Assistant:
- Image
- Sensor
- Weather
@ -69,4 +70,6 @@ For each condition, the following sensors are created:
| wind_max_speed | Max Wind speed. |
| wind_speed | Wind speed. |
The integration creates an image entity for the weather radar if the radar option is enabled.
Details about the API are available in the [AEMET OpenData documentation](https://opendata.aemet.es/dist).

View File

@ -43,3 +43,30 @@ target:
entity_id: assist_satellite.my_entity
media_id: ITEM_ID
```
### Action `assist_satellite.start_conversation`
The {% my developer_call_service service="assist_satellite.start_conversation" %} action first announces a message or media id on the satellite and then listens for one or more voice commands. The satellite's configured [pipeline](/voice_control/voice_remote_local_assistant/) must use a supported [conversation agent](/integrations/conversation), such as [OpenAI](/integrations/openai_conversation) or [Google Generative AI](/integrations/google_generative_ai_conversation). The builtin Assist conversation agent does not support conversations yet.
If a message is to be announced, it will first be converted to a media id using the [text-to-speech](/integrations/tts) system of the satellite's configured [pipeline](/voice_control/voice_remote_local_assistant/).
The `extra_system_prompt` is passed to the [conversation agent](/integrations/conversation) of the satellite's configured [pipeline](/voice_control/voice_remote_local_assistant/). For large language models (LLMs) this will be appended to the prompt given to the model, allowing the LLM to understand the context of a response like "yes" or "no".
{% my developer_call_service badge service="assist_satellite.start_conversation" %}
Examples in YAML:
```yaml
action: assist_satellite.start_conversation
target:
entity_id: assist_satellite.my_entity
start_message: "You left the lights on in the living room. Turn them off?"
extra_system_prompt: "The user has left the lights on in the living room and is being asked if they'd like to turn them off."
```
```yaml
action: assist_satellite.start_conversation
target:
entity_id: assist_satellite.my_entity
start_media_id: ITEM_ID
```

View File

@ -13,6 +13,8 @@ ha_integration_type: system
related:
- docs: /common-tasks/general/#backups
title: Backups
- docs: /common-tasks/general/#defining-backup-locations
title: Backup locations
- docs: /getting-started/onboarding/
title: Recover from backup during onboarding
- docs: /more-info/backup-emergency-kit/
@ -25,20 +27,36 @@ To learn how to create and restore a backup, refer to the backup section under [
## Actions
The **Backup** integration exposes an action that can be used to automate the backup
The **Backup** integration exposes actions that can be used to automate the backup
process.
However, it is no longer needed to create your own automation. Follow these steps to [set up an automatic backup from the UI](/common-tasks/general/#setting-up-an-automatic-backup-process).
### Action {% my developer_call_service service="backup.create" %}
### Action backup.create_automatic
The {% my developer_call_service service="backup.create" %} action can be used
to create a backup for your Home Assistant instance.
The {% my developer_call_service service="backup.create_automatic" %} action can be used
to create a backup of your Home Assistant instance, using the same settings as those used
by [automatic backups](/common-tasks/general/#setting-up-an-automatic-backup-process).
This action can be called to create backups with pre-defined settings at a more flexible
schedule than the schedule which can be configured for automatic backups.
The action has no additional options or parameters.
Example action:
```yaml
action: backup.create_automatic
```
### Action backup.create
The {% my developer_call_service service="backup.create" %} action can be used
to create a backup of your Home Assistant instance.
This action is only available in [core and container installations](/installation/#advanced-installation-methods).
The action has no additional options or parameters.
Example action:
```yaml
action: backup.create
```

View File

@ -21,6 +21,7 @@ ha_codeowners:
- '@natekspencer'
ha_config_flow: true
ha_integration_type: integration
ha_dhcp: true
---
The **Balboa Spa Client** {% term integration %} adds support for [Balboa](https://www.balboawatergroup.com/) Spa WiFi Modules to be used within Home Assistant.

View File

@ -2,6 +2,7 @@
title: Bang & Olufsen
description: Instructions on how to integrate Bang & Olufsen devices into Home Assistant.
ha_category:
- Event
- Media Player
- Multimedia
ha_release: 2024.2
@ -9,6 +10,7 @@ ha_iot_class: Local Push
ha_domain: bang_olufsen
ha_platforms:
- diagnostics
- event
- media_player
ha_codeowners:
- '@mj23000'
@ -482,6 +484,30 @@ target:
WebSocket notifications received from the device are fired as events in Home Assistant. These can be received by listening to `bang_olufsen_websocket_event` event types, where `device_id` or `serial_number` can be used to differentiate devices.
### Events
Event entities are created for each of the physical controls on your device. These controls usually have their own behaviors, so using them for automations is not always ideal.
Available event entities:
- Bluetooth
- Microphone
- Next
- Play / Pause
- Favourite 1
- Favourite 2
- Favourite 3
- Favourite 4
- Previous
- Volume
All of these event entities support the following event types:
- Release of short press
- Long press
- Release of long press
- Very long press
- Release of very long press
All devices except the [Beoconnect Core](https://www.bang-olufsen.com/en/dk/accessories/beoconnect-core) support device controls.
### Getting Deezer URIs
To find Deezer playlist, album URIs, and user IDs for Deezer flows, the Deezer website has to be accessed. When navigating to an album, the URL will look something like: <https://www.deezer.com/en/album/ALBUM_ID>, and this needs to be converted to: `album:ALBUM_ID` and the same applies to playlists, which have the format: `playlist:PLAYLIST_ID`.

View File

@ -24,11 +24,6 @@ ha_supporting_integration: Overkiz
ha_release: 2022.2
ha_codeowners:
- '@imicknl'
- '@vlebourl'
- '@tetienne'
- '@nyroDev'
- '@tronix117'
- '@alexfp14'
ha_config_flow: true
ha_platforms:
- alarm_control_panel

View File

@ -3,6 +3,7 @@ title: BTicino
description: Connect and control your BTicino devices using the Netatmo integration
ha_category:
- Binary sensor
- Button
- Camera
- Climate
- Cover
@ -24,6 +25,7 @@ ha_codeowners:
ha_config_flow: true
ha_platforms:
- binary_sensor
- button
- camera
- climate
- cover

View File

@ -3,6 +3,7 @@ title: Bubendorff
description: Connect and control your Bubendorff devices using the Netatmo integration
ha_category:
- Binary sensor
- Button
- Camera
- Climate
- Cover
@ -24,6 +25,7 @@ ha_codeowners:
ha_config_flow: true
ha_platforms:
- binary_sensor
- button
- camera
- climate
- cover

View File

@ -3,10 +3,10 @@ title: Home Assistant Cloud
description: Enable the Home Assistant Cloud integration.
ha_release: '0.60'
ha_category:
- Text-to-speech
- Voice
- Backup
- Speech-to-text
- Text-to-speech
- Voice
ha_iot_class: Cloud Push
ha_codeowners:
- '@home-assistant/cloud'

View File

@ -22,6 +22,7 @@ ha_codeowners:
related:
- docs: /docs/configuration/
title: Configuration file
ha_quality_scale: legacy
---
The **Command line** {% term integration %} offers functionality that issues specific commands to get data or to control a device.

View File

@ -11,6 +11,9 @@ ha_codeowners:
ha_domain: cookidoo
ha_integration_type: service
ha_platforms:
- button
- diagnostics
- sensor
- todo
related:
- docs: /integrations/todo
@ -57,6 +60,45 @@ For example, if you add a pasta recipe, ingredients like "500g pasta" and "2 tom
In contrast, in your "Additional purchases" list, you can freely add items like "Kitchen towels" or "Dish soap", and modify or remove them as needed.
## Button entities
The _clear shopping list_ button entity allows you to clear both the shopping list and additional purchases list, mirroring the functionality available in the Cookidoo app. When triggered, this button will remove all items from both lists.
This button entity will appear automatically in your Home Assistant instance after adding the integration. You can use it in automations or add it to your dashboard using the Button card.
## Sensor entities
### Diagnostics
1. **Subscription**
- State: `premium`, `trial`, or `free`
- Description: Indicates the current subscription type
- `premium`: Yearly subscription with full recipe access
- `trial`: Time-limited premium access (available during account creation or new device linking)
- `free`: Limited recipe access with full shopping list features
2. **Subscription expiration date**
- State: ISO 8601 timestamp or `unknown`
- Description: Shows when the current subscription expires
- For `premium` and `trial` subscriptions: Timestamp of expiration date
- For `free` subscriptions: Returns `unknown` state
These sensor entities will appear automatically in your Home Assistant instance after adding the integration.
{% details "Example state attributes" %}
```yaml
subscription:
state: premium
icon: mdi:account-star
subscription_expiration_date:
state: "2025-01-15T23:59:59+00:00"
icon: mdi:clock-reactivate
```
{% enddetails %}
## Known Limitations
{% important %}

View File

@ -24,11 +24,6 @@ ha_supporting_integration: Overkiz
ha_release: 2022.2
ha_codeowners:
- '@imicknl'
- '@vlebourl'
- '@tetienne'
- '@nyroDev'
- '@tronix117'
- '@alexfp14'
ha_config_flow: true
ha_platforms:
- alarm_control_panel

View File

@ -0,0 +1,22 @@
---
title: Decorquip Dream
description: Connect and control your Decorquip Dream devices using the Motionblinds integration
ha_category:
- Cover
ha_domain: decorquip
ha_integration_type: virtual
ha_supporting_domain: motion_blinds
ha_supporting_integration: Motionblinds
ha_release: 2020.12
ha_codeowners:
- '@starkillerOG'
ha_config_flow: true
ha_platforms:
- button
- cover
- sensor
ha_iot_class: Local Push
ha_dhcp: true
---
{% include integrations/supported_brand.md %}

View File

@ -14,6 +14,7 @@ ha_platforms:
- diagnostics
- sensor
ha_integration_type: service
ha_quality_scale: silver
---
The **inexogy** {% term integration %} allows users to integrate their [inexogy](https://inexogy.com/) smart meters into Home Assistant.

View File

@ -49,6 +49,7 @@ Additionally, **depending on your model**, the integration provides the followin
- **Button**:
- `Reset lifespan`: For each supported component, a button entity to reset the lifespan will be created. All disabled by default.
- `Relocate`: Button entity to trigger manual relocation.
- `Station actions`: For each supported station action, a button entity will be created.
- **Event**:
- `Last job`: Provides the stop reason as event_type
- **Image**:
@ -70,6 +71,7 @@ Additionally, **depending on your model**, the integration provides the followin
- `Cleaning cycle`:
- `Area`: The cleaned area
- `Time`: The cleaned time
- `Station state`: Station state enum sensor. See options to see all possible states
- `Total statistics`: Updated after each cleaning cycle:
- `Area`: Total cleaned area
- `Cleanings`: The number of cleanings

View File

@ -2,6 +2,7 @@
title: EHEIM Digital
description: Instructions on how to set up EHEIM Digital with Home Assistant.
ha_category:
- Climate
- Light
ha_release: 2025.1
ha_iot_class: Local Polling
@ -11,6 +12,7 @@ ha_codeowners:
ha_domain: eheimdigital
ha_integration_type: hub
ha_platforms:
- climate
- light
ha_quality_scale: bronze
ha_zeroconf: true
@ -38,6 +40,13 @@ Currently, the following devices and entities are supported:
- **Brightness**: Controlling the brightness of both light channels
- **Daycycle mode effect**: Automatically controls the brightness based on the daytime as configured on the device
### [EHEIM thermocontrol+e](https://eheim.com/en_GB/aquatics/eheim-digital/aquarium-heaters/)
#### Climate
- **Target temperature**: Controlling the target temperature of the heater (which corresponds to the day temperature in Bio and Smart mode)
- **Presets / Operation mode**: Switching between Manual, Bio and Smart mode
Support for additional EHEIM Digital devices and entities will be added in future updates.
## Remove integration

View File

@ -15,6 +15,7 @@ ha_codeowners:
---
The **ElevenLabs** text-to-speech {% term integrations %} adds support for [ElevenLabs](https://elevenlabs.io/) as text-to-speech to read a text with natural sounding voices.
## Prerequisites
- You need an ElevenLabs account to use this integration. A free account suffices for basic usage.
@ -44,8 +45,28 @@ target:
data:
media_player_entity_id: media_player.giant_tv
message: Hello, can you hear me now?
options:
voice: <voice-id>
model: <model-id>
```
### Configuration
Below settings can be configured in the options of the integration and in the `options` parameter of the `tts.speak` service.
{% configuration %}
voice:
description: "Voice ID for the ElevenLabs voice to use. Will override the default voice of the entity!"
required: false
type: string
model:
description: "Model ID for the model to use. Will override the default model of the entity!"
required: false
type: string
{% endconfiguration %}
For more information about using text-to-speech with Home Assistant and more details on all the options it provides, see the [TTS documentation](/integrations/tts/).
## Removing the integration

View File

@ -399,6 +399,28 @@ Envoy installations without installed <abbr title="current transformers">CT</abb
With installed <abbr title="current transformers">CT</abbr>, data granularity increases and shortening the collection interval can provide more details. The Envoy, however, has no unlimited resources and shortening the collection interval may result in dropped connections, Envoy freeze or restarts. It will require some step-wise tuning for each individual situation.
## Credentials or device IP address update
This integration supports updating the Envoy configuration through a `reconfigure` menu option. The reconfiguration allows for changing the Envoy IP address, username, and/or password. Use this menu option if your Enlighten credentials or the device's IP address has changed and needs to be manually updated. The latter is typically automatically detected and updated.
Use this menu option also when an Envoy firmware upgrade requires a switch from local Envoy username/password to token-based authentication with Enlighten username/password (refer to [authentication requirements](#envoy-authentication-requirements)).
## Firmware updates
The firmware version is read from the envoy when the configuration entry is loaded. The firmware version is then used in the process of determining capabilities and required authorization methods. The firmware version is available as the `sw_version` attribute of the configuration entry and shown on the device view of the envoy.
Every 4 hours, the actual firmware version in the Envoy is compared to the known one. If the actual version differs, the configuration entry is reloaded to effect any needed configuration changes. If the moment of the firmware update is known, a manual reload on the envoy configuration entry can be done to achieve the same.
The firmware version is not available as an entity, but rather as an attribute of the envoy. To use the firmware in automation, scripts or templates, use below example with any envoy entity.
{% raw %}
```yaml
{{device_attr(device_id('sensor.envoy_SN_current_power_production'),'sw_version')}}
```
{% endraw %}
## Energy dashboard
This integration provides several entities suitable for the energy dashboard.

View File

@ -15,6 +15,7 @@ ha_config_flow: true
ha_platforms:
- binary_sensor
- diagnostics
- select
- sensor
- switch
ha_iot_class: Local Polling

View File

@ -11,6 +11,7 @@ ha_quality_scale: internal
ha_codeowners:
- '@dgomes'
ha_domain: filter
ha_config_flow: true
ha_platforms:
- sensor
ha_integration_type: helper
@ -27,7 +28,38 @@ The `filter` {% term integration %} enables sensors that process the states of o
<img src='/images/screenshots/filter-sensor.png' />
</p>
## Configuration
{% include integrations/config_flow.md %}
{% note %}
The UI configuration only supports setting one filter. For more advanced configurations where multiple filters are needed, please use the YAML configuration option to configure your filter sensor.
{% endnote %}
Further information about these configuration options can be found under the [YAML configuration](#yaml-configuration)
{% configuration_basic %}
Name:
description: The name the sensor should have.
Entity:
description: The entity that provides the input. Only `sensor` entities are supported.
Filter:
description: Algorithm to be used to filter data. Available filters are "Lowpass", "Outlier", "Range", "Throttle", "Time throttle" and "Moving Average (Time based)".
Precision:
description: Defines the precision of the filtered state.
Window size:
description: Size of the window of previous states. Time-based filters require a time period, while other filters require an integer.
Time constant:
description: Loosely relates to the amount of time it takes for a state to influence the output.
Radius:
description: Band radius from median of previous states.
Type:
description: Defines the type of Simple Moving Average.
Lower bound:
description: Lower bound for filter range.
Upper bound:
description: Upper bound for filter range.
{% endconfiguration_basic %}
## YAML Configuration
To enable Filter Sensors in your installation, add the following to your {% term "`configuration.yaml`" %} file.
{% include integrations/restart_ha_after_config_inclusion.md %}

View File

@ -24,11 +24,6 @@ ha_supporting_integration: Overkiz
ha_release: 2022.2
ha_codeowners:
- '@imicknl'
- '@vlebourl'
- '@tetienne'
- '@nyroDev'
- '@tronix117'
- '@alexfp14'
ha_config_flow: true
ha_platforms:
- alarm_control_panel

View File

@ -11,12 +11,21 @@ ha_codeowners:
ha_config_flow: true
ha_platforms:
- climate
- sensor
ha_iot_class: Cloud Polling
---
The {{ page.title }} {% term integration %} provides support for Fujitsu heat pumps and air conditioners that use the FGLair app.
To find out which app to use for your heat pump, check [the Fujitsu FGLair FAQ](https://www.fujitsu-general.com/global/support/faq/airstage-mobile/0127.html).
## Supported devices
This integration supports a subset of devices that work with the FGlair app and other external integrations.
If your device name (visible in **Settings > Firmware Information** in the FGlair app) starts with AC-UTY, then your device is not supported by this integration.
Devices with names starting with AP-WA, AP-WB, AP-WC, AP-WD, or AP-WF should be supported.
## Prerequisites
First, set up your device in the FGLair app before using this integration.
@ -33,3 +42,7 @@ This integration supports the following functionalities (if the devices support
- [`turn on/off`](/integrations/climate#action-climateturn_on)
- [`fan mode`](/integrations/climate#action-climateset_fan_mode)
- [`swing mode`](/integrations/climate#action-climateset_swing_mode)
## Outside temperature
On units that support it, this integration will expose a temperature sensor that reports the outside temperature that the unit is sensing.

View File

@ -2,6 +2,7 @@
title: FYTA
description: Instructions on how to integrate FYTA sensors within Home Assistant.
ha_category:
- Binary sensor
- Sensor
ha_release: 2024.4
ha_iot_class: Cloud Polling
@ -10,7 +11,9 @@ ha_codeowners:
- '@dontinelli'
ha_domain: fyta
ha_platforms:
- binary_sensor
- diagnostics
- image
- sensor
ha_integration_type: hub
ha_quality_scale: platinum
@ -44,6 +47,23 @@ The integration has no additional configuration options.
## Supported functionality
### Binary sensors
The following binary sensors are currently available per plant:
- Low battery
- Light notification
- Nutrition notification
- Temperature notification
- Water notification
- Productive plant
- Repotted
- Sensor update available
### Image
The picture created or chosen in the FYTA app is also exposed to Home Assistant.
### Sensors
The following sensors are currently available per plant:
@ -55,11 +75,14 @@ The following sensors are currently available per plant:
| temperature_status | | FYTA-Status (cf. scale below) |
| light_status | | FYTA-Status (cf. scale below) |
| moisture_status | | FYTA-Status (cf. scale below) |
| nutrients_status | | FYTA-Status (cf. scale below) |
| salinity_status | | FYTA-Status (cf. scale below) |
| temperature | °C | Temperature measured by sensor |
| light | μmol/h | Light measured by sensor (hourly photosynthetically active radiation PAR)|
| moisture | % | Moisture measured by sensor |
| salinity | mS/cm | Salinity measured by sensor (measured as conductivity)|
| fertilise_last | date | Date when plant has last been fertilized |
| fertilise_next | date | Date when plant should be fertilized |
| battery_level | % | Battery level of the sensor |
The plant status may have one of the following states:

View File

@ -0,0 +1,53 @@
---
title: Google Drive
description: Instructions on how to use Google Drive in Home Assistant.
ha_category:
- Backup
ha_iot_class: Cloud Polling
ha_release: '2025.2'
ha_config_flow: true
ha_domain: google_drive
ha_codeowners:
- '@tronikos'
ha_integration_type: service
google_dev_console_link: https://console.developers.google.com/start/api?id=drive
api: Google Drive API
api_link: https://console.developers.google.com/start/api?id=drive
related:
- docs: /common-tasks/general/#backups
title: Creating backups in Home Assistant
- url: https://drive.google.com
title: Google Drive
- url: https://console.developers.google.com/start/api?id=drive
title: Google Developer Console
ha_quality_scale: platinum
---
This {% term integration %} allows you to connect your [Google Drive](https://drive.google.com) with Home Assistant Backups. When you set up this integration, your Google Drive will have a new folder called Home Assistant where all the backups will be stored. You can rename this folder to whatever you like in Google Drive at any point in time. If you delete the folder, it will automatically be re-created as long as you have the {% term integration %} enabled.
## Prerequisites
You need to configure developer credentials to allow Home Assistant to access your Google Account.
These credentials are the same as the ones for [Google Sheets](/integrations/google_sheets), [Nest](/integrations/nest), [YouTube](/integrations/youtube), and [Google Mail](/integrations/google_mail).
These are not the same as *Device Auth* credentials previously recommended for [Google Calendar](/integrations/google).
{% include integrations/google_client_secret.md %}
{% include integrations/config_flow.md %}
{% include integrations/google_oauth.md %}
## Removing the integration
{% include integrations/remove_device_service.md %}
- If you remove the integration, the Home Assistant folder in Google Drive is not automatically deleted. You have to manually delete it in Google Drive.
## Known limitations
- The integration can only access files that it creates in the Home Assistant folder. It cannot access or modify any other files in your Google Drive.
## Troubleshooting
If you have an error with your credentials, you can delete them in the [Application Credentials](/integrations/application_credentials/) user interface.

View File

@ -48,6 +48,7 @@ The Govee BLE integration will automatically discover devices once the [Bluetoot
- H5125 2 Button Switch
- H5126 6 Button Switch
- H5127 Presence Sensor
- H5130 Pressure Sensor
- [H5177/5178 Bluetooth Thermo-Hygrometer](https://us.govee.com/collections/thermo-hydrometer/products/bluetooth-thermo-hygrometer)
- H5174 Hygrometer Thermometer
- [H5179 Hygrometer Thermometer](https://us.govee.com/products/wi-fi-temperature-humidity-sensor)

View File

@ -3,6 +3,7 @@ title: Habitica
description: Instructions on enabling Habitica support for your Home Assistant
ha_category:
- Calendar
- Image
- Sensor
- To-do list
ha_release: 0.78
@ -13,6 +14,7 @@ ha_platforms:
- button
- calendar
- diagnostics
- image
- sensor
- switch
- todo
@ -86,16 +88,23 @@ Verify SSL certificate:
- **Mana**: Displays the current mana points of your character (for example, "61 MP").
- **Max. mana**: Indicates the maximum mana points your character can have at the current level (for example, "70 MP").
- **Next level**: Indicates the remaining experience points needed to reach the next level (for example, "440 XP").
- **Habits**: Shows the number of habits being tracked (for example, "4 tasks").
- **Rewards**: Displays the rewards that can be redeemed (for example, "1 task")
- **Gems**: Shows the total number of gems currently owned by your Habitica character, used for purchasing items and customizations.
- **Mystic hourglasses**: Displays the number of mystic hourglasses earned as a subscriber, which can be redeemed for exclusive items from past events.
- **Strength, intelligence, constitution, perception**: Display your character's attribute points (stats). The sensors' attributes provide a breakdown of contributions from level, battle gear, class equip bonus, allocation, and buffs.
- **Eggs**: Shows the total number of eggs in your inventory. The sensor's attributes provide a detailed list of each egg type and quantity.
- **Pet food**: Displays the total amount of food available. The sensor's attributes list each food type and its quantity. Feed it to your pets and they may grow into a sturdy steed.
- **Saddles**: Indicates the number of saddles owned, used for instantly raising pets to mounts.
- **Hatching potions**: Shows the total count of available hatching potions. The sensor's attributes detail each potion type and quantity. Pour them on an egg to hatch a pet.
- **Quest scrolls**: Displays the total number of quest scrolls in your inventory. A list of each quest scroll and its quantity is provided in the sensor's attributes.
## Binary sensors
- **Pending quest invitation**: Indicates if you have an invitation to a quest awaiting your response.
## Image
- **Avatar**: Displays your character's current avatar (note: animated avatars are currently not supported and will be displayed as static images).
## To-do lists
The following Habitica tasks are available as to-do lists in Home Assistant. You can add, delete, edit and check-off completed tasks
@ -257,6 +266,19 @@ Use a transformation item from your Habitica character's inventory on a member o
- **Seafoam**: `seafoam` (transforms into a starfish)
- **Shiny seed** `shiny_seed` (transforms into flower)
### Action `habitica.get_tasks`
Fetch tasks from your Habitica account, with optional filters to narrow down the results for more precise task retrieval.
| Data attribute | Optional | Description |
| -------------- | -------- | -------------------------------------------------------------------------------------------------------- |
| config_entry | no | Choose the Habitica character to retrieve tasks from. |
| type | yes | Filter tasks by type. Valid types: "habits", "dailies", "todos", "rewards". |
| priority | yes | Filter tasks by difficulty. Valid values: "trivial", "easy", "medium", "hard". |
| task | yes | Select specific tasks by matching their name (or task ID). |
| tag | yes | Filter tasks that have one or more of the selected tags. |
| keyword | yes | Filter tasks by keyword, searching across titles, notes, and checklists. |
## Automations
Get started with these automation examples for Habitica, each featuring ready-to-use blueprints!
@ -377,22 +399,6 @@ actions:
{% enddetails %}
## Templating
`sensor.habitica_USER_habits` and `sensor.habitica_USER_rewards` have state attributes listing the user's respective tasks. For example, you can see this information in **{% my developer_states title="Developer Tools > States" %}** under `sensor.habitica_USER_habits` > **Attributes**, or by adding a [Markdown card](/dashboards/markdown/) to a dashboard with the following code:
{% raw %}
```jinja
{% for key, value in states.sensor.habitica_USER_habits.attributes.items() %}
{% if 'text' in value | string %}
{{ loop.index }}. {{ value.text }}
{% endif %}
{% endfor %}
```
{% endraw %}
## Data updates
This integration retrieves data from Habitica every 60 seconds to ensure timely updates.

View File

@ -4,7 +4,7 @@ description: Integrate Harvey water softeners with Home Assistant using the Aqua
ha_category:
- Sensor
ha_domain: harvey
ha_release: 2025.1
ha_release: 2024.7
ha_integration_type: virtual
ha_supporting_domain: aquacell
ha_supporting_integration: AquaCell

View File

@ -11,8 +11,10 @@ ha_codeowners:
ha_domain: heos
ha_ssdp: true
ha_platforms:
- diagnostics
- media_player
ha_integration_type: integration
ha_integration_type: hub
ha_quality_scale: silver
---
The HEOS {% term integration %} is used to connect a [HEOS](https://www.denon.com/en-gb/category/heos/) System to Home Assistant. HEOS is a wireless audio ecosystem
@ -43,14 +45,40 @@ Only a single instance of the integration is needed to access the entire HEOS sy
{% configuration_basic %}
Host:
description: "The hostname or IP address (e.g., \"192.168.1.2\") of your HEOS device. If you have more than one device, select, or enter a host, that is connected to the LAN via wire or has the strongest wireless signal."
description: "The host name or IP address (e.g., \"192.168.1.2\") of your HEOS-capable product. If you have more than one device, select, or enter a host, that is connected to the LAN via wire or has the strongest wireless signal."
{% endconfiguration_basic %}
## Removing the integration
## Configuration options
The integration provides the following configuration options. By entering your HEOS Account login information, the integration will be able to access streaming services, playlists, favorites, and other features. The integration will validate and sign in to your HEOS Account when credentials are entered or updated, and will ensure the HEOS System remains logged in while the credentials remain valid. Clearing the credentials will sign the HEOS System out of your account.
1. Go to **{% my integrations icon title="Settings > Devices & Services" %}**.
2. Select **Denon HEOS**. Select **Configure**.
3. Enter or clear your HEOS Account credentials.
4. Select **Submit** to save the options.
{% configuration_basic %}
Username:
description: "The username or e-mail address of your HEOS Account."
Password:
description: "The password to your HEOS Account."
{% endconfiguration_basic %}
## Reconfiguration
Once setup, the host name or IP address used to access the HEOS System can be changed by reconfiguring the integration.
1. Go to **{% my integrations icon title="Settings > Devices & Services" %}**.
2. Select **Denon HEOS**. Click the three-dot {% icon "mdi:dots-vertical" %} menu and then select **Reconfigure**.
3. Enter a new [host name or IP address](/integrations/heos/#host).
4. Click Submit to complete the reconfiguration.
## Removal
This integration follows standard integration removal. No extra steps are required.
{% include integrations/remove_device_service.md %}
1. Go to **{% my integrations icon title="Settings > Devices & Services" %}**.
2. Select **Denon HEOS**. Click the three-dot {% icon "mdi:dots-vertical" %} menu and then select **Delete**.
## Playing media
@ -174,40 +202,7 @@ data:
## Actions
The HEOS integration makes various custom {% term actions %} available in addition to the standard [Media Player actions](/integrations/media_player#actions).
### Action `heos.sign_in`
Use the sign-in action to sign the connected device into a HEOS account so that it can retrieve and play HEOS favorites and playlists. An error message is logged if sign-in is unsuccessful.
{% note %}
The device the integration connects to authenticates independently of other devices and the HEOS mobile app. When you first set up the integration, or after a device firmware update, the device will most likely not be logged in.
{% endnote %}
To run, go to **Developer Tools** > **Actions** and then type in `heos.sign_in`. Then enter your HEOS account username and password, and click the Perform Action button. An error message is only logged if sign-in is unsuccessful.
Example action data payload:
```yaml
action: heos.sign_in
data:
username: "example@example.com"
password: "password"
```
| Data attribute | Optional | Description |
| ---------------------- | -------- | ------------------------------------------ |
| `username` | no | The username or email of the HEOS account. |
| `password` | no | The password of the HEOS account. |
### Action `heos.sign_out`
Use the sign-out action to sign the connected device out of a HEOS account. An error message is logged if sign-out is unsuccessful. There are no parameters to this action Example action data payload:
```yaml
action: heos.sign_out
data: {% raw %}{}{% endraw %}
```
The HEOS integration makes available the standard [Media Player actions](/integrations/media_player#actions).
## Supported devices
@ -230,19 +225,45 @@ HEOS pushes data to Home Assistant via the local network when data and entity st
- {% term TTS %} is not supported.
- The maximum length of a URL that can be used in the `play_media` action is 255 characters due to a limitation in the HEOS firmware.
## Logging and diagnostics
The HEOS integration supports [Home Assistant debug logs and diagnostics](/docs/configuration/troubleshooting/#debug-logs-and-diagnostics). Diagnostics are available at both the integration entry and device level.
## Troubleshooting
### Missing favorites
#### Symptom: "IP_ADDRESS is not logged in to a HEOS account and will be unable to retrieve HEOS favorites..."
#### Symptom: "The HEOS System is not logged in: Enter credentials in the integration options to access favorites and streaming services"
The message above is logged and the `source_list` attribute of the integration's media_player entities are empty. Attempting call the `media_player.play_media` action
for `favorite` and `playlist` will fail.
The message above is logged during integration startup and the `source_list` attribute of the integration's media_player entities are empty. Attempting call the `media_player.play_media` action
for `favorite` and `playlist` will fail. Other functionality of the integration is unaffected.
##### Description
The HEOS system is not logged in to a HEOS account. This occurs when the integration is first added, the HEOS account has changed (e.g. password reset), and sometimes after a firmware update.
To access features, such as favorites, playlists, and streaming services, the HEOS System must be logged in to your HEOS Account. This occurs when credentials are not entered in the configuration options and the HEOS System is in a logged out state.
##### Resolution
Use the [heos.sign_in action](/integrations/heos#action-heossign_in) to sign the HEOS system into a HEOS account. This only needs to be performed once, as the system will remain signed in while the account credentials are valid.
Enter the credentials to your HEOS Account in the [configuration options](#configuration-options) if you want to access playlists, favorites, and streaming services; otherwise, the logged warning can be ignored. If credentials are entered, the integration will ensure that the HEOS System remains logged in while the credentials remain valid.
### Error attempting to submit configuration options
#### Symptom: "Invalid authentication"
##### Description
The integration was unable to log the HEOS System in using the credentials provided. An informational log message contains the specific reason, such as: `User not found (10)` or `Invalid credentials (6)`.
##### Resolution
Validate your credentials by logging in to the HEOS Mobile App and then re-enter your credentials in the configuration options and try submitting again.
#### Symptom: "Unexpected error"
##### Description
An unexpected error occurred signing in or logging out of your HEOS Account. An error-level log message contains the error information.
##### Resolution
Power-cycle the host that the integration is connected to and try again. If the problem persists, open an issue and include the error information.

View File

@ -24,11 +24,6 @@ ha_supporting_integration: Overkiz
ha_release: 2022.2
ha_codeowners:
- '@imicknl'
- '@vlebourl'
- '@tetienne'
- '@nyroDev'
- '@tronix117'
- '@alexfp14'
ha_config_flow: true
ha_platforms:
- alarm_control_panel

View File

@ -24,11 +24,6 @@ ha_supporting_integration: Overkiz
ha_release: 2022.2
ha_codeowners:
- '@imicknl'
- '@vlebourl'
- '@tetienne'
- '@nyroDev'
- '@tronix117'
- '@alexfp14'
ha_config_flow: true
ha_platforms:
- alarm_control_panel

View File

@ -3,6 +3,7 @@ title: Legrand Home+ Control
description: Connect and control your Legrand Home+ Control devices using the Netatmo integration
ha_category:
- Binary sensor
- Button
- Camera
- Climate
- Cover
@ -24,6 +25,7 @@ ha_codeowners:
ha_config_flow: true
ha_platforms:
- binary_sensor
- button
- camera
- climate
- cover

View File

@ -0,0 +1,62 @@
---
title: Homee
description: Instructions on how to setup Homee devices in Home Assistant.
ha_category:
- Cover
ha_config_flow: true
ha_release: 2025.2
ha_iot_class: Local Push
ha_codeowners:
- '@Taraman17'
ha_domain: homee
ha_platforms:
- cover
- sensor
ha_integration_type: hub
ha_quality_scale: bronze
---
[Homee](https://hom.ee) is a smart home system, able to integrate various protocols such as Z-Wave, Zigbee, EnOcean, and more. The Homee {% term integration %} will let you use the {% term devices %} from your Homee in Home Assistant.
There is currently support for the following device types in Home Assistant:
- cover
- sensor
## Prerequisites
You need to create a new user in your Homee app. Create a user that is only used by Home Assistant. For security reasons, it's recommended to:
- Use a strong, unique password.
- Restrict the user's permissions for what you want to do from Home Assistant.
- Do not use this account for any other purpose.
1. In your Homee app, in the top-left corner, tap the menu button.
2. On the top right of the opening menu, tap the gear {% icon "mdi:gear-outline" %} icon.
3. Choose **Manage users**.
4. Choose **Add user** and configure the desired values.
{% include integrations/config_flow.md %}
{% configuration_basic %}
Host:
description: The IP Address of your Homee.
User:
description: The username you chose in the Prerequisites.
Password:
description: The password for that user.
{% endconfiguration_basic %}
Available devices will automatically show up in your Home Assistant installation.
New devices added to Homee will be automatically discovered after a restart of Home Assistant. This restart is only required when adding new devices, not for state updates of existing devices.
## Limitations
Changed values are reported from Homee in defined time intervals and not always in realtime. For example, while a cover moves, the position is updated only every few seconds and intermediate states may be missed by Home Assistant.
## Removing the integration
This integration follows standard integration removal, and once the integration is removed, you can also remove the dedicated user from your Homee.
{% include integrations/remove_device_service.md %}

View File

@ -22,6 +22,7 @@ ha_platforms:
- button
- climate
- cover
- event
- light
- lock
- sensor

View File

@ -31,11 +31,16 @@ Integration for the [HomeWizard Energy](https://www.homewizard.com) platform. It
- [Wi-Fi Energy Socket](https://www.homewizard.com/energy-socket): Sensors for power import/export and energy consumption, and switches for controlling the outlet (model: `HWE-SKT`).
- [Wi-Fi Watermeter](https://www.homewizard.com/watermeter): Sensors for active and total water usage (model: `HWE-WTR`).
- [Wi-Fi kWh Meter](https://www.homewizard.com/kwh-meter): Sensors for power import/export and energy consumption (models: `HWE-KWH1`, `HWE-KWH3`, `SDM230-wifi`, and `SDM630-wifi`.).
- [Plug-In Battery](https://www.homewizard.com/nl/plug-in-battery/): Sensors for power import/export, energy consumption, production, and state of charge (model: `HWE-BAT`).
## Enable the API
You have to enable the local API to allow Home Assistant to communicate with your device. Do this in the HomeWizard Energy app:
{% tip %}
You can skip this step if you are configuring your Wi-Fi P1 Meter with firmware version 6 or higher, or your Plug-In Battery. These products use a different authentication method that doesn't require enabling the local API.
{% endtip %}
1. Go to Settings (gear icon in the upper-right).
2. Go to 'Meters'.
3. Select your device.
@ -48,45 +53,70 @@ IP address:
description: "The IP address of your device. You can find it in your router."
{% endconfiguration_basic %}
## Sensors
## Supported functionality
Sensors for the P1 meter, Energy Socket, and kWh meter:
The HomeWizard integration provides sensors about what your device is measuring or doing. All of them are provided as {% term entities %} in Home Assistant. Below is an overview of the entities provided by this integration.
- **Energy import/export (kWh)**: Total energy imported or exported since installation. Each tariff has its own sensor (e.g., T1, T2) and a sensor for the combined value.
- **Power (W)**: Active power that is measured on each phase.
### P1 Meter
Sensors for P1 meter, only available when the smart meter exposes these values:
_Not all sensors are provided by all Smart Meters, only the available sensors are shown in the integration._
- **Gas usage (m³)**: Total gas used since the installation of the gas meter. A gas meter sends its measurement once every 5 minutes or per hour, depending on the version of the smart meter.
- **Energy import/export (kWh)**: Total energy imported or exported since installation of your smart meter. Each tariff has its own sensor (e.g., T1, T2) and a sensor for the combined value.
- **Power (W)**: Active power measured, each phase has its own sensor.
- **Voltage (V)**: Active voltage measured, each phase has its own sensor.
- **Current (A)**: Active current measured, each phase has its own sensor.
- **Tariff**: Current tariff that is used. Can be used to keep consumption as low as possible during peak hours.
- **Voltage (V)**: Active voltage measured on each phase.
- **Current (A)**: Active current measured on each phase.
- **Frequency (Hz)**: Net frequency.
- **Voltage sags and swells**: Number of times a voltage sag or swell has been detected.
- **Power failures**: Two sensors indicate the number of power failures detected by the smart meter. One for all power failures and another for 'long' power failures.
- **Peak demand**: Belgium users are starting to get charged for the peak usage per month (see [capaciteitstarief](https://www.fluvius.be/thema/factuur-en-tarieven/capaciteitstarief)). Two sensors are available: one shows the current quarterly average, and another shows the peak measured this month. Both sensors are provided directly from the smart meter and can be used to keep the peak as low as possible.
Sensors for Energy Socket and kWh meter:
External meters, like a gas or water meter, can be connected to your Smart meter. Each device is exposed as a separate {% term device %} with its own measurement.
- **Voltage (V)**: Active voltage measured on each phase.
- **Current (A)**: Active current measured on each phase.
### kWh Meter
- **Energy import/export (kWh)**: Total energy imported or exported measured by kWh meter.
- **Power (W)**: Active power that is measured, each phase has its own sensor.
- **Voltage (V)**: Active voltage measured, each phase has its own sensor.
- **Current (A)**: Active current measured, each phase has its own sensor.
- **Frequency (Hz)**: Net frequency.
- **Reactive power (VAR)**: Active reactive power measurement on each phase.
- **Apparent power (VA)**: Active apparent power measurement on each phase.
- **Reactive power (VAR)**: Active reactive power measurement, each phase has its own sensor.
- **Apparent power (VA)**: Active apparent power measurement, each phase has its own sensor.
Sensors for Water meter:
### Energy Socket
- **Energy import/export (kWh)**: Total energy imported or exported measured by Energy Socket.
- **Power (W)**: Active power that is measured.
- **Voltage (V)**: Active voltage measured.
- **Current (A)**: Active current measured.
- **Frequency (Hz)**: Net frequency.
- **Reactive power (VAR)***: Active reactive power measurement.
- **Apparent power (VA)***: Active apparent power measurement.
{% note %}
Reactive power and apparent power are not available for all hardware versions, this depends on the internal metering chip.
{% endnote %}
The Energy Socket also has a switch to control the outlet state and a status light that can be controlled.
- **Switch**: Controls the outlet state of the Energy Socket. This switch is permanently on when _Switch Lock_ is turned on. Use this to control the power of simple devices, such as a heater or a charger.
- **Switch lock**: Forces the outlet state to the _on_ position and disables the physical button. This option is useful when the socket is used for a device that must not be turned off, such as a refrigerator.
- **Status light brightness**: Controls the brightness of the green status light. This light turns on when the switch is on.
### Watermeter
- **Water usage (L/min)**: Flow of water measured at that time.
- **Total water usage (m³)**: Total water usage since the installation of the HomeWizard Water meter.
## Energy Socket
### Plug-In Battery
The Energy Socket outlet state and status light can be controlled. There are two switches:
- **Switch**: Controls the outlet state of the Energy Socket. This switch is permanently on when _Switch Lock_ is turned on. Use this to control the power of simple devices, such as a heater or a charger.
- **Switch lock**: Forces the outlet state to the _on_ position and disables the physical button. This option is useful when the socket is used for a device that must not be turned off, such as a refrigerator.
You can also control the green status light brightness with **Status light brightness**. This light turns on when the switch is on.
- **Energy import/export (kWh)**: Total energy imported or exported by the battery.
- **Power (W)**: Active power consumed or produced by the battery.
- **Voltage (V)**: Active voltage measured.
- **Current (A)**: Active current consumed or produced by the battery.
- **Frequency (Hz)**: Net frequency.
- **Cycles**: Number of charge cycles the battery has gone through.
- **State of charge (%)**: The current state of charge of the battery.
## Identify
@ -97,7 +127,7 @@ _This feature is not available for the kWh Meter._
The HomeWizard Energy devices are designed to work with the HomeWizard Energy app and require communication with the HomeWizard cloud to function with the app. The "Cloud connection" configuration toggle can be used to turn off all communication with the HomeWizard cloud, making the device fully local. The device cannot communicate with the app, and the device won't receive any future firmware updates.
Cloud communication is restored when the switch is turned on again. Cloud communications are also restored after a factory reset, or when the device is put in pairing mode.
This feature is not available for the Plug-In Battery. Cloud communication is restored when the switch is turned on again. Cloud communications are also restored after a factory reset, or when the device is put in pairing mode.
## Examples
@ -107,6 +137,10 @@ If you know the energy characteristics of your washing machine, you can create a
- [Appliance Power Monitor Blueprint With Elapsed Time and Energy Used Variables](https://community.home-assistant.io/t/appliance-power-monitor-blueprint-with-elapsed-time-and-energy-used-variables/549073), created by [@Jhonattan-Souza](https://community.home-assistant.io/u/jhonattan-souza)
### Add your Energy data to the Energy dashboard
The HomeWizard Energy integration provides data that can be used in the Energy dashboard. To add your data to the Energy dashboard, follow the steps in the [Energy dashboard documentation](/home-energy-management).
## Data fetching interval
The integration is {% term polling %} new data every 5 seconds. There is no limitation on the number or frequency of requests that can be made to the device.
@ -134,6 +168,19 @@ It may happen that you can't find your devices or they won't show up in the inte
- Make sure you have enabled the local API in device settings via the HomeWizard Energy app.
- Make sure both Home Assistant and the device are on the same network.
### Which button do I need to press to configure the device?
1. During setup, you may be asked to press a button on your device to authenticate it with Home Assistant.
- **P1 Meter**: Press the white button on the front of the P1 Meter.
- **Plug-In Battery**: Press the black touch button on the front of the device. You will hear a beep.
- **Energy Socket**, **Water Meter** and **kWh Meter**: they do not require this step.
2. After pressing the button, you must select **Continue** within 30 seconds to complete the setup.
- If the setup times out, you may need to press the button again.
## I can't find sensors like voltage, current, or frequency
Some sensors are disabled by default. You can enable them in the integration setup. See the [enabling or disabling entities](/common-tasks/general/#enabling-or-disabling-entities) documentation for more information.
## Remove integration
This integration follows standard integration removal.

View File

@ -83,7 +83,7 @@ data:
#### Data
Any parameters that you pass in the notify payload that aren't valid for use in the HTML5 notification (`actions`, `badge`, `body`, `dir`, `icon`, `image`, `lang`, `renotify`, `requireInteraction`, `tag`, `timestamp`, `vibrate`, `priority`, `ttl`) will be sent back to you in the [callback events](#automating-notification-events).
Any parameters that you pass in the notify payload that aren't valid for use in the HTML5 notification (`actions`, `badge`, `body`, `dir`, `icon`, `image`, `lang`, `renotify`, `requireInteraction`, `tag`, `timestamp`, `vibrate`, `priority`, `ttl`, `silent`) will be sent back to you in the [callback events](#automating-notification-events).
```yaml
title: Front door
@ -195,7 +195,7 @@ Common event payload parameters are:
| Parameter | Description |
| --------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `action` | The `action` key that you set when sending the notification of the action clicked. Only appears in the `clicked` event. |
| `data` | The data dictionary you originally passed in the notify payload, minus any parameters that were added to the HTML5 notification (`actions`, `badge`, `body`, `dir`, `icon`, `image`, `lang`, `renotify`, `requireInteraction`, `tag`, `timestamp`, `vibrate`). |
| `data` | The data dictionary you originally passed in the notify payload, minus any parameters that were added to the HTML5 notification (`actions`, `badge`, `body`, `dir`, `icon`, `image`, `lang`, `renotify`, `requireInteraction`, `tag`, `timestamp`, `vibrate`, `silent`). |
| `tag` | The unique identifier of the notification. Can be overridden when sending a notification to allow for replacing existing notifications. |
| `target` | The target that this notification callback describes. |
| `type` | The type of event callback received. Can be `received`, `clicked` or `closed`. |

View File

@ -14,8 +14,6 @@ ha_platforms:
ha_bluetooth: true
ha_config_flow: true
ha_integration_type: integration
ha_codeowners:
- '@bdraco'
---
{% include integrations/config_flow.md %}

View File

@ -15,6 +15,7 @@ ha_platforms:
ha_integration_type: device
ha_codeowners:
- '@abmantis'
ha_quality_scale: bronze
---
The IKEA IDÅSEN {% term integration %} allows you to connect your [IKEA Idåsen](https://www.ikea.com/us/en/cat/idasen-system-47424/) motorized desk to Home Assistant, making it possible to control the desk height and also monitor height changes from the physical controller.

View File

@ -0,0 +1,78 @@
---
title: igloohome
description: Integrates igloohome smart access devices.
ha_category:
- Sensor
ha_release: 2025.2
ha_config_flow: true
ha_iot_class: Cloud Polling
ha_codeowners:
- '@keithle888'
ha_domain: igloohome
ha_platforms:
- sensor
ha_integration_type: integration
ha_quality_scale: bronze
---
The **igloohome** {% term integration %} grants Home Assistant access to paired [smart access device\(s\)](https://www.igloohome.co/#products). The features of this integration includes:
- For [Bridge](https://www.igloohome.co/products/bridge) owners:
- Regular updates of all linked devices' battery level.
- For non-bridge owners:
- Regular updates of devices' last-known battery level.
- Battery levels are updated by using the sync function on igloohome mobile app with the device.
## Prerequisites
- You own an igloohome device(s) and have paired them to an account.
- Have an active subscription on [iglooaccess](https://access.igloocompany.co/register) with the same account.
## Setup
Once you have registered and activated your [iglooaccess](https://access.igloocompany.co/register) account:
- [Sign in](https://access.igloocompany.co/login).
- Jump to [API access](https://access.igloocompany.co/api-access).
- Create a set of credentials with the name `Home Assistant`.
- Copy out the `Client ID` & `Client Secret`.
- Keep these credentials secure and never share them with others.
- Add this integration to your Home Assistant instance.
- Copy the `Client ID` & `Client Secret` to the respective text fields when prompted by the integration.
- The integration will retrieve the devices under your account and create entries for them in Home Assistant.
{% include integrations/config_flow.md %}
{% configuration_basic %}
Client ID:
description: "Client ID provided by your iglooaccess account."
required: true
type: string
Client secret:
description: "Client Secret provided by your iglooaccess account."
required: true
type: string
{% endconfiguration_basic %}
## Removing the integration
This integration follows standard integration removal. No extra steps are required.
{% include integrations/remove_device_service.md %}
## Troubleshooting
Some generic troubleshooting steps:
- Ensure that your subscription is still active.
### Battery levels not updating
- If you are using a bridge, ensure that it is linked to the correct devices.
- If you do not have a bridge. Sync the device with the igloohome mobile app, then reload the config entry associated to the device.
### Authentication problems
- Verify that your [API credentials](https://access.igloocompany.co/api-access) are correctly filled in.
- Ensure your API credentials have not expired or been revoked.

View File

@ -10,7 +10,6 @@ ha_codeowners:
- '@bieniu'
ha_domain: imgw_pib
ha_platforms:
- binary_sensor
- diagnostics
- sensor
ha_integration_type: integration
@ -18,19 +17,10 @@ ha_integration_type: integration
IMGW-PIB integration uses hydrological data from [Institute of Meteorology and Water Management - National Research Institute](https://hydro.imgw.pl) to present information about rivers and water reservoirs in Poland.
## Binary sensors
Binary sensor entities added to Home Assistant:
- Flood alarm
- Flood warning
## Sensors
Sensor entities added to Home Assistant:
- Flood alarm level (disabled by default)
- Flood warning level (disabled by default)
- Water level
- Water temperature (if a given hydrological station supports it)

View File

@ -1,5 +1,5 @@
---
title: Intergas InComfort/Intouch Lan2RF gateway
title: Intergas gateway
description: Instructions on how to integrate an Intergas Lan2RF gateway with Home Assistant.
ha_category:
- Binary sensor
@ -14,10 +14,12 @@ ha_domain: incomfort
ha_platforms:
- binary_sensor
- climate
- diagnostics
- sensor
- water_heater
ha_integration_type: integration
ha_config_flow: true
ha_dhcp: true
---
This integration links Home Assistant with your Intergas Lan2RF gateway, including the boiler and any room thermostats attached to it.
@ -33,8 +35,6 @@ The boiler is represented as a **Water heater** device. It will report the boile
Note that the `current_temperature` will switch between the CV (circulating volume) and Tap temperatures according to the current operating mode of the boiler. If the boiler is neither pumping nor tapping, it will be reported as the higher of the two.
In addition, there is a **Sensor** for each of CV pressure, CV temperature, and Tap temperature, and a **Binary sensor** that will be `on` if there is a fault with the boiler (the fault code will be a state attribute).
### Rooms
Any room thermostats (there can be 0, 1 or 2) are represented as **Climate** devices. They will report the thermostat's target `temperature` and `current_temperature` and the target temperature can be changed. This is similar to changing the target temperature override using the Comfort Touch App that comes with the thermostat/gateway. Note that any override will be reset when a new set point is reached on the thermostat's schedule.
@ -58,6 +58,32 @@ password:
The hub does not have to be in the same network as HA, but must be reachable via port 80/HTTP.
The above configuration can also be adjusted later via
{% my integrations title="**Settings** > **Devices & services**" %},
select "Intergas InComfort/Intouch Lan2RF gateway" and click {% icon "mdi:dots-vertical" %} and select **Reconfigure**.
{% important %}
Some older room thermostats might report the wrong setpoint when the setpoint is manually changed on the room thermostat. If you encounter this behavior, you can enable the `Legacy setpoint handling` option.
{% endimportant %}
{% include integrations/option_flow.md %}
### Sensors for diagnostics
Note that **all** sensors are disabled by default.
- **Sensors**
- Boiler Pressure: Indicates the boilers pressure.
- Boiler Temperature: Indicates the central heating temperature.
- Boiler Tap temperature: Indicates the tap water temperature.
- **Binary sensors**
- Boiler Burner: Indicates if the burner is on.
- Boiler Fault: Indicates if there is a problem. The fault code is set as an attribute.
- Boiler Hot water tap: Indicates if the hot water tap is running.
- Boiler Pump: Indicate the pump is running for cental heating.
## Troubleshooting
In case setting up an older gateway type fails, then try to leave `username` and `password` fields empty.
@ -82,7 +108,7 @@ To send an alert if the CV pressure is too low or too high, consider the followi
- alias: "Low CV Pressure Alert"
triggers:
- trigger: numeric_state
entity_id: sensor.cv_pressure
entity_id: sensor.boiler_pressure
below: 1.0
actions:
- action: notify.pushbullet_notifier

View File

@ -55,6 +55,12 @@ EU version:
- [ODE PLUS Smart Outlet](https://iotty.de/collections/prodotti-singoli/products/ode-plus-smarte-steckdose)
- [OFR PLUS Smart Outlet](https://iotty.fr/collections/prodotti-singoli/products/ofr-plus-prise-intelligente)
### iotty Outlet
- [iotty Smart Outlet - Italy](https://iotty.it/collections/prodotti-singoli/products/oit-plus-presa-intelligente)
- [iotty Smart Outlet - Germany](https://iotty.de/collections/prodotti-singoli/products/ode-plus-smarte-steckdose)
- [iotty Smart Outlet - France](https://iotty.fr/collections/prodotti-singoli/products/ofr-plus-prise-intelligente)
## Supported entities
Each iotty device gets mapped into one Home Assistant device per gang, each with its own Switch entity.

View File

@ -3,9 +3,11 @@ title: IronOS
description: Instructions on how to integrate IronOS-based Pinecil V2 devices with Home Assistant.
ha_category:
- Binary sensor
- Button
- Number
- Select
- Sensor
- Switch
- Update
ha_iot_class: Local Polling
ha_release: 2024.8
@ -16,9 +18,12 @@ ha_domain: iron_os
ha_integration_type: integration
ha_platforms:
- binary_sensor
- button
- diagnostics
- number
- select
- sensor
- switch
- update
---
@ -104,6 +109,12 @@ The following controls allow you to customize the settings and options for your
- **Temperature display unit:** Sets the unit for displaying temperature as Celsius (C°) or Fahrenheit (F°).
- **Animation speed:** Adjusts the pace of icon animations in the menu, with options for off, slow, medium, or fast.
- **Boot logo duration:** Sets the duration for the boot logo, with options for off, 15 seconds, or loop.
- **Animation loop:** Controls whether menu animations should loop continuously. This setting is applicable only when animation speed is enabled.
- **Detailed idle screen:** Enables a more detailed view on the idle screen, showing text with additional information compared to the default icon-based view.
- **Detailed solder screen:** Enables a more detailed view on the soldering screen in a text-based format, reducing the use of graphical visuals.
- **Invert screen:** Inverts the OLED screen colors.
- **Swap +/- buttons:** Reverses the button assignment for incrementing and decrementing temperature on adjustment screens.
- **Cool down screen flashing:** Enables the idle screen to blink the tip temperature when it exceeds 50°C, serving as a tip is still hot warning.
### Power management
@ -115,6 +126,7 @@ The following controls allow you to customize the settings and options for your
- **Power Delivery timeout:** Defines how long the firmware will attempt to negotiate USB-PD before switching to Quick Charge. Lower values are recommended for faster PD negotiation.
- **Power limit:** Sets a custom wattage cap for the device to maintain the **average** power below this value. Note: Peak power cannot be controlled. When using USB-PD, the limit will be the lower of this setting and the power supply's advertised wattage.
- **Quick Charge voltage:** Adjusts the maximum voltage for Quick Charge negotiation. Does not affect USB-PD. Ensure the setting aligns with the current rating of your power supply for safety.
- **Power Delivery 3.1 EPR (Extended Power Range):** Enables EPR mode, allowing input voltages up to 28V with a [compatible USB-C power supply](https://wiki.pine64.org/wiki/Pinecil_Power_Supplies#EPR_PD3.1,_140W_Chargers)
### Advanced settings
@ -122,6 +134,13 @@ These settings are intended for technically experienced users and require carefu
- **Voltage divider:** Fine-tunes the measured voltage to account for variations in the voltage sense resistors between units.
- **Calibration offset:** Adjusts the calibration of the thermocouple measurements, which determine the temperature displayed for the tip.
- **Calibrate CJC (Cold Junction Compensation):** Initiates thermocouple calibration at the next boot to improve temperature accuracy. Only needed if temperature readings are consistently inaccurate. Ensure the device is at room temperature before calibrating. For more details, see the [documentation](https://ralim.github.io/IronOS/Settings/#setting-calibrate-cjc-at-next-boot).
### Save & restore
- **Save settings:** Saves the current configuration to apply it permanently. Use this after making changes to ensure they persist across device reboots.
- **Restore default settings:** Resets all configuration options to their factory defaults. Note: This action cannot be undone, and all custom settings will be lost. To preserve custom settings, create a {% term scene %} before restoring defaults.
## Automations
Get started with this automation example for IronOS with a ready-to-use blueprint!
@ -195,6 +214,8 @@ This integration maintains an active Bluetooth connection while the device is po
CONFIG_BT_GATTC_MAX_CACHE_CHAR: "100"
```
In any case, when reporting an issue, please enable [debug logging](/docs/configuration/troubleshooting/#debug-logs-and-diagnostics), restart the integration, and as soon as the issue reoccurs, stop the debug logging again (_download of debug log file will start automatically_). Further, if still possible, please also download the [diagnostics](/integrations/diagnostics) data. If you have collected the debug log and the diagnostics data, provide them with the issue report.
## Removing the integration
This integration can be removed by following these steps:

View File

@ -15,6 +15,7 @@ ha_platforms:
- device_tracker
- sensor
ha_integration_type: hub
ha_quality_scale: silver
---
The **Ituran** {% term integration %} allows you to retrieve information from your Ituran-equipped vehicle using the [Ituran APP service](https://www.ituran.co.il/ituranfront/comfort-services-2/ituran-app-comfort). It pulls information from the Ituran web service regarding the vehicle's location.

View File

@ -596,7 +596,7 @@ respond_to_read:
## Binary sensor
The KNX binary sensor platform allows you to monitor [KNX](https://www.knx.org/) binary sensors.
The KNX binary sensor platform allows you to monitor [KNX](https://www.knx.org/) binary sensors like window/door contacts, motion detectors, alarms, etc.
{% note %}
@ -604,6 +604,11 @@ Binary sensors are read-only entities. To write to the KNX bus, configure a [KNX
{% endnote %}
Binary sensor entities can be created from the frontend in the KNX panel or via YAML.
<a name="configuration-binary-sensor-yaml"></a>
{% details "Configuration of KNX binary sensor entities via YAML" %}
```yaml
knx:
binary_sensor:
@ -643,7 +648,7 @@ device_class:
required: false
type: string
reset_after:
description: Reset back to "off" state after specified seconds.
description: Reset back to "off" state after specified time in seconds.
required: false
type: float
invert:
@ -657,7 +662,7 @@ ignore_internal_state:
type: boolean
default: false
context_timeout:
description: The time in seconds between multiple identical telegram payloads would count towards the internal counter that is used for automations. Ex. You have automations in place that trigger your lights on button press and another set of lights if you click that button twice. This setting defines the time that a second button press would count toward, so if you set this 3.0 you can take up to 3 seconds in order to trigger the second button press. If set `ignore_internal_state` will be set to `true` internally. Maximum value is 10.0.
description: The time in seconds between multiple identical telegram payloads would count towards an internal counter that can be used for automations. This setting defines the time window that a second telegram would count toward a single state change. So if you set this 3.0 you can take up to 3 seconds in order to trigger the second button press, and a single press would take 3 seconds to trigger a Home Assistant state update. If this is set, `ignore_internal_state` will be set to `true` internally. Maximum value is 10.0.
required: false
type: float
default: None
@ -668,14 +673,14 @@ entity_category:
default: None
{% endconfiguration %}
### Support for automations
{% enddetails %}
You can use a built in event in order to trigger an automation (e.g. to switch on a light when a switch was pressed).
### Automation example
Let's pretend you have a binary sensor with the name `Livingroom.Switch` and you want to switch one light on when the button was pressed once and two other lights when the button was pressed twice. `context_timeout` has to be configured in order for this to work.
Let's pretend you have configured a binary sensor with the name `Livingroom Switch` and you want to toggle a light when the button was pressed once and another light when the button was pressed twice.
`context_timeout` has to be configured in order for this to work and the switch would have to send the same payloads on each press (`on` - `on` within the time window).
```yaml
# Example automation.yaml entry
automation:
- triggers:
- trigger: numeric_state
@ -683,54 +688,22 @@ automation:
attribute: counter
above: 0
below: 2
condition:
- condition: state
entity_id: binary_sensor.cover_abstell
state: "on"
actions:
- action: light.turn_on
entity_id: light.hue_color_lamp_1
- action: light.toggle
entity_id: light.livingroom_ceiling_lamp
- triggers:
- trigger: numeric_state
entity_id: binary_sensor.livingroom_switch
attribute: counter
above: 1
below: 3
conditions:
- condition: state
entity_id: binary_sensor.cover_abstell
state: "on"
actions:
- action: light.turn_on
- action: light.toggle
target:
entity_id:
- light.hue_bloom_1
- light.hue_bloom_2
- light.livingroom_floor_lamp
```
{% configuration %}
name:
description: A name for this device used within Home Assistant.
required: false
type: string
counter:
description: Set to 2 if you only want the action to be executed if the button was pressed twice. Set to 3 for three times button pressed.
required: false
type: integer
default: 1
hook:
description: Indicates if the automation should be executed on what state of the binary sensor. Values are "on" or "off".
required: false
type: string
default: "on"
action:
description: Specify a list of actions analog to the [automation rules](/docs/automation/action/).
required: false
type: list
{% endconfiguration %}
## Button
The KNX button platform allows to send concurrent predefined values via the frontend or an action. When a user presses the button, the assigned generic raw payload is sent to the KNX bus.
@ -1058,6 +1031,22 @@ fan_zero_mode:
required: false
type: string
default: "off"
swing_address:
description: KNX address for turning the (vertical) swing on/off. *DPT 1*
required: false
type: [string, list]
swing_state_address:
description: KNX address for gathering the current state (on/off) of the (vertical) swing. *DPT 1*
required: false
type: [string, list]
swing_horizontal_address:
description: KNX address for turning the horizontal swing on/off. *DPT 1*
required: false
type: [string, list]
swing_horizontal_state_address:
description: KNX address for gathering the current state (on/off) of the horizontal swing. *DPT 1*
required: false
type: [string, list]
entity_category:
description: The [category](https://developers.home-assistant.io/docs/core/entity#generic-properties) of the entity.
required: false

View File

@ -272,3 +272,10 @@ authentication process.
Internal examples: `http://192.168.0.2:8123/auth/external/callback`, `http://homeassistant.local:8123/auth/external/callback`."
{% enddetails %}
## Troubleshooting
### The brightness doesn't go to 100%
When the LaMetric is powered by a USB port on a computer, the brightness is limited.
To get the full brightness, use a proper USB charger.

View File

@ -3,6 +3,7 @@ title: Legrand
description: Connect and control your Legrand devices using the Netatmo integration
ha_category:
- Binary sensor
- Button
- Camera
- Climate
- Cover
@ -24,6 +25,7 @@ ha_codeowners:
ha_config_flow: true
ha_platforms:
- binary_sensor
- button
- camera
- climate
- cover

View File

@ -0,0 +1,74 @@
---
title: LetPot
description: Instructions on how to integrate LetPot hydroponic gardens into Home Assistant.
ha_category:
- Time
ha_release: 2025.2
ha_iot_class: Cloud Push
ha_config_flow: true
ha_codeowners:
- '@jpelgrom'
ha_domain: letpot
ha_integration_type: hub
ha_platforms:
- time
ha_quality_scale: bronze
---
The **LetPot** {% term integration %} allows you to integrate your [LetPot](https://letpot.com/) hydroponic gardens/systems into Home Assistant.
## Supported devices
The following devices are supported by this integration:
- LetPot Air (LPH-AIR)
- LetPot Max (LPH-MAX)
- LetPot Mini (LPH-MINI)
- LetPot Pro (LPH-PRO)
- LetPot Senior (LPH-SE)
## Prerequisites
To use this integration, you must first create a LetPot account and connect your hydroponic garden to Wi-Fi using the official app.
{% include integrations/config_flow.md %}
### Configuration parameters
{% configuration_basic %}
Email:
description: "The email address of your LetPot account."
required: true
type: string
Password:
description: "The password of your LetPot account."
required: true
type: string
{% endconfiguration_basic %}
## Supported functionality
### Entities
The LetPot integration provides the following entities.
#### Times
- **Light on**: Time when the built-in light turns on.
- **Light off**: Time when the built-in light turns off.
{% note %}
When **Light on** and **Light off** are set to the same time, the built-in light will be turned off.
{% endnote %}
## Data updates
The integration receives updates when the device state changes, enabling immediate updates of the data in Home Assistant.
## Remove integration
This integration follows standard integration removal, no extra steps are required.
{% include integrations/remove_device_service.md %}

View File

@ -86,7 +86,21 @@ To apply a theme interactively, use the theme selection drop-down box found on t
To apply a theme as part of an automation, use the `select.select_option` action call. You can also apply a theme when calling the `lifx.effect_move` action. See the **Light effects** section below for more details, including how to set a custom theme for that effect.
The following themes are available: `autumn`, `blissful`, `cheerful`, `dream`, `energizing`, `epic`, `exciting`, `focusing`, `halloween`, `hanukkah`, `holly`, `independence_day`, `intense`, `mellow`, `peaceful`, `powerful`, `relaxing`, `santa`, `serene`, `soothing`, `sports`, `spring`, `tranquil`, `warming`.
The following themes are available: `autumn`, `blissful`, `bias_lighting`, `calaveras`, `cheerful`, `christmas`, `dream`, `energizing`, `epic`, `evening`, `exciting`, `fantasy`, `focusing`, `gentle`, `halloween`, `hanukkah`, `holly`, `hygge`, `independence`, `intense`, `love`, `kwanzaa`, `mellow`, `party`, `peaceful`, `powerful`, `proud`, `pumpkin`, `relaxing`, `romance`, `santa`, `serene`, `shamrock`, `soothing`, `spacey`, `sports`, `spring`, `stardust`, `thanksgiving`, `tranquil`, `warming`, `zombie`.
### Action `lifx.paint_theme`
This action allows you to paint either one of the predefined themes listed above, or you can specify a custom palette and create your own theme. Your palette must be a list of at least two colors each defined as a list of four integer values representing hue, saturation, brightness, and kelvin (in that order). See below for the allowed range for each value.
If you provide a value for both `palette` and `theme`, then the palette will override the theme. If neither is provided, the `exciting` theme is used by default.
| Data attribute | Description |
| ---------------------- | ----------- |
| `palette` | (optional, overrides `theme`) a list of 2 to 16 colors defined as a list of values representing hue (0-360), saturation (0-100), brightness (0-100), and kelvin (1500-9000). All four values must be provided for each color. |
| `theme` | (optional, overridden by `palette`) the name of the theme to paint on the target lights. See above for a list of available themes. |
| `transition` | (optional, default: 1 second) duration in seconds to paint the theme across the target lights. |
| `power_on` | (optional, default: True) set this to `False` to prevent lights being turned on before the theme is painted. |
## Light effects
@ -183,11 +197,11 @@ The device will be powered on by default, but this can be overridden by setting
| Data attribute | Description |
| ---------------------- | ----------- |
| `entity_id` | String or list of strings that point at `entity_id`s of matrix lights.
| `speed` | Duration in seconds for the effect to travel the length of the device (min: 1s, max: 25s)
| `palette` | A list of at least 2 and at most 16 HSBK values to use for this effect.
| `theme` | The theme to use for the effect. Must be one of: `autumn`, `blissful`, `cheerful`, `dream`, `energizing`, `epic`, `exciting`, `focusing`, `halloween`, `hanukkah`, `holly`, `independence` `day`, `intense`, `mellow`, `peaceful`, `powerful`, `relaxing`, `santa`, `serene`, `soothing`, `sports`, `spring`, `tranquil`, `warming`.
| `power_on` | Whether to turn the light on before starting the effect (optional, default: true)
| `entity_id` | String or list of strings that point at `entity_id`s of matrix lights. |
| `speed` | Duration in seconds for the effect to travel the length of the device (min: 1s, max: 25s) |
| `palette` | A list of at least 2 and at most 16 HSBK values to use for this effect (optional, overrides theme). |
| `theme` | The theme to use for the effect. See above for a list of available themes (optional, overridden by palette). |
| `power_on` | Whether to turn the light on before starting the effect (optional, default: true) |
### Action `lifx.effect_sky`
@ -242,11 +256,11 @@ The effect will not be visible if all LEDs on the device are set to the same col
| Data attribute | Description |
| ---------------------- | ----------- |
| `entity_id` | String or list of strings that point at `entity_id`s of multizone lights.
| `speed` | Duration in seconds for the effect to travel the length of the device (min: 0.1s, max: 60s)
| `direction` | The direction in which the effect will travel, either "right" or "left" (default: right)
| `theme` | The name of a pre-defined theme to apply to the multizone device before starting the effect.
| `power_on` | Whether to turn the light on before starting the effect (optional, default: true)
| `entity_id` | String or list of strings that point at `entity_id`s of multizone lights. |
| `speed` | Duration in seconds for the effect to travel the length of the device (min: 0.1s, max: 60s) |
| `direction` | The direction in which the effect will travel, either "right" or "left" (default: right) |
| `theme` | The theme to use for the effect. See above for a list of available themes (optional). |
| `power_on` | Whether to turn the light on before starting the effect (optional, default: true) |
### Action `lifx.effect_stop`

View File

@ -108,7 +108,7 @@ brightness_value_template:
required: false
type: template
color_mode_state_topic:
description: "The MQTT topic subscribed to receive color mode updates. If this is not configured, `color_mode` will be automatically set according to the last received valid color or color temperature"
description: "The MQTT topic subscribed to receive color mode updates. If this is not configured, `color_mode` will be automatically set according to the last received valid color or color temperature. The unit used is mireds, or if `color_temp_kelvin` is set to `true`, in Kelvin."
required: false
type: string
color_mode_value_template:
@ -120,9 +120,14 @@ color_temp_command_template:
required: false
type: template
color_temp_command_topic:
description: The MQTT topic to publish commands to change the lights color temperature state. The color temperature command slider has a range of 153 to 500 mireds (micro reciprocal degrees).
description: The MQTT topic to publish commands to change the lights color temperature state. By default the color temperature command slider has a range of 153 to 500 mireds (micro reciprocal degrees) or a range of 2000 to 6535 Kelvin if `color_temp_kelvin` is set to `true`.
required: false
type: string
color_temp_kelvin:
description: "When set to `true`, `color_temp_command_topic` will publish color mode updates in Kelvin and process `color_temp_state_topic` will process state updates in Kelvin. When not set the `color_temp` values are converted to mireds."
required: false
type: boolean
default: false
color_temp_state_topic:
description: "The MQTT topic subscribed to receive color temperature state updates."
required: false
@ -257,10 +262,20 @@ json_attributes_topic:
description: The MQTT topic subscribed to receive a JSON dictionary payload and then set as sensor attributes. Usage example can be found in [MQTT sensor](/integrations/sensor.mqtt/#json-attributes-topic-configuration) documentation.
required: false
type: string
max_kelvin:
description: The maximum color temperature in Kelvin.
required: false
type: integer
default: 6535
max_mireds:
description: The maximum color temperature in mireds.
required: false
type: integer
min_kelvin:
description: The minimum color temperature in Kelvin.
required: false
type: integer
default: 2000
min_mireds:
description: The minimum color temperature in mireds.
required: false
@ -582,6 +597,11 @@ brightness_scale:
required: false
type: integer
default: 255
color_temp_kelvin:
description: "When set to `true`, `command_topic` will publish color mode updates in Kelvin, and process `state_topic` will process state updates in Kelvin. By default, the `color_temp` values are converted to and from mireds."
required: false
type: boolean
default: false
command_topic:
description: The MQTT topic to publish commands to change the lights state.
required: true
@ -668,10 +688,20 @@ json_attributes_topic:
description: The MQTT topic subscribed to receive a JSON dictionary payload and then set as sensor attributes. Usage example can be found in [MQTT sensor](/integrations/sensor.mqtt/#json-attributes-topic-configuration) documentation.
required: false
type: string
max_kelvin:
description: The maximum color temperature in Kelvin.
required: false
type: integer
default: 6535
max_mireds:
description: The maximum color temperature in mireds.
required: false
type: integer
min_kelvin:
description: The minimum color temperature in Kelvin.
required: false
type: integer
default: 2000
min_mireds:
description: The minimum color temperature in mireds.
required: false
@ -963,8 +993,13 @@ brightness_template:
description: "[Template](/docs/configuration/templating/#using-templates-with-the-mqtt-integration) to extract brightness from the state payload value. Expected result of the template is an integer from 0-255 range."
required: false
type: template
color_temp_kelvin:
description: "When set to `true`, `command_topic` will publish color mode updates in Kelvin and process `state_topic` will process state updates in Kelvin. When not set the `color_temp` values are converted to mireds."
required: false
type: boolean
default: false
color_temp_template:
description: "[Template](/docs/configuration/templating/#using-templates-with-the-mqtt-integration) to extract color temperature from the state payload value. Expected result of the template is an integer representing mired units."
description: "[Template](/docs/configuration/templating/#using-templates-with-the-mqtt-integration) to extract color temperature from the state payload value. Expected result of the template is an integer. If `color_temp_kelvin` is `true` the expected value is in Kelvin else mireds are expected."
required: false
type: template
command_off_template:
@ -972,7 +1007,7 @@ command_off_template:
required: true
type: template
command_on_template:
description: "The [template](/docs/configuration/templating/#using-templates-with-the-mqtt-integration) for *on* state changes. Available variables: `state`, `brightness`, `color_temp`, `red`, `green`, `blue`, `hue`, `sat`, `flash`, `transition` and `effect`. Values `red`, `green`, `blue`, `brightness` are provided as integers from range 0-255. Value of `hue` is provided as float from range 0-360. Value of `sat` is provided as float from range 0-100. Value of `color_temp` is provided as integer representing mired units."
description: "The [template](/docs/configuration/templating/#using-templates-with-the-mqtt-integration) for *on* state changes. Available variables: `state`, `brightness`, `color_temp`, `red`, `green`, `blue`, `hue`, `sat`, `flash`, `transition` and `effect`. Values `red`, `green`, `blue`, `brightness` are provided as integers from range 0-255. Value of `hue` is provided as float from range 0-360. Value of `sat` is provided as float from range 0-100. Value of `color_temp` is provided as integer representing mired or Kelvin units if `color_temp_kelvin` is `true`."
required: true
type: template
command_topic:
@ -1054,10 +1089,20 @@ json_attributes_topic:
description: The MQTT topic subscribed to receive a JSON dictionary payload and then set as sensor attributes. Usage example can be found in [MQTT sensor](/integrations/sensor.mqtt/#json-attributes-topic-configuration) documentation.
required: false
type: string
max_kelvin:
description: The maximum color temperature in Kelvin.
required: false
type: integer
default: 6535
max_mireds:
description: The maximum color temperature in mireds.
required: false
type: integer
min_kelvin:
description: The minimum color temperature in Kelvin.
required: false
type: integer
default: 2000
min_mireds:
description: The minimum color temperature in mireds.
required: false

View File

@ -26,6 +26,7 @@ ha_platforms:
- update
- vacuum
ha_integration_type: hub
ha_quality_scale: bronze
---
The Litter-Robot integration allows you to control and monitor your Wi-Fi-enabled, automatic, self-cleaning litter box and pet feeders.
@ -41,20 +42,24 @@ Before using this integration, youll need a Whisker account and a Wi-Fi-enabl
### Litter-Robot
| Entity | Domain | Description |
| ----------------------------- | -------- | -------------------------------------------------------------------------------- |
| ----------------------------- | --------------- | ----------------------------------------------------------------------------------------------------------- |
| Litter box | `vacuum` | Main entity that represents a Litter-Robot unit. |
| Night light mode | `switch` | When turned on, automatically turns on the night light in darker settings. |
| Panel lockout | `switch` | When turned on, disables the buttons on the unit to prevent changes to settings. |
| Last seen | `sensor` | Displays the time the unit was last seen / reported an update. |
| Litter level | `sensor` | Displays the litter level, only for Litter-Robot 4. |
| Pet weight | `sensor` | Displays the last measured pet weight, only for Litter-Robot 4. |
| Sleep Mode Start Time | `sensor` | When sleep mode is enabled, displays the current or next sleep mode start time. |
| Sleep Mode End Time | `sensor` | When sleep mode is enabled, displays the current or last sleep mode end time. |
| Status Code | `sensor` | Displays the status code (Clean Cycle in Progress, Ready, Drawer Full, etc). |
| Waste Drawer | `sensor` | Displays the current waste drawer level. |
| Clean Cycle Wait Time Minutes | `select` | View and select the clean cycle wait time. |
| Sleep mode start time | `sensor` | When sleep mode is enabled, displays the current or next sleep mode start time. |
| Sleep mode end time | `sensor` | When sleep mode is enabled, displays the current or last sleep mode end time. |
| Status code | `sensor` | Displays the status code (Clean Cycle in Progress, Ready, Drawer Full, etc.). |
| Waste drawer | `sensor` | Displays the current waste drawer level. |
| Power status | `binary_sensor` | Indicates whether power is currently connected. |
| Sleep mode | `binary_sensor` | Indicates whether sleep mode is enabled. |
| Sleeping | `binary_sensor` | Indicates whether sleep mode is currently active. |
| Clean cycle wait time minutes | `select` | View and select the clean cycle wait time. |
| Panel brightness | `select` | View and select the panel brightness, only for Litter-Robot 4. |
| Reset Waste Drawer | `button` | Button to reset the waste drawer level to 0%, only for Litter-Robot 3. |
| Reset | `button` | Button to reset the robot, clearing any errors and potentially triggering a cycle, only for Litter-Robot 4. |
| Reset waste drawer | `button` | Button to reset the waste drawer level to 0%, only for Litter-Robot 3. |
| Firmware | `update` | View and update to the latest firmware, only for Litter-Robot 4. |
### Feeder-Robot
@ -67,18 +72,6 @@ Before using this integration, youll need a Whisker account and a Wi-Fi-enabl
| Night light mode | `switch` | When turned on, automatically turns on the night light in darker settings. |
| Panel lockout | `switch` | When turned on, disables the buttons on the unit to prevent changes to settings. |
## Additional Attributes
Some entities have attributes in addition to the default ones that are available for that platform. They are listed below.
### Litter Box `vacuum` entity
| Attribute | Type | Description |
| ------------------ | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| is_sleeping | boolean | Whether or not the unit is currently in sleep mode. |
| sleep_mode_enabled | boolean | Whether or not sleep mode is enabled. |
| power_status | string | Current power status of the unit. `AC` indicates normal power, `DC` indicates battery backup and `NC` indicates that the unit is not connected and/or powered off. |
## Actions
Actions are utilized for additional functionality that is available in the Whisker (previously Litter-Robot) companion app. The following are currently available:

View File

@ -0,0 +1,102 @@
---
title: Model Context Protocol
description: Instructions on how to use the Model Context Protocol with Home Assistant.
ha_category:
- Voice
ha_release: 2025.2
ha_iot_class: Local Polling
ha_config_flow: true
ha_codeowners:
- '@allenporter'
ha_domain: mcp
ha_integration_type: integration
related:
- docs: /integrations/conversation/
title: Conversation
ha_quality_scale: silver
---
The [Model Context Protocol](https://modelcontextprotocol.io) is an open protocol that
standardizes how applications provide context to LLMs. The **Model Context Protocol** {% term integration %}
enables using MCP Servers in Home Assistant for providing additional tools to use with a
[conversation agent](/integrations/conversation). For example, you can add an MCP server that
supports memory functionality, or that can search the web using functionality not already
available in Home Assistant.
Controlling Home Assistant is done by providing MCP clients access to the Assist API of Home
Assistant. You can control what devices and entities it can access from the {% my voice_assistants title="exposed entities page" %}.
## Prerequisites
1. You will need an [MCP server](https://modelcontextprotocol.io/examples).
1. If your MCP server only supports the <abbr title="Standard input/output">*stdio*</abbr> protocol, you will also need an additional
MCP proxy (such as [mcp-proxy](https://github.com/sparfenyuk/mcp-proxy)) to expose
the server over <abbr title="Server-sent events">*SSE*</abbr>.
{% include integrations/config_flow.md %}
## Configuration options
The integration provides the following configuration options:
{% configuration_basic %}
SSE Server URL:
description: The URL for the SSE endpoint of the MCP server. For example, `http://example/sse`.
{% endconfiguration_basic %}
## Architecture overview
This {% term integration %} can provide additional functionality for LLM conversation agents
(for example [Anthropic](/integrations/anthropic/), [Google Generative AI](/integrations/google_generative_ai_conversation), [Ollama](/integrations/ollama/), [Open AI](/integrations/openai_conversation/)).
Home Assistant acts as a client to the MCP server you specify. Home Assistant will
poll the MCP server SSE endpoint and query the list of available tools. The tools are
made available for use by Home Assistant conversation agents, similar to the Assist API.
See the [Model Context Protocol Introduction](https://modelcontextprotocol.io/introduction#general-architecture)
for more details on the protocol.
The Home Assistant Model Context Protocol integration acts as a client using the
[Server-Sent Events (SSE) transport](https://modelcontextprotocol.io/docs/concepts/transports#server-sent-events-sse)
allowing streaming client-to-server communication. Most MCP clients today only support
[stdio](https://modelcontextprotocol.io/docs/concepts/transports#standard-input-output-stdio) transport,
and directly run an MCP server as a local command line tool. You can
use an MCP proxy server like [mcp-proxy](https://github.com/sparfenyuk/mcp-proxy)
to enable Home Assistant to access an MCP SSE server.
Once the integration is configured, you also need to configure the conversation
agent to use the tools.
## Supported functionality
### Tools
[MCP Tools](https://modelcontextprotocol.io/docs/concepts/tools) enable LLMs to
perform actions through Home Assistant. The tools used by the configured LLM API
are exposed.
## Known limitations
The Home Assistant Model Context Protocol integration currently only supports a
subset of MCP features:
| Feature | Supported by Home Assistant |
| ------- | --------- |
| Prompts | ❌ |
| Tools | ✅ |
| Resources | ❌ |
| Sampling | ❌ |
| Notifications | ❌ |
## Troubleshooting
See [Model Context Protocol: Debugging](https://modelcontextprotocol.io/docs/tools/debugging) for
general tips on debugging MCP. If you are developing your own MCP server and having trouble making it work
with Home Assistant, you can also use the [MCP Inspector](https://github.com/modelcontextprotocol/inspector)
to verify that your MCP server is working correctly.
## Remove integration
This integration can be removed by following these steps:
{% include integrations/remove_device_service.md %}

View File

@ -0,0 +1,205 @@
---
title: Model Context Protocol Server
description: Instructions on how to add a Model Context Protocol Server to Home Assistant.
ha_category:
- Voice
ha_release: 2025.2
ha_iot_class: Local Push
ha_config_flow: true
ha_codeowners:
- '@allenporter'
ha_domain: mcp_server
ha_integration_type: service
related:
- docs: /integrations/conversation/
title: Conversation
ha_quality_scale: silver
---
The [Model Context Protocol](https://modelcontextprotocol.io) is an open protocol that standardizes how applications provide context to <abbr title="Large Language Models">LLMs</abbr>. The **Model Context Protocol Server** (MCP) integration enables using Home Assistant to provide context for <abbr title="Model Context Protocol">MCP</abbr> LLM Client Applications. For example, you can expose your Google Tasks To-do list as a tool for Claude Desktop.
Controlling Home Assistant is done by providing <abbr title="Model Context Protocol">MCP</abbr> clients access to the Assist API of Home Assistant. You can control what devices and entities it can access from the {% my voice_assistants title="exposed entities page" %}.
## Prerequisites
- You need an [MCP client](https://modelcontextprotocol.io/clients) LLM Application such as [Claude for Desktop](https://claude.ai/download).
- Since most clients do not support native remote servers, you need an additional local MCP server remote gateway.
For detailed configuration instructions, refer to the [Client configuration](#client-configuration) section.
{% include integrations/config_flow.md %}
## Configuration options
The integration provides the following configuration options:
{% configuration_basic %}
Control Home Assistant:
description: The API to use to expose tools over the Model Context Protocol. It is recommended
to use **Stateless Assist** which is a version of the **Assist** API where the
prompt does not contain any state information. Clients can only control or
provide information about entities that are [exposed](/voice_control/voice_remote_expose_devices/) to it.
{% endconfiguration_basic %}
## Architecture overview
This integration can provide similar functionality as other LLM-based conversation
agents (for example [Anthropic](/integrations/anthropic/), [Google Generative AI](/integrations/google_generative_ai_conversation), [Ollama](/integrations/ollama/), [Open AI](/integrations/openai_conversation/)). In those conversation agents, Home Assistant is the
client and prepares the available tools and passes them into the LLM with a prompt.
The Model Context Protocol follows a different pattern: An LLM application acts as
a client and can connect to multiple MCP servers to provide context. See the
[Model Context Protocol Introduction](https://modelcontextprotocol.io/introduction#general-architecture) for more details.
The Home Assistant Model Context Protocol Server integration implements the
[Server-Sent Events (SSE) transport](https://modelcontextprotocol.io/docs/concepts/transports#server-sent-events-sse)
allowing streaming client-to-server communication. Most MCP clients today only support
[stdio](https://modelcontextprotocol.io/docs/concepts/transports#standard-input-output-stdio) transport,
and directly run an MCP server as a local command line tool. You can
use an MCP proxy server like [mcp-proxy](https://github.com/sparfenyuk/mcp-proxy)
to act as a gateway to the Home Assistant MCP SSE server.
## Client configuration
The Model Context Protocol specification does not yet define standards
for authentication and connecting to remote servers. These are a *work in progress*
and this configuration will likely change in the near future.
### Access control
For now, we can use
[Long-lived access token](https://developers.home-assistant.io/docs/auth_api/#long-lived-access-token) to control access to the API.
1. Visit your account profile settings, under the **Security** tab. {% my profile badge %}.
2. Create a **Long-lived access token**
3. Copy the access token to use when configuring the MCP client LLM application.
For more information about Authentication in Home Assistant, refer to the [Authentication documentation](https://www.home-assistant.io/docs/authentication/#your-account-profile).
### Example: Claude for Desktop
See [MCP Quickstart: For Claude Desktop Users](https://modelcontextprotocol.io/quickstart/user#for-claude-desktop-users)
for a detailed guide on using Claude for Desktop with an MCP server. It is recommended
to get the example server working first before using the Home Assistant MCP Server.
Claude for Desktop currently only supports local MCP servers using the [stdio](https://modelcontextprotocol.io/docs/concepts/transports#standard-input-output-stdio)
transport, run as a local command line tool. You can use a local MCP proxy server
to allow Claude for Desktop to access Home Assistant using the SSE transport.
1. Download [Claude for Desktop](https://claude.ai/download).
2. Install `mcp-proxy` following the instructions in the [README](https://github.com/sparfenyuk/mcp-proxy).
For example, `uv tool install git+https://github.com/sparfenyuk/mcp-proxy`.
3. Open the configuration file. Visit **Settings…** and on the **Developer** tab, select **Edit Config**.
which will edit `claude_desktop_config.json`. The full file location depends on your
operating system (macOS or Windows).
4. Add a new MCP server to the JSON file. You need to set the `SSE_URL` to the URL you use to
connect to Home Assistant with the path `/mcp_server/sse`. You will also need to set `API_ACCESS_TOKEN`
to the long live access token created above in the [access control instructions](#access-control)
```json
{
"mcpServers": {
"Home Assistant": {
"command": "mcp-proxy",
"env": {
"SSE_URL": "http://localhost:8123/mcp_server/sse",
"API_ACCESS_TOKEN": "<your_access_token_here>"
}
}
}
}
```
5. Restart Claude.
6. You will see a connection icon {% icon "mdi:connection" %} if things are set up correctly. Clicking the connection icon will show enabled MCP servers such as *Home Assistant*.
7. Select the prompt provided by Home Assistant.
8. You can then use Claude to control Home Assistant similar to how you control Home Assistant through the Voice Assistant. Claude wil ask you for permission before calling any tools.
![Screenshot of Claude for Desktop adding an item to a Home Assistant To-do list](/images/integrations/mcp_server/claude-todo-list-control.png)
## Supported functionality
### Tools
[MCP Tools](https://modelcontextprotocol.io/docs/concepts/tools) enable LLMs to
perform actions through Home Assistant. The tools used by the configured LLM API
are exposed.
### Prompts
The [MCP Prompts](https://modelcontextprotocol.io/docs/concepts/prompts) provided
inform LLMs how to call the tools. The tools used by the configured LLM API
are exposed.
It is recommended to use the **Stateless Assist** API since the prompt does
not contain any state information, which will be incorrect after any actions
are performed.
## Known Limitations
The Home Assistant Model Context Protocol integration currently only supports a
subset of MCP features:
| Feature | Supported by Home Assistant |
| ------- | --------- |
| Prompts | ✅ |
| Tools | ✅ |
| Resources | ❌ |
| Sampling | ❌ |
| Notifications | ❌ |
Home Assistant does not yet provide built-in tools that can fetch device state.
## Troubleshooting
This section has troubleshooting information for Claude for Desktop since it is
the primary client. Also see [Debugging in Claude Desktop](https://modelcontextprotocol.io/docs/tools/debugging#debugging-in-claude-desktop).
### LLM client cannot connect to Home Assistant MCP server
#### Symptom: Failed to start MCP server: Could not start MCP server Home Assistant
When trying to configure a client like Claude for Desktop to talk to Home Assistant, the app shows a
message like "Failed to start MCP server: Could not start MCP server Home Assistant"
##### Description
This means that the local MCP server `mcp-proxy` could not start.
##### Resolution
Verify the command line arguments in the `claude_desktop_config.json` are correct. You may try to run
the command manually to verify that the command can be found.
#### Symptom: “MCP server Home Assistant disconnected” or "Could not attach to MCP server Home Assistant"
When trying to configure a client like Claude Desktop to talk to Home Assistant, the app shows a
message like "MCP server Home Assistant disconnected" or "Could not attach to MCP server Home Assistant".
##### Description
This means the MCP server has started, however the MCP server is having trouble communicating with Home Assistant,
or the MCP server in Home Assistant is not configured.
##### Resolution
To understand the root cause, first check debug logs on the client. For example in Claude for Desktop:
1. Visit **Settings...**.
2. Select **Developer**.
3. Select the `Home Assistant` MCP server.
4. Select **Open Logs Folder**.
5. View `mcp-server-Home Assistant.log`. These are known problems and their resolution:
- `Client error '404 Not Found' for url 'http://localhost:8123/mcp_server/sse'`:
this means the MCP Server integration is not configured in Home Assistant.
- `Client error '401 Unauthorized' for url 'http://localhost:8123/mcp_server/sse'`:
this means that the long live access token is not correct.
...
## Remove integration
This integration can be removed by following these steps:
{% include integrations/remove_device_service.md %}

View File

@ -11,6 +11,7 @@ ha_domain: mill
ha_config_flow: true
ha_platforms:
- climate
- number
- sensor
ha_integration_type: integration
---
@ -20,7 +21,9 @@ Integrates Mill heater into Home Assistant.
{% include integrations/config_flow.md %}
You can configure it for cloud access or local access.
Local access requires Generation 3 heaters (Sold from Autumn 2021)
Local access requires Generation 3 heaters (Sold from Autumn 2021).
A number entity can configure the maximum power of the heaters.
## Actions

View File

@ -756,6 +756,25 @@ climates:
description: "Value corresponding to Fan Diffuse mode."
required: false
type: integer
hvac_onoff_register:
description: "Address of On/Off state.
When the value defined by `hvac_off_value` is read from this register, the HVAC
state is set to Off. Otherwise, the `hvac_mode_register` dictates the state
of the HVAC. If no such register is defined, it defaults to Auto.
When the HVAC mode is set to Off, the value defined by `hvac_off_value` is written to
the register, otherwise the value defined by `hvac_on_value` is written."
required: false
type: integer
hvac_on_value:
description: "The value that will be written to the `hvac_onoff_register` to turn the HVAC system on.
If not specified, the default value is 1."
required: false
type: integer
hvac_off_value:
description: "The value that will be written to the `hvac_onoff_register` to turn the HVAC system off.
If not specified, the default value is 0."
required: false
type: integer
swing_mode_register:
description: "Configuration of the register for swing mode"
required: false

View File

@ -2,8 +2,8 @@
title: Monzo
description: Instructions on how to integrate Monzo integration into Home Assistant.
ha_category:
- Sensor
- Finance
- Sensor
ha_release: 2024.6
ha_iot_class: Cloud Polling
ha_codeowners:

View File

@ -27,6 +27,7 @@ Additionally the following brands have been reported to also work with this inte
- [Bloc Blinds](https://www.blocblinds.com/)
- [Brel Home](https://www.brel-home.nl/)
- [3 Day Blinds](https://www.3dayblinds.com/)
- [Decorquip Dream](https://www.decorquip.com/post.php?dream)
- [Diaz](https://www.diaz.be/en/)
- [Dooya](http://www.dooya.com/)
- [Gaviota](https://www.gaviotagroup.com/en/)
@ -65,6 +66,8 @@ The following bridges are reported to work with this integration:
- SIRO Connect SI7005
- Heicko Smart Stick 1ST
- DD7006A Smart Home bridge
- Dreamhub Pro 191726
- Dreamhub mini 191717
{% include integrations/config_flow.md %}

View File

@ -44,6 +44,7 @@ ha_platforms:
- valve
- water_heater
ha_integration_type: integration
ha_quality_scale: platinum
---
MQTT (aka MQ Telemetry Transport) is a machine-to-machine or "Internet of Things" connectivity protocol on top of TCP/IP. It allows extremely lightweight publish/subscribe messaging transport.
@ -160,7 +161,7 @@ Add the MQTT integration, then provide your broker's hostname (or IP address) an
1. Go to **{% my integrations title="Settings > Devices & services" %}**.
2. Select the MQTT integration.
3. Select **Configure**, then **Re-configure MQTT**.
3. Reconfigure the MQTT broker settings via {% my integrations title="**Settings** > **Devices & services**" %}, click {% icon "mdi:dots-vertical" %} and select **Reconfigure**.
{% important %}
If you experience an error message like `Failed to connect due to exception: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed`, then turn on `Advanced options` and set [Broker certificate validation](/integrations/mqtt/#broker-certificate-validation) to `Auto`.
@ -206,13 +207,21 @@ A configured client certificate will only be active if broker certificate valida
## Configure MQTT options
To change the settings, follow these steps:
To change the options, follow these steps:
1. Go to **{% my integrations title="Settings > Devices & services" %}**.
2. Select the MQTT integration.
3. Select **Configure**, then **Re-configure MQTT**.
4. To open the MQTT options page, select **Next**.
### Change MQTT discovery options
The MQTT discovery options can be changed by following these steps:
1. Go to {% my integrations title="**Settings** > **Devices & services**" %}.
2. Find the MQTT integration and select it.
3. To open the MQTT discovery options page, select the **Configure MQTT Options** button.
### Discovery options
MQTT discovery is enabled by default. Discovery can be turned off. The prefix for the discovery topic (default `homeassistant`) can be changed here as well.
@ -692,6 +701,7 @@ support_url:
'bri_val_tpl': 'brightness_value_template',
'clr_temp_cmd_tpl': 'color_temp_command_template',
'clr_temp_cmd_t': 'color_temp_command_topic',
'clr_temp_k': 'color_temp_kelvin',
'clr_temp_stat_t': 'color_temp_state_topic',
'clr_temp_tpl': 'color_temp_template',
'clr_temp_val_tpl': 'color_temp_value_template',
@ -758,11 +768,13 @@ support_url:
'lrst_val_tpl': 'last_reset_value_template',
'max': 'max',
'max_hum': 'max_humidity',
'max_k': 'max_kelvin',
'max_mirs': 'max_mireds',
'max_temp': 'max_temp',
'migr_discvry': 'migrate_discovery',
'min': 'min',
'min_hum': 'min_humidity',
'min_k': 'min_kelvin',
'min_mirs': 'min_mireds',
'min_temp': 'min_temp',
'mode': 'mode',

View File

@ -3,6 +3,7 @@ title: Netatmo
description: Instructions on how to integrate Netatmo integration into Home Assistant.
ha_category:
- Binary sensor
- Button
- Camera
- Climate
- Cover
@ -23,6 +24,7 @@ ha_domain: netatmo
ha_homekit: true
ha_platforms:
- binary_sensor
- button
- camera
- climate
- cover
@ -40,6 +42,7 @@ The Netatmo integration platform is the main integration to integrate all Netatm
There is currently support for the following device types within Home Assistant:
- [Binary sensor](#binary-sensor)
- [Button](#button)
- [Camera](#camera)
- [Climate](#climate)
- [Cover](#cover)
@ -63,6 +66,11 @@ To edit an existing area, enter its name and follow the dialog.
The `netatmo` binary sensor platform is showing the connectivity for the [Netatmo Smart Home Weather Station](https://www.netatmo.com/smart-weather-station).
## Button
The `netatmo` button sensor platform provides support for moving compatible shutters to a preferred position.
Not all covers support this functionality, and we cannot automatically determine the capability, so these entities are disabled by default.
## Camera
The `netatmo` camera platform is consuming the information provided by a [Netatmo Smart Indoor](https://www.netatmo.com/smart-indoor-camera), [Outdoor](https://www.netatmo.com/smart-outdoor-camera) and [Netatmo Smart Video Doorbell](https://www.netatmo.com/smart-video-doorbell) camera. This integration allows you to view the current live stream created by the camera (exception: video doorbell).

View File

@ -24,11 +24,6 @@ ha_supporting_integration: Overkiz
ha_release: 2022.2
ha_codeowners:
- '@imicknl'
- '@vlebourl'
- '@tetienne'
- '@nyroDev'
- '@tronix117'
- '@alexfp14'
ha_config_flow: true
ha_platforms:
- alarm_control_panel

View File

@ -3,10 +3,9 @@ title: NMBS
description: Instructions on how to integrate timetable data for traveling on the NMBS/SNCB Belgian Railway within Home Assistant.
ha_category:
- Transport
ha_config_flow: true
ha_iot_class: Cloud Polling
ha_release: 0.85
ha_codeowners:
- '@thibmaek'
ha_domain: nmbs
ha_platforms:
- sensor
@ -19,52 +18,7 @@ ha_quality_scale: legacy
The `nmbs` {% term integration %} will create sensors for monitoring travel time and information between 2 stations.
## Configuration
To enable this {% term integration %}, add the following lines to your {% term "`configuration.yaml`" %} file.
{% include integrations/restart_ha_after_config_inclusion.md %}
```yaml
# Example configuration.yaml entry
sensor:
- platform: nmbs
station_from: "STATION_1"
station_to: "STATION_2"
station_live: "STATION_1"
exclude_vias: true
```
The stations can only be provided by their standard names and not ids. The list of stations can be checked on the NMBS/SNCB website but for most accurate results check them on the [iRail API page](https://api.irail.be/stations/) which this integration uses internally.
{% configuration %}
station_from:
description: The station where the connection departs.
required: true
type: string
station_to:
description: The station where the connection arrives.
required: true
type: string
station_live:
description: Setting this will create another sensor to monitor the liveboard in a station.
required: false
type: string
exclude_vias:
description: Setting this will not show connections for which you have to transfer to another station.
required: false
type: boolean
default: false
name:
description: Name to use in the frontend.
required: false
type: string
default: "`NMBS`, `NMBS Live` for the liveboard sensor when set."
show_on_map:
description: Show the station on the map.
required: false
type: boolean
default: false
{% endconfiguration %}
{% include integrations/config_flow.md %}
<p class='img'>
<img src='/images/screenshots/nmbs-card-example.png' />

View File

@ -80,7 +80,7 @@ The following device classes are supported for numbers:
- **sulphur_dioxide**: Concentration of sulphur dioxide in µg/m³
- **temperature**: Temperature in °C, °F or K
- **volatile_organic_compounds**: Concentration of volatile organic compounds in µg/m³
- **voltage**: Voltage in V, mV, µV
- **voltage**: Voltage in V, mV, µV, kV, MV
- **volume**: Generic volume in L, mL, gal, fl. oz., m³, ft³, or CCF
- **volume_flow_rate**: Volume flow rate in m³/h, ft³/min, L/min, gal/min, or mL/s
- **volume_storage**: Generic stored volume in L, mL, gal, fl. oz., m³, ft³, or CCF

View File

@ -12,7 +12,11 @@ ha_config_flow: true
ha_domain: ohme
ha_platforms:
- button
- number
- select
- sensor
- switch
- time
ha_quality_scale: silver
ha_integration_type: device
---
@ -55,6 +59,18 @@ The Ohme integration provides the following entities.
- **Description**: If sensor **Status** is `Pending approval`, this will approve the charge.
- **Available for devices**: all
#### Numbers
- **Target percentage**
- **Description**: Sets the charge target for your vehicle.
- **Available for devices**: all
#### Selects
- **Charger mode**
- **Description**: Sets the mode of the charger. Possible options: `Smart charge`, `Max charge`, `Paused`. This is only available with a vehicle plugged in.
- **Available for devices**: all
#### Sensors
- **Status**
@ -73,6 +89,36 @@ The Ohme integration provides the following entities.
- **Description**: If a current transformer (CT) was installed with your charger, this will show the current used by your whole home.
- **Available for devices**: Home Pro, ePod
#### Switches
- **Lock buttons**
- **Description**: Disable the controls on the device.
- **Available for devices**: all
- **Require approval**
- **Description**: Require approval every time a vehicle is plugged in.
- **Available for devices**: Home Pro
- **Sleep when inactive**
- **Description**: Turn off the screen of the device after a few minutes of inactivity.
- **Available for devices**: Home Pro
#### Times
- **Target time**
- **Description**: Sets the time you need your vehicle charged by.
- **Available for devices**: all
## Actions
The integration provides the following actions.
### Action: List charge slots
The `ohme.list_charge_slots` action is used to fetch a list of charge slots from your charger. Charge slots will only be returned if a charge is in progress.
| Data attribute | Optional | Description |
|------------------------|----------|--------------------------------------------------------------|
| `config_entry` | No | The config entry of the account to get the charge list from. |
## Removing the integration

View File

@ -0,0 +1,72 @@
---
title: OneDrive
description: Instructions on how to setup OneDrive to be used with backups.
ha_release: 2025.2
ha_category:
- Backup
ha_iot_class: Cloud Polling
ha_config_flow: true
ha_domain: onedrive
ha_codeowners:
- '@zweckj'
ha_integration_type: service
related:
- docs: /common-tasks/general/#backups
title: Backups
ha_quality_scale: bronze
---
This integration allows you to use [OneDrive](https://www.microsoft.com/en-us/microsoft-365/onedrive/online-cloud-storage) for [Home Assistant Backups](/common-tasks/general/#backups).
Backups will be created in a folder called `Home Assistant\backups_<id>` in the `App Folder` of your OneDrive.
`id` is part of your Home Assistant instance's unique id to allow backups from multiple instances to the same OneDrive account.
The integration only has access to an application specific `Home Assistant` folder in the `App Folder` and cannot access any other parts of your OneDrive.
{% important %}
Because of an [issue in the Graph API](https://github.com/OneDrive/onedrive-api-docs/issues/1866), the application-specific folder is often called `Graph` instead of `Home Assistant`.
{% endimportant %}
{% include integrations/config_flow.md %}
{% configuration_basic %}
Client ID:
description: "Application ID of the app registration to be used with the integration. Uses Home Assistant provided by default."
Client secret:
description: "Application secret for the app registration. Uses Home Assistant provided by default."
{% endconfiguration_basic %}
## Requested permissions by the integration
The integration will request the following permissions on your OneDrive for the integration to work:
- `Files.ReadWrite.AppFolder`: Grants the application permission to read and write in its own, app-specific folder inside your OneDrive
- `offline_access`: Grants the application permission to refresh its authentication token without requiring your manual intervention
- `openid`: Grants the application permission to read basic information, e.g. if you have a OneDrive
<img src='/images/integrations/onedrive/onedrive-permissions.png' alt='Lists of permissions that the application will request.'>
## Getting application credentials
This integration comes with a predefined set of [application credentials](https://www.home-assistant.io/integrations/application_credentials/) through Home Assistant account linking.
Nobody will ever have access to your data except you, as the app does not have permission to do anything on its own. It only works with a signed-in user (it only has `delegated` not `application permissions`).
However, if you want to use your own credentials, follow [this guide](https://learn.microsoft.com/en-us/entra/identity-platform/quickstart-register-app?tabs=certificate) to create your own client ID and secret.
{% note %}
If you set the integration up with the default credentials and switch to custom credentials later, your backup folder will change inside your OneDrive, and you will have to manually copy existing backups from the old folder to the new one.
{% endnote %}
{% tip %}
You will need an Azure tenant with an active Azure subscription to create your own client credentials.
{% endtip %}
## Known limitations
- Only personal OneDrives are supported at the moment.
## Removing the integration
This integration follows standard integration removal. No extra steps are required.
{% include integrations/remove_device_service.md %}

View File

@ -13,9 +13,11 @@ ha_domain: onewire
ha_platforms:
- binary_sensor
- diagnostics
- select
- sensor
- switch
ha_integration_type: hub
ha_zeroconf: true
---
The Onewire integration supports sensors that use the 1-wire bus for communication.
@ -37,6 +39,12 @@ Each 1-wire component data sheet describes the different properties the componen
| 3A | [DS2413](https://datasheets.maximintegrated.com/en/ds/DS2413.pdf) | 2 sensed (sensed.A/B) <sup>[4](#note_4)</sup> |
| EF | [HobbyBoard](https://hobbyboards.com/) | Hub Branch State <sup>[3](#note_3) [4](#note_4)</sup> |
#### Select:
| Family | Device | Physical Quantity |
| -------|:-----|:-----|
| 28 | [DS18B20](https://datasheets.maximintegrated.com/en/ds/DS18B20.pdf) | Temperature resolution |
#### Sensors:
| Family | Device | Physical Quantity |

View File

@ -8,6 +8,7 @@ ha_iot_class: Local Push
ha_domain: onvif
ha_codeowners:
- '@hunterjm'
- '@jterrace'
ha_config_flow: true
ha_platforms:
- binary_sensor

View File

@ -22,11 +22,6 @@ ha_config_flow: true
ha_iot_class: Local Polling
ha_codeowners:
- '@imicknl'
- '@vlebourl'
- '@tetienne'
- '@nyroDev'
- '@tronix117'
- '@alexfp14'
ha_domain: overkiz
ha_dhcp: true
ha_zeroconf: true

View File

@ -0,0 +1,153 @@
---
title: Overseerr
description: Instructions on how to set up Overseerr with Home Assistant.
ha_category:
- Event
- Multimedia
- Sensor
ha_release: 2025.2
ha_iot_class: Local Push
ha_config_flow: true
ha_codeowners:
- '@joostlek'
ha_domain: overseerr
ha_integration_type: service
ha_platforms:
- diagnostics
- event
- sensor
ha_quality_scale: platinum
---
Overseerr is a service that allows you to manage media requests and to integrate these media requests with Plex, Radarr, and Sonarr. The **Overseerr** {% term integration %} allows you to integrate your [Overseerr](https://overseerr.dev/) instance.
{% include integrations/config_flow.md %}
{% configuration_basic %}
URL:
description: "The URL of your overseerr instance."
required: true
type: string
API key:
description: "The API key of your overseerr instance, which can be found in the Overseerr settings."
required: true
type: string
{% endconfiguration_basic %}
## Supported versions
The latest version of Overseerr is supported by this integration.
## Supported functionality
The Overseerr intergation provides a couple of entities to Home Assistant.
Below is an overview of these entities.
### Events
Overseerr provides an event entity for updates around media.
The possible events that this entity has are:
- `pending`
- `approved`
- `available`
- `failed`
- `declined`
- `auto_approved`
Relevant data about the request are stored in the attributes.
### Sensors
The integration also provides statistics for the requests stored in Overseerr.
There are sensors for:
- Total requests
- Movie requests
- TV requests
- Pending requests
- Declined requests
- Processing requests
- Available requests
## Actions
The Overseerr integration has the following actions:
- Get requests
### Action get requests
Get a list of media requests using `overseerr.get_requests`.
| Data attribute | Optional | Description |
|-------------------|----------|-------------------------------------------------------------|
| `config_entry_id` | No | The ID of the Overseerr config entry to get data from. |
| `status` | Yes | The status to filter the results on. |
| `sort_order` | Yes | The sort order to sort the results in (`added`/`modified`). |
| `requested_by` | Yes | Filter the requests based on the user ID of the requester. |
## Use cases
The integration can be used to build automations to help and notify you of new media requests.
The provided actions can be used to provide extra context to voice assistants.
## Example automations
{% details "Send me a push notification on a new request" %}
{% raw %}
```yaml
alias: "Overseerr push notification"
description: "Send me a push notification on a new media request"
triggers:
- trigger: state
entity_id:
- event.overseerr_last_media_event
not_from:
- unknown
- unavailable
conditions:
- condition: template
value_template: >-
{{ state_attr('event.overseerr_last_media_event', 'event_type') ==
'pending' }}
actions:
- action: notify.mobile_app
metadata: {}
data:
message: >-
{{ state_attr('event.overseerr_last_media_event', 'subject') }} has been
requested
```
{% endraw %}
{% enddetails %}
## Data updates
When loading the integration, it will try to configure the webhook in Overseerr to give updates to Home Assistant.
This makes the integration a push-based integration.
When the integration receives an update about the requests, it updates the statistics to make sure they are up to date.
In addition, the integration checks for updates every 5 minutes.
## Known limitations
There are a few known limitations for using the integration:
- Overseerr is only capable of having one webhook set up at a time.
This means you can only have 1 Home Assistant instance connected to your Overseerr instance at a time.
- The integration is not able to function with <abbr title="cross-site request forgery">CSRF</abbr> protection turned on. In Overseer, go to **Settings** and turn off the **CSRF Protection**.
## Remove integration
This integration follows standard integration removal, no extra steps are required.
{% include integrations/remove_device_service.md %}
## Troubleshooting
{% details "Failed to register Overseerr webhook" %}
Make sure your Overseerr instance is able to reach your Home Assistant instance.
{% enddetails %}

View File

@ -10,6 +10,7 @@ ha_codeowners:
- '@dotvav'
ha_domain: palazzetti
ha_platforms:
- button
- climate
- diagnostics
- number
@ -54,14 +55,20 @@ This integration supports the following actions (see [Climate](/integrations/cli
- `heat` for heating mode
- `off` to turn the stove off
- [`set_fan_mode`](/integrations/climate/#action-climateset_fan_mode)
- `Silent` let the stove run in silent mode
- `1` to `5` increasing fan speeds
- `0` to `5` increasing fan speeds
- `High` the highest available fan speed
- `Auto` let the stove set the optimal fan speed
## Buttons
For the stoves that support it, this integration provides a Silent button to trigger the silent mode.
## Numbers
The Palazzetti integration offers control over the combustion power of the stove on a scale from `1` to `5`.
When the appliance supports it, the Palazzetti integration offers control over the following elements:
- The combustion power of the stove on a scale from `1` to `5`.
- The speed of the Left and Right fans.
## Sensors

View File

@ -3,9 +3,11 @@ title: Pinecil
description: Connect and control your Pinecil devices using the IronOS integration
ha_category:
- Binary sensor
- Button
- Number
- Select
- Sensor
- Switch
- Update
ha_release: 2024.8
ha_domain: pinecil
@ -17,9 +19,12 @@ ha_codeowners:
ha_config_flow: true
ha_platforms:
- binary_sensor
- button
- diagnostics
- number
- select
- sensor
- switch
- update
ha_iot_class: Local Polling
---

View File

@ -13,6 +13,7 @@ ha_codeowners:
- '@synesthesiam'
ha_config_flow: true
ha_platforms:
- assist_satellite
- binary_sensor
- conversation
- number

View File

@ -43,7 +43,7 @@ Not all Poweropti devices are supported currently. Check the list below to see i
| PB 202001 | Power meter | Yes |
| WA 201902 | Water meter | Yes |
| Powerfox FLOW | Gas meter | No |
| HA 201902 | Heat meter | No |
| HA 201902 | Heat meter | Yes |
## Data updates
@ -79,6 +79,15 @@ It will create the following sensors:
- **Cold water (m³)**: How much cold water is used.
- **Warm water (m³)**: How much warm water is used.
### Heat meter
It will create the following sensors:
- **Total eneregy (kWh)**: How much energy is used.
- **Delta energy (kWh)**: How much energy is used since the last update.
- **Total volume (m³)**: How much water is used.
- **Delta volume (m³)**: How much water is used since the last update.
## Troubleshooting
There are no commonly known issues with this integration.

View File

@ -0,0 +1,78 @@
---
title: Qbus
description: Instructions on how to integrate your Qbus installation with Home Assistant.
ha_category:
- Switch
ha_platforms:
- switch
ha_iot_class: Local Push
ha_codeowners:
- '@Qbus-iot'
- '@thomasddn'
ha_release: 2025.2
ha_domain: qbus
ha_integration_type: hub
ha_config_flow: true
ha_quality_scale: bronze
---
The **Qbus** {% term integration %} allows you to integrate your [Qbus Control](https://www.qbus.be) into Home Assistant. **Qbus** is a Belgian manufacturer of Home Automation systems.
## Prerequisites
This integration communicates with a **Qbus** controller over an MQTT server.
The controllers cannot communicate directly with MQTT. Therefore, you need to install the Qbus gateway before enabling this integration. The Qbus gateway is a software tool that runs on all Linux platforms. It can be installed by running a script or a Docker container. For detailed instructions, please refer to the [Qbus MQTT Gateway documentation](https://github.com/Qbus-iot/qbus-mqttgw).
For information on setting up Home Assistant with a **Qbus** controller, refer to the [Qbus documentation](https://iot.qbus.be/). The documentation is currently only available in Dutch, but translations are planned for the future.
Once the Qbus controller is connected to the MQTT server, you need to set up an MQTT client in Home Assistant to enable communication between Home Assistant and your **Qbus** system. This client should connect to the same MQTT Server as your Qbus controller. For detailed instructions, refer to the [MQTT integration documentation](https://www.home-assistant.io/integrations/mqtt/).
{% include integrations/config_flow.md %}
## Supported devices
There is currently support for the following **Qbus** products within Home Assistant:
- **CTD 3.0**: main controller.
- **CTD 3.5**: main controller.
- **Toggle**: toggle outputs on controllers.
## Available entities
- **Switch**: toggles on/off outputs.
## Removing the integration
This integration follows standard integration removal. No extra steps are required.
{% include integrations/remove_device_service.md %}
## Data updates
All data from **Qbus** entities are pushed to Home Assistant over MQTT.
## Known limitations
The integration does not provide a way to update the firmware on the devices. This can only be done with the configuration software System Manager.
## Troubleshooting
### Cant set up the device
#### Symptom: "No devices are discovered"
When trying to set up the integration, no devices are discovered.
##### Description
This means that the integration did not receive a valid configuration from the gateway.
##### Resolution
To resolve this issue, try the following steps:
1. Make sure your controller is online and not connected to System Manager.
2. Make sure you have an MQTT broker running.
3. Make sure that the gateway software is up and running (see [Prerequisites](#prerequisites)) and connected to the broker.
4. Make sure you have an MQTT client integration (see [Prerequisites](#prerequisites)) connected to the broker.

View File

@ -20,11 +20,8 @@ Integrate Refoss devices into Home Assistant.
## Prerequisites
- The device needs to be connected to the local network first. There are two ways to connect devices to the local network:
- Using the Refoss app (download and install the Refoss app on Google Play) to connect devices to the local network.
- Using the Web page to connect devices to the local network.
- The computer/mobile phone is connected to the device factory Wi-Fi.
- In the browser, access the address 10.10.10.1, then select the local Wi-Fi needed for device configuration.
- Devices need to be connected to the local network first.
- Devices and Home Assistant must be connected to the same network.
- The integration will occupy port: 9989.
{% include integrations/config_flow.md %}
@ -39,7 +36,7 @@ Integrate Refoss devices into Home Assistant.
### Discover device
- After integrating Refoss, it will start socket broadcast and Home Assistant will automatically discover Refoss devices under the current LAN.
After integrating Refoss, it will start socket broadcast and Home Assistant will automatically discover Refoss devices under the current LAN.
## Entity naming
@ -67,3 +64,21 @@ Examples:
## Reset device
Long-press the button on the device to reset it.
## Troubleshooting
### No devices found on the network
If the Refoss device isn't discovered by Home Assistant automatically, follow these steps:
1. Verify that your Refoss device and Home Assistant are on the same network
2. Enable debug logging for the integration:
```yaml
logger:
logs:
homeassistant.components.refoss: debug
```
3. Restart Home Assistant and attempt to add the integration again
4. Check the logs for messages containing "Discovered devices"
5. If no devices are found, verify:
- Network connectivity
- Device firmware version matches the supported versions listed above

View File

@ -99,6 +99,7 @@ Depending on the supported features of the camera, binary sensors are added for:
- AI animal detection++
- AI face detection++
- AI package detection++
- AI baby crying detection+ (sound detection)
- Sleep status+
\++ These sensors receive events using the following 4 methods (in order): TCP push, ONVIF push, ONVIF long polling or fast polling (every 5 seconds).
@ -241,6 +242,7 @@ Depending on the supported features of the camera, switch entities are added for
- Doorbell button sound
- Record
- Manual record
- Privacy mode+
- Push notifications
- Hub ringtone on event
- Email on event
@ -249,6 +251,8 @@ Depending on the supported features of the camera, switch entities are added for
- PIR reduce false alarm*
- Chime LED
When the **Privacy mode** is ON, almost all other entities will be unavailable because the camera shuts down the API and camera streams. When turning OFF the **Privacy mode**, all entities will become available again. Take this into consideration when making automations; ensure the **Privacy mode** is OFF before changing camera settings using other entities.
When the **Infrared lights in night mode** entity is set to OFF, the infrared LEDs are always OFF. When the **Infrared lights in night mode** entity is set to ON, the infrared LEDs will be on when the camera is in night vision mode. For more information, see the **Day night mode** select entity.
For NVRs, a global switch for **Record**, **Push**, **Hub ringtone on event**, **Email**, and **FTP** will be available under the NVR device as well as a switch per channel of the NVR under the camera device. The respective feature will only be active for a given channel if both the global and that channel switch are enabled (as is also the case in the Reolink app/client).
@ -726,6 +730,7 @@ Prerequisites:
### Entities intermittently become unavailable
- Note that almost all entities, including motion/ai detection and the camera streams, will be unavailable when privacy mode is turned ON. Check the history of the **Privacy mode** entity to see if this is causing the issues.
- Setting a static IP address for Reolink cameras/NVRs in your router is advisable to prevent (temporal) connectivity issues when the IP address changes.
- Do not set a static IP in the Reolink device itself, but leave the **Connection Type** on **DHCP** under **Settings** > **Network** > **Network Information** > **Set Up**. If you set it to **static** on the Reolink device itself, this is known to cause incorrect DHCP requests on the network. The incorrect DHCP request causes Home Assistant to use the wrong IP address for the camera, resulting in connection issues. The issue originates from the Reolink firmware, which keeps sending DCHP requests even when you set a static IP address in the Reolink device.
- Reolink cameras can support a limited amount of simultaneous connections. Therefore using third-party software like Frigate, Blue Iris, or Scrypted, or using the ONVIF integration at the same time can cause the camera to drop connections. This results in short unavailabilities of the Reolink entities in Home Assistant. Especially when the connections are coming from the same device (IP) where Home Assistant is running, the Reolink cameras can get confused, dropping one connection in favor of the other originating from the same host IP. If you experience disconnections/unavailabilities of the entities, please first temporarily shut down the other connections (like Frigate) to diagnose if that is the problem. If that is indeed the problem, you could try moving the third-party software to a different host (IP address) since that is known to solve the problem most of the time. You could also try switching the protocol to FLV on Home Assistant and/or the third-party software, as that is known to be less resource-intensive on the camera.

View File

@ -24,11 +24,6 @@ ha_supporting_integration: Overkiz
ha_release: 2022.2
ha_codeowners:
- '@imicknl'
- '@vlebourl'
- '@tetienne'
- '@nyroDev'
- '@tronix117'
- '@alexfp14'
ha_config_flow: true
ha_platforms:
- alarm_control_panel

View File

@ -16,6 +16,7 @@ ha_release: 2023.5
ha_config_flow: true
ha_codeowners:
- '@Lash-L'
- '@allenporter'
ha_domain: roborock
ha_platforms:
- binary_sensor
@ -95,6 +96,8 @@ Total cleaning time - The lifetime cleaning duration of your vacuum.
Total cleaning area - The lifetime cleaning area of your vacuum.
Total cleaning count - The lifetime cleaning count of your vacuum.
Vacuum error - The current error with your vacuum, if there is one.
### Time
@ -127,6 +130,47 @@ Reset main brush consumable - The main brush/ roller is expected to be replaced
Reset air filter - The air filter is expected to be replaced every 150 hours.
### Actions
#### Action `roborock.set_vacuum_goto_position`
Go the specified coordinates.
- **Data attribute**: `entity_id`
- **Description**: Only act on a specific robot.
- **Optional**: No.
- **Data attribute**: `x_coord`
- **Description**: X-coordinate, integer value. The dock is located at x-coordinate 25500.
- **Optional**: No.
- **Data attribute**: `y_coord`
- **Description**: Y-coordinate, integer value. The dock is located at y-coordinate 25500.
- **Optional**: No.
#### Action `roborock.get_vacuum_current_position`
Get the current position of the vacuum. This is a cloud call and should only be used for diagnostics. This is not meant to be used for automations. Frequent requests can lead to rate limiting.
- **Data attribute**: `entity_id`
- **Description**: Only act on a specific robot.
- **Optional**: No.
Example:
```yaml
action: roborock.get_vacuum_current_position
target:
entity_id: vacuum.roborock_s7
data: {}
```
- **Result**: You will get a response like this:
```yaml
vacuum.roborock_s7:
x: 28081
y: 25168
```
### Image
You can see all the maps within your Roborock account. Keep in mind that they are device-specific. The maps require the cloud API to communicate as the maps are seemingly stored on the cloud. If someone can figure out a way around this - contributions are always welcome.

View File

@ -14,6 +14,7 @@ ha_codeowners:
ha_config_flow: true
ha_integration_type: integration
ha_quality_scale: silver
ha_zeroconf: true
---
The Russound RIO {% term integration %} allows you to control Russound devices that make use of the RIO protocol.

View File

@ -13,6 +13,8 @@ related:
- docs: /docs/configuration/
title: Configuration file
ha_quality_scale: legacy
ha_codeowners:
- '@noahhusby'
---
The `russound_rnet` {% term integration %} allows you to control Russound devices that make use of the RNET protocol.

View File

@ -86,7 +86,6 @@ These entities are disabled by default.
For supported devices, this integration provides support to set the following modes by the select entity:
- Horizontal swing
- Light
## Sensor entities
@ -148,17 +147,30 @@ To customize the settings of Pure Boost, you can use the custom `sensibo.enable_
## Custom actions
### Get device mode capabilities
As the below custom actions [Full state](#full-state) and [Climate react](#climate-react) both require their inputs to be exactly what the API requires, this custom action will provide the capabilities for the device for a certain HVAC mode to help the users on using those actions properly.
1. Go to [Developer Tools](https://my.home-assistant.io/redirect/server_controls/).
2. Switch to the **Actions** page.
3. Use the `sensibo.get_device_capabilities` action.
4. Select the `climate` entity as the target.
5. Select the `hvac_mode` from the available list.
6. Select **Perform action** to retrieve the available options per capability for that particular `climate` entity.
From the provided dictionary, copy the case-sensitive options as needed into other action calls used in automations or scripts.
### Full state
You can send a full state command to Sensibo instead of single commands using the `sensibo.full_state` action.
All fields are required to be according to Sensibo API specifications and are case-sensitive.
To see the options for each field to use this action:
{% tip %}
1. Switch to the relevant HVAC mode (not all HVAC modes have the same options).
2. Retrieve the options for `fan_modes` and `swing_modes` from the climate entity's attributes.
3. Retrieve the option set from the respective select entity for `horizontal_swing` and `light` if those are present.
Use the [Get device mode capabilities](#get-device-mode-capabilities) action to provide a list of capabilities.
{% endtip %}
### Assume state
@ -184,7 +196,13 @@ You can configure your Climate React settings using the `sensibo.enable_climate_
- Configuring this action also turns Climate React on
When using the action, the state needs to be set to precisely what Sensibo API expects. The first time it's recommended to use the app to configure it. From that point, you can see what the API requires and how to write from the Climate React switch attribute.
When using the action, the state needs to be set to precisely what Sensibo API expects. The first time it's recommended to use the app to configure it.
{% tip %}
Use the [Get device mode capabilities](#get-device-mode-capabilities) action to provide a list of capabilities.
{% endtip %}
Example for low threshold state:

View File

@ -94,7 +94,7 @@ The following device classes are supported for sensors:
- **timestamp**: Datetime object or timestamp string (ISO 8601)
- **volatile_organic_compounds**: Concentration of volatile organic compounds in µg/m³
- **volatile_organic_compounds_parts**: Ratio of volatile organic compounds in ppm or ppb
- **voltage**: Voltage in V, mV, µV
- **voltage**: Voltage in V, mV, µV, kV, MV
- **volume**: Generic volume in L, mL, gal, fl. oz., m³, ft³, or CCF
- **volume_flow_rate**: Volume flow rate in m³/h, ft³/min, L/min, gal/min, or mL/s
- **volume_storage**: Generic stored volume in L, mL, gal, fl. oz., m³, ft³, or CCF

View File

@ -51,7 +51,9 @@ Integrate [Shelly devices](https://shelly.com) into Home Assistant.
## Shelly device generations
There are three generations of devices and all generations are supported by this integration. There are some differences in how devices should be configured and in the naming of entities and devices between generations.
There are four generations of devices and all generations are supported by this integration. There are some differences in how devices should be configured and in the naming of entities and devices between generations.
Shelly BLU series devices (e.g. Shelly BLU H&T) are not supported; please use BTHome integration to configure such devices with Home Assistant. The exception to this is Shelly BLU TRV, which is supported by this integration via Shelly BLU Gateway Gen3.
## Shelly device configuration (generation 1)
@ -70,9 +72,9 @@ The list below will help you diagnose and fix the problem:
- The missing push updates may be related to the WiFi network range. If using a WiFi network with several access points, enable **Internet & Security** >> **WiFi Client AP Roaming** option. Consider moving Shelly device closer to the WiFi access point. Consider adding another WiFi access point, which will improve the connection quality with the device.
- If you think your Shelly devices are working correctly and don't want to change your network/configuration, you can ignore the repair issue. Still, you must know you are giving up the best experience of using first-generation Shelly devices with Home Assistant.
## Shelly device configuration (generation 2 and 3)
## Shelly device configuration (generation 2+)
Generation 2 and 3 devices use the `RPC` protocol to communicate with the integration. **Battery-operated devices** (even if USB connected) may need manual outbound WebSocket configuration if Home Assistant cannot correctly determine your instance's internal URL or the outbound WebSocket was previously configured for a different Home Assistant instance. In this case, navigate to the local IP address of your Shelly device, **Settings** >> **Connectivity** >> **Outbound WebSocket** and check the box **Enable Outbound WebSocket**, under server enter the following address:
Generation 2+ devices use the `RPC` protocol to communicate with the integration. **Battery-operated devices** (even if USB connected) may need manual outbound WebSocket configuration if Home Assistant cannot correctly determine your instance's internal URL or the outbound WebSocket was previously configured for a different Home Assistant instance. In this case, navigate to the local IP address of your Shelly device, **Settings** >> **Connectivity** >> **Outbound WebSocket** and check the box **Enable Outbound WebSocket**, under server enter the following address:
`ws://` + `Home_Assistant_local_ip_address:Port` + `/api/shelly/ws` (for example: `ws://192.168.1.100:8123/api/shelly/ws`), click **Apply** to save the settings.
In case your installation is set up to use SSL encryption (HTTP**S** with certificate), an additional `s` needs to be added to the WebSocket protocol, too, so that it reads `wss://` (for example: `wss://192.168.1.100:8123/api/shelly/ws`).
@ -83,13 +85,13 @@ Integration is communicating directly with the device; cloud connection is not n
## Bluetooth Support
Shelly generation 2 and 3 devices not battery-powered can act as a Bluetooth proxy for advertisements. Active or passive listening can be enabled in the options flow.
Shelly generation 2+ devices not battery-powered can act as a Bluetooth proxy for advertisements. Active or passive listening can be enabled in the options flow.
{% include integrations/option_flow.md %}
## Range Extender Support
Shelly generation 2 and 3 devices that are not battery-powered can act as a Range Extender.
Shelly generation 2+ devices that are not battery-powered can act as a Range Extender.
Devices of the same generations can be configured via those Range Extenders specifying a custom TCP port during the configuration flow.
Currently, only static IP or DHCP reserved IP are supported for the main device.
@ -119,7 +121,7 @@ Names are set from the device web page:
- Channel name for single-channel devices can be set in **Settings** >> **CHANNEL NAME**
- Channel name for multi-channel devices can be set in **Settings** >> **CHANNEL NAME** after selecting the channel, by clicking on the channel name.
## Entity naming (generation 2 and 3)
## Entity naming (generation 2+)
The integration uses the following strategy to name its entities:
@ -140,15 +142,15 @@ Shelly 2PM Gen3 supports `tilt` for `cover` entities. To enable this feature, yo
Depending on how a device's button type is configured, the integration will create binary sensors corresponding to those inputs. binary sensors are not created when the button type is `momentary` or `momentary_on_release`, for these types you need to use events for your automations.
### Binary input sensors (generation 2 and 3)
### Binary input sensors (generation 2+)
For generation 2 and 3 hardware it's possible to select if a device's input is connected to a button or a switch. Binary sensors are created only if the input mode is set to `switch`. When the input is of type `button` you need to use events for your automations.
For generation 2+ hardware, it's possible to select if a device's input is connected to a button or a switch. Binary sensors are created only if the input mode is set to `switch`. When the input is of type `button` you need to use events for your automations.
## Event entities (generation 1)
If the **BUTTON TYPE** of the switch connected to the device is set to `momentary` or `detached switch`, the integration creates an event entity for this switch. You can use this entity in your automations.
## Event entities (generation 2 and 3)
## Event entities (generation 2+)
If the **Input Mode** of the switch connected to the device is set to `Button`, the integration creates an event entity for this switch. You can use this entity in your automations.
@ -245,7 +247,7 @@ Not all devices support all input events. You can check on [Shelly API Reference
Shelly device relays are added to Home Assistant by default as `switch` entities. A relay can be added as a `light` entity if **Settings** >> **APPLIANCE TYPE** value is set to `light`.
## Consumption type (generation 2 and 3)
## Consumption type (generation 2+)
Shelly device relays are added to Home Assistant by default as `switch` entities. A relay can be added as a `light` entity if **EXTERNAL CONSUMPTION TYPE** value is set to `light`.
@ -329,7 +331,7 @@ The integration supports the following virtual components:
- `text` in `field` mode, for which a `text` platform entity is created
- `text` in `label` mode, for which a `sensor` platform entity is created
## Scripts (generation 2 and 3)
## Scripts (generation 2+)
For each device script, the integration creates a `switch` entity that allows you to control the script. These entities are disabled by default.

View File

@ -24,11 +24,6 @@ ha_supporting_integration: Overkiz
ha_release: 2022.2
ha_codeowners:
- '@imicknl'
- '@vlebourl'
- '@tetienne'
- '@nyroDev'
- '@tronix117'
- '@alexfp14'
ha_config_flow: true
ha_platforms:
- alarm_control_panel

View File

@ -9,8 +9,10 @@ ha_release: 0.36
ha_codeowners:
- '@kellerza'
- '@rklomp'
- '@erwindouna'
ha_domain: sma
ha_platforms:
- diagnostics
- sensor
ha_integration_type: integration
---

View File

@ -3,6 +3,7 @@ title: Smarther
description: Connect and control your Smarther devices using the Netatmo integration
ha_category:
- Binary sensor
- Button
- Camera
- Climate
- Cover
@ -24,6 +25,7 @@ ha_codeowners:
ha_config_flow: true
ha_platforms:
- binary_sensor
- button
- camera
- climate
- cover

View File

@ -22,6 +22,7 @@ ha_platforms:
ha_codeowners:
- '@tl-sl'
ha_integration_type: device
ha_dhcp: true
---
The [SMLIGHT](https://smlight.tech) SLZB-06x Ethernet Zigbee coordinators

View File

@ -8,6 +8,7 @@ ha_release: 0.94
ha_iot_class: Local Polling
ha_codeowners:
- '@squishykid'
- '@Darsstar'
ha_domain: solax
ha_platforms:
- sensor

View File

@ -24,11 +24,6 @@ ha_supporting_integration: Overkiz
ha_release: 2022.2
ha_codeowners:
- '@imicknl'
- '@vlebourl'
- '@tetienne'
- '@nyroDev'
- '@tronix117'
- '@alexfp14'
ha_config_flow: true
ha_platforms:
- alarm_control_panel

View File

@ -101,6 +101,11 @@ Internal examples: `http://192.168.0.2:8123/auth/external/callback`, `http://hom
{% include integrations/config_flow.md %}
## Data updates
The integration polls at least every 30 seconds.
If the track that is playing ends in less than 30 seconds, the integration will poll again after the track has ended to update the state again.
## Using multiple Spotify accounts
This integration supports multiple Spotify accounts at once. You don't need to

View File

@ -29,7 +29,7 @@ The `starline` integration lets you retrieve data of your [StarLine](https://www
This integration provides the following platforms:
- Binary sensors: Hand brake, hood, trunk, alarm status, doors lock state, handsfree, neutral, moving ban status, and running state.
- Binary sensors: Hand brake, hood, trunk, alarm status, doors lock state, handsfree, neutral, moving ban status, ignition state, and autostart state.
- Device tracker: The location of your car.
- Lock: Control the lock of your car.
- Sensors: Battery level, SIM card balance, GSM signal level, GPS satellites count, fuel volume, mileage, OBD errors, interior temperature and engine temperature.

View File

@ -26,6 +26,14 @@ End station:
description: "The arrival station for the end of the connection (e.g., `Geneva`)"
Via stations:
description: "List of up to 5 via stations (e.g., `Bern`, `Lausanne`)"
Departure or arrival time:
description: "Choose between the departure or arrival time or the connection to be displayed"
Time mode:
description: "The time mode of the connections (e.g., `now` , `fixed`, `offset`)"
Fixed time of day (only when time mode is set to fixed):
description: "The relevant time for the connection (e.g. 7:12:00 AM every morning)."
Offset time from now (only when time mode is set to fixed):
description: "The time offset added to the earliest possible connection (e.g. add +00:05:00 offset, taking into account the time to walk to the station)"
{% endconfiguration_basic %}
Use the [Stationboard](https://transport.opendata.ch/examples/stationboard.html) to find exact station names.
@ -38,7 +46,7 @@ The public timetables are coming from [Swiss public transport](https://transport
The minimum configuration for a connection requires a _start_ and _end_ station (for example, "Zürich HB").
Optionally, you can provide up to 5 additional _via_ stations.
Optionally, you can provide up to 5 additional _via_ stations where the connection must go through.
![Config flow](/images/integrations/swiss_public_transport/config_flow.png)

View File

@ -2,6 +2,7 @@
title: SwitchBot Cloud
description: Instructions on how to set up SwitchBot Devices.
ha_category:
- Button
- Hub
- Lock
- Plug
@ -17,6 +18,7 @@ ha_codeowners:
- '@Gigatrappeur'
ha_domain: switchbot_cloud
ha_platforms:
- button
- climate
- lock
- sensor
@ -54,6 +56,7 @@ Please note, device names configured in the SwitchBot app are transferred into H
- Hub 2
- Relay Switch 1
- Relay Switch 1PM
- Bot (as a Switch in `switchMode` and `customizeMode`, as a Button in `pressMode`)
## Important considerations

View File

@ -104,6 +104,10 @@ For Switcher Breeze the integration provides the following sensor:
| --------------------- | ------------------------------------------------------ | ----------------- |
| `Current temperature` | The current temperature in celsius | 25.0 °C |
## Switches
For Switcher cover control devices (Switcher Runner, Switcher Runner S11, Switcher Runner S12), the integration allows you to control its child lock state; ON means locked, and OFF means unlocked.
## Actions
For Switcher power control devices (Switcher Touch, Switcher V2/V4) the integration provides the following sensors:

View File

@ -2,6 +2,7 @@
title: Synology DSM
description: Instructions on how to integrate the Synology DSM sensor within Home Assistant.
ha_category:
- Backup
- Camera
- Media source
- System monitor
@ -16,6 +17,7 @@ ha_codeowners:
ha_config_flow: true
ha_ssdp: true
ha_platforms:
- backup
- binary_sensor
- button
- camera
@ -27,7 +29,7 @@ ha_integration_type: integration
ha_zeroconf: true
---
The Synology DSM integration provides access to various statistics from your [Synology NAS](https://www.synology.com) (_DSM 5.x and higher_) as well as cameras from the [Surveillance Station](https://www.synology.com/surveillance).
The Synology DSM integration provides access to various statistics from your [Synology NAS](https://www.synology.com) (_DSM 5.x and higher_), as well as cameras from the [Surveillance Station](https://www.synology.com/surveillance) and will allow to use the [File Station](https://www.synology.com/en-us/dsm/feature/file_sharing) as a {% term backup %} location.
{% include integrations/config_flow.md %}
@ -51,6 +53,8 @@ When creating the user, it is possible to deny access to all locations and appli
If you want to add cameras from [Surveillance Station](https://www.synology.com/surveillance), the user needs application permission for [Surveillance Station](https://www.synology.com/surveillance).
If you want to use a shared folder from the [File Station](https://www.synology.com/en-us/dsm/feature/file_sharing) as {% term backup %} location, the user needs application permission for [File Station](https://www.synology.com/en-us/dsm/feature/file_sharing) and read/write permissions on the specific [shared folder](https://kb.synology.com/en-us/DSM/help/DSM/AdminCenter/file_share_desc).
### If you utilize 2-Step Verification or Two Factor Authentication (2FA) with your Synology NAS
If you have the "Enforce 2-step verification for the following users" option checked under **Control Panel > Security > Account > 2-Factor Authentication**, you'll need to configure the 2-step verification/one-time password (OTP) for the user you just created before the credentials for this user will work with Home Assistant.
@ -61,6 +65,40 @@ Make sure to log out of your "normal" user's account and then login with the sep
If you denied access to all locations and applications it is normal to receive a message indicating you do not have access to DSM when trying to login with this separate user. As noted above, you do not need access to the DSM and Home Assistant will still be able to read statistics from your NAS.
{% endnote %}
## Backup location
The NAS can also be used as a {% term backup %} location, without the need to add the NAS as a network drive to Home Assistant. For this you need to setup the correct permissions for the user (_see [Separate User Configuration](#separate-user-configuration) above_), afterwards, you will be able to select the shared folder and define a relative path to be used as a backup location in the integration options ({% my integrations title="**Settings** > **Devices & services**" %} > **Synology DSM** > _select the instance_ > **Configure**)
{% important %}
Don't manually delete or rename the files in the backup path on the NAS. This could result in the backups no longer being able to be read or restored.
{% endimportant %}
### Example
Assume there is a shared folder called `HA Backup`, with two directories in it `productive_instance` and `test_instance`.
<img src="/images/integrations/synology_dsm/synology_file_station.png" />
#### Use an existing path
1. Select `HA Backup` as shared folder.
2. Define `productive_instance` as backup path (_without trailing slash_).
- **Result**: The existing `productive_instance` will be used as backup location.
#### Use a non-existing path
1. Select `HA Backup` as a shared folder.
2. Define `cottage_instance` as backup path (_without trailing slash_).
- **Result**: A new directory `cottage_instance` will be created on the shared folder `HA Backup` during the first backup.
{% important %}
Sub-directories in the backup path need to be separated by the regular slash `/`. For example: `home-assistant/prod_instance`.
{% endimportant %}
## Sensors
### CPU utilization sensors

View File

@ -20,6 +20,8 @@ If you don't need to receive messages, you can use the [broadcast](/integrations
Available actions: `send_message`, `send_photo`, `send_video`, `send_animation`, `send_voice`, `send_sticker`, `send_document`, `send_location`, `edit_message`, `edit_caption`, `edit_replymarkup`, `answer_callback_query`, `delete_message` and `leave_chat`.
Actions that send contents (`send_*`) will return a list of `message_id`/`chat_id` for messages delivered (in a property called `chats`). This will populate [Response Data](/docs/scripts/perform-actions#use-templates-to-handle-response-data) that you can further utilize in your automations to edit/delete the message later based on the `message_id`. See the example later on this page for usage instructions.
### Action `telegram_bot.send_message`
Send a notification.
@ -314,6 +316,7 @@ user_id: "<id of the sender>"
chat_id: "<origin chat id>"
chat: "<chat info>"
date: "<message timestamp>"
message_thread_id: "<message thread id>"
```
Any other message not starting with `/` will be processed as simple text, firing a `telegram_text` event on the event bus with the following `event_data`:
@ -326,6 +329,7 @@ user_id: "<id of the sender>"
chat_id: "<origin chat id>"
chat: "<chat info>"
date: "<message timestamp>"
message_thread_id: "<message thread id>"
```
If the message is sent from a [press from an inline button](https://core.telegram.org/bots#inline-keyboards-and-on-the-fly-updating), for example, a callback query is received, and Home Assistant will fire a `telegram_callback` event with:
@ -606,3 +610,27 @@ actions:
parse_mode: html
disable_web_page_preview: true
```
## Example: automation to send a message and delete after a delay
{% raw %}
```yaml
alias: telegram send message and delete
sequence:
- action: telegram_bot.send_message
data:
message: testing
response_variable: response
- delay:
seconds: 5
- repeat:
sequence:
- action: telegram_bot.delete_message
data:
message_id: "{{ repeat.item.message_id }}"
chat_id: "{{ repeat.item.chat_id }}"
for_each: "{{ response.chats }}"
```
{% endraw %}

View File

@ -284,7 +284,7 @@ These are the entities available in the Tesla Fleet integration. Not all entitie
### Energy sites
| Domain | Name | Enabled |
| ------------- | ------------------------ | ------- |
|--------------|--------------------------------|---------|
| Binary sensor | Backup capable | Yes |
| Binary sensor | Grid services active | Yes |
| Binary sensor | Grid services enabled | Yes |
@ -294,18 +294,32 @@ These are the entities available in the Tesla Fleet integration. Not all entitie
| Select | Allow export | Yes |
| Select | Operation mode | Yes |
| Sensor | Battery power | Yes |
| Sensor | Consumer imported from battery | No |
| Sensor | Consumer imported from generator| No |
| Sensor | Consumer imported from grid | No |
| Sensor | Consumer imported from solar | No |
| Sensor | Energy left | Yes |
| Sensor | Generator exported | Yes |
| Sensor | Generator power | No |
| Sensor | Grid exported | Yes |
| Sensor | Grid exported from battery | No |
| Sensor | Grid exported from generator | No |
| Sensor | Grid exported from solar | No |
| Sensor | Grid imported | No |
| Sensor | Grid power | Yes |
| Sensor | Grid services exported | No |
| Sensor | Grid services imported | No |
| Sensor | Grid services power | Yes |
| Sensor | Grid status | Yes |
| Sensor | Home usage | Yes |
| Sensor | Island status | Yes |
| Sensor | Load power | Yes |
| Sensor | Percentage charged | Yes |
| Sensor | Solar exported | No |
| Sensor | Solar generated | Yes |
| Sensor | Solar power | Yes |
| Sensor | Total pack energy | No |
| Sensor | VPP backup reserve | Yes |
| Sensor | Version | Yes |
| Sensor | VPP backup reserve | Yes |
| Switch | Allow charging from grid | Yes |
| Switch | Storm watch | Yes |
@ -347,4 +361,3 @@ which then can be used within the energy dashboard.
- **Integration shows `a condition has not been met to process the request`**
1. Confirm that you've run all the steps from both the **Hosting a Public/Private Key Pair** and **Register your application as a Fleet API partner** sections above.

Some files were not shown because too many files have changed in this diff Show More