[MUSIC PLAYING]
MARCO CAVALLI: Hello, everyone, and welcome to Google I/O.
My name is Marco Cavalli, and I'm a product manager
on the Google Home team.
Together with Doug Ferraz, we'll tell you
what we've been doing to help you build and integrate
your smart home devices with Google Home.
Matter is launching this year, and it
promises to be a pivotal moment for the smart home industry.
Let's quickly recap why Matter is so important
and why so many companies have rallied together
to make it a reality.
If you are a smart home user, you
are probably familiar with the complexities
of dealing with different ecosystems and device
compatibility headaches.
By converging on a standard communication protocol,
Matter reduces fragmentation, enabling users
to buy smart home devices with the confidence
that they will work with their home setup.
Matter makes setting up devices easy
and provides users with the flexibility
to connect devices to multiple smart home ecosystems, apps,
and other devices.
Because it relies on local connectivity protocols,
such as thread and Wi-Fi, Matter improves
the quality, reliability, and performance of the smart home.
If you are a smart home device maker,
you know the challenges of supporting multiple protocols
and integrating with different ecosystems and partners
one at a time.
Matter provides a standard communication protocol
so you can now focus on your unique value proposition,
building innovative experiences to delight your users,
spending less time worrying about the infrastructure.
Since our first announcements at Google I/O
last year, we have been investing in technologies,
tools, and features that make the smart home easier and more
open for users and developers, because we believe
an open smart home unlocks innovations and growth
for everyone.
Our engineering teams have been working closely
with partners across the industry in the Connectivity
Standards Alliance to drive the Matter specification,
ensuring that it meets all the capabilities, performance,
reliability, and security requirements that
are key to building the smart home of the future.
At Google, we have been working on upgrading many of our Nest
devices to act as smarter controllers for Google Home
so that they'll be ready for your Matter devices
right off the bat.
And to make your job as device developers easier,
we have built a set of solutions and tools to help you learn,
get started, build, test, and innovate with Google Home.
This is the topic of today's presentation.
But before we dive into our developer solutions,
I just wanted to share with you what
some of the partners who have been participating
in our early access program have to say about our joint efforts
to bring Matter devices to market.
Eve highlights how our APIs, tools, documentation,
and support program have helped accelerate their development
process and improve their effectiveness and productivity.
Phillips Hue describes how our Matter development
program, with our documentation, support,
and regular release cadence have helped early testing.
This ensures that Philips Hue smart lights
will work seamlessly with Google and other platforms
when Matter officially launches.
Our developer solutions start with the Google Home Developer
Center, the unified portal for all smart home developers
to find resources, tools, and learn
about Matter and other integration paths
with Google Home.
The Developer Center also provides a Developer Console
that lets you choose the integration you prefer
and guides you through the process,
removing the guesswork.
The Developer Console provides tools
to help you manage your field trials, over-the-air updates,
and the certification process.
We have been adding documentation and features,
and we are happy to announce that the Developer Center is
publicly available at developers.home.google.com
for you to check out, and the Developer Console
will be available in June.
To make it easy for you to integrate
with Google Home quickly and with high quality,
today we are launching our Google Home extensions
for Visual Studio code.
That brings you the tools to test and debug
your integration with Google directly into your development
environment.
Doug will provide more details about our extension shortly,
and you can learn more about them on the Developer Center.
Finally, we are sharing a preview of our intelligence
clusters and how we plan to enable our partners to use
our home context intelligence within your Matter-enabled
devices, helping you innovate and build a more proactive
home for your users.
Google's whole home presence started with the Nest Learning
Thermostat that used presence to make your home more efficient.
Since then, we have added other presence signals to make home
and away more intelligent than just a motion
sensor or geofence.
Google's Home and Away intelligence
is currently used by millions of users
to drive routines that make their home more
helpful, efficient, and secure.
Now you will be able to leverage that intelligence to make
your devices more helpful, too.
Intelligence clusters allow you to access Google Intelligence
about the home locally and directly on your Matter devices
using a similar structure to clusters within Matter.
We are starting from Home and Away so
that you can build helpful automations based
on home presence directly into your Matter devices,
supercharging the unique capabilities of your devices
with Google.
To make that easy for you, we are providing a device
SDK that abstracts away the complexity of dealing
with low-level connectivity and permissioning so that you can
start building quickly, focusing on your unique value
proposition.
The security and privacy of our mutual users are paramount,
and to protect them, we are building guardrails
into our intelligence clusters to ensure
that user information is always encrypted,
processed locally, and only with user consent and visibility.
If you are interested in learning more
about intelligence clusters, head to the Developer Center,
where you can sign up to get updates
and request to participate in our developer preview.
And now I'll hand it over to Doug,
who will walk you through the developer journey with Google
and provide more details about the Developer
Console and our Visual Studio code extensions.
DOUG FERRAZ: Hi, everyone.
My name is Doug Ferraz, and I'm a systems engineer at Google.
My role is to assist you in creating devices that
work great with Google Home.
In this talk, we'll cover the six steps to ship
device software with Matter--
develop, test, run a field trial,
certify, launch, and OTA updates.
Our goal is to help you go from zero to Matter fast
and with confidence.
First thing, I will show you how to create your project
in the Google Home Developer Center, the all new place where
your Matter and Google Home projects and integrations live.
The Developer Console will be available in Developer Preview
in June for everyone to try.
With the preview launch at the end of the month,
you will also get access to the supporting code labs.
You will start by navigating to developers.home.google.com,
then the Console.
You'll be prompted to either add a functionality
to your existing project or create a new project.
Let's create a new project.
You will enter a name for your project then
confirm on Create New Project.
Back to the main project screen, you will select Plus,
Add Matter Integration.
When you start a new Matter integration,
you'll be able to see all the Matter resources provided
to you by Google.
In the Development tab, you enter
the product name, device type, Product ID, or PID,
and Vendor ID, or VID.
Don't worry if you don't have a VID yet.
The standards organization driving Matter, the CSA,
or Connectivity Standards Alliance,
provides VIDs to the members who apply for one.
If you don't have one yet, there are test VIDs you can use.
The first step to building firmware
is setting up your development environment.
You can do it by cloning the Matter SDK from GitHub,
but we know that getting all dependencies right
might take time.
We've made it easy for you by making a container that
includes a full working development environment,
so you can pull it and get started developing right away.
Moreover, this container allows you
to run a virtual device inside your computer,
simulating a physical Matter device from your developer
environment.
You can do everything a physical Wi-Fi or thread device can do,
including integration with the Google Home Assistant.
So let's build the software.
There are many simple applications
available in the Examples folder,
but we'll use an app called Chef which allows us to create
many device type templates.
To make it more concrete, let's imagine we're
building a new smart lightbulb.
On the terminal, we'll navigate to the Chef Example folder
and create a lightbulb template with chef.py dash bz,
dash d as in device, lightbulb, dash t as
in target, your selected chipset target.
Don't worry about the details of the build.
We provide further information in our accompanying code lab.
Now we'll run our virtual device by entering the path
of the built binary file.
At this stage, we can start the commissioning process.
Commissioning is the term used in Matter
for pairing your device with the Matter fabric, which
is defined in Matter as a shared domain of trust between devices
on a home network.
Devices can be simultaneously on different fabrics.
For example, you can have a lightbulb commission
both on Google and your fabric.
If you are a professional developer or a hobbyist
and you want to learn how to commission
your devices on both Google and a custom fabric,
check out Pierre's technical session
on the Google Home Mobile SDK.
To start commissioning, in your Android phone,
you open the Google Home app.
Click on the Plus button on the upper left corner.
Click on Setup Device, New Device.
Select your home and click Next.
A screen showing "Looking for Devices" will be shown.
Once your device is found, you will be prompted to confirm.
You will scan your device's QR code,
and the commissioning process will complete.
Now that your device is commissioned,
it can be controlled through Google Home app on your phone
or through voice and touch on other Nest Hub devices.
Now that you have built and you are running the device side
software, you will want to start testing it.
There are many types of tests that can be performed,
but when it comes to end-to-end testing with an ecosystem,
we got you covered.
Google Home Extension for Visual Studio code
allows you to perform several tasks
from your IDE directly interfacing
with Google Home's Cloud.
For example, you can type a command, such as turn
on my lightbulb, and the assistant
will process your request in the cloud
and send the command to the device.
This extension allows you to test
both your Matter and existing non-Matter devices that
are integrated in Google Home.
The extension shows the cloud logs in real time.
That means that you can see all the communication
flowing in both directions and identify issues.
You can filter by severity, time range.
You can also set it to update on real time.
Clicking on a log allows you to inspect the JSON
content of the messages, and the Home Graph Viewer
shows all the devices in your home
that are on the Google fabric.
You may check details on the traits of the devices,
such as whether they are on or off.
The IDE allows you to issue Assistant commands
in scripted format to help you test faster
in a more repeatable way.
Isn't that cool?
But testing doesn't stop there.
After all, before shipping your products
or going through Matter certification or Google
certification processes, you want
to stress test your devices with a batch of repetitive queries
to confirm that your integration is bulletproof.
Google makes that easy for you by providing the Google Home
test suite.
You can access the test suite from the Developer Center.
There, you'll see all the devices
that you have integrated with Matter.
First, let's configure a test.
Click on the Test button on the integration you want to test.
Select Development Test.
When you are ready to certify with Google after your Matter
certification, you can also run certification tests from here.
Sit down and relax or go grab a coffee while the test
suite works for you.
Great, we passed the test.
Time for the field trial.
One of the best ways to make sure your device is rock solid
is to do a field trial, sometimes referred
to as dog food in the industry.
This process exposes your device to infield environments and use
cases you might have missed during development.
That allows your team to iterate on design
and to fix bugs before your official launch.
Google Home also helps you plan and execute your field trials.
You will find it on the Google Home Developer Center.
In the Field Trial tab, you are able to select
the devices you want to include in your trial,
then add the emails and Google Groups with the testers.
We also make it easy for you to gather data from your testers
and then aggregate all the results for your certification
process.
Once you decide to start your field trial,
its state changes to submitted.
Our team will quickly review and approve your field trial plan.
Now, you better start shipping your beta devices
to your testers, because your field trial is about to start.
Once you're confident that your device is market ready,
you will need to go through Matter certification.
After your device has passed the Connectivity Standards Alliance
Matter certification, the end-to-end tests
you previously ran on the test suite
are used by us to validate that your product works
great with Google Home.
Our validation process is required
to unlock the additional functionality
that Google Home offers, such as device firmware
updates, the intelligence clusters, like Home
and Away for all the production devices.
It also allows you to carry the Works with Google Home
badge on the device.
To start certification, select your devices under the Ready
section and click Certify.
In the next page, you'll tell us a bit more about your product
and upload supporting documentation.
Hit Submit, and you're done.
We'll review your submission and notify you by email
if you've been approved.
The retailers are stocked.
The ads are being aired.
Social media is buzzing, and the tech press
picked up on your story.
Are you ready for the big day?
Launching with Google Home has never been easier.
And where are you going to do it?
I'll give you one guess, and you got it-- the Google Home
Developer Center.
Click on the Launch tab.
Select the device you want to launch.
In the pop window, you will select
whether you want to launch it now or schedule a launch.
This determines when your project goes live.
And you are done.
Congratulations.
We're delighted that you're selling your devices,
making your users happy, and having
a return on your investment.
But a smart device is not finished the moment
you ship it.
Like any living software, it has a life cycle,
with bugs being fixed and new features added,
so it's important that you plan ahead
on how you'll deliver all the software updates
to your devices in production.
This process is often referred to as OTA,
or Over-The-Air firmware updates.
Google provides a seamless way for you
to update your devices using Google's infrastructure.
To do it, go to OTA in the Developer Center.
Once you click on an integration you want to manage,
you'll see three main types--
Rules, Channels, and Images.
Let's start with Images.
In Images, you will upload all the device's firmware images.
For example, you might have a few stable versions
and others that are meant for your beta testers.
The channels create categories of devices.
We might have a production channel and a beta tester
channel.
The magic happens in the Rules tab.
Here, you can specify which devices can be updated
to specific firmware versions.
You'll be able to create update paths,
so whenever you make a big change,
you are assured that devices update smoothly, even if they
are several versions behind.
Here at Google, we are excited about the devices
you will build, and we are here to help you
the best way we can on each step of your journey.
Check out Google Home I/O sessions
from Pierre, Jessica, Yeet, Marco, and Michelle.
Our developer relations team is there
to help you build your next smart home device hit.
Thank you.
[MUSIC PLAYING]