Teknik^tDR
Versió 3.x!

Virtualització

Autoconnexió de dispositius USB a VMware

 
per teknik el 8 Abril 2010 | Programació, Sistemes, Virtualització

A la feina fem servir VMware per muntar entorns de desenvolupament per tasques puntuals (algunes no tant puntuals!). Últimament n’he hagut de muntar dos per desenvolupament amb terminals mòbils, i m’he trobat que cada cop que connectava el dispositiu al port USB de la màquina host, després havia de dir-li a VMware que el connectés a la màquina virtual. Buscant a Google vaig trobar un document sobre com automatitzar-ho (PDF en anglès).

Bàsicament hem de modificar el fitxer VMX que descriu la nostra màquina virtual per indicar-li el ID de fabricant i de producte que volem que s’autoconnecti a la màquina virtual que descriu aquest fitxer VMX. Per fer-ho hem d’afegir línies d’aquest tipus, una per cada dispositiu (posant device0, device1, etc.):

usb.autoConnect.device0 = "0x0fca:0x8004"

Aquest ID de fabricant i de dispositiu el podem obtenir molt facilment a Linux amb un lsusb. Això ens mostrarà una línia per cada dispositiu, incloent-hi hubs USB. Per exemple, si connecto una BlackBerry em puc trobar el següent:

Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 028: ID 0fca:8004 Research In Motion, Ltd.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

Fixeu-vos que el que ens interessa és l’ID, en aquest cas “0fca:8004“. Això és el que posarem entre cometes, afegint-li “0x” davant de cada un dels nombres, que són hexadecimals. En aquest cas obtenim “0x0fca:0x8004″.

Per buscar-lo a Windows, haurem d’anar a l’administrador de dispositius i obrir les propietats del dispositiu en qüestió. Un cop allà anirem a Detalles i buscarem la propietat Id. de hardware. Això ho podem veure a la següent figura:

A la segona línia hi trobem “HID\VID_0458&PID_0003“. Aquests números són els que corresponen a l’ID de fabricant (0458) i de dispositiu (0003). Per tant, a partir d’aquesta línia obtenim “0x0458:0x0003”. Fixeu-vos que cal eliminar la part de HID, VID, PID i tots els signes de puntuació, i quedar-nos amb els números, afegint-hi el 0x i els dos punts.

Al PDF mencionat hi trobarem més casos en que podem fer servir la funcionalitat d’autoconnexió (com per exemple, buscar els dispositius per nom i no per ID).

Cal anar en compte amb el detall que hem de deixar que el dispositiu estigui completament encès per assegurar-nos que el sistema el detecta correctament i que els IDs són correctes. Això ho he vist especialment amb els dispositius BlackBerry.

legacydiary.com/pdf/vmware_usb.pdflegacydiary.com/pdf/vmware_usb.pdf