diff options
author | Shawn S <shawnshen@google.com> | 2015-10-07 12:21:04 -0700 |
---|---|---|
committer | Shawn S <shawnshen@google.com> | 2015-10-07 15:17:35 -0700 |
commit | 61b8682df4b0fe6c6e925bdacc51d9c40639a7b7 (patch) | |
tree | 36b09897ca4c4a783fbc63ba53fc4de6860839f5 | |
parent | e9f549b42c29abb6f58935d0d77591df0705320b (diff) | |
download | common-61b8682df4b0fe6c6e925bdacc51d9c40639a7b7.tar.gz |
Add initial Brillo LED sample
Addressed review comments
Change-Id: I592890434704952a13b3ff4a189760ff5a426984
-rw-r--r-- | brillo_leds/AndroidProducts.mk | 1 | ||||
-rw-r--r-- | brillo_leds/README | 23 | ||||
-rw-r--r-- | brillo_leds/brillo_leds.mk | 8 | ||||
-rw-r--r-- | brillo_leds/src/brillo_led_tool/Android.mk | 7 | ||||
-rw-r--r-- | brillo_leds/src/brillo_led_tool/brillo_led_tool.cpp | 33 | ||||
-rw-r--r-- | brillo_leds/vendorsetup.sh | 1 |
6 files changed, 73 insertions, 0 deletions
diff --git a/brillo_leds/AndroidProducts.mk b/brillo_leds/AndroidProducts.mk new file mode 100644 index 0000000..7f9fdb1 --- /dev/null +++ b/brillo_leds/AndroidProducts.mk @@ -0,0 +1 @@ +PRODUCT_MAKEFILES := $(LOCAL_DIR)/brillo_leds.mk diff --git a/brillo_leds/README b/brillo_leds/README new file mode 100644 index 0000000..e0fe8ec --- /dev/null +++ b/brillo_leds/README @@ -0,0 +1,23 @@ +README for Brillo LED sample + +This LED sample creates a service that can be run on Brillo Dragonboard. It animates LED 1 through LED 4. + +Once built, you can find the binary inside your AOSP tree at: + +out/target/product/dragonboard/symbols/system/bin/led_service + +Do the following to deploy the sample: + + - adb root + - adb remount + - adb sync + +Do the following to run the sample on Dragonboard: + + - adb shell + - /system/bin/led_service & + - logcat + +Note the last step shows logging info + + diff --git a/brillo_leds/brillo_leds.mk b/brillo_leds/brillo_leds.mk new file mode 100644 index 0000000..cc2b31e --- /dev/null +++ b/brillo_leds/brillo_leds.mk @@ -0,0 +1,8 @@ +$(call inherit-product, device/generic/brillo/brillo_base.mk) + +PRODUCT_NAME := brillo_leds +PRODUCT_BRAND := Brillo + +PRODUCT_DEVICE := dragonboard +PRODUCT_PACKAGES += brillo_led_tool + diff --git a/brillo_leds/src/brillo_led_tool/Android.mk b/brillo_leds/src/brillo_led_tool/Android.mk new file mode 100644 index 0000000..b9a1320 --- /dev/null +++ b/brillo_leds/src/brillo_led_tool/Android.mk @@ -0,0 +1,7 @@ +LOCAL_PATH := $(call my-dir) +include $(CLEAR_VARS) +LOCAL_MODULE := brillo_led_tool +LOCAL_SRC_FILES := brillo_led_tool.cpp +LOCAL_SHARED_LIBRARIES := libc libbase +LOCAL_CFLAGS := -Werror +include $(BUILD_EXECUTABLE) diff --git a/brillo_leds/src/brillo_led_tool/brillo_led_tool.cpp b/brillo_leds/src/brillo_led_tool/brillo_led_tool.cpp new file mode 100644 index 0000000..3f6845a --- /dev/null +++ b/brillo_leds/src/brillo_led_tool/brillo_led_tool.cpp @@ -0,0 +1,33 @@ +#include <unistd.h> +#include <base/logging.h> + +int main(int argc __unused, char **argv __unused) { + static const char* const leds[] = { + "/sys/class/leds/led1/brightness", + "/sys/class/leds/led2/brightness", + "/sys/class/leds/led3/brightness", + "/sys/class/leds/boot/brightness" + }; + + LOG(INFO) << "starting blinking LEDs"; + int i = 0; + for(;;) { + FILE *fp; + fp = fopen(leds[i], "w"); + if (fp == NULL) { + PLOG(ERROR) << "Error opening file"; + return 0; + } else { + fputs("255", fp); + fseek(fp, 0, SEEK_SET); + sleep(1); + fputs("0", fp); + fclose(fp); + LOG(INFO) << "toggling LED " << i + 1 << " on/off"; + i++; + i = i % 4; + } + } + LOG(INFO) << "exiting"; + return 0; +} diff --git a/brillo_leds/vendorsetup.sh b/brillo_leds/vendorsetup.sh new file mode 100644 index 0000000..ace4f2e --- /dev/null +++ b/brillo_leds/vendorsetup.sh @@ -0,0 +1 @@ +add_lunch_combo brillo_leds-userdebug |