From db117163f2eda4c4a580062ae8403cac0e9f0a3a Mon Sep 17 00:00:00 2001 From: koalo <koalo@koalo.de> Date: Thu, 22 Aug 2019 13:26:37 +0200 Subject: [PATCH] feat(bhi160): Toggle between sensors in app --- preload/apps/bhi160/__init__.py | 22 +++++++++++++++++++--- preload/apps/bhi160/metadata.json | 1 + 2 files changed, 20 insertions(+), 3 deletions(-) create mode 100644 preload/apps/bhi160/metadata.json diff --git a/preload/apps/bhi160/__init__.py b/preload/apps/bhi160/__init__.py index 561c3e69..3632008c 100644 --- a/preload/apps/bhi160/__init__.py +++ b/preload/apps/bhi160/__init__.py @@ -1,13 +1,20 @@ import bhi160 import display import utime +import buttons disp = display.open() +sensor = 0 -bhi = bhi160.BHI160Accelerometer() +sensors = [ + {"sensor": bhi160.BHI160Orientation(), "name": "Orientation"}, + {"sensor": bhi160.BHI160Accelerometer(), "name": "Accelerometer"}, + {"sensor": bhi160.BHI160Gyroscope(), "name": "Gyroscope"}, +] while True: - samples = bhi.read() + # Read and print sample + samples = sensors[sensor]["sensor"].read() if len(samples) > 0: disp.clear() sample = samples[0] @@ -20,11 +27,20 @@ while True: elif sample.status == 3: color = [0, 200, 0] - disp.print("Accelerometer", posy=0) + disp.print(sensors[sensor]["name"], posy=0) disp.print("X: %f" % sample.x, posy=20, fg=color) disp.print("Y: %f" % sample.y, posy=40, fg=color) disp.print("Z: %f" % sample.z, posy=60, fg=color) disp.update() + # Read button + v = buttons.read(buttons.BOTTOM_RIGHT) + if v == 0: + button_pressed = False + + if not button_pressed and v & buttons.BOTTOM_RIGHT != 0: + button_pressed = True + sensor = (sensor + 1) % len(sensors) + utime.sleep(0.1) diff --git a/preload/apps/bhi160/metadata.json b/preload/apps/bhi160/metadata.json new file mode 100644 index 00000000..e8a0a37a --- /dev/null +++ b/preload/apps/bhi160/metadata.json @@ -0,0 +1 @@ +{"author": "card10badge team", "name": "BHI160", "description": "Read BHI160 sensor data", "category": "Hardware", "revision": 1} -- GitLab