Como enviar um arquivo usando o protocolo xmodem a partir da linha de comando

2

Eu quero roteirizar isso e minhas habilidades de script são bastante limitadas, então, por favor, tenha paciência comigo.

Eu tenho um escopo anexado às linhas RX e TX da porta serial. Se eu fizer:

cat /dev/ttyS0

Eu recebo um fluxo contínuo de caracteres 'C' para que o lado remoto esteja ativo e enviando. Se eu fizer:

cat {filename} > /dev/ttyS0

Eu recebo um burst na linha TX sem qualquer protocolo. Se eu fizer o seguinte:

/usr/bin/sx -vv -k -X -b -c send {filename}

A linha TX permanece inativa. O arquivo é binário e espera o protocolo xmodem 1K. O que estou fazendo errado?

    
por user58178 30.01.2014 / 22:25

2 respostas

1

A resposta dada pelo OP agora inativo era:

hello.uart1_divisor_change.xmodem.hex.no_pll0 > /dev/ttyS0 < /dev/ttyS0
    
por 03.09.2016 / 20:18
0

Para outros usuários de sistemas embarcados que ainda possam querer / precisar enviar um arquivo via XMODEM, esse método funciona bem com um Raspberry Pi ou sistema similar: Instale sx e ser2net

Adicione uma linha no arquivo /etc/ser2net.conf para o TTY conectado ao UART e defina a taxa de transmissão correta (115200 neste exemplo):

5000:raw:115200:/dev/ttyUSB0:115200 8DATABITS NONE 1STOPBIT

Use sx para carregar o arquivo:

sx -vv -X -b --tcp-client localhost:5000 embedded-image.bin
    
por 11.04.2018 / 06:56

Tags