diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/garmin/watches/forerunner/GarminForerunner970Coordinator.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/garmin/watches/forerunner/GarminForerunner970Coordinator.java
new file mode 100644
index 0000000000..7c897877f4
--- /dev/null
+++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/garmin/watches/forerunner/GarminForerunner970Coordinator.java
@@ -0,0 +1,18 @@
+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 GarminForerunner970Coordinator extends GarminWatchCoordinator {
+ @Override
+ protected Pattern getSupportedDeviceName() {
+ return Pattern.compile("^Forerunner 970$");
+ }
+
+ @Override
+ public int getDeviceNameResource() {
+ return R.string.devicetype_garmin_forerunner_970;
+ }
+}
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 cd4314b195..35b35e3b0c 100644
--- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/model/DeviceType.java
+++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/model/DeviceType.java
@@ -137,6 +137,7 @@ import nodomain.freeyourgadget.gadgetbridge.devices.garmin.watches.forerunner.Ga
import nodomain.freeyourgadget.gadgetbridge.devices.garmin.watches.forerunner.GarminForerunner945Coordinator;
import nodomain.freeyourgadget.gadgetbridge.devices.garmin.watches.forerunner.GarminForerunner955Coordinator;
import nodomain.freeyourgadget.gadgetbridge.devices.garmin.watches.forerunner.GarminForerunner965Coordinator;
+import nodomain.freeyourgadget.gadgetbridge.devices.garmin.watches.forerunner.GarminForerunner970Coordinator;
import nodomain.freeyourgadget.gadgetbridge.devices.garmin.watches.instinct.GarminInstinct2Coordinator;
import nodomain.freeyourgadget.gadgetbridge.devices.garmin.watches.instinct.GarminInstinct2SCoordinator;
import nodomain.freeyourgadget.gadgetbridge.devices.garmin.watches.instinct.GarminInstinct2SSolarCoordinator;
@@ -744,6 +745,7 @@ public enum DeviceType {
GARMIN_FORERUNNER_945(GarminForerunner945Coordinator.class),
GARMIN_FORERUNNER_955(GarminForerunner955Coordinator.class),
GARMIN_FORERUNNER_965(GarminForerunner965Coordinator.class),
+ GARMIN_FORERUNNER_970(GarminForerunner970Coordinator.class),
GARMIN_QUATIX_8(GarminQuatix8Coordinator.class),
GARMIN_TACTIX_7(GarminTactix7Coordinator.class),
GARMIN_TACTIX_8(GarminTactix8Coordinator.class),
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 99919efbdf..24f48be244 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -2074,6 +2074,7 @@
Garmin Forerunner 945
Garmin Forerunner 955
Garmin Forerunner 965
+ Garmin Forerunner 970
Garmin Swim 2
Garmin VĂvoactive 3
Garmin VĂvoactive 4
diff --git a/app/src/test/java/nodomain/freeyourgadget/gadgetbridge/devices/BluetoothNameTest.java b/app/src/test/java/nodomain/freeyourgadget/gadgetbridge/devices/BluetoothNameTest.java
index 8b08adf2fc..0d52367060 100644
--- a/app/src/test/java/nodomain/freeyourgadget/gadgetbridge/devices/BluetoothNameTest.java
+++ b/app/src/test/java/nodomain/freeyourgadget/gadgetbridge/devices/BluetoothNameTest.java
@@ -148,6 +148,7 @@ public class BluetoothNameTest extends TestBase {
put("Amazfit Bip 3", DeviceType.AMAZFITBIP3); // #3627
put("Xiaomi Band 8 Active 0C09", DeviceType.MIBAND8ACTIVE); // #3614
put("UAT-4261", DeviceType.GARMIN_VENU_3S); // #3602
+ put("Forerunner 970", DeviceType.GARMIN_FORERUNNER_970); // #6320
put("Redmi Watch 3 892C", DeviceType.REDMIWATCH3); // #3581
put("Redmi Buds 5 Pro", DeviceType.REDMIBUDS5PRO); // #3566
put("Redmi Watch 2 C21E", DeviceType.REDMIWATCH2); // #3543