Awesome Android Things

A curated list of awesome Android Things, tutorials, libraries and much more at one place. Here you can find references about everything you do during Android Things application development.

My Personal Blog - - High-quality content to learn Android concepts.


Useful links

Overview posts

Introductions for Android developers

Sample apps and libraries

  • drivers-sample - Android Things driver samples: RGB LED strip (APA102), Temperature sensor (BMP280), Capacitive touch (CAP12xx), UART GPS, Segment display (HT16k33), Accelerometer (mma7660fc), PWM servo, PWM speaker, SSD1306 OLED display, 4-Digit Segment Display (tm1637), RainbowHat, SenseHat
  • New Project Template - Android Things empty project template.
  • CrunchyCalendar - A material calendar widget with infinite scrolling, date range selection and color customization.
  • sample-simplepio - Simple example of Android Things Peripheral I/O APIs.
  • sample-simpleui - Android Things Simple UI.
  • sample-button - Button and LED sample for Android Things.
  • sample-uartloopback - UART Loopback sample for Android Things.
  • sample-doorbell - Android Things Doorbell sample.
  • sample-weatherstation - Android Things Weather Station sample.
  • sample-nativepio - 3 simple examples using native c++ peripheral IO API.
  • sample-tensorflow-imageclassifier - Android Things TensorFlow image classifier sample.
  • Serial Port Api - A library to access serial ports in Android.
  • DoReFindMi - Musical, button combination-finding game for Rainbow HAT for Android Things.
  • candle - Simulation of a candle
  • native-libandroidthings - Android Things Native Library.
  • Robot - Android Things robot, controlled by web interface.
  • remote-barometer - Android Things project using BMP-180 pressure sensor, Firebase and android mobile app for rendering data
  • example GPIO input - GPIO input (button) clean code sample
  • example GPIO output - GPIO output (LED) clean code sample
  • example PWM - PWM (speaker/buzzer) clean code sample
  • example Speech-To-Text Speech-to-text with open source CMU Pocketsphinx recognizer.
  • codelab button-Firebase Codelab starting from button input to Firebase sync
  • Remote Storage - Create an FTP server using on raspberry pi and build your own wireless storage & backup solution for home.
  • Smart Switch - Control your home switches remotely from phone using Android Things & firebase realtime database.
  • Collision Detector - Get the distance of the object and alert using LED when object is too close using ultrasonic ranging sensor HC-SR04.
  • Smile Candy Machine - Presented at Google I/O 2017 - a candy dispenser activated by smiles. Uses Google Cloud Vision API and Firebase.
  • sample-hd44780 - This sample demonstrates how to control the HD44780 LCD using PCF8574's I2C with Android Things.
  • sample-lsm9ds1 - This sample demonstrates how to control the LSM9DS1 acceleration sensor and integrate it to the Android SensorManager.
  • sample-sh1106 - This sample demonstrates how to control the SH1106 OLED display using I2C with Android Things.
  • sample-hcsr04 - This sample demonstrates how to control the HC-SR04 ultrasonic ranging module and integrate it to the Android SensorManager.
  • sample-softpwm - This sample demonstrates how to control both software and hardware PWM.
  • sample-ds3231 - This sample demonstrates how to control the DS3231 real-time clock (RTC) using I2C with Android Things.
  • Smart Room - This sample shows how turn on/off a light by using a Relay and Firebase. / Este ejemplo muestra como prender y apagar la luz usando un relay y firebase


  • 1602 LCD display - 1602 LCD display
  • A4988 - A4988 stepper motor driver
  • ADXL345 3-axis accelerometer - ADXL345 3-axis accelerometer
  • ADXL362 Accelerometer - ADXL362 Accelerometer
  • Bosh BMP85/BMP180 - Bosh BMP85/BMP180 barometer
  • contrib-drivers - Android Things Open source peripheral drivers: RGB LED strip (APA102), Temperature sensor (BMP280), Capacitive touch (CAP12xx), UART GPS, Segment display (HT16k33), Accelerometer (mma7660fc), PWM servo, PWM speaker, SSD1306 OLED display, 4-Digit Segment Display (tm1637), RainbowHat, SenseHat
  • DaSiAnThiLib - HD44870 type displays (via LCM1602), PCF8574(A), PCF8591, Push buttons connected via PCF8574, TCS34725 I2C Colour sensor
  • DS3231 - real-time clock (RTC)
  • HC-SR04 Ultrasonic UserSensor - HC-SR04 Ultrasonic UserSensor
  • HC-SR04 - ultrasonic ranging module
  • HC-SR501 Motion Sensor - Motion Sensor Driver with creation tutorial
  • HCSR501 motion sensor - HCSR501 motion sensor
  • HD44780 - alphanumeric dot matrix LCD
  • HMC5883L 3-axis magnetometer - HMC5883L 3-axis magnetometer
  • keypad - Matrix Keypad
  • ledcontrol - MAX72xx LED Matrix
  • LSM9DS1 - 3D accelerometer, 3D gyroscope, 3D magnetometer and temperature sensor
  • MCP3008 - Sample to use MCP3008 Analog to Digital Converter
  • MPR121 - Proximity capacitive touch sensor
  • MPR121 - MPR121 I2C touch sensor driver (tested on "Grove - I2C Touch Sensor")
  • numpad12 - Numpad with 12 buttons
  • RFID-RC522 - RFID reader for MIFARE cards. Authentication, reading and writing.
  • SoftPwm - Software PWM library for Android Things
  • Sparkfun - Combined driver for the sparkfun blocks: OLEDBlock, LSM9DS0, UART
  • SH1106 - OLED display
  • ULN2003 - 28BYJ-48 Stepper motor with ULN2003 driver
  • WS2801 - LED strips WS2801
  • BH1750 - Light sensor
  • TSL256x - Light-to-digital sensor driver


  • Updating it on daily basis as much as possible so that we will be always updated.

Found this project useful ❤️

  • Support by clicking the ⭐ button on the upper right of this page. ✌️

Contact - Let's become friends



To the extent possible under law, Amit Shekhar has waived all copyright and related or neighboring rights to this work.


Your contributions are always welcome! Just follow the following format: [reference name](link) - Description. If you like it, give a star to this project