Problemas com a porta ttyACM0

Iniciado por acacio1986, 14 de Março de 2013, 11:20

tópico anterior - próximo tópico

acacio1986

Tenho um dispositivo CDC que funciona normalmente no Windows. Para ele trabalhar no Linux tive que efetuar um "ajuste". mas toda vez que reinicio o computador ele perde essa configuração.

No LINUX (ubuntu) ele cria a porta ttyACM0 para esse dispositivo, mas o meu software só enxerga a porta ttyUSB0. Para o software funcionar eu tenho que usar o comando ln -s /dev/ttyACM0 /dev/ttyUSB0. Entendo pouco de LINUX, mas com esse comando eu acho que estou desviando o fluxo de uma porta para outra.

1 - Gostaria de saber se existe alguma maneira permanente para essa configuração de desvio?

2 -  Ou se existe alguma forma de fazer meu programa enxergar a porta ttyACM0?

acacio1986

Estou usando o comando ln -s /dev/ttyACM0 /dev/ttyUSB0 para criar um link simbolico na pasta DEV, o mesmo funciona mas quando reinicio o windows o mesmo some. Encontrei no forum uma dica para o problema, mas tem tanto informação no arquivo que não conseguir a solução. Poderiam me ajudar?


http://www.reactivated.net/writing_udev_rules.html

Ioca100

Usuário Linux- 449417

irtigor

Crie a regra e salve como "algum_nome.rules", no diretório "/etc/udev/rules.d". Pra primeira parte, o udevadm é muito útil (depois de você intender a teoria, presente no link).

Arthur Bernardes

Citar1 - Gostaria de saber se existe alguma maneira permanente para essa configuração de desvio?

Acho que se você colocar esse comando no rc.local, ele será efetuado durante o boot..!

Abra o rc.local com o comando ==> sudo gedit /etc/rc.local

E deixe-o assim..!

#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.

sudo ln -s /dev/ttyACM0 /dev/ttyUSB0

exit 0


Salve e saia..

Reinicie a máquina para ver se deu certo..

Este comando você executa como Root.?

acacio1986

Citação de: Arthur Bernardes online 14 de Março de 2013, 20:52
Citar1 - Gostaria de saber se existe alguma maneira permanente para essa configuração de desvio?

Acho que se você colocar esse comando no rc.local, ele será efetuado durante o boot..!

Abra o rc.local com o comando ==> sudo gedit /etc/rc.local

E deixe-o assim..!

#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.

sudo ln -s /dev/ttyACM0 /dev/ttyUSB0

exit 0


Salve e saia..

Reinicie a máquina para ver se deu certo..

Este comando você executa como Root.?


Poderia me dar uma dica de como fazer um scrip para rodar isso? Ou como posso fazer meu programa enxergar a porta ACM0 diretamente?

BrunoPT

Acho que não é boa politica criar esse atalho, se tiver algum dispositivo a usar a ttyUSB0 vai dar problemas.

Que software é esse que esta a falar?

acacio1986

Citação de: BrunoPT online 15 de Março de 2013, 14:59
Acho que não é boa politica criar esse atalho, se tiver algum dispositivo a usar a ttyUSB0 vai dar problemas.

Que software é esse que esta a falar?

É um software de monitoramento próprio, escrito em JAVA. Tenho acesso ao fonte. Teria como eu fazer ele enxergar a porta ttyACM0? Alguma dica de onde eu começo a estudar o código dele?