Farejar dados no serial ttyS0 pelo virtualbox COM

Farejar dados no serial ttyS0 pelo virtualbox COM

Estou executando o VirtualBox no Linux. Acho que o sistema operacional é o Windows XP.

Eu tenho um transmissor IR conectado à porta serial (sim, o tipo antigoDE-9), na minha caixa e adicionei o seguinte no VirtualBox "Serial Ports":

[v] Enable Serial Port
Port Number: COM1 IRQ: 4 I/O Port: 0x3F8
Port Mode: Host Device
Port/File_PAth: /dev/ttyS0

Adicionado usuário ao grupo para serial.

Agora: estou usando o sniffer no host; ou seja, jpnevulador

jpnevulator --ascii --timing-print --tty /dev/ttyS0 --read

Execute o sistema operacional convidado e inicie o software IR e grave dados por IR (no sistema operacional convidado/WinXP). Os dados são gravados, mas nada aparece no arquivo jpnevulator.

O que estou perdendo aqui?

Responder1

OK. Depois de muitos testes em campo, sou um novato e descobri a seguinte maneira de monitorar o tráfego:

Em "Portas seriais" do VirtualBox:

[v] Enable Serial Port
Port Number: COM1 IRQ: 4 I/O Port: 0x3F8
Port Mode: Host Pipe
Port/File_PAth: /tmp/vbwincom1

E então use

socat /tmp/vbwincom1 -

Os dados gravados no pipe são gravados no terminal no host Linux.

Isso ocorre monitorando o soquete em vez do serial.

Se alguém tiver uma solução para monitorar /dev/ttyS0 em vez de uma camada por soquete, aceitarei isso como resposta - mas por enquanto é isso. Espero que isso possa ajudar outra pessoa.

socat

informação relacionada