-
Notifications
You must be signed in to change notification settings - Fork 7.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
add "core concepts" getting started page #14534
Changes from all commits
bbaad85
8435548
5b44405
94ea98a
2aeb64d
8b2069d
ef5cb60
351d602
aa3aa3b
07b196c
5d67f9e
e9a5358
57bc074
42231cd
c43b291
14d629e
b779c31
51ee890
d36bdcb
4dda9f9
4194302
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,90 @@ | ||
--- | ||
title: "Core Concepts" | ||
description: "How Home Assistant works." | ||
--- | ||
|
||
Home Assistant, like all home automation software, allows you to control smart devices in your home. This page will explain the parts of Home Assistant and how they relate. | ||
|
||
## Devices | ||
|
||
In Home Assistant, a **device** is a physical object in your connected home. This would be something like a smart lightbulb or a Chromecast. | ||
|
||
Home Assistant has a **discovery** feature, which scans for new devices constantly and adds them to your Home Assistant automatically. | ||
|
||
**Device trackers** are devices that track the position of something or someone, like a person or a cellphone. | ||
|
||
## Entities | ||
|
||
Because many devices do more than one thing, things in Home Assistant are controlled using **entities**. An entity is a single function or property of a device, like a single sensor, light, or switch. | ||
|
||
A device can provide multiple entities. For example, a device called “Sam’s Phone” might have entities like location, battery level, and step count. Some devices like lightbulbs only have a single entity, and devices like hubs may have no entities at all. | ||
|
||
To get entities to appear in Home Assistant, you must define them in your [`configuration.yaml` file](/docs/configuration) in this format: `entity_id: domain.object_id`. The **domain** is a built-in category of entities that you manage in a similar way. You can get the object ID by ________? | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Could I have some help with this sentence? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. line 20 is great. Line 22 seems like it's out of place. That format will only be used in specific spots in configuration.yaml. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Thanks @Petro31 , definitely struggling with line 22. How's something like this?
|
||
|
||
Some entities are useful for controlling things in your home: | ||
|
||
- **[Switches](/integrations/switch)** let you check if something is switched on or off | ||
- **[Sensors](/integrations/sensor)** can be a wide range of things that watch for changes in the environment, like motion sensors and temperature sensors | ||
- **[Binary sensors](/integrations/device_tracker)** detect something that is either on or off | ||
|
||
Other entities are there to respond to Home Assistant: | ||
|
||
- **[Lights](/integrations/light)** can turn on and off, and sometimes dim and change color | ||
- **[Covers](/integrations/cover)** are things that can move up and down, like garage doors and smart blinds | ||
|
||
Entities can be grouped into **areas**, which roughly represent a room in your house. Common areas are “kitchen”, “office”, “basement” and “yard”. | ||
|
||
You can reference multiple entities at one time by putting them into a **[group](/integrations/group)** | ||
|
||
_Advanced users can write [scripts](/docs/scripts), special entities that run custom code when they’re triggered_ | ||
|
||
## Automation | ||
|
||
**[Automations](/docs/automation)** let you go further by telling Home Assistant to automatically do things without you having to hit a button yourself. For example, you could write an automation that says “turn on the lights when it gets dark if I’m home”. | ||
|
||
An automation has three main parts: | ||
|
||
- **[Triggers](/docs/automation/trigger)** - something that starts the automation, like the sun going down or a motion sensor noticing movement | ||
- **[Conditions](/docs/automation/condition)** - let you decide whether to complete the automation. For example: "only if someone is home". | ||
- **[Action](/docs/automation/action)** - what the automation does, like "turn on lights" | ||
|
||
**[Templates](/docs/automation/templating)** let advanced users use variables and logic in their automations | ||
|
||
## State | ||
|
||
Home Assistant remembers the **[state](/docs/configuration/state_object)** of each entity. Think of state as in "what state is this in?" For example, a light could have two states: ‘on’ and ‘off’, and a garage door could be in one of two states: ‘open’ or ‘closed’. | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. This leads me to believe that mutliple states are stored at one time. Possibly change
to:
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. love it, will fix 👍 |
||
|
||
A **[scene](/docs/scene)** is a list of entities along with the state you want them each to be in. When you trigger that scene, Home Assistant will figure out the right events to get each of those entities into that state. | ||
|
||
For example, let’s imagine you have a “welcome home” scene that says “lights on, door unlocked”. If you turn on that scene, Home Assistant will check if your lights are on and turn them on if they’re off. Then it will check if your door is unlocked, and unlock it if it’s locked. | ||
|
||
## More concepts | ||
|
||
- **[Zones](/integrations/zone)** are geographical areas on earth. You can check if a device tracker is inside a zone as a trigger or condition in an automation. For example, “turn on the lights when Sam’s Phone comes into the ‘home’ zone”. | ||
|
||
## Integrations | ||
sampl marked this conversation as resolved.
Show resolved
Hide resolved
|
||
|
||
Home Assistant is set up to work with devices and services from lots of different companies, including voice assistants, smart devices, cameras, and other home automation software. You can make Home Assistant work with these services by installing **[integrations](/integrations)**. | ||
|
||
Once installed, integrations can make new entities available, add panels to Lovelace, and more. | ||
|
||
_Formerly known as components; not to be confused with add-ons._ | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. If someone is new here, please don't mention components. It isn't used anymore, it isn't listed in the docs anymore. Furthermore, calling out add-ons out of the blue without further text, reference or explanation is confusion. As it instantly pops the question in the reader's head: "So what is an add-on?" (which also is distracting). There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
In my experience as a newbie googling and such, the word has definitely come up. It might be clearer to explicitly state why so nobody things "this documentation is incomplete, what's a component...". I can remove if you feel very strongly though.
Should I say more about add-ons, or remove it? I'm confused, add ons have come up in multiple tutorials and they're right there in the HA lovelace UI... are they "under the hood" or not? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Right now, it is listed as a loose term, so:
☝️ Your own statement right there in the response shows the confusion. You highlight the possible confusion in the text, but you are not solving / removing the confusion. I think we should either clarify what they are and fix the possible confusion, or not mention it at all. |
||
|
||
## The Home Assistant software | ||
|
||
So now you know what Home Assistant is. But how do you start using it? | ||
|
||
You probably want to [install Home Assistant](/getting-started/) using a disk image, which contains everything you need to run Home Assistant and keep it updated. | ||
|
||
Most people control Home Assistant with its built-in frontend, **Lovelace**. Lovelace is the user interface in your browser and the mobile apps. | ||
|
||
Lovelace is organized like this: | ||
|
||
- **Panels** are top-level pages in Lovelace. Examples are your Dashboard, the Map, the History panel and the Configuration page. | ||
- **[Dashboard](/lovelace/dashboards-and-views)** panels are the main way to see and control your home. You can add multiple custom dashboards in addition to the one that comes by default. | ||
- **[Views](/lovelace/dashboards-and-views)** are just tabs inside of dashboards. You can easily toggle between views on the same dashboard. You can customize the name and an icon for each view. | ||
- **Cards** are smaller pieces of UI inside a view. You can generally see multiple cards at once. Home Assistant comes with built in cards, but you can also write your own. | ||
|
||
_You may hear about Home Assistant "Core" and "Supervisor". These refer to parts of Home Assistant that advanced users can install separately._ | ||
|
||
### [Next step: Automate Home Assistant »](/getting-started/automation/) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think it is more clear to somewhere put up that devices can provide other devices or entities.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If I added "A device can also provide other devices", would that be true and fixing the issue?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah or:
A device can provide, one or more, entities or other devices it is connected to.