summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorShawn S <shawnshen@google.com>2015-10-07 12:21:04 -0700
committerShawn S <shawnshen@google.com>2015-10-07 15:17:35 -0700
commit61b8682df4b0fe6c6e925bdacc51d9c40639a7b7 (patch)
tree36b09897ca4c4a783fbc63ba53fc4de6860839f5
parente9f549b42c29abb6f58935d0d77591df0705320b (diff)
downloadcommon-61b8682df4b0fe6c6e925bdacc51d9c40639a7b7.tar.gz
Add initial Brillo LED sample
Addressed review comments Change-Id: I592890434704952a13b3ff4a189760ff5a426984
-rw-r--r--brillo_leds/AndroidProducts.mk1
-rw-r--r--brillo_leds/README23
-rw-r--r--brillo_leds/brillo_leds.mk8
-rw-r--r--brillo_leds/src/brillo_led_tool/Android.mk7
-rw-r--r--brillo_leds/src/brillo_led_tool/brillo_led_tool.cpp33
-rw-r--r--brillo_leds/vendorsetup.sh1
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