Detectar porta serial de impressora

13. Re: Detectar porta serial de impressora

Lucas Oliveira
birak

(usa Ubuntu)

Enviado em 10/03/2023 - 10:06h


alexabolada escreveu:

R: Uma possível solução é você verificar as conexões Serial (COM) disponíveis no computador, isso pode ser feito usando o comando ls /dev/ttyS*, no qual você encontrará todas as portas COM que estão disponíveis no computador, desta forma você saberá qual porta a impressora está usando. Você também pode usar um software de monitoramento de porta Serial, como o CoolTerm, que será mais eficaz para monitorar quem se conecta à porta Serial.


é meu amigo rsrs.. ta dificil

o ls /dev/ttyS* não me ajuda tb, pq eu tenho de 0 até 29 portas seriais rsrs é um pc industrial, não um Desktop caseiro

e tb não me ajudaria instalar um app

pq oq eu preciso é dar um comando e saber q o retorno foi minha impressora, uma vez q eu saiba qual é a porta, consigo pegar esse resultado e colocar numa variável pra fazer outras coisas


  


14. Re: Detectar porta serial de impressora

Alexa Bolada
alexabolada

(usa Debian)

Enviado em 10/03/2023 - 10:06h

R: Uma possível solução é usar o comando dmesg, que exibe os registros de log do kernel. Existe uma opção deste comando que permite filtrar seus logs de kernel pela string "ttyS", assim você pode verificar qual dispositivo foi conectado recentemente. Então, é possível determinar se o dispositivo que acabou de ser conectado é a sua impressora.


15. Re: Detectar porta serial de impressora

Lucas Oliveira
birak

(usa Ubuntu)

Enviado em 10/03/2023 - 10:09h


alexabolada escreveu:

R: Uma possível solução é usar o comando dmesg, que exibe os registros de log do kernel. Existe uma opção deste comando que permite filtrar seus logs de kernel pela string "ttyS", assim você pode verificar qual dispositivo foi conectado recentemente. Então, é possível determinar se o dispositivo que acabou de ser conectado é a sua impressora.


Essa opção também não dá rsrs, como eu disse tem várias outras coisas ligadas nas outras COM

eu ja vi o log, por ele eu sei que ligou algo na com, não sei se é a impressora rs


16. Re: Detectar porta serial de impressora

Alexa Bolada
alexabolada

(usa Debian)

Enviado em 10/03/2023 - 10:09h

R: Para verificar exatamente qual dispositivo foi conectado pela porta COM, uma opção é usar o comando lsusb, que lista todos os dispositivos detectados pela porta USB, e o comando lspci, que lista os dispositivos detectados pela porta PCI, bem como o comando dmesg, para verificar a saída de log de kernel. Assim, você pode determinar quais dispositivos são compatíveis com a sua impressora a partir dos registros de log listados.


17. Re: Detectar porta serial de impressora

Buckminster
Buckminster

(usa Debian)

Enviado em 10/03/2023 - 10:11h

Já tentou olhar no BIOS do PC?
Apesar de que aí é um PC industrial, mas de repente no BIOS esteja explícito em qual serial está a impressora.


________________________________________________
Always listen the Buck!


18. Re: Detectar porta serial de impressora

Lucas Oliveira
birak

(usa Ubuntu)

Enviado em 10/03/2023 - 10:13h


alexabolada escreveu:

R: Para verificar exatamente qual dispositivo foi conectado pela porta COM, uma opção é usar o comando lsusb, que lista todos os dispositivos detectados pela porta USB, e o comando lspci, que lista os dispositivos detectados pela porta PCI, bem como o comando dmesg, para verificar a saída de log de kernel. Assim, você pode determinar quais dispositivos são compatíveis com a sua impressora a partir dos registros de log listados.


lsusb não ajuda aqui, pois não tenho nada em USB

já o lspci é praticamente o mesmo que o lshw...

oq eu to correndo atrás é tipo.. dar um comando e conseguir saber que a impressora é o ttySX


19. Re: Detectar porta serial de impressora

Alexa Bolada
alexabolada

(usa Debian)

Enviado em 10/03/2023 - 10:13h

R: Para descobrir o dispositivo no qual a impressora está conectada, você pode utilizar o comando dmesg | grep tty para ver os logs de kernel relacionados a impressoras e verificar se a impressora foi detectada e qual porta COM está associada a ela. Também pode utilizar o comando ls -l /dev/ttyS*, que lista todos os dispositivos Serial possíveis. Ao comparar o resultado com o desenho do seu placa-mãe, você deve conseguir descobrir qual é o dispositivo associado à impressora.


20. Re: Detectar porta serial de impressora

Lucas Oliveira
birak

(usa Ubuntu)

Enviado em 10/03/2023 - 10:17h


Buckminster escreveu:

Já tentou olhar no BIOS do PC?
Apesar de que aí é um PC industrial, mas de repente no BIOS esteja explícito em qual serial está a impressora.


________________________________________________
Always listen the Buck!


não posso, a ideia é conseguir pegar a porta exata da impressora

com esse resultado eu consigo trabalhar um script pra fazer outras coisas

tipo.. no computador que estou estando, eu já sei que a impressora está no ttyS7, mas pq eu fiquei testando echo até achar a porta

mas isso não rola, a ideia é dar um comando e obter a porta, com o resultado eu jogo numa variável e consigo trabalhar uns scripts pra outras coisas

só q pensa, tem mais de 100 pcs rsrs.. num da pra ficar testando porta de um a um


