Celulares no Linux: LG

Uma febre no Brasil, principalmente de 2006 até os dias atuais, é ter celular com câmera, nisso não há dúvidas. Foto daqui, foto acolá,e enfim, nos deparamos com a mensagem: “Memória cheia”. A primeira coisa a fazer, é correr atrás de um cabo de dados. Entramos num site de comércio eletrônico, e, passados alguns dias, chega o cabo na sua casa. Feliz e contente, abrimos a embalagem, e um velho CD acompanha o produto, escrito “Win2K/XP software”, só que você não possui Windows instalado na sua máquina. Ao simplesmente plugar o celular na porta USB, nada acontece. E agora, o que fazer?

Na primeira parte, falamos sobre os celulares Samsung, e na segunda, ensinamos a conectar um celular Siemens. Na terceira parte, falamos dos tão populares e pioneiros neste setor: os celulares Nokia. Nesta dica falaremos sobre os celulares da LG, cujos aparelhos são realçados por vários recursos de ponta e um preço acessível, variando desde celulares mais simples até os mais ousados.

Iniciaremos então os procedimentos para a conexão do seu LG com o computador, por cabos e não Bluetooth. Se você deseja utilizar o Bluetooh, confira a matéria de Carlos E. Morimoto:

Tutorial: Acessando celulares e palmtops via bluetooth no Linux
O Bluetooth é um padrão aberto de comunicação sem fios, desenvolvido pelo SIG (Bluetooth Special Interest Group) que inclui diversas empresas, entre elas a Sony, IBM, Intel, Toshiba e Nokia.
https://www.hardware.com.br/tutoriais/bluetooth-linux/

