diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/amazfitbip/AmazfitBipService.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/amazfitbip/AmazfitBipService.java
new file mode 100644
index 00000000..92fe7e85
--- /dev/null
+++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/amazfitbip/AmazfitBipService.java
@@ -0,0 +1,24 @@
+/* Copyright (C) 2017 Andreas Shimokawa
+
+ This file is part of Gadgetbridge.
+
+ Gadgetbridge is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Affero General Public License as published
+ by the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ Gadgetbridge is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU Affero General Public License for more details.
+
+ You should have received a copy of the GNU Affero General Public License
+ along with this program. If not, see . */
+
+package nodomain.freeyourgadget.gadgetbridge.devices.amazfitbip;
+
+import java.util.UUID;
+
+public class AmazfitBipService {
+ public static final UUID UUID_CHARACTERISTIC_WEATHER = UUID.fromString("0000000e-0000-3512-2118-0009af100700");
+}
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 afaf3824..2a4b2935 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
@@ -16,12 +16,19 @@
along with this program. If not, see . */
package nodomain.freeyourgadget.gadgetbridge.service.devices.amazfitbip;
+import java.io.IOException;
+import java.nio.ByteBuffer;
+import java.nio.ByteOrder;
+
import nodomain.freeyourgadget.gadgetbridge.deviceevents.GBDeviceEventCallControl;
+import nodomain.freeyourgadget.gadgetbridge.devices.amazfitbip.AmazfitBipService;
import nodomain.freeyourgadget.gadgetbridge.devices.miband.MiBand2Service;
import nodomain.freeyourgadget.gadgetbridge.model.CallSpec;
import nodomain.freeyourgadget.gadgetbridge.model.NotificationSpec;
import nodomain.freeyourgadget.gadgetbridge.model.NotificationType;
+import nodomain.freeyourgadget.gadgetbridge.model.WeatherSpec;
import nodomain.freeyourgadget.gadgetbridge.service.btle.BLETypeConversions;
+import nodomain.freeyourgadget.gadgetbridge.service.btle.TransactionBuilder;
import nodomain.freeyourgadget.gadgetbridge.service.devices.common.SimpleNotification;
import nodomain.freeyourgadget.gadgetbridge.service.devices.miband.NotificationStrategy;
import nodomain.freeyourgadget.gadgetbridge.service.devices.miband2.MiBand2Support;
@@ -76,4 +83,33 @@ public class AmazfitBipSupport extends MiBand2Support {
}
evaluateGBDeviceEvent(callCmd);
}
+
+ @Override
+ public void onSendWeather(WeatherSpec weatherSpec) {
+ try {
+ TransactionBuilder builder = performInitialized("Sending weather forecast");
+ final byte NR_DAYS = 2;
+ ByteBuffer buf = ByteBuffer.allocate(7 + 4 * NR_DAYS);
+ buf.order(ByteOrder.LITTLE_ENDIAN);
+ buf.put((byte) 1);
+ buf.putInt(weatherSpec.timestamp);
+ buf.put((byte) 0);
+
+ buf.put(NR_DAYS);
+
+ buf.put((byte) 0);
+ buf.put((byte) 0);
+ buf.put((byte) (weatherSpec.todayMaxTemp - 273));
+ buf.put((byte) (weatherSpec.todayMinTemp - 273));
+
+ buf.put((byte) 0);
+ buf.put((byte) 0);
+ buf.put((byte) (weatherSpec.tomorrowMaxTemp - 273));
+ buf.put((byte) (weatherSpec.tomorrowMinTemp - 273));
+
+ builder.write(getCharacteristic(AmazfitBipService.UUID_CHARACTERISTIC_WEATHER), buf.array());
+ builder.queue(getQueue());
+ } catch (IOException ignore) {
+ }
+ }
}
\ No newline at end of file