Last Saturday (Oct 5th) Urban Marovt, Head of Product at 1Home, had an inspiring talk at DevFest Sofia, Bulgaria. DevFest is one of the biggest GDG (Google Developers Group) events happening around the globe, focused on community building and learning about Google technologies. It’s a great opportunity for people that work on Google platforms to connect beyond the screen and build even greater products, all in a relaxed, enthusiastic, positive & open-minded environment.
It’s important to mention that GDG DevFests are community-led events that are not owned or supported by Google directly. Each DevFest is inspired by and uniquely tailored to the needs of the developer community and region that hosts it. While no two DevFests will be exactly alike, each at its core is powered by a shared belief that when developers come together to exchange ideas, amazing things can happen.
This year in Sofia the highlights were mobile solutions such as Android, Kotlin, Flutter as well as Google Cloud and Google Assistant, since there’s a big mobile developer community thriving in Bulgaria.
Some of the Rockstar speakers at the event include Marek Biskup and Maria Encinar that are part of the Google team. Their goal was less about preaching the Google values and more about listening to the community and learning from developers themselves.
Among the plethora of Kotlin, Flutter and Android development, Urban’s topic was the only one focusing on the Google Home system and Google Assistant. This and the lively debate that followed his presentation show that Google Assistant platform’s popularity is on the rise and sparking more and more interest among developers.
The topic of Urban’s presentation was: The complexity of integrating more than 150 devices into Google Home system. Due to the number of steps, the position of the rooms and processing of the commands that need to be made by the smart speaker, this is considered a complex integration.
Maybe you were wondering where does 1Home come into play in all this?
1Home is acting as a bridge between the world of wired smart homes such as Loxone, Gira or KNX, and the world of voice assistants (Google Home, Amazon Alexa, Apple HomeKit). The connection of these two worlds enables users to have voice control, smart home automations and integration of several other IoT devices (Philips Hue lamps, Sonos speaker, …) to enrich their existing smart home.
Feel free to test the functionalities on our 7-day free trial.
The Google Home integration is made out of these five steps that are all parts of the devices’s final reaction time.
- Account Linking
- Device Discovery
- Device Execution
- Device Query
- Report State
Account linking is the process where customer links their Google action (or Alexa skill) with the integrated platform. In our case, this is the linking of the 1Home Google skill.
Device Discovery is the part where users’ devices are exposed in the right context for each specific platform Google Action, Amazon Alexa and Apple Homekit.
Device Execution enables customers to execute some action on particular device.
Device Query is the process which enables Google Home Action to fetch the current device state and reports the state. E.g. when you ask your assistant what’s the temperature of the swimming pool.
Report State is the last step and it’s optional in Google Home action and Amazon Alexa skill. It covers the two way communication between the platform and the device. Both previous actions are based on platform action, but the last one enables if any change happens it can also notify the voice assistant platform.
The basis for your Google Assistant to understand what you mean when you say “Kitchen off” or “All lights on” is the internal home structure pictured below. Google is describing Google Home Graph as the home database, which gives Google the contextual data representation of customers home. This information is available to the Google Assistant in order to execute user requests based on the appropriate context.
The challenges that big integrations (more than 150 devices) bring are intensified with adding smart homes into the equation.
Two of the main challenges are:
a) Request latencies
Request need their time to be processed and executed. The current speech-to-text lasts around 1 second, although Google is planning to introduce local processing of some voice commands by reducing the speech recognition model size to 80MB. However the connection to the smart home lasts more than 1 second on average due to the smart server gateway structure.
In case you integrate 1Home solution using our hardware device, we automatically open a persistent connection to your smart home, which removes the need for opening a new connection for each execution. In this case the execution time is 150 milliseconds which can hardly be noticed.
b) Abstract device type layer
Integrating all different solutions requires an abstraction of every device type. This abstraction enables easier translation between device types and different action values. Device types and capabilities tend to be inconsistent and vary between voice assistant platforms as well as action values.
Want to know more about how to connect Google Assistant to your smart home? Here are the possible combinations: