From 781da32a7c75e2b99135c9a8c0e00a3f5d385e07 Mon Sep 17 00:00:00 2001 From: Developer Date: Thu, 27 Aug 2026 03:43:58 -0400 Subject: [PATCH] Lean-And-LiveMap-Fixes --- lib/services/sensor_fusion_service.dart | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/services/sensor_fusion_service.dart b/lib/services/sensor_fusion_service.dart index 825806d..7dc908b 100644 --- a/lib/services/sensor_fusion_service.dart +++ b/lib/services/sensor_fusion_service.dart @@ -74,13 +74,13 @@ class SensorFusionService { final gy = event.y * (180.0 / math.pi); _currentPitch += gx * dt; - _currentRoll += gy * dt; + _currentRoll -= gy * dt; }); _accelSub = accelerometerEventStream(samplingPeriod: const Duration(milliseconds: 20)).listen((AccelerometerEvent event) { // Calculate roll/pitch from accelerometer (accounting for gravity) // Assuming phone is mounted roughly vertical or horizontal, we calculate basic roll - final accelRoll = math.atan2(event.x, math.sqrt(event.y * event.y + event.z * event.z)) * (180.0 / math.pi); + final accelRoll = -math.atan2(event.x, math.sqrt(event.y * event.y + event.z * event.z)) * (180.0 / math.pi); final accelPitch = math.atan2(-event.y, event.z) * (180.0 / math.pi); // Complementary filter: Combine integrated gyro with absolute accel