Estou tentando conectar-me remotamente a um sistema via Bluetooth, mas estou com problemas. Aqui está o que estou tentando fazer ...
No dispositivo remoto, gostaria de ter o seguinte em execução: rfcomm -r watch 0 3 getty -L {} 9600
O que isso faz é: Assista no dispositivo bluetooth "0" para uma conexão rfcomm no canal 3. Quando ocorrer, execute getty -L {} 9600
e substitua o "{}" pelo dispositivo criado. (geralmente /dev/rfcomm0
neste caso)
Eu deveria ser capaz de me conectar ao dispositivo remoto rodando no meu laptop: rfcomm connect 0 11:22:33:44:55:66 3
(diz para usar o dispositivo "0" para conectar ao endereço bluetooth "11: 22: 33: 44: 55: 66 "no canal 3) então eu deveria pegar um console serial no dispositivo remoto digitando screen /dev/rfcomm0
.
O problema ...
Tudo deve estar funcionando bem, exceto que o NetworkManager no meu laptop de alguma forma "vê" a conexão e tenta sondá-la como se fosse um modem. Ele envia AT+GCAP
strings e ~x�~
, mas o terminal remoto está executando o getty e está esperando credenciais de login.
Consigo fazê-lo funcionar fazendo a conexão rfcomm0 primeiro:
remote$ rfcomm -r watch 0 3
laptop$ rfcomm connect 0 11:22:33:44:55:66 3
espere cerca de 60 segundos para que o NetworkManger pare de investigar /dev/rfcomm0
remote$ getty -L rfcomm0 9600
laptop$ screen /dev/rfcomm0 9600
No entanto, para fazer isso, eu já preciso ter acesso ao console para o dispositivo remoto, a fim de executar o getty comamnd
Pergunta
Então, existe alguma maneira de dizer ao NetworkManager para ignorar /dev/rfcomm
ou dizer para ele não testar o dispositivo?