Blog
Explaining the Updater
On Saturday, we released Home Assistant 0.31 which includes an improved updater component that checks for new versions using the Home Assistant servers. We wanted to update the community on its rollout and answer some questions that have come up. As part of the update check anonymous information about your operating system and Python version is submitted to Home Assistant servers unless you have opted out.
Read on →0.31: Reading you the news, some serious business, spooky hackery and a breaking Z-Wave change
Hello again friend,
How are you? Having a good day? We sure are. If you aren’t having a good day, this might cheer you up…
Every other weekend around here gets a little hectic leading to a big sigh of relief as we release a new version of Home Assistant to the world. And this time is no different. Our developer community has once again built us a beautiful new release with lots of new features and improvements. We hope you like it.
One last thing before we get going though, I should warn you… @balloob
Stats Update
Sadly, no big amazing stats to update you with this time, but we did recently pass 7,000 commits! This release featured submissions from 45 contributors. Hopefully with the new updater component we will be able to give you some really good stats in the 0.32 blog post.
Hacktoberfest
October means Hacktoberfest time and our community has really come through with some excellent improvements and additions. As of this writing, we have 194 merged and 41 open pull requests to the home-assistant repository
⚠️ A greatly improved updater component (Please read this!) ⚠️
This release includes an update to our updater component. The responsibility of the updater component is to check if a new version is available and notify the user if this is the case.
It used to be that this component would check with PyPi
- We are unable to do a slow rollout
- We are unable to show the user extra information (like a link to a changelog or the release date)
- We are unable to warn users for critical security updates
So to work around these problems, we decided to start hosting the version check service ourselves. Since we had to get some infrastructure spun up anyway, we figured we would take it a step further. Which leads me to this bit of the update (the most important part):
What you need to know (the important bit!)
Remember how I mentioned that up there in the title that there is some serious business in this release? Well, we also added some basic analytics to the updater component which get sent to the server and stored so that we get a better idea of our user base.
Each Home Assistant instance running the updater component will generate a unique ID.uuid
.
Opting out
There are two ways to opt-out. The first way is by using the new opt_out
option for the updater. This way the updater will continue to check for updates, but no information about your system will be shared with us.
updater:
reporting: false
You can also disable the updater component entirely by removing updater:
from your configuration.yaml
although we would not suggest you do this as you would miss any critical updates.
Finally, you can also reset your unique identifier by deleting the .uuid
file and restarting Home Assistant.
Data stored on the Home Assistant update server
Here is what my production Home Assistant instance looks like from the server side:
Name | Description | Example |
---|---|---|
arch |
CPU Architecture | x86_64 |
distribution |
Linux Distribution name (only Linux) | Ubuntu |
docker |
True if running inside Docker | false |
os_name |
Operating system name | Darwin |
os_version |
Operating system version | 10.12 |
python_version |
Python version | 3.5.2 |
timezone |
Timezone | America/Los_Angeles |
user_agent |
User agent used to submit analytics | python-requests/2.11.1 |
uuid |
Unique identifier | 10321ee6094d4a2ebb5ed55c675d5f5e |
version |
Home Assistant version | 0.31.0 |
virtualenv |
True if running inside virtualenv | true |
In addition to the above collected data, the server will also use your IP address to do a geographic IP address lookup to determine the city that you are from. To be extremely, extremely clear about this bit: The Home Assistant updater does not: store your IP address in a database and also does not submit the location information from your configuration.yaml
.
Geo-lookup on my IP resolves to Oakland with latitude/longitude pointing at the geographical center of the city.
The server also adds two timestamps to the data: the original date your instance UUID was first seen and the timestamp of the last time we have seen your instance. This gives us the following extra data:
Name | Description | Example |
---|---|---|
first_seen_datetime |
First time instance ID was submitted | 2016-10-22T19:56:03.542Z |
geo_city |
GeoIP determined city | Oakland |
geo_country_code |
GeoIP determined country code | US |
geo_country_name |
GeoIP determined country name | United States |
geo_latitude |
GeoIP determined latitude (of the city) | 37.8047 |
geo_longitude |
GeoIP determined longitude (of the city) | -122.2124 |
geo_metro_code |
GeoIP determined metro code | 807 |
geo_region_code |
GeoIP determined region code | CA |
geo_region_name |
GeoIP determined region name | California |
geo_time_zone |
GeoIP determined time zone | America/Los_Angeles |
geo_zip_code |
GeoIP determined zip code | 94602 |
last_seen_datetime |
Most recent time instance ID was submitted | 2016-10-22T19:56:03.542Z |
This data is held in the highest security. The update system runs in a secured Amazon Web Services account owned by me (@robbiet480
We currently have no plans to publicly expose any of this information. If we did do such a thing in the future we would of course notify you in advance. It must also be stated that we will never sell or allow the use of this information for non-Home Assistant purposes.
We thank you for understanding why we are collecting this data and hope that you leave the feature enabled but fully understand if you feel uncomfortable with this.
This section was updated on October 24 to be more clear about geo-lookups being on the city level. See original version.
Now, back to the fun stuff…
Good evening. I’m Ron Burgundy and here’s what happening in your world tonight.
Home Assistant got a crazy idea recently that it couldn’t do enough already and wanted to challenge itself even more. I really don’t understand how it came up with this kooky idea, but it now thinks that its newest hobby should be a minor career in journalism.
0.31 adds support for the brand spanking new Alexa Flash Briefing API
Drive time with traffic is 35 minutes. There is an UberPOOL that will cost $11.52, estimated to be 2 minutes away, for a total of 37 minutes. BART is currently estimated to take 29 minutes. You should take BART, as it is estimated to be faster by 8 minutes.
Now I know how to best get to my real job
You stay classy, San Diego. (It's funny, because balloob lives in San Diego))
Major breaking Z-Wave changes ahead
A rather nasty Z-Wave issue
What this means for all you Z-Wave users is that you will need to update your configurations to reflect the change. I personally have quite a few (17) Z-Wave devices and went through the process this week. Here’s what I had to do:
- Update customizations
- Update groups
- Update my
zwave.customize
section - Update my Alexa skills that used old entity IDs
- Because I use
emulated_hue
with Alexa andemulated_hue
uses the entity ID as a unique identifier I also had to remove all Z-Wave devices from Alexa and re-add them.
Your todo list may be a little different from mine, I just wanted to outline the steps I took to give you an idea of what you need to think about. It’s not a very hard process, especially when using global find and replace in Sublime Text but did take me about 20 minutes to complete.
This is super annoying, I know, especially since we had said in 0.12 that Z-Wave IDs should hopefully never change again, but we are now forced to eat those words. I will state again that Z-Wave IDs shouldn’t change in the future but obviously we see how that went. To sum up on this section… sorry but it had to happen.
All changes
-
Updater component (@infamy
, @robbiet480 , @kellerza ) - Continue to setup other platforms when 1 platform config is invalid (@kellerza
) - Create persistent notifications when a platform contains invalid config (@kellerza
) - Logbook: Allow filtering domains and entities to be shown (@wokar
) - HTTP: Change
approved_ips
from string to CIDR validation (@mweinelt) - Persistent Notifications: Allow using markdown (@justweb1
) - Netatmo: Add discovery support (@jabesq
) - Netatmo Welcome camera: Add binary sensor (@jabesq
) - Support added for HaveIBeenPwned (@joyrider3774
) - Device tracker:
known_devices.yaml
reading and writing tweaks and fixes (@kellerza) - Fix climate platforms showing the wrong temperature unit (@rcloran
) - Lots of voluptuous love (@fabaff
) - Ensure proper attribution for weather platforms (@fabaff
) - Fix Telegram in Docker (@jeanregisser
) - Support recursive config inclusions in YAML (@lwis
) - Camera: Synology SS cameras now supported (@jgriff2
) - History: Allow filtering domains and entities to be shown (@wokar
) - Media Player - Squeezebox: Now able to show artist and album (@ih8gates
) - Alexa: Flash Briefing skill support added (@robbiet480
) - Device Tracker: Add support for Bbox Modem Router (@HydrelioxGithub
) - Sensor: Add support for Bbox Modem Router (@HydrelioxGithub
) - Input select: Services added to pick next and prev option (@persandstrom
) - Sensor: ARWN now supported (@sdague
) - Pushbullet: Push an URL note if an url is provided inside data (@jabesq
) - Z-Wave: Allow certain devices to be not added to Home Assistant (@lukas-hetzenecker
) - New support for Zoneminder added (@Khabi
) - Weather: Allow tracking severe weather alerts with WUnderground (@tchellomello
) - Sensor: New support added to track min/max/mean (@fabaff
) - Convert EntityComponent to be async (@pvizeli
, @balloob ) - Z-Wave: Add association service (@turbokongen
) - Frontend - Services dev tool: persist state and tweak UI (@justweb1
) - Sensor: Support added for scraping websites (@fabaff
) - Clean up of tests (@capellini
) - New
fail
filter added to templates to raise on UndefinedError (@jaharkes) - Support added for Emoncms history (@joyrider3774
) - Support for Apple Push Notifications Service (@sam-io
) - Thermostat: Netatmo now supported (@gieljnssns
) - Alarm control panel: Concord232 now supported (@JasonCarter80
) - Notify: Matrix support added (@mweinelt
) - Device tracker - nmap: Allow specifying multiple inputs for nmap (@hcooper
) - Device Tracker - snmp: SNMPv3 now supported (@T3m3z
) - Notify: Telstra SMS now supported (@nvella
) - Camera: Verisure now supported (@turbokongen
) - Support added for Neato Connected Robot (@jabesq
) - Media player: More options for Yamaha AVR (@ehagan
) - Sensor: Support for Pilight sensor (@DavidLP
) - iOS support (@robbiet480
) - Minor features and bug fixes by @mtl010957
, @molobrakos , @flyte , @fabaff , @phardy , @sander76 , @T3m3z , @c-w , @balloob , @robbiet480 , @StaticCube , @vittoriom , @hartmms , @kirichkov , @mezz64 , @ishults , @Danielhiversen and @tchellomello .
Release 0.31.1 - October 24
- Identify special character encoding error in YAML files (@kellerza
, @lwis ) - iOS app component bug fixes (@robbiet480
) - Fix a spelling problem on user-facing error (@robbiet480
) - YAML includes will ignore dirs/files prefixed with . (@lwis
)
Backward-incompatible changes
- The HTTP component now takes a different format for authenticating IPs
- Configuration format has changed for Proximity
- The Arduino platform are now covered by the configuration check. Please check the documentation to see how.
- The Z-Wave entity ID change mentioned above
If you need help…
…don’t hesitate to use our Forum or join us for a little chat
Until next time
Thanks for reading all of the above, especially since this week was a pretty long post. We should be back with a new post around November 5th announcing the arrival of 0.32.
– Robbie
0.30: More Async, HASSbian, Digital Ocean, statistics, REST
Yes, after only nine days comes 0.30. Don’t worry, we will try to keep our usual release cycle and not start to release every day.
We guess that you already know: The Raspberry Pi image is available now. For Hassbian, @Landrash
A large amount of resources of the development are still focusing on the effort to move Home Assistant further to asynchronous programming. It’s a labor-intensive task, comes with segmentation faults, and unstable instances when certain combinations of sensors are used. The benefit will be more speed in the near future.
To reduce the run-time of your tests, @balloob
Documentation
All configuration sample entries are now minimized. This should help to avoid problem for starters and newbies as they only get what’s needed and not a full sample with all optional entries. If there is an issue with an entry in your configuration.yaml
file the error message will provide you an URL that point to the documentation.
As soon as the Hacktoberfest started there were a lot of incoming Pull Requests for the documentation. A huge “Thank you” to all participants. Especially, we would like to give a cookie to @hillaryfraley
Statistics
With the statistics sensor we would like to introduce a new sensor that is similar to the template sensor or the trend sensor. This sensor is consuming values from another sensor and is doing some statistical analysis of the data. Over a group of samples is the average/mean, the min/max, the total, the standard deviation, and the variance calculated which can be used in your automation rules. If the source is a binary sensor then the state changes are counted.
As the results are processed on-the-fly you still need to use the data from your database for an in-depth analysis of your stored information. Check the latest notebook
REST! We don’t…
There was a lot of work done on our implementation which are working with RESTful APIs. @w1ll1am23
The REST sensor supports now HTTP authentication (basic and digest) and custom headers. This will allow you to access resources which are protected. This sample sensor will access GitHub and retrieve the latest release number while by-passing the rate limit for non-authenticated requests.
sensor
- platform: rest
resource: https://api.github.com/repos/home-assistant/home-assistant/releases/latest
username: YOUR_GITHUB_USERNAME
password: YOUR_GITHUB_ACCESS_TOKEN
authentication: basic
value_template: "{{ value_json.tag_name }}"
headers:
Accept: application/vnd.github.v3+json
Content-Type: application/json
User-Agent: Home Assistant REST sensor
Misc
- GitHub released with a recent update a review feature. This will give you more control over your comments while you review an open Pull Request.
- Thanks to @robbiet480
we are now running mention-bot . It will help you when you create a new Pull Request to identify potential reviewers. - The Home Assistant Community Forum has now an additional section called “Installation”.
All changes
- Core: A lot of stuff is now async (@balloob
) - Nest: Support for operation modes (@jawilson
) - Z-Wave: Massive update for command classes and device classes (@turbokongen
) - Digital Ocean: New switch to control and binary sensor to monitor droplets (@fabaff
) - Cover: Support for MySensors cover (@OttoWinter
) - Wink: Support for oAuth2 and relay sensors (@w1ll1am23
) - Sensor: Forecast update interval is now configurable (@KlaasH
) - Core: Failed login attempts are reported as persistent notifications (@fabaff
) - Climate: Temperature convert now available in the Climate object (@pvizeli
) - Notify: Update to accept a list (@robbiet480
) - Device tracker: Support for tracking of your Volvo (@molobrakos
) - Switch: Flux improvements (@jawilson
) - InfluxDB: Time-out for connections (@simonszu
) - Sensor: New MySensors types available (@MartinHjelmare
) - Switch: ANEL PwrCtrl devices are now supported (@mweinelt
) - Frontend: Path of the configuration file now visible on the frontend (@justweb1
) - Homematic: Extended device support (RF, IP and wired devices) (@pvizeli
, @danielperna84 ) - Sensor: New sensor for statistical analysis (@fabaff
) - Sensor: Support for headers and HTTP authentication for REST sensors (@fabaff
) - Device tracker: Support for encrypted Owntracks payload (@molobrakos
) - Tests: Improvement of the HTML5 notify tests (@capellini
) - Wink: Support for Wink Smoke and CO detectors (@w1ll1am23
) - Sensor: TED5000 sensor was included (@gwendalg
) - Sensor: Support for Västtrafik public transport (@persandstrom
) - Notify: Pushetta no longer sends message on start up (@Danielhiversen
) - Sensor: Forecast.io sensor was replaced by Dark Sky (@fabaff
) - Device Tracker: The
known_device.yaml
file is now validated (@kellerza) - Minor features and bug fixes by @tchellomello
, @pavoni , @fabaff , @pvizeli , @lwis , @turbokongen , @Danielhiversen , @persandstrom , @balloob , @robbiet480 , @sam-io , @bbangert , and you if you are missing here.
Release 0.30.1 - October 8
- Device Tracker
known_devices.yaml
validation is now more accepting (@kellerza) - Handle X10 light numbers greater than 9 (@mtl010957
) - Fix command line covers without a template (@roidayan
)
Release 0.30.2 - October 12
- Handle Volvo’s with dashes in their name (@molobrakos
) - Fix some html5 push notification configuration options were discarded after first use (@T3m3z
) - Fix Homematic device name with autodiscovery (@pvizeli
) - Make ‘pin’ optional for zigbee device config (@flyte
) - Fix when sending a notification to a service with target attached (i.e.,
notify.html5_unnamed_device_2
) the target was not submitted to the platform as a list causing iteration over every character in the string. (@robbiet480) - Fix for Slack targets (@fabaff
) - Fix for Pushover targets (@Nixon506E
)
Backward-incompatible changes
- All deprecated condition options from
automation
have been removed (deprecated since May and have printed warnings to your console):-
use_trigger_values
is gone. You have to copy your triggers to conditions and adjust for the correct config. -
condition_type
is gone. Usecondition: or
instead. - To specify the type of a condition, use
condition:
instead ofplatform:
.
-
- The Forecast.io was renamed to Dark Sky. Replace your
- platform: forecast
with- platform: darksky
. - The aREST
configuration between the sensor and the switch platform was aligned.
If you need help…
…don’t hesitate to use our Forum or join us for a little chat
Participating in Hacktoberfest
Home Assistant will join this year for Hacktoberfest
Why contribute to Home Assistant:
- Written in Python3 with 94% test coverage
- Active and helpful community
- Friendly to new contributors
Resources to get started:
- Sign up for Hacktoberfest
- List of entry-level issues for Home Assistant
- Instructions to setup your development environment
- Home Assistant Development Chat
- Home Assistant Development Forums
- Hacktoberfest website
Are you not a programmer but still want to contribute to Home Assistant? Check out our list of entry-level issues for the Home Assistant website
We have a Raspberry Pi image now
Today we’re happy to announce our brand new Raspberry Pi image! It is based on Raspbian Lite combined with HASS so we decided to call it Hassbian.
This image comes pre-installed with everything you need to get started with Home Assistant right away.
To get started, check out the installation instructions in the getting started section or watch the latest video by BRUHAutomation
Under the hood
It’s based on Raspbian Lite and generated with a fork of the same script
On first boot the latest release of Home Assistant will be installed and can be reached after 3~5 minutes. Pre-installed on this image is the MQTT broker Mosquittohomeassistant
account to use the GPIO pins of the Raspberry Pi. Mosquitto is not activated by default.
As it is today there is no pre-compiled Z-Wave support but it can be installed by following the Getting started instructions for Z-Wave.
Happy Automating!
0.29: 🎈 Async, SleepIQ, OpenALPR, EmonCMS, stocks, and plants
Two weeks ago, September 17 marked our 3 year anniversary. In this time Home Assistant managed to grow from a simple script that turned on my lights when the sun set to a kick ass open source project with the best community an open-source project could wish for. This release contains features, bug fixes and performance tweaks by a total of 50 different people! We have also managed to cross the 1000 forks on GitHub. Talking about momentum!
This is a big release as we’ve completely overhauled the internals of Home Assistant. When I initially wrote Home Assistant, still figuring out the ins and outs of Python, I went for an approach that I was familiar with for an application with many moving parts: threads and locks. This approach has served us well over the years but it was slower than it needed to be, especially on limited hardware.
This all changed when @bbangert
SleepIQ and OpenALPR
There now is support for two new super cool things: Beds and license plates. @technicalpickles
Configuration validation
On the voluptuous front we have also made great progress. We were able to fully remove the legacy config helpers and have migrated 323 of the 346 components and platforms that needed migrating! This does mean that for some components the configuration has slightly changed, make sure to check out the backward-incompatible changes section at the bottom for more info. Thanks everybody for reviewing the Pull requests, testing the changes, and reporting issues.
Delayed Release
As you might have noticed, this release has been delayed by 5 days. This was due to a rare, difficult to reproduce problem with the Python interpreter. A huuuuge thanks to all the people that have helped countless hours in researching, debugging and fixing this issue: @bbangert
Hide automation rules
Since 0.28 automation rules can be reloaded directly from the frontend.
All changes
- Convert core from thread-based to be async-based (@bbangert
, @balloob ) - New SleepIQ support (@technicalpickles
) - Cover: Vera is now supported (@pavoni
) - Climate: Vera climate devices are now supported (@robjohnson189
) - Climate: MySensors is now supported (@kaustubhphatak
) - Control Home Assistant with keyboard shortcuts (@deisi
) - More voluptuous config validations (@fabaff
, @kellerza , @balloob ) - New Nuimo controller support added (@gross1989
) - Sensor: BOM Weather component (@tinglis1
) - Automation: Option added to hide entity (@milaq
) - Sensor: Emoncms feeds now supported (@joyrider
) - Sensor: Mi Flora plant sensor now supported (@open-homeautomation
) - Logbook: Allow filtering entities and hide hidden entities (@wokar
) - Notify: Kodi support added (@chrom3
) - Notify: Support for Simplepush added (@fabaff
) - Sensor: KNX sensors now supported (@daBONDi
) -
Wink improvements (@w1ll1am23
) -
ISY improvements (@Teagan42
) - Link to relevant docs in config validation error messages (@fabaff
) - Greatly improve the performance of templates (@balloob
, @pvizeli ) - Notify - Slack: Support for username/icon (@Khabi
) - MQTT room detection: Away timeout now supported (@mKeRix
) - Climate: Nest can now control the fan (@jawilson
) - Modbus: Major cleanup for Modbus switches and sensors (@persandstrom
) - HTTP: Allow passwordless logins from whitelisted IP addresses (@Danielhiversen
) - Sensor: Yahoo! Finance stocks now supported (@tchellomello
) - Sensor: Set value based on incoming email (@sam-io
) - Light: White value now supported (@mxtra, @MartinHjelmare
) -
InfluxDB now allows attaching extra data (@lwis
) -
OpenALPR support (@pvizeli
) - Minor features and bug fixes by @fabaff
, @w1ll1am23 , @turbokongen , @clach04 , @mKeRix , @pvizeli , @DavidLP , @nvella , @Teagan42 , @ericwclymer , @wokar , @kellerza , @nkgilley , @jawilson , @Danielhiversen , @ej81 , @danieljkemp , @balloob , @philhawthorne , @LinuxChristian , @milas , @simonszu , @Cinntax , @irvingwa , @sytone , @kk7ds , @robbiet480 .
Hotfix 0.29.1 - September 29
- Fix typo in Nest climate platform. We are still experiencing issues with Nest.
(@tchellomello )
Hotfix 0.29.2 - September 29
Hotfix 0.29.3 - September 29
- Hue config fix (@pvizeli
)
Hotfix 0.29.4 - September 30
- Alexa config fix (@balloob
, reported by @lwis ) - Envisalink discovery fix (@cinntax
) - Acer Projector config fix (@pvizeli
)
Hotfix 0.29.5 - September 30
- Fix Climate Nest platform (@tchellomello
, @jawilson )
Hotfix 0.29.6 - October 1
- Fix segmentation fault (@bbangert
) 🎉 - Fix nested templates in
data_template
would incorrectly get cached (@balloob)
Hotfix 0.29.7 - October 5
- Fix handling SIGTERM and SIGHUP signals (fixes Systemd restart issues) (@pvizeli
)
Backward-incompatible changes
- The template methods
now
andutcnow
have been changed from variables to methods. To get the current time replacenow
withnow()
. -
yahooweather
default name is nowyweather
. Also min and max temperature are now correctly calledTemperature Min
andTemperature Max
. -
ffmpeg
is now a component for manage some things central. Allffmpeg_bin
options have moved to this compoment from platforms. - Config has changed for X10 lights.
- For Wink, make sure your config only contains the access token as in the docs.
- Nest sensor ‘mode’ has been renamed to ‘operation_mode’
If you need help…
…don’t hesitate to use our Forum or join us for a little chat
0.28: Reload automation and groups, API documentation, car tracking, Pi-Hole stats
It’s already time for 0.28 thanks to our super short release cycles. Now, it’ official…we hit 4000 stars on Github. That’s amazing. Sorry, not as amazing as all the stuff that was going on for 0.27 but still pretty awesome.
Reload automation rules
This release brings you a huge improvement of the automation and group handling. Both can be reloaded without a Home Assistant restart by calling their new reload services. The automations can be controlled directly from the frontend.
Raspberry Pi installation guide
Singleboard computers are very popular to run Home Assistant. To support this fact, the installation documentation for the Raspberry Pi devices was re-written to get users started as quickly as possible. @Landrash
Climate and cover
There are countless bugfixes included in this release which will make your experience with the climate
and the cover
platforms better. Two week ago was the biggest merger of implementations released that ever happened in the history of Home Assistant. Thanks to @turbokongen
API documentation
The Home Assistant API Documentation
Configuration validation
The validation of the configuration is still on-going. Approximately 80 % is done. This means that we will propably talk about this topic in the next release notes again. To align the configuration of components and platforms we needed to break some. Please refer to the Backward-incompatible changes section to check if you need to update your configuration or simple check your log for configuration validation errors. Thanks to @kellerza
All changes
- Light: Added bitfield to Flux LED since we are supporting effects (@tchellomello
) - Device tracker: Owntracks waypoint import (@pavoni
) - Climate: A lot of bugfix (@turbokongen
, @pvizeli , @djbanks ) - Notify: Improvement of the title handling (@lwis
) - RFXtrx: Sensor cleanup (@turbokongen
) - Device tracker: Fix for BLE device tracker (@open-homeautomation
) - Device tracker: Allow ‘None’ MAC addresses to be loaded from
known_devices
file (@kellerza) - Cover: Bugfixes (@turbokongen
, @danielperna84 ) - Sensor: Support for displaying details about crypto currencies (@fabaff
) - Device tracker: Support for automatic to track your vehicles (@Teagan42
) - Devie tracker: Add exclude option to Nmap device tracker (@danieljkemp
) - Device tracker: Improved login errors for Asus device tracker (@kellerza
) - Sensor: Support for displaying the status of Xbox Live accounts (@mKerix
) - Notify: Adding
link_names
for sending Slack message (@salt-lick) - Binary sensor: Add the occupancy sensor class (@robbiet480
) - Fan: Add supoort for MQTT fans (@robbiet480
) - Docs: Add Sphinx API doc generation (@bbangert
) - Core: Allow reloading automation without restart (@balloob
) - Sensor: Added scale and offset to the Temper sensor (@mKerix
) - Sensor: New support for [Trend] sensor (@pavoni
) - Device tracker: Keep looking for new BLE devices (@Bart274
) - Switch: Added device state attributes and support for legacy firmware for D-Link switches (@LinuxChristian
) - Sensor: Improve 1-Wire device family detection (@Ardetus
) - Modbus: Update to be thread safe (@persandstrom
) - Camera: FFMpeg is abale to get the images (@pvizeli
) - Core: Reload groups without restart (@balloob
) - Core: Fix remove listener (@balloob
) - Sensor: Support for monitoring your battery on a Linux host (@fabaff
) - Core: Add support for complex template structures to
data_template
(@pvizeli) -
check_config
: Improve yaml fault tolerance and handle border cases (@kellerza) - Core: Add additional template for custom date formats (@lwis
) - Sensor: Support for getting stats from Pi-Hole systems (@fabaff
) - Modbus: New
write_registers
Modbus service (@persandstrom) - Device tracker: Fix TP-Link Archer C7 long passwords (@snikch
)
Hotfix 0.28.1 - September 12
- Fix: Simplisafe alarm control panels accept any string for code (@tchellomello
) - Fix: Z-Wave would sometimes not detect all thermostats (@turbokongen
) - Fix: Automatic device tracker when 2 or more cars are tracked (@teagan42
) - Fix: Group ordering is now based on config again (@balloob
, @kellerza )
Hotfix 0.28.2 - September 13
- Light - pilight: Fix send RF code (@DavidLP
) - Recorder: Fix specifying SQLite (@pvizeli
) - Wink: Fix garage door detection (@turbokongen
) - Climate - Ecobee: Fix inverted high and low temperatures (@turbokongen
) - Allow changing covers using scenes (@nvella
) - Device tracker - Automatic: Fix polling (@teagan42
)
Backward-incompatible changes
-
OpenweatherMap entity IDs are now like
sensor.owm_temperature
. Previously they were likesensor.weather_temperature
. Apologies for this change, but we needed to make OpenWeatherMap more generic now that we have many weather platforms. - Updates of configuration variables due to configuration check or alignment with other platforms. Please update your configuration entries according to the documentation:
- Custom components extending
BaseNotificationService
need to be aware thatkwargs.get(ATTR_TITLE)
will now returnNone
if a title has not been set, and will need to specifykwargs.get(ATTR_TITLE, ATTR_TITLE_DEFAULT)
if they always require a title.
If you need help…
…don’t hesitate to use our Forum or join us for a little chat
ESP8266 and MicroPython - Part 2
0.27 is here to break eggs and take names: notifications, Hue fakery, safety and unification come to Home Assistant
This week’s blog post could only be possibly described by exactly one hashtag:
#Amazing
or maybe#supersized
Keep reading to see what #Amazing things we have in store for you this week 😄! And make sure you read all the way to the end, because I left a present down there for those committed few among you :)
But first…
Some general housekeeping
Paulus (@balloob
Special thanks to my awesome helpers for this week’s release who are looking over my shoulder to make sure I’m crossing my t’s and dotting my i’s: @Teagan42
For my next trick, let’s hand out some…
Trophies
I felt that I had to 1-up Paulus (@balloob
-
10,000
builds on Travis (congrats to @BluGeni ) -
3,000
issues and pull requests (thanks @kellerza !) -
2,000
pull requests alone (awesome @fabaff !!) - 900 forks on Github!
In addition,
- We are very close to 4,000 stars on Github!
-
I’m now #5 contributor by most commits!!!
Hey wait, how’d this get in here 😳…
Now that we have that great news out of the way, onto this week’s release which is going to keep the #Amazing gravy train rolling right along and get to the stuff you all really are here for.
0.27
While this release is #Amazing, we had to break a few eggs (now you understand the title reference!) to make a beautiful omelette (using home automation obviously) so some platforms and components have needed to introduce backward-incompatible changes. Please make sure to read the Backward-incompatible changes section below.
Hue Bridge Emulation
Thanks to @mgbowenemulated_hue
component, you can have local control of entities through Amazon Echo.
Notification improvements
We have some excellent upgrades to the notification system coming to you in 0.27, courtesy of me, @robbiet480
HTML5 Push Notifications
This release adds support for HTML5 push notifications on Chrome/Firefox/Opera on both desktop and Android devices. This means that you can send a notification to your phone even when your Home Assistant is not open in your mobile browser. When using Chrome you can even include 2 action buttons so that you can control your Home Assistant from your phone’s lock screen, allowing you to do things like sound alarms or unlock your front door, all without leaving the notification. Thanks again to me (@robbiet480
Notification Groups
Using the new notify group
platform allows you to cut down a lot of duplicate automation logic by combining multiple notification platforms and target
s into a single notify service. Check out the documentation for more info.
target is no longer needed
For platforms that support it, starting with the new HTML5 platform, any target
s that are available will be exposed as individual services, so no more having to remember which target
s to use. Please note that the existing services also still exist so you can keep using target
if you wish.
Validate configuration before restarting Home Assistant
Ever restarted Home Assistant to test a configuration change just to find out there is a validation error? Well, not anymore! @kellerza
hass --script check_config
Configuration validation
This release includes a big push on making sure all platforms contain proper configuration validation. This should help in getting your configuration right. Thanks to @fabaff
FFMpeg motion/noise sensing
It’s now possible to use FFMpeg to monitor a video stream and detect motion thanks to a new binary sensor platform by @pvizeli
Component clean up - Thermostat & HVAC -> Climate. Rollershutter & Garage Door -> Cover
Due to our wild growth we ended up with a few components that had a lot of overlapping functionality. @turbokongenthermostat
with climate
. The old components have been deprecated and will be removed in the near future.
A new fan component
Along with the new climate
component, @Teagan42
All changes
- Merge thermostat and HVAC components into new climate component (@turbokongen
) - Merge rollershutter and garage door components into new cover component (@turbokongen
) - Alarm Control Panel - Manual: Allow returning to previous state after trigger (@tobiebooth
) - Sensor - DHT: Allow range checking (@open-homeautomation
) - Light entities will now expose their features (@shmuelzon
) - Sensor: Monitor HP ILO sensors on HP servers (@Juggels
) - Sensor: Monitor Fritzbox Calls (@DavidMStraub
) - Notify: LlamaLab Automate is now supported (@danielperna84
) - Sensor: Serial CO2 sensors now supported (@open-homeautomation
) - Sensor: MQTT room presence detection (@mKerix
) - Notify: New group platform allows grouping notify targets across platforms (@robbiet480
) -
HTML5 push notifications (@robbiet480
, @balloob ) - Weather: Wunderground now supported (@arsaboo
, @Teagan42 ) - New check config script to test validity before restarting HA (@kellerza
) - Binary Sensor: Allow monitoring a camera feed using FFMpeg (@pvizeli
) - Cover: Z-Wave platform now supports positions (@nunofgs
) - Device tracker: allow using Gravatar for entity picture (@robbiet480
) - Notify: platforms with known targets will expose them as standalone services (@robbiet480
) - Camera: MJPEG and Generic camera’s can now authenticate using digest auth (@meatz
) - Weather: Forecast.io now can show daily temp/precip forecast values (@DavidMStraub
) - Media Player: WebOS TV now allows customizing the sources (@roidayan
) - Device tracker: Allow tracking devices using Bluetooth Low-Energy (@open-homeautomation
) - Notify: Ensure Slack messages appear as correct user (@technicalpickles
) - YAML: Secrets will look for values in all parents folders up to the config root folder (@Teagan42
) - Camera: Generic camera now supports template support (@balloob
) - Slack: Allow sending attachments (@technicalpickles
) - Device Tracking: TP-Link Archer C7 5 GHz devices will now also be found (@dpford
) - Z-Wave: New rename node service added (@jnewland
) - Wink: Bug fixes (@w1ll1am23
) - Homematic: new device and controller variable support (@danielperna84
, @pvizeli , @mcdeck ) - Allow emulating a Hue bridge to control entities (@mgbowen
) - New Fan component (@Teagan42
, @robbiet480 )
Backward-incompatible changes
- Ecobee3 occupancy sensors have moved from sensor platform to binary sensor platform.
- Forecast.io entity IDs are now like
sensor.forecastio_temperature
. Previously they were likesensor.weather_temperature
. Apologies for this change, but we needed to make Forecast.io more generic now that we have many weather platforms. - The Loop Energy sensor configuration format changed slightly, please reformat based on the revised documentation.
- The configuration for the SABnzbd sensor has slightly changed. The prefix
type:
is no longer required for monitored variables. - The IMAP sensor now uses
username
instead ofuser
. - The NZBGet sensor has had so many changes I can’t list them all. Please refer to the documentation for more info.
Deprecations
- Using the
thermostat
andhvac
components has been deprecated. Please migrate to the newclimate
component. (just change the component name, the configurations are compatible) - Using the
rollershutter
andgarage_door
components have also been deprecated. Please migrate to the newcover
component. (just change the component name, the configurations are compatible)
Finishing up
Thanks all for sticking with me to the end. I’ll be taking over a lot of Paulus’s (@balloob
Also, thanks as always to our developer contributors, documentation contributors, but most of all our users! This would’ve just been a script that Paulus (@balloob) used to control his lights at home if we didn’t have your enthusiasm.
Feel free to let me know what you thought of this blog post and release on Discord
I almost forgot about your 🎁 for reading all the way to here: a 🍪! Hope you enjoy it in good health 😄.
Talk to you soon on Discord and in your pull request comments!
– Robbie
(p.s. To those of you that scrolled directly to the bottom to get your present, just know that you didn’t earn it like the others did. 😄)
Hotfix 0.27.1 - August 30
- Migrate APCUPSd to voluptuous (@fabaff
) - Ecobee operation mode fix (@turbokongen
) - update ha-ffmpeg version to 0.9 (@pvizeli
) - Device tracker component & platform validation. No more home_range. (@kellerza
) - Added option to use effect:random for Flux Led light bulbs (@tchellomello
) - Use voluptuous for smtp (@pvizeli
) - Upgrade sendgrid to 3.2.10 (@fabaff
) - Upgrade TwitterAPI to 2.4.2 (@fabaff
) - Fix bug in wemo discovery caused by voluptuous addition. (@pavoni
) - Bug fix for asuswrt device_tracker. (@Danielhiversen
) - Remove units for humidity in Wundeground sensor (@arsaboo
) - Fix media_player descriptions and select_source (@MartinHjelmare
) - Allow user to configure server id to perform speed test against (@Teagan42
) - Bug fix for asuswrt device_tracker. (@Danielhiversen
) - More Ecobee operation mode fixes (@turbokongen
) - Map Modes to setpoint indexes (@turbokongen
) - fix voluptuous and cover autodiscovery (@pvizeli
) - Fixes wrong statevalue and problem with zwave setpoint (@turbokongen
)
Hotfix 0.27.2 - September 3
home-assistant
- Ble fix (#3019
) - (@open-homeautomation ) - Reset insteon hub (#3062
) - (@Teagan42 ) - Host should be optional for apcupsd component (#3072
) - (@Danielhiversen ) - Zwave climate Bugfix: if some setpoints have different units, we should fetch the o… (#3078
) - (@turbokongen ) - Bugfix unit fix (#3083
) - (@turbokongen ) - Ecobee humidity slider (#3088
) - (@turbokongen ) - Zwave Climate Bugfix: If device was off target temp was null. Default to Heating setpoint (#3091
) - (@turbokongen ) - Climate and cover bugfix (#3097
) - (@turbokongen ) - Add missing docstrings (fix PEP257 issues) (#3098
) - (@fabaff ) - Allow None MAC to be loaded from known_devices (#3102
) - (@kellerza ) - fix homematic climate implementation (#3114
) - (@pvizeli ) - Fixed Homematic cover (#3116
) - (@danielperna84 ) - Bugfix. climate and covermqt (#3130
) - (@turbokongen )
home-assistant-polymer
- Fix missing attributes on the climate and HVAC more info cards (7e455e2
) - (@robbiet480 ) - Add a default icon for the fan component (#101
) - (@robbiet480 )
Github-style calendar heatmap of device data
Thanks to Anton Kireyeu
Heatmap