1 of 16

Brillo and Weave: A first look

GDG-Capital Region

12 Nov 2016

2 of 16

Who am I?

Allen Firstenberg

Software Developer / Consultant

(I’m not a hardware guy!)

Google Developer Expert

http://spiders.com/

http://prisoner.com/

3 of 16

Overview

4 of 16

What are Brillo and Weave?

  • Google’s plan to apply lessons learned and technology from Android and Cloud to a broader range of devices.
    • Lights
    • Door locks
    • Printers and Scanners
  • Weave is a data protocol
    • Local and Cloud
  • Brillo is a device specification
    • Uses Weave

5 of 16

Why Google?

  • Existing solutions were ad-hoc, non-standard, and didn’t necessarily scale
  • Google had a vested interest with its existing Android and Cloud infrastructure and developers
  • Security
  • Security
  • Security

6 of 16

Why do you care?

  • Users want reasonable assurances that their door locks and light bulbs are secure, reliable, and not too expensive
  • Developers expect to learn one set of core technologies that you can adapt to many devices
  • Hardware manufacturers want to do what they do best - make hardware, not software

7 of 16

Weave

8 of 16

What is the Vision?

  • Easy setup
    • User and Network configuration to app installation
  • Quick access
    • Local
    • Cloud, if the user permits it and the network is available
  • Interoperability
    • Standard schemas for commands and states
    • Schema discovery
  • Security
    • Securely establish an owner
    • Let the owner permit other people to certain commands

9 of 16

Weave Today

  • libweave
    • Available for unix-like platforms
    • Requires HTTPS
    • Handles local and cloud state changes
    • Still work in progress - needs event handler
  • Weave configuration for Android and Chrome
  • Weave cloud console

10 of 16

Brillo

11 of 16

What is the Vision?

  • Hardware specification to build on top of
    • Keep costs down
  • Standard core OS and libraries maintained by Google
    • Linux (Android minus the Android stuff)
    • Weave
  • Easy to add services
    • This is where a manufacturer puts in their product support
    • No need to touch core OS!
  • Easy and secure deployment
    • Deployment console from Google - managed by manufacturer
    • Aggregate monitoring and crash reporting
    • A / B partition using ChromeOS deployment scheme

12 of 16

Brillo Today

  • Hardware availability
    • Intel Edison
    • Qualcomm Dragonboard
    • Marvell Andromeda Box Edge
    • Rockchip Kylin RK3036
  • Target hardware
    • ARMv7, Intel x86, or MIPS processor
    • 32 MB RAM
    • 128 MB flash storage or more
    • Wi-Fi required (bluetooth coming soon)
  • OS is more linux than Android
    • SELinux
    • C++ - no Java

13 of 16

Google Assistant?

14 of 16

Huh?

We don’t know how the Google Assistant can be incorporated into Brillo devices…

… but there are some interesting hints floating around.

15 of 16

Demo?

(Probably not, but you can look at the board)

16 of 16

Any Questions?