From 418ab357a93bbe2a240560c9c2992c62d33cb4b1 Mon Sep 17 00:00:00 2001 From: Heiko Rothe Date: Thu, 18 Mar 2021 21:57:28 +0100 Subject: [PATCH] fix(bluetooth-classic): improve signal strength estimation Kalman parameters have been re-tuned to be reactive, but still smoothen away noise. --- .../bluetooth-classic/bluetooth-classic.service.ts | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/integrations/bluetooth-classic/bluetooth-classic.service.ts b/src/integrations/bluetooth-classic/bluetooth-classic.service.ts index 34a00d5..17353dd 100644 --- a/src/integrations/bluetooth-classic/bluetooth-classic.service.ts +++ b/src/integrations/bluetooth-classic/bluetooth-classic.service.ts @@ -37,7 +37,7 @@ const execPromise = util.promisify(exec); @Injectable() export class BluetoothClassicService - extends KalmanFilterable(Object, 1.4, 1) + extends KalmanFilterable(Object, 0.01, 0.7) implements OnModuleInit, OnApplicationBootstrap { private readonly config: BluetoothClassicConfig; private rotationOffset = 0; @@ -163,7 +163,9 @@ export class BluetoothClassicService `Received RSSI of ${event.rssi} for ${event.device.address} from ${event.instanceName}` ); - const baseId = this.config.entityOverrides[event.device.address]?.id || event.device.address; + const baseId = + this.config.entityOverrides[event.device.address]?.id || + event.device.address; const sensorId = makeId(`bluetooth-classic ${baseId}`); let sensor: RoomPresenceDistanceSensor; if (this.entitiesService.has(sensorId)) {