From 65fbb4da5b9bf4893f195eb3c85ee206ed8b618b Mon Sep 17 00:00:00 2001 From: Vadim Kaushan Date: Mon, 16 Jul 2018 15:48:37 +0300 Subject: [PATCH] ID115: wrist setting --- .../devices/id115/ID115Constants.java | 4 ++++ .../service/devices/id115/ID115Support.java | 21 +++++++++++++++++++ app/src/main/res/xml/preferences.xml | 9 ++++++++ 3 files changed, 34 insertions(+) diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/id115/ID115Constants.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/id115/ID115Constants.java index 07f422037b..6b4e3c985f 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/id115/ID115Constants.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/id115/ID115Constants.java @@ -7,6 +7,7 @@ import nodomain.freeyourgadget.gadgetbridge.model.NotificationType; import static nodomain.freeyourgadget.gadgetbridge.service.btle.AbstractBTLEDeviceSupport.BASE_UUID; public class ID115Constants { + public static final String PREF_WRIST = "id115_wrist"; public static final String PREF_SCREEN_ORIENTATION = "id115_screen_orientation"; public static final UUID UUID_SERVICE_ID115 = UUID.fromString(String.format(BASE_UUID, "0AF0")); @@ -31,6 +32,9 @@ public class ID115Constants { // CMD_ID_SETTINGS public static final byte CMD_KEY_SET_TIME = 0x01; public static final byte CMD_KEY_SET_GOAL = 0x03; + public static final byte CMD_KEY_SET_HAND = 0x22; + public static final byte CMD_ARG_LEFT = 0x00; + public static final byte CMD_ARG_RIGHT = 0x01; public static final byte CMD_KEY_SET_DISPLAY_MODE = 0x2B; public static final byte CMD_ARG_HORIZONTAL = 0x00; public static final byte CMD_ARG_VERTICAL = 0x02; diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/id115/ID115Support.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/id115/ID115Support.java index 522365e4ee..f4661b7037 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/id115/ID115Support.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/id115/ID115Support.java @@ -64,6 +64,7 @@ public class ID115Support extends AbstractBTLEDeviceSupport { builder.notify(normalNotifyCharacteristic, true); setTime(builder) + .setWrist(builder) .setScreenOrientation(builder) .setGoal(builder) .setInitialized(builder); @@ -305,6 +306,26 @@ public class ID115Support extends AbstractBTLEDeviceSupport { return this; } + ID115Support setWrist(TransactionBuilder builder) { + String value = GBApplication.getPrefs().getString(ID115Constants.PREF_WRIST, + "left"); + LOG.warn("wrist value: '" + value + "'"); + + byte wrist; + if (value.equals("left")) { + wrist = ID115Constants.CMD_ARG_LEFT; + } else { + wrist = ID115Constants.CMD_ARG_RIGHT; + } + + LOG.warn("Wrist: " + wrist); + builder.write(normalWriteCharacteristic, new byte[] { + ID115Constants.CMD_ID_SETTINGS, ID115Constants.CMD_KEY_SET_HAND, + wrist + }); + return this; + } + ID115Support setScreenOrientation(TransactionBuilder builder) { String value = GBApplication.getPrefs().getString(ID115Constants.PREF_SCREEN_ORIENTATION, "horizontal"); diff --git a/app/src/main/res/xml/preferences.xml b/app/src/main/res/xml/preferences.xml index 9238ead711..754af49bc5 100644 --- a/app/src/main/res/xml/preferences.xml +++ b/app/src/main/res/xml/preferences.xml @@ -514,6 +514,15 @@ + + +