From 75b8f7178afb7e31f32a0fcfe866f407fb4b97e7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Rebelo?= Date: Sun, 29 Jun 2025 12:58:23 +0100 Subject: [PATCH] Huami: Fix support class reuse --- .../gadgetbridge/service/devices/huami/HuamiSupport.java | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/huami/HuamiSupport.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/huami/HuamiSupport.java index cd53f0fd9c..82a6f46299 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/huami/HuamiSupport.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/huami/HuamiSupport.java @@ -370,6 +370,8 @@ public abstract class HuamiSupport extends AbstractBTLESingleDeviceSupport setMtu(MIN_MTU); } + fetcher.reset(); + try { byte authFlags = getAuthFlags(); byte cryptFlags = getCryptFlags(); @@ -379,10 +381,14 @@ public abstract class HuamiSupport extends AbstractBTLESingleDeviceSupport characteristicChunked2021Read = getCharacteristic(HuamiService.UUID_CHARACTERISTIC_CHUNKEDTRANSFER_2021_READ); if (characteristicChunked2021Read != null && huami2021ChunkedDecoder == null) { huami2021ChunkedDecoder = new Huami2021ChunkedDecoder(this, force2021Protocol()); + } else if (huami2021ChunkedDecoder != null) { + huami2021ChunkedDecoder.reset(); } characteristicChunked2021Write = getCharacteristic(HuamiService.UUID_CHARACTERISTIC_CHUNKEDTRANSFER_2021_WRITE); if (characteristicChunked2021Write != null && huami2021ChunkedEncoder == null) { huami2021ChunkedEncoder = new Huami2021ChunkedEncoder(mMTU); + } else if (huami2021ChunkedDecoder != null) { + huami2021ChunkedEncoder.reset(); } if (force2021Protocol()) { if (characteristicChunked2021Write != null && characteristicChunked2021Read != null) {