From c3a0fabd10a9fded7fb578a5b7f24edc53850666 Mon Sep 17 00:00:00 2001 From: Manish Date: Thu, 25 Apr 2019 13:54:04 +0530 Subject: [PATCH] log display as delays, used toast instead of log --- .../androidthings/simplepio/ButtonActivity.java | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/java/button/src/main/java/com/example/androidthings/simplepio/ButtonActivity.java b/java/button/src/main/java/com/example/androidthings/simplepio/ButtonActivity.java index a0e9957..f44b17b 100644 --- a/java/button/src/main/java/com/example/androidthings/simplepio/ButtonActivity.java +++ b/java/button/src/main/java/com/example/androidthings/simplepio/ButtonActivity.java @@ -22,6 +22,7 @@ import com.google.android.things.pio.PeripheralManager; import android.os.Bundle; import android.util.Log; +import android.widget.Toast; import java.io.IOException; @@ -39,16 +40,28 @@ protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); Log.i(TAG, "Starting ButtonActivity"); + + try { + String pinName = BoardDefaults.getGPIOForButton(); mButtonGpio = PeripheralManager.getInstance().openGpio(pinName); + // Initialize the pin as an input mButtonGpio.setDirection(Gpio.DIRECTION_IN); - mButtonGpio.setEdgeTriggerType(Gpio.EDGE_FALLING); + // High voltage is considered active + mButtonGpio.setActiveType(Gpio.ACTIVE_LOW); + + // Register for all state changes + mButtonGpio.setEdgeTriggerType(Gpio.EDGE_RISING); + + mButtonGpio.registerGpioCallback(new GpioCallback() { + int counter=0; @Override public boolean onGpioEdge(Gpio gpio) { - Log.i(TAG, "GPIO changed, button pressed"); // Return true to continue listening to events + counter++; + Toast.makeText(ButtonActivity.this, "Button clicked counter :"+counter, Toast.LENGTH_SHORT).show(); return true; } });