Open source peripheral drivers
Clone or download
devunwired Merge pull request #114 from pimoroni/patch-cap12xx-i2c-addr-select
cap1xxx - add support to specify alternate i2c address (#111)
Latest commit aa3209b Sep 20, 2018
Permalink
Failed to load latest commit information.
adc Add link to ADS1015 sample. Aug 1, 2018
apa102 Expose SPI mode because not all off-brand LEDs work with MODE2. Jun 27, 2018
bmx280 Merge pull request #105 from Sensirion/fix-typo Jul 3, 2018
button Merge pull request #108 from david-fournier-smartnsoft/patch-1 Jul 30, 2018
cap1xxx Docstring changes and I2C_ADDRESS variable rename Sep 20, 2018
gps Add license headers. Jun 26, 2018
gradle/wrapper Upgrade to the latest DP8 syntax changes Apr 10, 2018
ht16k33 ht1633k: Add constants for individual segments May 31, 2018
lowpan Update all drivers to version 1.0 May 7, 2018
matrixkeypad Update all drivers to version 1.0 May 7, 2018
mma7660fc Update all drivers to version 1.0 May 7, 2018
motorhat Update all drivers to version 1.0 May 7, 2018
pwmservo Update all drivers to version 1.0 May 7, 2018
pwmspeaker Update all drivers to version 1.0 May 7, 2018
rainbowhat Update all drivers to version 1.0 May 7, 2018
sensehat Update all drivers to version 1.0 May 7, 2018
ssd1306 Bug: 64812809 Make I2C_ADDRESS_SA0_LOW as default I2C address. Jun 11, 2018
testingutils Update to android things sdk 1.0 May 5, 2018
thermalprinter Creates driver for thermal printer Jun 22, 2018
tm1637 Update all drivers to version 1.0 May 7, 2018
vcnl4200 Update all drivers to version 1.0 May 7, 2018
voicehat Update all drivers to version 1.0 May 7, 2018
zxgesturesensor Update all drivers to version 1.0 May 7, 2018
.gitignore First commit Jul 14, 2016
.travis.yml Update gradle, gradle plugin and travis config Apr 3, 2018
CONTRIBUTING.md Fixes links in CONTRIBUTING.md Nov 30, 2017
LICENSE brillo-drivers: switch copyright to google Nov 30, 2016
README.md Update driver list in README.md Aug 10, 2018
build.gradle Creates driver for thermal printer Jun 22, 2018
driver-style-guide.md Add user driver submission guidelines and style guide. May 1, 2018
driver-submission-instructions.md Add user driver submission guidelines and style guide. May 1, 2018
gradlew Update to DP6 and fix vcnl4200 and motorhat Nov 30, 2017
gradlew.bat Update to DP6 and fix vcnl4200 and motorhat Nov 30, 2017
publish.gradle Change publish script to consider new dependencies keywords Dec 11, 2017
settings.gradle Rename cap12xx to cap1xxx, and update/deprecate old artifact. Aug 2, 2018

README.md

Android Things user-space drivers Build Status

Sample peripheral drivers for Android Things.

NOTE: these drivers are not production-ready. They are offered as sample implementations of Android Things user space drivers for common peripherals as part of the Developer Preview release. There is no guarantee of correctness, completeness or robustness.

How to use a driver

For your convenience, drivers in this repository are also published to JCenter as Maven artifacts. Look at their artifact and group ID in their build.gradle and add them as dependencies to your own project.

For example, to use the button driver, version 1.0, simply add the line below to your project's build.gradle:

dependencies {
    implementation 'com.google.android.things.contrib:driver-button:1.0'
}

Current contrib drivers

Driver Type Usage (add to your gradle dependencies) Note
driver-adc Analog to Digital Converters implementation 'com.google.android.things.contrib:driver-adc:2.0' sample changelog
driver-apa102 RGB LED strip implementation 'com.google.android.things.contrib:driver-apa102:1.0' sample changelog
driver-bmx280 temperature, pressure and humidity sensor implementation 'com.google.android.things.contrib:driver-bmx280:1.0' sample changelog
driver-button push button over GPIO implementation 'com.google.android.things.contrib:driver-button:1.0' sample changelog
driver-cap1xxx capacitive touch buttons implementation 'com.google.android.things.contrib:driver-cap1xxx:2.0' changelog
driver-gps GPS implementation 'com.google.android.things.contrib:driver-gps:1.1' sample changelog
driver-ht16k33 7-digit alphanumeric segment display implementation 'com.google.android.things.contrib:driver-ht16k33:1.1' sample changelog
driver-lowpan LoWPAN support over UART implementation 'com.google.android.things.contrib:driver-lowpan:1.0' sample changelog
driver-matrixkeypad driver for generic matrix keypads implementation 'com.google.android.things.contrib:driver-matrixkeypad:1.0' sample changelog
driver-mma7660fc accelerometer sensor implementation 'com.google.android.things.contrib:driver-mma7660fc:1.0' sample changelog
driver-motorhat DC Motor HAT implementation 'com.google.android.things.contrib:driver-motorhat:1.0' sample changelog
driver-pwmservo PWM servo implementation 'com.google.android.things.contrib:driver-pwmservo:1.0' sample changelog
driver-pwmspeaker PWM speaker/buzzer implementation 'com.google.android.things.contrib:driver-pwmspeaker:1.0' sample changelog
driver-rainbowhat metadriver for the Rainbow HAT implementation 'com.google.android.things.contrib:driver-rainbowhat:1.0' sample changelog
driver-sensehat metadriver for the Sense HAT implementation 'com.google.android.things.contrib:driver-sensehat:1.0' changelog
driver-ssd1306 OLED display implementation 'com.google.android.things.contrib:driver-ssd1306:1.1' sample changelog
driver-thermalprinter Driver for a thermal printer implementation 'com.google.android.things.contrib:driver-thermalprinter:0.1' changelog
driver-tm1637 4-digit numeric segment display implementation 'com.google.android.things.contrib:driver-tm1637:1.0' sample changelog
driver-vcnl4200 proximity and ambient light sensor implementation 'com.google.android.things.contrib:driver-vcnl4200:1.0' changelog
driver-voicehat driver for VoiceHat implementation 'com.google.android.things.contrib:driver-voicehat:1.0' sample changelog
driver-zxgesturesensor zx gesture sensor implementation 'com.google.android.things.contrib:driver-zxgesturesensor:1.0' changelog

Deprecated drivers

Driver Type Usage (add to your gradle dependencies) Reason
driver-adcv2x Sparkfun ADC Block for Intel Edison implementation 'com.google.android.things.contrib:driver-adcv2x:1.0' Superseded by driver-adc
driver-cap12xx capacitive touch buttons implementation 'com.google.android.things.contrib:driver-cap12xx:1.0' Superseded by driver-cap1xxx

License

Copyright 2016 Google Inc.

Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.