Amazfit Balance 2 XT: Experimental support

This commit is contained in:
José Rebelo
2026-01-23 20:30:27 +00:00
parent c19663bfd6
commit 8644a69d0a
3 changed files with 99 additions and 0 deletions
@@ -0,0 +1,96 @@
/* Copyright (C) 2026 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 <https://www.gnu.org/licenses/>. */
package nodomain.freeyourgadget.gadgetbridge.devices.huami.zeppos.watches;
import androidx.annotation.NonNull;
import java.util.Arrays;
import java.util.Collections;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
import nodomain.freeyourgadget.gadgetbridge.R;
import nodomain.freeyourgadget.gadgetbridge.devices.huami.zeppos.ZeppOsCoordinator;
import nodomain.freeyourgadget.gadgetbridge.impl.GBDevice;
public class AmazfitBalance2XTCoordinator extends ZeppOsCoordinator {
@Override
public boolean isExperimental() {
// untested
return true;
}
@Override
public List<String> getDeviceBluetoothNames() {
return Collections.singletonList("Amazfit Balance 2 XT");
}
@Override
public Set<Integer> getDeviceSources() {
return new HashSet<>(Arrays.asList(
10486016,
10486017,
10486019
));
}
@Override
public int getDeviceNameResource() {
return R.string.devicetype_amazfit_balance_2_xt;
}
@Override
public boolean mainMenuHasMoreSection() {
return true;
}
@Override
public boolean supportsGpxUploads(final GBDevice device) {
return true;
}
@Override
public boolean supportsControlCenter() {
return true;
}
@Override
public boolean supportsToDoList() {
return true;
}
@Override
public boolean supportsWifiHotspot(final GBDevice device) {
return true;
}
@Override
public boolean supportsFtpServer(final GBDevice device) {
return true;
}
@Override
public boolean supportsBluetoothPhoneCalls(final GBDevice device) {
return true;
}
@Override
public DeviceKind getDeviceKind(@NonNull GBDevice device) {
return DeviceKind.WATCH;
}
}
@@ -230,6 +230,7 @@ import nodomain.freeyourgadget.gadgetbridge.devices.huami.zeppos.watches.Amazfit
import nodomain.freeyourgadget.gadgetbridge.devices.huami.zeppos.watches.AmazfitActiveEdgeCoordinator;
import nodomain.freeyourgadget.gadgetbridge.devices.huami.zeppos.watches.AmazfitActiveMaxCoordinator;
import nodomain.freeyourgadget.gadgetbridge.devices.huami.zeppos.watches.AmazfitBalance2Coordinator;
import nodomain.freeyourgadget.gadgetbridge.devices.huami.zeppos.watches.AmazfitBalance2XTCoordinator;
import nodomain.freeyourgadget.gadgetbridge.devices.huami.zeppos.watches.AmazfitBalanceCoordinator;
import nodomain.freeyourgadget.gadgetbridge.devices.huami.zeppos.watches.AmazfitBand7Coordinator;
import nodomain.freeyourgadget.gadgetbridge.devices.huami.zeppos.watches.AmazfitBip5Coordinator;
@@ -556,6 +557,7 @@ public enum DeviceType {
AMAZFITFALCON(AmazfitFalconCoordinator.class),
AMAZFITBALANCE(AmazfitBalanceCoordinator.class),
AMAZFITBALANCE2(AmazfitBalance2Coordinator.class),
AMAZFITBALANCE2XT(AmazfitBalance2XTCoordinator.class),
AMAZFITACTIVE(AmazfitActiveCoordinator.class),
AMAZFITACTIVE2(AmazfitActive2RoundCoordinator.class),
AMAZFITACTIVE2NFC(AmazfitActive2NfcCoordinator.class),
+1
View File
@@ -1859,6 +1859,7 @@
<string name="devicetype_miband10" translatable="false">Xiaomi Smart Band 10</string>
<string name="devicetype_amazfit_balance" translatable="false">Amazfit Balance</string>
<string name="devicetype_amazfit_balance_2" translatable="false">Amazfit Balance 2</string>
<string name="devicetype_amazfit_balance_2_xt" translatable="false">Amazfit Balance 2 XT</string>
<string name="devicetype_amazfit_active" translatable="false">Amazfit Active</string>
<string name="devicetype_amazfit_active_2" translatable="false">Amazfit Active 2</string>
<string name="devicetype_amazfit_active_2_round" translatable="false">Amazfit Active 2 (Round)</string>