From ed732493e2e23dbd1a736f04db71c7cf7ae135e3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Rebelo?= Date: Wed, 21 May 2025 20:05:48 +0100 Subject: [PATCH] Garmin Forerunner 630: Initial support --- .../GarminForerunner630Coordinator.java | 34 +++++++++++++++++++ .../gadgetbridge/model/DeviceType.java | 2 ++ app/src/main/res/values/strings.xml | 1 + 3 files changed, 37 insertions(+) create mode 100644 app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/garmin/watches/forerunner/GarminForerunner630Coordinator.java diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/garmin/watches/forerunner/GarminForerunner630Coordinator.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/garmin/watches/forerunner/GarminForerunner630Coordinator.java new file mode 100644 index 0000000000..1112ff9a4b --- /dev/null +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/garmin/watches/forerunner/GarminForerunner630Coordinator.java @@ -0,0 +1,34 @@ +/* Copyright (C) 2024 José Rebelo + + 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.garmin.watches.forerunner; + +import java.util.regex.Pattern; + +import nodomain.freeyourgadget.gadgetbridge.R; +import nodomain.freeyourgadget.gadgetbridge.devices.garmin.watches.GarminWatchCoordinator; + +public class GarminForerunner630Coordinator extends GarminWatchCoordinator { + @Override + protected Pattern getSupportedDeviceName() { + return Pattern.compile("^Forerunner 630$"); + } + + @Override + public int getDeviceNameResource() { + return R.string.devicetype_garmin_forerunner_630; + } +} diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/model/DeviceType.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/model/DeviceType.java index dc93050eaf..af75633d75 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/model/DeviceType.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/model/DeviceType.java @@ -28,6 +28,7 @@ package nodomain.freeyourgadget.gadgetbridge.model; import nodomain.freeyourgadget.gadgetbridge.devices.garmin.bike.GarminEdgeExplore2Coordinator; +import nodomain.freeyourgadget.gadgetbridge.devices.garmin.watches.forerunner.GarminForerunner630Coordinator; import nodomain.freeyourgadget.gadgetbridge.devices.huami.zeppos.watches.AmazfitActive2NfcCoordinator; import nodomain.freeyourgadget.gadgetbridge.devices.oppo.OppoEncoBuds2Coordinator; import nodomain.freeyourgadget.gadgetbridge.devices.polar.PolarH10DeviceCoordinator; @@ -516,6 +517,7 @@ public enum DeviceType { GARMIN_FORERUNNER_265(GarminForerunner265Coordinator.class), GARMIN_FORERUNNER_265S(GarminForerunner265SCoordinator.class), GARMIN_FORERUNNER_620(GarminForerunner620Coordinator.class), + GARMIN_FORERUNNER_630(GarminForerunner630Coordinator.class), GARMIN_FORERUNNER_735XT(GarminForerunner735XTCoordinator.class), GARMIN_FORERUNNER_955(GarminForerunner955Coordinator.class), GARMIN_FORERUNNER_965(GarminForerunner965Coordinator.class), diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index d25cc2122e..5c9c21a18d 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -1858,6 +1858,7 @@ Garmin Forerunner 265 Garmin Forerunner 265S Garmin Forerunner 620 + Garmin Forerunner 630 Garmin Forerunner 735XT Garmin Forerunner 955 Garmin Forerunner 965