From fe49ff631d67e1a10181a6a7bc2ebb650e314963 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BE=AE=E5=BE=AE=E4=B8=80=E7=AC=91?= <709648985@qq.com> Date: Mon, 30 Mar 2026 17:45:49 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E4=BC=98=E5=8C=96100j?= =?UTF-8?q?=E4=BD=93=E9=AA=8C=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- api/100J/HBY100-J.js | 6 +++++- pages/100J/HBY100-J.vue | 3 +++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/api/100J/HBY100-J.js b/api/100J/HBY100-J.js index a99706e..3369ebb 100644 --- a/api/100J/HBY100-J.js +++ b/api/100J/HBY100-J.js @@ -209,12 +209,16 @@ class HBY100JProtocol { if (this._fileResponseResolve) this._fileResponseResolve(result); break; case 0x04: - // 5.5 获取设备电源状态: 电池容量8B + 电压8B + 百分比1B + 车载电源1B + 续航时间2B(分钟) + // 5.5 获取设备电源状态: 容量8B + 电压8B + 百分比1B + 车载1B + 续航2B(分钟) + [充电状态1B] + FF + // 充电状态为固件新增,在续航之后;旧固件仅 20 字节 payload,不影响 [16..19] 字段 if (data.length >= 20) { result.batteryPercentage = data[16]; result.vehiclePower = data[17]; result.batteryRemainingTime = data[18] | (data[19] << 8); // 小端序,单位分钟 } + if (data.length >= 21) { + result.chargingStatus = data[20]; // 0未充电 1充电中 2已充满 + } break; case 0x06: // 06: 语音播报响应 diff --git a/pages/100J/HBY100-J.vue b/pages/100J/HBY100-J.vue index d5cafbf..a28483f 100644 --- a/pages/100J/HBY100-J.vue +++ b/pages/100J/HBY100-J.vue @@ -1383,6 +1383,9 @@ if (parsedData.batteryRemainingTime !== undefined) { this.$set(this.deviceInfo, 'batteryRemainingTime', parsedData.batteryRemainingTime); } + if (parsedData.chargingStatus !== undefined) { + this.$set(this.deviceInfo, 'chargingStatus', parsedData.chargingStatus); + }