ago
14
2009

Suporte para o cabo USB host-to-host Prolific (PL-25A1) no Linux

O protocolo USB estabelece um padrão mestre-escravo de comunicação, de modo que uma comunicação entre dois hosts (ex.: computadores PC) através de um cabo ponto-a-ponto não funcionará. Para resolver, existem cabos conversores (comercialmente já encontrei nomes como uplink, netlink, etc) que fazem esta adaptação.

Um dos controladores encontrados nestes cabos é o PL-25A1 da Prolific que está presente em diversos modelos. Nos sistemas GNU/Linux há um módulo (plusb.ko) que ainda não dá suporte, mas já existe o patch (se quiser o arquivo já alterado clique aqui). Com o cabo conectado a porta USB veja qual o fabricante.

# lsusb
Bus 001 Device 002: ID 067b:25a1 Prolific Technology, Inc. PL25A1 Host-Host Bridge

Meus testes foram usando o Linux 2.6.29.6-217.2.3.fc11.i586 (Fedora 11). Para instalar o novo módulo, o primeiro passo é renomear o antigo:

# cd /lib/modules/`uname -r`/kernel/drivers/net/usb/
# mv plusb.ko plusb.ko.orig

Na pasta onde está o código-fonte (plusb.c) compile e carrege o módulo no sistema.

# make -C /lib/modules/`uname -r`/build M=`pwd` modules
# insmod plusb.ko

Uma vez que o módulo esteja funcionando, você terá uma nova interface de rede usbX  (para ver utilize ifconfig -a). Para enviar e recever pacotes, escolha um endereço de IP para os endpoints e comece a utilizar normalmente.

usb0      Link encap:Ethernet  HWaddr EE:08:2C:4C:79:5B  
          inet addr:192.168.0.10  Bcast:192.168.0.255  Mask:255.255.255.0
          inet6 addr: fe80::ec08:2cff:fe4c:795b/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:94 errors:0 dropped:0 overruns:0 frame:0
          TX packets:63 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:12458 (12.1 KiB)  TX bytes:11304 (11.0 KiB)

Acredito que as próximas versões do kernel fornecido pelas distribuições já irão trazer este suporte (quem ver o patch constatará que é mínima as alterações necessárias).

Este cabo custa em média R$ 70,00  é bem útil para transferir dados entre dois computadores quando não há interface de rede disponível.  Ainda não pesquisei os tipos de transferências que o cabo permite, especialmente a transferência isócrona.

tags: ,
posted in usb by Tiago Maluta

Follow comments via the RSS Feed | Deixe um comentário | Trackback URL

2 Comments to "Suporte para o cabo USB host-to-host Prolific (PL-25A1) no Linux"

  1. Walbon wrote:

    E quanto a velocidade? Chega a velocidade dos 30MB/s da USB2.0?

  2. Tiago Maluta wrote:

    Nos meus benchmarks não obtive os 480Mbits/s da especificação 2.0. Na verdade não era esperado hava visto que o cabo não implementa o modo de transferência isocrono.

Leave Your Comment