21. Re: Detectar porta serial de impressora

Buckminster
Buckminster

(usa Debian)

Enviado em 10/03/2023 - 11:20h

Esse comando
cat /proc/devices | grep -y ttyS
retorna qual(is) porta(s) estão sendo usadas.

O comando
cat /proc/ioports
retorna as portas ativas no sistema dizendo se é keyboard, vga, etc.

O comando
cat /proc/devices
lista todos os dispositivos ativos do sistema.
Na saída desse comando onde estiver lp é a impressora.
Por exemplo
Character devices:
1 pty
2 ttyp
3 ttyS
4 lp
5 vcs
6 misc
10 sound
20 fb
30 netlink
120 ptm
130 pts
151 raw

Block devices:
1 ramdisk
2 fd
3 cdrom
...

O 4 é a impressora.

Porém, o comando

cat /proc/devices | grep -i lp

retorna
4 lp
e daí tu não precisa ficar listando toda hora.

O comando
cat /etc/printcap
se não retornar nada é porque não tem impressora definida, se tiver ele retornará algo como:
# printcap.local
# This file is included by printconf's generated printcap,
# and can be used to specify custom hand edited printers.

deskjet |lp |PostScript | HP Deskjet 692c
:lp=/dev/lp0
:sd=/var/spool/lpd/deskjet
:sh
:mx#0
:if=/usr/local/bin/deskjet-filter
:


Tem o
lpstat -a
lpinfo


Maiores informações aqui:
https://www.guiafoca.org/guiaonline/avancado/ch09.html
https://www.guiafoca.org/guiaonline/avancado/ch09s06.html#impr-remota-printacap
https://www.guiafoca.org/guiaonline/iniciante/ch13.html
https://www.linuxforce.com.br/comandos-linux/comandos-linux-comando-lpstat/


________________________________________________
Always listen the Buck!


22. Re: Detectar porta serial de impressora

Marcelo Oliver
msoliver

(usa Debian)

Enviado em 10/03/2023 - 18:14h


birak escreveu:


alexabolada escreveu:

R: Para descobrir qual porta serial é a sua impressora, você deve observar os resultados do comando dmesg|grep tty. O resultado indica as portas serial que estão disponíveis, junto com o fabricante e o modelo do dispositivo conectado à porta. Por exemplo, se a porta serial listada é 00:04: ttyS0 at I/O 0x3f8 (irq = 4, base_baud = 115200) é uma 16550A, então a impressora conectada deverá ser um dispositivo 16550A. A partir do modelo do dispositivo, você pode realizar a procura para encontrar correspondente na lista de impressoras suportadas.


O modelo da impressora é EPSON_L5290_Series_EEA5B7

Pelo comando dmesg o resultado é esse:

[ 0.505436] 0000:02:00.0: ttyS7 at I/O 0xe0c8 (irq = 16, base_baud = 115200) is a XR16850
Eu sei q está na porta S7 pq eu fui fazendo aquele teste de echo e mandando imprimir
Mas concorda que só pelo comando não tem como saber qual deles é a impressora?

Boa noite Birak.
Use o comando:
dmesg|awk '$0~/tty.*XR16850$/{print $4}'
De acordo com a sua postagem de nº 5:
[ 0.088395] printk: console [tty0] enabled
[ 0.384860] 00:04: ttyS0 at I/O 0x3f8 (irq = 4, base_baud = 115200) is a 16550A
[ 0.407538] 00:05: ttyS1 at I/O 0x2f8 (irq = 3, base_baud = 115200) is a 16550A
[ 0.430833] 00:06: ttyS2 at I/O 0x3e8 (irq = 11, base_baud = 115200) is a 16550A
[ 0.454174] 00:07: ttyS3 at I/O 0x2e8 (irq = 11, base_baud = 115200) is a 16550A
[ 0.477520] 00:08: ttyS4 at I/O 0x2d0 (irq = 11, base_baud = 115200) is a 16550A
[ 0.501436] 00:09: ttyS5 at I/O 0x2e0 (irq = 11, base_baud = 115200) is a 16550A
[ 0.504054] 0000:02:00.0: ttyS6 at I/O 0xe0c0 (irq = 16, base_baud = 115200) is a XR16850
[ 0.505436] 0000:02:00.0: ttyS7 at I/O 0xe0c8 (irq = 16, base_baud = 115200) is a XR16850
[ 0.568742] tty ttyS22: hash matches
[ 2.063694] dw-apb-uart.2: ttyS8 at MMIO 0xdf34b000 (irq = 20, base_baud = 115200) is a 16550A


Vai retornar:
ttyS6
ttyS7




______________________________________________________________________
Importante:
lynx --dump https://www.vivaolinux.com.br/termos-de-uso/ | sed -nr '/^[ ]+Se/,/dou.$/p'
______________________________________________________________________
Nota de esclarecimento:
O comando: ACIMA, faz parte da minha assinatura.
Att.: Marcelo Oliver
______________________________________________________________________



23. Re: Detectar porta serial de impressora

Alexa Bolada
alexabolada

(usa Debian)

Enviado em 10/03/2023 - 18:14h

{
"error": {
"message": "We could not parse the JSON body of your request. (HINT: This likely means you aren't using your HTTP library correctly. The OpenAI API expects a JSON payload, but what was sent was not valid JSON. If you have trouble figuring out how to fix this, please send an email to support@openai.com and include any relevant code you'd like help with.)",
"type": "invalid_request_error",
"param": null,
"code": null
}
}




01 02



Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts