diff --git a/src/Device/DeviceProfile.php b/src/Device/DeviceProfile.php index 67b9f70..0d1e691 100644 --- a/src/Device/DeviceProfile.php +++ b/src/Device/DeviceProfile.php @@ -702,6 +702,18 @@ class DeviceProfile extends AbstractEnum public const SUUNTO_OCEAN = 677; public const SUUNTO_D_9 = 678; public const SUUNTO_D_4 = 679; + public const SUUNTO_RACE_S = 680; + public const GARMIN_ENDURO_3 = 681; + public const GARMIN_FENIX_E = 682; + public const GARMIN_FENIX_8_AMOLED_43 = 683; + public const GARMIN_FENIX_8_AMOLED_47 = 684; + public const GARMIN_FENIX_8_AMOLED_51 = 685; + public const GARMIN_FENIX_8_SOLAR_43 = 686; + public const GARMIN_FENIX_8_SOLAR_47 = 687; + public const GARMIN_FENIX_8_SOLAR_51 = 688; + public const GARMIN_APPROACH_S_12 = 689; + public const GARMIN_LILY_2 = 690; + public const GARMIN_EDGE_1050 = 691; public static function getSlugs(): array { diff --git a/src/Device/GarminApproachS12.php b/src/Device/GarminApproachS12.php new file mode 100644 index 0000000..01067ff --- /dev/null +++ b/src/Device/GarminApproachS12.php @@ -0,0 +1,27 @@ + + * + * This source file is subject to the MIT license that is bundled + * with this source code in the file LICENSE. + */ + +namespace Runalyze\Devices\Device; + +class GarminApproachS12 extends AbstractDevice +{ + use GarminDeviceTrait; + + public function getEnum(): int + { + return DeviceProfile::GARMIN_APPROACH_S_12; + } + + public function getName(): string + { + return 'Approach S12'; + } +} diff --git a/src/Device/GarminEdge1050.php b/src/Device/GarminEdge1050.php new file mode 100644 index 0000000..8678763 --- /dev/null +++ b/src/Device/GarminEdge1050.php @@ -0,0 +1,32 @@ + + * + * This source file is subject to the MIT license that is bundled + * with this source code in the file LICENSE. + */ + +namespace Runalyze\Devices\Device; + +class GarminEdge1050 extends AbstractDevice +{ + use GarminDeviceTrait; + + public function getEnum(): int + { + return DeviceProfile::GARMIN_EDGE_1050; + } + + public function getName(): string + { + return 'Edge 1050'; + } + + public function hasBarometer(): bool + { + return true; + } +} diff --git a/src/Device/GarminEnduro3.php b/src/Device/GarminEnduro3.php new file mode 100644 index 0000000..540c7d9 --- /dev/null +++ b/src/Device/GarminEnduro3.php @@ -0,0 +1,32 @@ + + * + * This source file is subject to the MIT license that is bundled + * with this source code in the file LICENSE. + */ + +namespace Runalyze\Devices\Device; + +class GarminEnduro3 extends AbstractDevice +{ + use GarminDeviceTrait; + + public function getEnum(): int + { + return DeviceProfile::GARMIN_ENDURO_3; + } + + public function getName(): string + { + return 'Enduro 3'; + } + + public function hasBarometer(): bool + { + return true; + } +} diff --git a/src/Device/GarminFenix8Amoled43.php b/src/Device/GarminFenix8Amoled43.php new file mode 100644 index 0000000..cb50322 --- /dev/null +++ b/src/Device/GarminFenix8Amoled43.php @@ -0,0 +1,32 @@ + + * + * This source file is subject to the MIT license that is bundled + * with this source code in the file LICENSE. + */ + +namespace Runalyze\Devices\Device; + +class GarminFenix8Amoled43 extends AbstractDevice +{ + use GarminDeviceTrait; + + public function getEnum(): int + { + return DeviceProfile::GARMIN_FENIX_8_AMOLED_43; + } + + public function getName(): string + { + return 'Fenix 8 Amoled (43mm)'; + } + + public function hasBarometer(): bool + { + return true; + } +} diff --git a/src/Device/GarminFenix8Amoled47.php b/src/Device/GarminFenix8Amoled47.php new file mode 100644 index 0000000..667bf16 --- /dev/null +++ b/src/Device/GarminFenix8Amoled47.php @@ -0,0 +1,32 @@ + + * + * This source file is subject to the MIT license that is bundled + * with this source code in the file LICENSE. + */ + +namespace Runalyze\Devices\Device; + +class GarminFenix8Amoled47 extends AbstractDevice +{ + use GarminDeviceTrait; + + public function getEnum(): int + { + return DeviceProfile::GARMIN_FENIX_8_AMOLED_47; + } + + public function getName(): string + { + return 'Fenix 8 Amoled (47mm)'; + } + + public function hasBarometer(): bool + { + return true; + } +} diff --git a/src/Device/GarminFenix8Amoled51.php b/src/Device/GarminFenix8Amoled51.php new file mode 100644 index 0000000..15d91b6 --- /dev/null +++ b/src/Device/GarminFenix8Amoled51.php @@ -0,0 +1,32 @@ + + * + * This source file is subject to the MIT license that is bundled + * with this source code in the file LICENSE. + */ + +namespace Runalyze\Devices\Device; + +class GarminFenix8Amoled51 extends AbstractDevice +{ + use GarminDeviceTrait; + + public function getEnum(): int + { + return DeviceProfile::GARMIN_FENIX_8_AMOLED_51; + } + + public function getName(): string + { + return 'Fenix 8 Amoled (51mm)'; + } + + public function hasBarometer(): bool + { + return true; + } +} diff --git a/src/Device/GarminFenix8Solar43.php b/src/Device/GarminFenix8Solar43.php new file mode 100644 index 0000000..882e15a --- /dev/null +++ b/src/Device/GarminFenix8Solar43.php @@ -0,0 +1,32 @@ + + * + * This source file is subject to the MIT license that is bundled + * with this source code in the file LICENSE. + */ + +namespace Runalyze\Devices\Device; + +class GarminFenix8Solar43 extends AbstractDevice +{ + use GarminDeviceTrait; + + public function getEnum(): int + { + return DeviceProfile::GARMIN_FENIX_8_SOLAR_43; + } + + public function getName(): string + { + return 'Fenix 8 Solar/Sapphire (43mm)'; + } + + public function hasBarometer(): bool + { + return true; + } +} diff --git a/src/Device/GarminFenix8Solar47.php b/src/Device/GarminFenix8Solar47.php new file mode 100644 index 0000000..ffc1f93 --- /dev/null +++ b/src/Device/GarminFenix8Solar47.php @@ -0,0 +1,32 @@ + + * + * This source file is subject to the MIT license that is bundled + * with this source code in the file LICENSE. + */ + +namespace Runalyze\Devices\Device; + +class GarminFenix8Solar47 extends AbstractDevice +{ + use GarminDeviceTrait; + + public function getEnum(): int + { + return DeviceProfile::GARMIN_FENIX_8_SOLAR_47; + } + + public function getName(): string + { + return 'Fenix 8 Solar/Sapphire (47mm)'; + } + + public function hasBarometer(): bool + { + return true; + } +} diff --git a/src/Device/GarminFenix8Solar51.php b/src/Device/GarminFenix8Solar51.php new file mode 100644 index 0000000..2d2691c --- /dev/null +++ b/src/Device/GarminFenix8Solar51.php @@ -0,0 +1,32 @@ + + * + * This source file is subject to the MIT license that is bundled + * with this source code in the file LICENSE. + */ + +namespace Runalyze\Devices\Device; + +class GarminFenix8Solar51 extends AbstractDevice +{ + use GarminDeviceTrait; + + public function getEnum(): int + { + return DeviceProfile::GARMIN_FENIX_8_SOLAR_51; + } + + public function getName(): string + { + return 'Fenix 8 Solar/Sapphire (51mm)'; + } + + public function hasBarometer(): bool + { + return true; + } +} diff --git a/src/Device/GarminFenixE.php b/src/Device/GarminFenixE.php new file mode 100644 index 0000000..2d7fe6c --- /dev/null +++ b/src/Device/GarminFenixE.php @@ -0,0 +1,32 @@ + + * + * This source file is subject to the MIT license that is bundled + * with this source code in the file LICENSE. + */ + +namespace Runalyze\Devices\Device; + +class GarminFenixE extends AbstractDevice +{ + use GarminDeviceTrait; + + public function getEnum(): int + { + return DeviceProfile::GARMIN_FENIX_E; + } + + public function getName(): string + { + return 'Fenix E'; + } + + public function hasBarometer(): bool + { + return true; + } +} diff --git a/src/Device/GarminLily2.php b/src/Device/GarminLily2.php new file mode 100644 index 0000000..53d0408 --- /dev/null +++ b/src/Device/GarminLily2.php @@ -0,0 +1,27 @@ + + * + * This source file is subject to the MIT license that is bundled + * with this source code in the file LICENSE. + */ + +namespace Runalyze\Devices\Device; + +class GarminLily2 extends AbstractDevice +{ + use GarminDeviceTrait; + + public function getEnum(): int + { + return DeviceProfile::GARMIN_LILY_2; + } + + public function getName(): string + { + return 'Lily 2'; + } +} diff --git a/src/Device/SuuntoRaceS.php b/src/Device/SuuntoRaceS.php new file mode 100644 index 0000000..6b2b1e2 --- /dev/null +++ b/src/Device/SuuntoRaceS.php @@ -0,0 +1,32 @@ + + * + * This source file is subject to the MIT license that is bundled + * with this source code in the file LICENSE. + */ + +namespace Runalyze\Devices\Device; + +class SuuntoRaceS extends AbstractDevice +{ + use SuuntoDeviceTrait; + + public function getEnum(): int + { + return DeviceProfile::SUUNTO_RACE_S; + } + + public function getName(): string + { + return 'Race S'; + } + + public function hasBarometer(): bool + { + return true; + } +} diff --git a/src/Distributor/Garmin.php b/src/Distributor/Garmin.php index 281f063..99835ac 100644 --- a/src/Distributor/Garmin.php +++ b/src/Distributor/Garmin.php @@ -74,6 +74,13 @@ public function getDeviceEnumList(): array DeviceProfile::GARMIN_FENIX_6_S_PRO, DeviceProfile::GARMIN_FENIX_6_X, DeviceProfile::GARMIN_FENIX_6_X_PRO, + DeviceProfile::GARMIN_FENIX_E, + DeviceProfile::GARMIN_FENIX_8_AMOLED_43, + DeviceProfile::GARMIN_FENIX_8_AMOLED_47, + DeviceProfile::GARMIN_FENIX_8_AMOLED_51, + DeviceProfile::GARMIN_FENIX_8_SOLAR_43, + DeviceProfile::GARMIN_FENIX_8_SOLAR_47, + DeviceProfile::GARMIN_FENIX_8_SOLAR_51, DeviceProfile::GARMIN_FORERUNNER_10, DeviceProfile::GARMIN_FORERUNNER_15, DeviceProfile::GARMIN_FORERUNNER_25, @@ -147,6 +154,8 @@ public function getDeviceEnumList(): array DeviceProfile::GARMIN_TACTIX_CHARLIE, DeviceProfile::GARMIN_TACTIX_DELTA, DeviceProfile::GARMIN_FORERUNNER_110, + DeviceProfile::GARMIN_FORERUNNER_165, + DeviceProfile::GARMIN_FORERUNNER_165_MUSIC, DeviceProfile::GARMIN_FORERUNNER_205, DeviceProfile::GARMIN_FORERUNNER_210, DeviceProfile::GARMIN_FORERUNNER_220, @@ -224,6 +233,7 @@ public function getDeviceEnumList(): array DeviceProfile::GARMIN_MONTANA_700_I, DeviceProfile::GARMIN_MONTANA_750_I, DeviceProfile::GARMIN_ENDURO, + DeviceProfile::GARMIN_ENDURO_3, DeviceProfile::GARMIN_VENU_2, DeviceProfile::GARMIN_VENU_2_PLUS, DeviceProfile::GARMIN_VENU_3, @@ -289,8 +299,9 @@ public function getDeviceEnumList(): array DeviceProfile::GARMIN_D_2_MACH_1_PRO, DeviceProfile::GARMIN_DESCENT_MK_3_I, DeviceProfile::GARMIN_FENIX_6_S_PRO_DUAL_POWER, - DeviceProfile::GARMIN_FORERUNNER_165, - DeviceProfile::GARMIN_FORERUNNER_165_MUSIC, + DeviceProfile::GARMIN_APPROACH_S_12, + DeviceProfile::GARMIN_EDGE_1050, + DeviceProfile::GARMIN_LILY_2, ]; } } diff --git a/src/Distributor/Suunto.php b/src/Distributor/Suunto.php index 658fa28..7e331ff 100644 --- a/src/Distributor/Suunto.php +++ b/src/Distributor/Suunto.php @@ -82,6 +82,7 @@ public function getDeviceEnumList(): array DeviceProfile::SUUNTO_VERTICAL, DeviceProfile::SUUNTO_5, DeviceProfile::SUUNTO_RACE, + DeviceProfile::SUUNTO_RACE_S, ]; } } diff --git a/src/Mapping/GarminFitSdkMapping.php b/src/Mapping/GarminFitSdkMapping.php index 51c2ff6..4a0bcf2 100644 --- a/src/Mapping/GarminFitSdkMapping.php +++ b/src/Mapping/GarminFitSdkMapping.php @@ -117,9 +117,11 @@ protected function getMapping() 2924 => DeviceProfile::GARMIN_EDGE_1030, 4305 => DeviceProfile::GARMIN_EDGE_1040_SOLAR, 3841 => DeviceProfile::GARMIN_EDGE_1040, + 4440 => DeviceProfile::GARMIN_EDGE_1050, 3638 => DeviceProfile::GARMIN_ENDURO, 3872 => DeviceProfile::GARMIN_ENDURO, 4341 => DeviceProfile::GARMIN_ENDURO_2, + 4575 => DeviceProfile::GARMIN_ENDURO_3, 1988 => DeviceProfile::GARMIN_EPIX, 2332 => DeviceProfile::GARMIN_EPIX, 2457 => DeviceProfile::GARMIN_EPIX, @@ -215,6 +217,7 @@ protected function getMapping() 1124 => DeviceProfile::GARMIN_FORERUNNER_110, 1274 => DeviceProfile::GARMIN_FORERUNNER_110, 4432 => DeviceProfile::GARMIN_FORERUNNER_165, + 4433 => DeviceProfile::GARMIN_FORERUNNER_165_MUSIC, 1360 => DeviceProfile::GARMIN_FORERUNNER_210, 1632 => DeviceProfile::GARMIN_FORERUNNER_220, 3187 => DeviceProfile::GARMIN_FORERUNNER_220, @@ -398,6 +401,15 @@ protected function getMapping() 3192 => DeviceProfile::GARMIN_SPEED_SENSOR_2, 1438 => DeviceProfile::GARMIN_FIT_ANDROID, 1439 => DeviceProfile::GARMIN_FIT_IPHONE, + 4119 => DeviceProfile::GARMIN_VENU_SQ, + 4532 => DeviceProfile::GARMIN_FENIX_8_SOLAR_47, + 4533 => DeviceProfile::GARMIN_FENIX_8_SOLAR_51, + 4534 => DeviceProfile::GARMIN_FENIX_8_AMOLED_43, + 4536 => DeviceProfile::GARMIN_FENIX_8_AMOLED_47, + 4666 => DeviceProfile::GARMIN_FENIX_E, + 3823 => DeviceProfile::GARMIN_APPROACH_S_12, + 3537 => DeviceProfile::GARMIN_LEGACY_HERO_SAGA_REY, + 4380 => DeviceProfile::GARMIN_LILY_2, ]; } diff --git a/src/Mapping/NameMapping.php b/src/Mapping/NameMapping.php index 69b4deb..08c79e1 100644 --- a/src/Mapping/NameMapping.php +++ b/src/Mapping/NameMapping.php @@ -62,6 +62,8 @@ protected function getMapping() 'edge 800' => DeviceProfile::GARMIN_EDGE_800, 'edge 810' => DeviceProfile::GARMIN_EDGE_810, 'edge 820' => DeviceProfile::GARMIN_EDGE_820, + 'edge 830' => DeviceProfile::GARMIN_EDGE_830, + 'edge_830' => DeviceProfile::GARMIN_EDGE_830, 'edge explore 2' => DeviceProfile::GARMIN_EDGE_EXPLORE_2, 'edge1000' => DeviceProfile::GARMIN_EDGE_1000, 'edge205' => DeviceProfile::GARMIN_EDGE_205, diff --git a/src/Mapping/SuuntoFitSdkMapping.php b/src/Mapping/SuuntoFitSdkMapping.php index 6625d18..2a88cdd 100644 --- a/src/Mapping/SuuntoFitSdkMapping.php +++ b/src/Mapping/SuuntoFitSdkMapping.php @@ -75,6 +75,8 @@ protected function getMapping() 58 => DeviceProfile::SUUNTO_9_PEAK_PRO, 59 => DeviceProfile::SUUNTO_VERTICAL, 60 => DeviceProfile::SUUNTO_RACE, + 61 => DeviceProfile::SUUNTO_RACE_S, + 62 => DeviceProfile::SUUNTO_OCEAN, ]; }