'cat / dev / ttyACM' perde dados quando canalizado pelo netcat

1

Estou lendo dados de /dev/ttyACM0 usando cat /dev/ttyACM0 em um Raspberry Pi. Os dados vêm de um dispositivo, que envia linhas na forma

15.00   1316013 15

em que o primeiro número é um valor, o segundo, um timestamp em milissegundos do dispositivo.

Quando eu faço cat /dev/ttyACM0 > file.csv , recebo um valor a cada 12 ~ 13ms, mas quando faço exatamente a mesma coisa na rede, obtenho um intervalo de 1 ~ 2 segundos a cada 5 segundos.

É possível que haja dados perdidos em algum lugar? Ou que o sistema operacional bloqueia o dispositivo serial, então ele precisa aguardar alguns segundos para enviar mais dados? Existe alguma relação entre um dispositivo serial e um comando de rede canalizada?

Estou usando netcat ou ssh para enviar os dados. O dispositivo está enviando dados a 9600 bps

    
por marianov 06.11.2013 / 20:53

1 resposta

0

Acontece que cat /dev/ttyACM0 | awk não é exatamente o mesmo que </dev/ttyACM awk

E o awk também armazena em buffer, como cpugeniusmv comentou.

    
por 27.11.2013 / 21:50