Tenho um dispositivo microcontrolador que lê dados de sensores e os envia via conversor serial para USB (cabo ftdi232). Este conversor serial para USB está conectado ao minicomputador ARMv7 -CuBoxcom Ubuntu 13.04. Também conectei o adaptador WiFi USB ao CuBox.
Gostaria de ler dados da porta serial e enviá-los via WiFi e receber no PC com Windows. É possível sem programação de soquete de rede, utilizando as ferramentas disponíveis? Algo como pipe/ponte/redirecionamento entre porta serial e WiFi. Não preciso me comunicar com esta caixa, portanto, um fluxo de dados constante e unidirecional por WiFi será suficiente.
Obrigado por quaisquer recursos e ideias sobre como configurar esta comunicação.
Responder1
Usar Ncat (http://nmap.org/ncat/). É multiplataforma e vem instalado por padrão em muitas distribuições GNU/Linux.
No seu PC, ouça com Ncat (aqui estamos usando port 55555
, mas você pode usar qualquer porta):
nc -l 55555
No seu CuBox, conecte-se ao ouvinte:
nc <Your PC's IP> 55555
Então se você digitar algo no seu CuBox, ele será enviado para o seu PC (digite algo e pressione enter para ver como funciona).
Com o bash, você pode facilmente redirecionar seus dados seriais recebidos no CuBox através do USB para nc
. Exemplo (usando screen
para leitura de dados seriais do terminal):
screen /dev/ttyUSB0 | nc 192.168.1.20 55555
Observe que você deve alterar seu tty
dispositivo e substituí-lo 192.168.1.20
pelo IP do seu PC.
Responder2
Também pode ser útil socat
, uma ferramenta de soquete multiuso. Ele pode fazer o mesmo nc
, mas também oferece suporte ao encaminhamento bidirecional entre dois terminais.