At Google I/O, the company’s annual developer conference, held today, Google senior VP Sundar Pichai introduced Brillo, which he billed as an operating system for the Internet of Things, as well as Weave, a common language through which devices can connect via Wi-Fi, Bluetooth or Thread (an IPv6-based wireless network protocol).
“By taking physical devices and connecting them, in a smart way, to the Internet, we think we can transform experiences for users,” Pichai told attendees during the I/O keynote address, by way of introducing the much-anticipated Brillo. “We want to connect more devices—from parking meters to washing machines to airport kiosks.”
Brillo is derived from the Android operating system, Pichai said, but is optimized to run on devices with a small computing footprint, such as an Internet-connected door lock or a light bulb. Google, however, is targeting Brillo to other sectors besides the smart-home market.
“You can imagine a farmer controlling [connected devices on] her farm from her mobile phone,” Pichai explained. Cities could use Brillo to connect sensors to provide visibility into the movement of busses or trains that are part of its public transit system, or to understand the movements and chokepoints of traffic.
Brillo, which Pichai said would be available to developers beginning in the third quarter of this year, consists of a kernel, for managing input and output commands to the device, as well as a hardware abstraction layer, which will make the operating system function in a common way across disparate hardware devices. The hardware abstraction layer then connects to the wireless networking protocol—such as Wi-Fi, Bluetooth or Thread—that the device uses to access a gateway or the Internet.
Noting the lack of interoperability between connected devices—something that has frustrated many early adopters of IoT technology for smart-home applications—Pichai said Google is also introducing Weave, a common language that will enable application developers to ensure that IoT devices will “talk to each other, talk to the cloud and talk to your [Android] phone.”
Using standardized schemas, developers will be able to use Weave to ensure, for example, that when a camera takes a photograph, all of the devices to which it is connected will understand the programming language that refers to that command. Likewise, an electronic door lock will use one command for locking and another for unlocking, and all of the devices that work with that lock—such as a gateway, an alarm system or the user’s Android phone—will understand those commands. Google is also launching a certification program so that developers who employ Weave application programming interfaces (APIs) will be able to make sure that connected devices interoperate as they should.
Weave can work in conjunction with Brillo, or it can run on another software stack. And any Android device will recognize any connected device based on Brillo or Weave. Google plans to release Weave during the fourth quarter of 2015.
Engineers from Google-owned Nest, as well as from its Android development team, worked together to create Brillo and Weave, Pichai said, in order to build an end-to-end solution, from operating system to communication protocols to user interfaces, for creating connected devices.
Consumers who use the Nest thermostat can already connect it to other IoT devices, thereby enabling Nest to understand where a person is (in the car, driving home) or what he or she is doing (sleeping) and to then adjust that individual’s house temperature accordingly. If Brillo and Weave are a hit with device makers for the consumer market, it could give Google a leg up on Apple, which is vying for IoT platform dominance with its HomeKit, which lets consumers use their iPhones and iPads to control door locks and other devices.