Vamos lá. Estes são alguns dos p?e-requisitos que necessitaremos para a conexão entre seu computador e o celular LG:

  • Kernel com suporte ao módulo pl2303, da Prolific (pl2303) e ao módulo usbserial (já vem habilitados na maioria das distribuições);
  • Software LG Contents Bank, disponível no site da LG (http://br.lge.com/support/software.jsp)
  • Wine (para execução do aplicativo Windows LG Contents Bank, visite http://www.winehq.org)
  • Caso você precise recompilar o módulo pl2303 do kernel, ter os pré-requisitos para tal (gcc, make, ncurses, fontes do kernel, etc).

Falaremos ainda sobre a instalação do Wine aqui, não sendo necessário baixar nada por enquanto. Mas tenha em mãos o programa LG Contents Bank, baixando-o pelo site cima especificado. No caso do módulo pl2303, este já vem compilado e instalado na grande maioria das distribuições.

Abra o terminal, como o Konsole ou Gnome-terminal, e faça login como root, usando o comando:

# su

Após isso, rode o comando abaixo para mostrar todos os dispositivos USB conectados à máquina (não deixe o celular ainda conectado):

# /sbin/lsusb

A saída será similar à esta:

Bus 3 Device 1: ID 0000:0000
Bus 4 Device 1: ID 0000:0000
Bus 2 Device 1: ID 0000:0000
Bus 1 Device 1: ID 0000:0000

Agora conecte o cabo ao celular e ao computador, e re-execute o comando acima. A saída deverá ser como:

Bus 3 Device 17: ID 1685:0202
Bus 3 Device 1: ID 0000:0000
Bus 4 Device 1: ID 0000:0000
Bus 2 Device 1: ID 0000:0000
Bus 1 Device 1: ID 0000:0000

Note que agora surgiu uma linha com informações diferentes (1685:0202). Essa é a identificação do dispositivo (VENDOR_ID:PRODUCT_ID). O identificador do meu cabo está errado, pois o dispositivo da Prolific tem identificadores 67b:2303. Se você tem o mesmo problema que eu tive, é preciso editar e recompilar o módulo pl2303 do kernel para alterar o identificador (vide adiante em “Contornando o problema com o identificador do dispositivo”).

Se você for felizardo, seus identificadores estarão corretos (67b:2303). Então o próximo passo é carregar o módulo para o cabo. Para isso, utilize o comando abaixo:

# /sbin/modprobe pl2303

Para verificar se o driver reconhece o seu cabo, desconecte e conecte o cabo na máquina e digite o comando:

# tail /var/log/messages

Deverá ser exibido algo parecido com:

Nov 18 19:25:25 SEMPRON_2400 kernel: usb 3-1: pl2303 converter now attached to ttyUSB0

O cabo foi detectado corretamente e atribuído ao dispositivo /dev/ttyUSB0. Tome nota desse dispositivo, pois precisaremos associá-lo a uma porta serial no Wine.

No caso do Slackware 12, adicione o usuário da sua máquina ao grupo uucp, para que eles tenham acesso ao dispositivo criado. Para isso, use o comando:

# gpasswd -a LOGIN_USUARIO uucp

Agora, é necessário instalar e configurar o Wine, o software que se encarrega de rodar os aplicativos nativos para Windows. Como há material explicando esse processo aqui no Guia Do Hardware, dispensaremos tal parte desta dica.

Para instalar e configurar o Wine, acesse:

Tutorial: Dicas para uso do Wine
O Wine permite que você rode alguns softwares no Linux, especialmente os que você não encontrou representantes à altura para a plataforma. Dependendo do software, o desempenho é tão aceitável que você praticamente esquece que está rodando um programa para Windows no Linux. Este tutorial inclui várias dicas de instalação e uso do Wine, que permitirão que tire o melhor proveito dele. Por Marcos Elias Picão
https://www.hardware.com.br/tutoriais/dicas-wine/

Agora precisamos associar a porta com1 do wine com o nosso dispositivo atribuído ao cabo (aquele que você tomou nota anteriormente, no meu caso /dev/ttyUSB0). Abra um novo terminal com seu usuário (não root) e crie o link simbólico para o dispositivo com os comandos abaixo:

# cd ~/.wine/dosdevices
# ln -s /dev/ttyUSB0 com1

Agora é preciso instalar o LG Contents Bank obtido no site da LG (baixe a versão específica do seu aparelho). Tendo baixado o arquivo, utilize o terminal do passo anterior e execute os comandos abaixo para descompactar e instalar:

# cd diretório_instalador
# wine Setup.exe

Está quase acabando! Nosso último passo é configurar o LG Contents Bank para que ele utilize como porta de comunicação a COM1 (O programa até tem um menu de configurações, mas não é possível listar as portas rodando pelo wine). Para isso editaremos o arquivo config.ini do programa. Se você fez a instalação padrão, o caminho é o seguinte (utilize um editor de textos de sua preferência):

$ gedit ~/.wine/drive_c/Program Files/LGGSM/LGContentsBank/config.ini

Troque o valor do parâmetros para que fiquem conforme abaixo:

IRDA=0
Port=1

Tudo feito! Agora é conectar o cabo ao celular, abrir o LG Contents Bank e tentar transferir conteúdos entre o PC e o celular. Para acessar o LG Contents Bank, utilize o menu do Wine, que se instala no menu de seu gerenciador de janelas (Menu K / Aplicações).

Caso o identificador do seu dispositivo não seja 67b:2303 (isso foi um problema inclusive no Windows) será preciso alterar e recompilar o módulo pl2303. Não entraremos em detalhes ricos no mérito da compilação de módulos ou do kernel, pois não é o objetivo desse texto; há excelentes artigos sobre compilação do kernel disponíveis na Internet, inclusive aqui no Guia Do Hardware.

De posse dos fontes do kernel (estou usando a versão 2.6.21_5), acesse o arquivo pl2303.h (usei o gedit, mas use o editor de sua preferência):

# gedit /usr/src/linux/drivers/usb/serial/pl2303.h

E edite-o, substituindo as constantes abaixo pelo identificador do seu dispositivo (no meu caso 1685:0202):

#define PL2303_VENDOR_ID 0x1685
#define PL2303_PRODUCT_ID 0x0202

Após isso compile o módulo, copie o arquivo gerado (pl2303.ko) para o diretório de destino (/lib/modules/VERSÃO_KERNEL/drivers/usb/serial). Na compilação do módulo precisaremos do pacote build-essential, que vem com parte dos pré-requisitos citados lá no início da dica. Instale-os usando o gerenciador de pacotes da sua distribuição. No Ubuntu, por exemplo, rode:

# sudo apt-get install build-essential

A partir daí, entremos no diretório do fonte e rode alguns comandos básicos para compilar o módulo:

# cd /usr/src/linux-source-`uname -r`
# make menuconfig

Depois do último comando, opte por “exit” e “yes”. E enfim vamos à compilação:

# make drivers/usb/serial/pl2303.ko

O novo módulo está compilado. Descarregue o módulo antigo e copie o novo para seu lugar correto:

# rmmod pl2303.ko
# cp drivers/usb/serial/pl2303.ko /lib/modules/`uname -r`/kernel/drivers/usb/serial/

E tente seguir novamente o procedimento desde o início.

Boa diversão!

Agradecimentos ao Roberto Bechtlufft

Sobre o Autor

Redes Sociais:

Deixe seu comentário

X