Peripheral I/O

Android Things provides Peripheral I/O APIs to communicate with sensors and actuators using industry standard protocols and interfaces.

General Purpose Input/Output (GPIO) - Use this API for simple sensors such as motion detectors, proximity detectors, and level switches that report their current state as a binary value—high or low.

Pulse Width Modulation (PWM) - Use this API for servo motors, DC motors, and lights that require a proportional signal to provide fine-grained control over the output.

Serial Communication - Use these APIs to transfer larger payloads of data between two or more smart devices connected on the same local bus. The following table outlines the basic attributes of each supported serial protocol:

Protocol Transfer Type # of Wires # of Peripherals Transfer Speed
I2C Synchronous 2 Up to 127 Low
SPI Synchronous 4+ Unlimited High
UART Asynchronous 2 or 4 1 Medium