public async Task ConnectAsync()
        {
            _device = await _bluetoothAdapter.GetDeviceAsync(BluetoothAddress);

            _service = await _device.GetServiceAsync(new Guid(PoweredUpBluetoothConstants.LegoHubService));

            _characteristic = await _service.GetCharacteristicAsync(new Guid(PoweredUpBluetoothConstants.LegoHubCharacteristic));

            _logger?.LogDebug("Connected");
        }
        public Task DisconnectAsync()
        {
            _characteristic = null;
            _service?.Dispose();
            _service = null;
            _device?.Dispose();
            _device = null;

            _logger?.LogDebug("Disconnected");

            return(Task.CompletedTask);
        }