startAccelerometer method
Starts streaming accelerometer data from the Movesense device at the given samplingRate
(Hz).
Returns a stream of SensorEvents.
Implementation
@override
Future<Stream<SensorEvent>> startAccelerometer(double samplingRate) async {
try {
if (connectedSerial == null) {
throw Exception('No Movesense device connected');
}
if (_accController.isClosed) {
_accController = StreamController<SensorEvent>.broadcast();
}
if (!_accController.hasListener && _accStreamSubscription == null) {
await _subscribeToAcc(samplingRate);
if (kDebugMode) {
print('[Movesense] Subscribe to accelerometerEvent');
}
}
return _accController.stream;
} catch (e) {
if (kDebugMode) {
print('Error starting Movesense accelerometer: $e');
}
rethrow;
}
}