Estou tentando conectar-me a um Totalstation que não oferece drivers bluetooth. Como faço isso por razões puramente de diagnóstico, gostaria de ver a saída bruta da conexão serial estabelecida.
O que devo fazer para canalizar toda a saída de uma conexão bluetooth para um terminal?
Respostas:
Como complemento à resposta de Brian. A tela não funcionou para mim, exibindo imediatamente
[screen is terminating]
Então, eu encontrei este script python miniterm . O uso é semelhante:
fonte
1) Use
hcitool scan
para encontrar o endereço Mac do dispositivo.O dispositivo deve ser definido no modo escravo com um pino conhecido. Se você não usa um pino conhecido, o ubuntu cria um e você geralmente não terá tempo para inseri-lo nos menus desajeitados da sua ferramenta de medição.
2) Não tenho certeza absoluta de que isso seja necessário, mas no menu da guia bluetooth, emparelhe o dispositivo.
3) em /etc/bluetooth/rfcomm.conf
O "vincular não" é importante, caso contrário, tentará vincular automaticamente, o que apresenta todos os tipos de problemas para acessar o dispositivo (como é bastante exigente quando associado)
4)
sudo rfcomm connect 0
Se você tiver erros, reinicie o serviço bluetooth.
5)
screen /dev/rfcomm0
Para comandos seriais reais transmitidos dessa maneira, entre em contato com seu fornecedor e implore.
fonte
Aqui está o meu caminho para prosseguir com a conexão a um dispositivo Bluetooth HC-05 conectado ao meu arduino. Não é necessário escrever um arquivo como na resposta de Brian, mas a ideia é semelhante. Testei-o com uma configuração de taxa de transmissão 9600 no dispositivo HC-05.
Primeira etapa: parear o dispositivo e fornecer o PIN
Tentei configurar da GUI o emparelhamento, mas não estava funcionando. Aqui está a maneira de prosseguir a linha de comando que funcionou para mim. Primeiro, vamos emparelhar o dispositivo na linha de comando. Corre :
Verifique se o dispositivo bluetooth foi iniciado:
Iniciamos agora o agente que "lembrará o pino" para
rfcomm
:Agora, habilitamos o modo de digitalização para encontrar nosso dispositivo e poder emparelhá-lo:
Após alguns segundos, o MAC do seu dispositivo deve aparecer. Vamos denotá-lo como depois. Então, você só precisa emparelhar o dispositivo assim:
Você será solicitado a digitar um PIN, por padrão, ele está
1234
no meu dispositivo HC-05. Você pode observar que é possível que você conecte o dispositivo e desconecte-o com uma mensagem como esta:mas não é um problema. Você não precisa se conectar, então você pode sair
bluetoothctl
digitandoCtrl + D
.Forneça um arquivo utilizável
/dev/rfcomm0
Primeiro, verifique se você não executou nenhum comando rfcomm antes. De fato, mesmo se você fechar
Ctrl+C
o programa, ele ainda será executado em segundo plano.Agora você pode executar
Observe que, se você tentar escrever na entrada do rfcom, nada aconteceu. Você precisa usar outro programa.
Terceiro e último passo: escreva no
/dev/rfcomm0
Existem várias maneiras de escrever no arquivo, mas observe que todas as formas de prosseguir envolvem raiz. Descrevo aqui vários programas que podem fazer isso (para que você possa escolher dependendo da sua necessidade ou do que está instalado no seu sistema, por exemplo). Se você esquecer de executar o programa como root, poderá ter um erro:
Primeira opção: conectar usando
screen
A tela é uma ferramenta muito poderosa. Você pode instalá-lo (é sempre mais útil) usando:
e depois corra
Se você esquecer de executá-lo como root, receberá um erro como o Aleksander:
Para sair, digite "(CTRL + A) +: sair"
Segunda opção: conectar usando
minicom
Instale-o
e depois corra
Se você esquecer de executá-lo como root, você terá um erro como
Para sair, digite "Ctrl + A X".
Terceira opção: miniterm de script python
Faça o download deste script e execute:
Escreva diretamente no arquivo
Primeiro, execute o seguinte comando (9600 é a taxa de transmissão):
Agora você pode escrever neste arquivo como em um arquivo clássico:
e, em teoria, ler dele usando
Mas eu não sei, ler não funciona, se algum de vocês tem uma idéia ...
fonte
/def/rfcomm0
deve ser/dev/rfcomm0