Completes when the device stream ended (either side closed it).
Future<void> get done => _done.future;