Introducing Home Assistant Cloud

Today we’re introducing the next step in the Home Assistant saga: the Home Assistant Cloud. The goal of the Home Assistant Cloud is to bridge the gap between your local Home Assistant instance and services in the cloud while delivering the maximum possible security and privacy.

The first service that is supported via the Home Assistant Cloud is the Amazon Alexa Smart Home skill. This integration will allow you to control all your devices in Home Assistant via Amazon Alexa. You will be able to say “Alexa, turn on the kitchen lights” and your local Home Assistant will turn on the lights. Because Alexa talks to Home Assistant, it doesn’t matter what kind of lights they are! Anything that is linked to Home Assistant will work. IKEA lights, a 10 year old X10 switch or something you’ve made yourself. As long as Home Assistant can control it, you can control it via Alexa.

We have designed the Home Assistant Cloud with security in mind. When you activate the new Cloud component, your instance will create a secure connection to the Home Assistant Cloud. There is no need for any further configuration or to expose your instance to the internet.

Integrations like Alexa will deliver messages to our cloud which we will forward to your local instance for processing. We just forward the response back to Alexa. This means that we do not have to store the state of your house in our cloud, we’re just the messenger!

We are making the beta of the Home Assistant Cloud publicly available today. During the beta period the Home Assistant Cloud will be free to use. We are currently planning to run a beta till March 1, 2018 0:00 UTC. Once the beta ends, the Home Assistant Cloud will be part of our Community Support package which will run at $5 USD/month.

By subscribing to the Community Support package you will show your support for the Home Assistant organization, its projects and its community. It will help fund development, cover our operating costs and gives you access to use Home Assistant Cloud.

So if you ever felt like donating money to support the development of Home Assistant and Hass.io: sign up for the Home Assistant Cloud!

Why not take donations?

With donations you have to convince people to keep donating and it will be hard to plan around the amount of available money. The biggest concern is what do you do when there is not enough money. We could shut down the servers or again depend on the wallets of our developers. We could run Wikipedia style advertisements for donating, but those are even more annoying than running advertisements.

Getting started

Upgrade Home Assistant to 0.60 and enable the cloud and config components:

# Example configuration.yaml entry
cloud:
config:

Now restart Home Assistant and navigate to the configuration panel. It will offer a new cloud section. Here you can create an account and login. Once logged in, your instance will connect to the cloud.

The next step is to configure Alexa. This can be done by enabling the Home Assistant skill for Alexa and link your Home Assistant cloud account.

Once you’re done, ask Alexa to discover devices (“Alexa, discover devices”) and you are all set to control them: “Alexa, turn on <device name>”.

See the Cloud component configuration to learn how to filter which devices get exposed to Alexa.

FAQ

Last updated: December 26, 2017

I thought the Home Assistant crew didn’t like the cloud?

You are right, we don’t! The Home Assistant Cloud is not an alternative to running your local Home Assistant instance. All control and automations are still running locally.

Instead, the Home Assistant Cloud is an extension of your local instance. It allows to communicate with companies that force us to communicate via a public available cloud endpoint like Amazon Alexa and Google Assistant.

Home Assistant Cloud is only used to route the messages to your local Home Assistant instance. All messages are processed locally.

(Some people have suggested we rename to Home Assistant Bridge to avoid this confusion)

Will Home Assistant and Hass.io remain open source?

Yes. Yes. Yes! Home Assistant is the work of hundreds of developers all working together in creating something amazing. The only thing that will require a subscription is the optional cloud functionality.

Where is the source code for the Alexa skill?

All messages are processed locally and so the Alexa skill code is part of the Home Assistant code. The Home Assistant Cloud only routes the messages to your local Home Assistant instance. This means that you can audit the source code to check all the things that the cloud can do:

What other features will come to the cloud?

We have a lot of ideas! We are not going to make any promises but here are some things that we’re looking into:

  • Google Home / Google Assistant Smart Home skill
  • Allow easy linking of other cloud services to Home Assistant. No more local juggling with OAuth flows. For example, link your Fitbit account and the Fitbit component will show up in Home Assistant.
  • Encrypted backups of your Hass.io data
  • Text to speech powered by AWS Polly
  • Generic HTTP cloud endpoint for people to send messages to their local instance. This will allow people to build applications on top of the Home Assistant cloud.
  • IFTTT integration
  • Alexa shopping list integration
What countries are supported at launch?

Only US is currently supported. The reason for this limitation is that we need to do extra steps and certifications for each country’s Alexa skill. This is in progress but the timeline depends on Amazon.

