5 Commits

Author SHA1 Message Date
HVBT Dev
375c2510ae Handle S300 alternate tail RPM frames 2026-07-28 02:31:02 +05:30
HVBT Dev
80167fd9e5 Restore S300 frame parsing for prefix frames 2026-07-28 01:29:12 +05:30
HVBT Dev
5df3442523 Skip S300 placeholders after raw receipt 2026-07-28 01:20:56 +05:30
HVBT Dev
0886bef200 Accept live S300 frames with bad checksum 2026-07-27 00:23:33 +05:30
HVBT Dev
6a80d8fc1f v1.2.0 — Phase 2: Riverpod providers wired up
- settings_provider: AppSettings (ecuType, pollingInterval) StateNotifier
- bt_provider: BtNotifier (disconnected/connecting/connected/error states),
  btServiceProvider singleton, pairedDevicesProvider FutureProvider,
  internal frameStream piped through StreamController
- sensor_provider: sensorStateProvider StreamProvider (auto S300/KPro),
  latestSensorProvider convenience Provider
- theme_provider: AppThemeVariant (red/green × dark/light) StateNotifier
- main.dart: fully Riverpod — ProviderScope, ConsumerWidget throughout,
  no setState for BT state, providers own all lifecycle
2026-04-13 20:13:32 +05:30