diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/model/ActivityKind.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/model/ActivityKind.java
index 3e76d093a5..2a5b021347 100644
--- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/model/ActivityKind.java
+++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/model/ActivityKind.java
@@ -337,6 +337,9 @@ public enum ActivityKind {
ULTRA_RUN(0x04000132, R.string.activity_type_ultra_run, R.drawable.ic_activity_trail_run),
VIRTUAL_RUN(0x04000133, R.string.activity_type_virtual_run, R.drawable.ic_activity_indoor_running),
XC_SKATE_SKI(0x04000134, R.string.activity_type_xc_skate_ski, R.drawable.ic_activity_skiing),
+ STREET_RUNNING(0x04000135, R.string.activity_type_street_running, R.drawable.ic_activity_road),
+ STOP_WATCH(0x04000136, R.string.activity_type_stop_watch, R.drawable.ic_timer),
+ CCR_DIVING(0x04000137, R.string.activity_type_ccr_diving, R.drawable.ic_activity_diving),
;
private final int code;
diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/enums/GarminSport.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/enums/GarminSport.java
index 629e8e308f..de36291109 100644
--- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/enums/GarminSport.java
+++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/enums/GarminSport.java
@@ -6,20 +6,25 @@ import nodomain.freeyourgadget.gadgetbridge.model.ActivityKind;
// Taken from CHANGELOG.fit of a Venu 3,
// Garmin API doc (https://developer.garmin.com/connect-iq/api-docs/Toybox/Activity.html)
+// Suunto doc (https://aspartnercontent.blob.core.windows.net/apizone/docs/Activities.pdf)
// and FIT files
public enum GarminSport {
GENERIC(0, 0, ActivityKind.ACTIVITY),
+ EXERCISE(0, 23, ActivityKind.EXERCISE),
NAVIGATE(0, 50, ActivityKind.NAVIGATE),
TRACK_ME(0, 51, ActivityKind.TRACK_ME),
MAP(0, 52, ActivityKind.MAP),
+ BREATHING(0, 62, ActivityKind.BREATHWORK),
EXPEDITION(0, 66, ActivityKind.EXPEDITION),
ADVENTURE_RACE(0, 82, ActivityKind.ADVENTURE_RACE),
ANCHOR(0, 89, ActivityKind.ANCHOR),
RUN(1, 0, ActivityKind.RUNNING),
TREADMILL(1, 1, ActivityKind.TREADMILL),
+ STREET_RUN(1, 2, ActivityKind.STREET_RUNNING),
TRAIL_RUN(1, 3, ActivityKind.TRAIL_RUN),
TRACK_RUN(1, 4, ActivityKind.TRACK_RUN),
INDOOR_TRACK(1, 45, ActivityKind.INDOOR_TRACK),
+ ORIENTEERING(1, 50, ActivityKind.ORIENTEERING),
VIRTUAL_RUN(1, 58, ActivityKind.VIRTUAL_RUN),
OBSTACLE_RACING(1, 59, ActivityKind.OBSTACLE_RACE),
ULTRA_RUN(1, 67, ActivityKind.ULTRA_RUN),
@@ -35,11 +40,15 @@ public enum GarminSport {
E_MTB(2, 47, ActivityKind.E_MOUNTAIN_BIKE),
BIKE_COMMUTE(2, 48, ActivityKind.BIKE_COMMUTE),
BIKE_TOUR(2, 49, ActivityKind.BIKE_TOUR),
+ VIRTUAL_CYCLING(2, 58, ActivityKind.INDOOR_CYCLING),
HANDCYCLING_INDOOR(2, 88, ActivityKind.HANDCYCLING_INDOOR),
TRANSITION(3, 0, ActivityKind.TRANSITION),
FITNESS_EQUIPMENT(4, 0, ActivityKind.FITNESS_EQUIPMENT),
+ INDOOR_ROWING(4, 14, ActivityKind.ROWING_MACHINE),
ELLIPTICAL(4, 15, ActivityKind.ELLIPTICAL_TRAINER),
STAIR_STEPPER(4, 16, ActivityKind.STAIR_STEPPER),
+ CALISTHENICS(4, 20, ActivityKind.STRENGTH_TRAINING),
+ YOGA_EQUIPMENT(4, 43, ActivityKind.YOGA),
PILATES(4, 44, ActivityKind.PILATES),
SWIMMING(5, 0, ActivityKind.SWIMMING),
POOL_SWIM(5, 17, ActivityKind.POOL_SWIM),
@@ -51,6 +60,7 @@ public enum GarminSport {
TABLE_TENNIS(8, 97, ActivityKind.TABLE_TENNIS),
AMERICAN_FOOTBALL(9, 0, ActivityKind.AMERICAN_FOOTBALL),
TRAINING(10, 0, ActivityKind.TRAINING),
+ STRETCHING(10, 19, ActivityKind.FLEXIBILITY),
STRENGTH(10, 20, ActivityKind.STRENGTH_TRAINING),
CARDIO(10, 26, ActivityKind.CARDIO),
YOGA(10, 43, ActivityKind.YOGA),
@@ -60,12 +70,14 @@ public enum GarminSport {
XC_CLASSIC_SKI(12, 0, ActivityKind.XC_CLASSIC_SKI),
XC_SKATE_SKI(12, 42, ActivityKind.XC_SKATE_SKI),
SKI(13, 0, ActivityKind.SKIING),
+ TELEMARKSKIING(13, 9, ActivityKind.XC_CLASSIC_SKI),
BACKCOUNTRY_SKI(13, 37, ActivityKind.BACKCOUNTRY_SKIING),
SNOWBOARD(14, 0, ActivityKind.SNOWBOARDING),
BACKCOUNTRY_SNOWBOARD(14, 37, ActivityKind.BACKCOUNTRY_SNOWBOARDING),
ROWING(15, 0, ActivityKind.ROWING),
ROW_INDOOR(15, 14, ActivityKind.ROWING_MACHINE),
MOUNTAINEERING(16, 0, ActivityKind.MOUNTAINEERING),
+ BACKCOUNTRY_MOUNTAINEERING(16, 37, ActivityKind.MOUNTAINEERING),
HIKE(17, 0, ActivityKind.HIKING),
MULTISPORT(18, 0, ActivityKind.MULTISPORT),
PADDLING(19, 0, ActivityKind.PADDLING),
@@ -107,11 +119,13 @@ public enum GarminSport {
BASEBALL(49, 0, ActivityKind.BASEBALL),
SOFTBALL(50, 0, ActivityKind.SOFTBALL),
SOFTBALL_SLOW_PITCH(51, 0, ActivityKind.SOFTBALL_SLOW_PITCH),
+ STOPWATCH(52, 0, ActivityKind.STOP_WATCH),
SINGLE_GAS_DIVING(53, 53, ActivityKind.SCUBA_DIVING),
MULTI_GAS_DIVING(53, 54, ActivityKind.SCUBA_DIVING),
GAUGE_DIVING(53, 55, ActivityKind.DIVING),
APNEA_DIVING(53, 56, ActivityKind.FREE_DIVING),
APNEA_HUNTING(53, 57, ActivityKind.FREE_DIVING),
+ CCR_DIVING(53, 63, ActivityKind.CCR_DIVING),
SHOOTING(56, 0, ActivityKind.SHOOTING),
AUTO_RACING(57, 0, ActivityKind.AUTO_RACING),
WINTER_SPORT(58, 0, ActivityKind.WINTER_SPORT),
diff --git a/app/src/main/res/drawable/ic_activity_road.xml b/app/src/main/res/drawable/ic_activity_road.xml
new file mode 100644
index 0000000000..2ca591a22b
--- /dev/null
+++ b/app/src/main/res/drawable/ic_activity_road.xml
@@ -0,0 +1,10 @@
+
+
+
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 113ab9b443..60af12d1a6 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -3921,6 +3921,9 @@
The minimum RSSI threshold for detection
Error showing Changelog
Worn
+ Street Running
+ Stop Watch
+ Closed-Circuit Rebreather
Dashboard settings
Dashboard
Devices