From 165dcf897b4e02d129218d268c5776df82c5ac4f Mon Sep 17 00:00:00 2001 From: Andreas Shimokawa Date: Sat, 26 Aug 2017 00:42:04 +0200 Subject: [PATCH] Amazfit Bip: fix sending weather at specific times --- .../service/devices/amazfitbip/AmazfitBipSupport.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/amazfitbip/AmazfitBipSupport.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/amazfitbip/AmazfitBipSupport.java index 080259a9..eb8157fc 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/amazfitbip/AmazfitBipSupport.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/amazfitbip/AmazfitBipSupport.java @@ -25,6 +25,7 @@ import org.slf4j.LoggerFactory; import java.io.IOException; import java.nio.ByteBuffer; import java.nio.ByteOrder; +import java.util.SimpleTimeZone; import nodomain.freeyourgadget.gadgetbridge.deviceevents.GBDeviceEventCallControl; import nodomain.freeyourgadget.gadgetbridge.devices.amazfitbip.AmazfitBipIcon; @@ -127,6 +128,7 @@ public class AmazfitBipSupport extends MiBand2Support { } } + @Override public void onSendWeather(WeatherSpec weatherSpec) { try { TransactionBuilder builder = performInitialized("Sending weather forecast"); @@ -150,7 +152,8 @@ public class AmazfitBipSupport extends MiBand2Support { buf.order(ByteOrder.LITTLE_ENDIAN); buf.put((byte) 1); buf.putInt(weatherSpec.timestamp); - buf.put((byte) 0); + int tz_offset_hours = SimpleTimeZone.getDefault().getOffset(weatherSpec.timestamp * 1000L) / (1000 * 60 * 60); + buf.put((byte) (tz_offset_hours * 4)); buf.put(NR_DAYS);