How is the connection made to the cloud?

The connection is made using a WebSocket connection over HTTPS. See the source here.

I think that the price is too high for what I get.

The Home Assistant Cloud functionality is a perk for becoming a supporter of the Home Assistant project. As a supporter you will help fund development, cover our operating costs and gives you access to use Home Assistant Cloud. You are not paying to just maintain the cloud servers.

The perks offered for being a supporter will also extend over time, as noted in this answer.

What will the Home Assistant organization do with the funds ?

The plan is to hire developers to work fulltime on Home Assistant. We have grown a lot in the last 4 years and the work load is pushing the limits of what our core developers can do. Open source burn out is very common (1, 2) and we want to avoid this by moving most organization and release chores to a paid position.

For more background on these topics, check out HASS Podcast 15.


This is a companion discussion topic for the original entry at https://home-assistant.io/blog/2017/12/17/introducing-home-assistant-cloud/
2 Likes

how will the cloud be billed. I don’t like to pay for anything on a month to month bases. Will there be an option to pay for a year at a time or pay extra now for a lifetime subscription?

2 Likes

When will be available the integration with Google Assistant?

Soon! We just passed all certifications.

4 Likes

Great! :slight_smile:

When will be available the integration with Google Assistant?

Hi, very excited to try this out but I keep getting a “we were unable to link home assistant at this time” message. Any idea what’s causing this please? Thanks :slight_smile:

1 Like

This is a weird issue. If you want to fix it, you must delete whole devices from your alexa app before you link the accounts.

Something new considering Google Home integration? I’m really looking forward to it.

We’re in the final final step of rolling it out together with Google. Stay tuned

Good day. Thanks for highlighting the issue that I am also facing. My situation is the same as that experienced by freekeys. I went ahead and did a clean install of Alexa (after wiping cache, data, and uninstalling from my Android device). And I deleted the ‘devices’ that were defined in the Smart Home section of Alexa. [Note: I had a couple of TP-Link outlets.] Unfortunately, I am still experiencing the same issue.

FWIW, I do have cloud enabled. I do have Alexa set up in my configuration.yaml. And I do have https (i.e., port 443) for external/public access. [Note: I am using DuckDNS and Let’s Encrypt. And I have validated secure browser access both from within my network and from outside of the network where my HA instance runs.]

So here is my question: when you say ‘whole devices’, are you referring to all devices in Alexa settings? Specifically, do I have to delete all of the Echo Dot devices from Alexa settings (on my phone) before this will link successfully?

I’m curious to know what the limitations are. As is, I can’t see all available devices (such as locks and garage doors) configured in HA, but I do see all groups and scripts. It would be nice to have a little bit of clarity on how these skills work. Can I execute a script through GA/Alexa?

I’ve also tried excluding the scripts and groups domains, but this doesn’t seem to have had any effect.

Thanks @adast - I got it working in the end by redoing the Alexa pairing on a web browser (laptop) instead of the mobile app - it then worked :face_with_raised_eyebrow:

1 Like

Seems a bit archaic to be going down the path of a subscription service. Many of the security home services which only worked via a subscription have moved away from that model. Whilst I think there is benefit in linking HA to Alexa or Google Assist it doesn’t seem to be of value financially if you have to pay US$5/mnth for the service.

I have four multi switches which cost me $50 each and to access them via Alexa I will have to pay $5 a month. I can buy TP-Link smart switches for the same price which allow me to control whatever is plugged into the outlet with no cost.

So what is the benefit of paying for a service when I can do the same thing for free with a different product?

1 Like

You don’t have to pay for HA Cloud to control with Alexa or Google Assistant. The HA Cloud is just another easier to set up option for people that don’t want to muck around and wand an easy setup they are happy to pay $5 a month for - but it’s YOUR choice. You don’t have to pay to use Alexa or GA!

1 Like

The threat says that Home Assistant Cloud whilst currently free will move to a subscriptions service. If you dont need HA Cloud to control devices with Alexa or Google Assistant how does that set up work?


1 Like

It’s worth reading this and other threads. As has already been said here, this is just another option. You don’t need HA Cloud, you can chose to use it if you want to support the project, or if you don’t like the idea of exposing your HA instance to the Internet.

The existing components aren’t going away. If you don’t want to use the HA Cloud service, nobody’s going to force you.

No matter how it’s done, it also expose your ha to the internet. HA Cloud is in internet and communicate with your local instance.
The main advantage of ha cloud is simplicity.

However, indirectly, and in a manner that’s going to be much more secure.