O soquete Bluetooth não está conectado ao dispositivo de destino

Estou tentando conectar meu dispositivo a outro via Bluetooth, mas quando seleciono o dispositivo com o qual quero conectar, recebo umaIOException dizendo

a leitura falhou, o soquete pode fechar ou atingir o tempo limite, ler ret: -1

Apenas para ilustrar como meu aplicativo funciona, eu tenho umRecyclerView preenchida com os dispositivos encontrados pela minha varredura Bluetooth, quando clico em um item, o aplicativo deve se conectar a esse dispositivo.

Abaixo está o código para o meu thread de conexão:

private val MY_UUID = UUID.fromString("00001101-0000-1000-8000-00805f9b34fb")

private lateinit var device: BluetoothDevice
private lateinit var onDeviceActionListener: OnDeviceActionListener
private lateinit var socket: BluetoothSocket

fun init(device: BluetoothDevice,
         onDeviceActionListener: OnDeviceActionListener): ConnectionThread {
    this.device = device
    this.onDeviceActionListener = onDeviceActionListener
    try {
        socket = device.createRfcommSocketToServiceRecord(MY_UUID)
    } catch (e: IOException) {
        Log.e(TAG, "Error creating socket", e)
    }
    return this
}

override fun run() {
    try {
        socket.connect()
    } catch (openException: IOException) {
        Log.e(TAG, "Error opening connection. Trying to close...", openException)
        try {
            socket.close()
        } catch (closeException: IOException) {
            Log.e(TAG, "Error closing socket", closeException)
        }
        return
    }
    onDeviceActionListener.onDeviceConnect(device)
}

Meu palpite é que há algo errado com meu UUID. Eu tentei alguns outros valores, mas ainda não funcionou.

Qualquer ajuda será muito apreciada.

questionAnswers(1)

yourAnswerToTheQuestion