Je souhaite connecter une interface CAN à USB pour la programmation d'une unité de contrôle moteur sur une machine virtuelle WinXP. seul ce périphérique n'est pas répertorié sous la petite icône USB en bas à gauche de la fenêtre vm.
en cours d'exécution USB-Devices, je reçois les informations suivantes:
T: Bus=06 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 3 Spd=12 MxCh= 0
D: Ver= 1.10 Cls=ff(vend.) Sub=ff Prot=00 MxPS=16 #Cfgs= 1
P: Vendor=0000 ProdID=0102 Rev=01.00
C: #Ifs= 1 Cfg#= 1 Atr=80 MxPwr=100mA
I: If#= 0 Alt= 0 #EPs= 4 Cls=00(>ifc ) Sub=00 Prot=00 Driver=(none)
Mon VM fonctionne avec tous les autres périphériques USB (y compris certains périphériques inhabituels). Le périphérique qui ne fonctionne pas sur mon système fonctionne correctement avec la virtualbox sur un Mac et un ordinateur BSD héberger les ordinateurs portables de mes collèges.
J'utilise Ubuntu 12.04 et virtualbox 4.1.18
Merci d'avance, cela faciliterait vraiment mon travail, je n'ai pas à gagner tout le temps :-(
information additionnelle:
Voici ce qui se passe lorsque je branche le périphérique en question:
udevadm monitor
monitor will print the received events for:
UDEV - the event which udev sends out after rule processing
KERNEL - the kernel uevent
KERNEL[13416.745162] remove /devices/system/cpu/cpu0/cpuidle/state0 (cpu)
KERNEL[13416.745212] remove /devices/system/cpu/cpu0/cpuidle/state1 (cpu)
KERNEL[13416.745236] remove /devices/system/cpu/cpu0/cpuidle/state2 (cpu)
KERNEL[13416.745265] remove /devices/system/cpu/cpu0/cpuidle/state3 (cpu)
KERNEL[13416.745287] remove /devices/system/cpu/cpu1/cpuidle/state0 (cpu)
KERNEL[13416.745309] remove /devices/system/cpu/cpu1/cpuidle/state1 (cpu)
KERNEL[13416.745330] remove /devices/system/cpu/cpu1/cpuidle/state2 (cpu)
KERNEL[13416.745352] remove /devices/system/cpu/cpu1/cpuidle/state3 (cpu)
UDEV [13416.745782] remove /devices/system/cpu/cpu0/cpuidle/state0 (cpu)
UDEV [13416.747609] remove /devices/system/cpu/cpu1/cpuidle/state1 (cpu)
UDEV [13416.747653] remove /devices/system/cpu/cpu0/cpuidle/state1 (cpu)
UDEV [13416.747680] remove /devices/system/cpu/cpu1/cpuidle/state2 (cpu)
UDEV [13416.747705] remove /devices/system/cpu/cpu0/cpuidle/state3 (cpu)
UDEV [13416.748618] remove /devices/system/cpu/cpu1/cpuidle/state0 (cpu)
UDEV [13416.748830] remove /devices/system/cpu/cpu1/cpuidle/state3 (cpu)
UDEV [13416.749363] remove /devices/system/cpu/cpu0/cpuidle/state2 (cpu)
KERNEL[13416.750026] add /devices/system/cpu/cpu0/cpuidle/state0 (cpu)
KERNEL[13416.750062] add /devices/system/cpu/cpu0/cpuidle/state1 (cpu)
KERNEL[13416.750086] add /devices/system/cpu/cpu0/cpuidle/state2 (cpu)
KERNEL[13416.750115] add /devices/system/cpu/cpu0/cpuidle/state3 (cpu)
UDEV [13416.751381] add /devices/system/cpu/cpu0/cpuidle/state1 (cpu)
UDEV [13416.751417] add /devices/system/cpu/cpu0/cpuidle/state3 (cpu)
UDEV [13416.751443] add /devices/system/cpu/cpu0/cpuidle/state2 (cpu)
UDEV [13416.751898] add /devices/system/cpu/cpu0/cpuidle/state0 (cpu)
KERNEL[13416.753027] add /devices/system/cpu/cpu1/cpuidle/state0 (cpu)
KERNEL[13416.753050] add /devices/system/cpu/cpu1/cpuidle/state1 (cpu)
KERNEL[13416.753064] add /devices/system/cpu/cpu1/cpuidle/state2 (cpu)
KERNEL[13416.753077] add /devices/system/cpu/cpu1/cpuidle/state3 (cpu)
KERNEL[13416.753091] remove /devices/system/cpu/cpu0/cpuidle/state0 (cpu)
KERNEL[13416.753105] remove /devices/system/cpu/cpu0/cpuidle/state1 (cpu)
KERNEL[13416.753118] remove /devices/system/cpu/cpu0/cpuidle/state2 (cpu)
KERNEL[13416.753132] remove /devices/system/cpu/cpu0/cpuidle/state3 (cpu)
KERNEL[13416.753145] remove /devices/system/cpu/cpu1/cpuidle/state0 (cpu)
KERNEL[13416.753158] remove /devices/system/cpu/cpu1/cpuidle/state1 (cpu)
KERNEL[13416.753171] remove /devices/system/cpu/cpu1/cpuidle/state2 (cpu)
KERNEL[13416.753184] remove /devices/system/cpu/cpu1/cpuidle/state3 (cpu)
KERNEL[13416.755131] add /devices/system/cpu/cpu0/cpuidle/state0 (cpu)
UDEV [13416.755158] remove /devices/system/cpu/cpu0/cpuidle/state2 (cpu)
KERNEL[13416.755174] add /devices/system/cpu/cpu0/cpuidle/state1 (cpu)
UDEV [13416.755189] add /devices/system/cpu/cpu1/cpuidle/state1 (cpu)
KERNEL[13416.755203] add /devices/system/cpu/cpu0/cpuidle/state2 (cpu)
UDEV [13416.755218] remove /devices/system/cpu/cpu0/cpuidle/state3 (cpu)
KERNEL[13416.755231] add /devices/system/cpu/cpu0/cpuidle/state3 (cpu)
UDEV [13416.755245] add /devices/system/cpu/cpu1/cpuidle/state0 (cpu)
UDEV [13416.755260] add /devices/system/cpu/cpu1/cpuidle/state3 (cpu)
UDEV [13416.755275] add /devices/system/cpu/cpu1/cpuidle/state2 (cpu)
UDEV [13416.755289] remove /devices/system/cpu/cpu0/cpuidle/state1 (cpu)
UDEV [13416.755303] remove /devices/system/cpu/cpu0/cpuidle/state0 (cpu)
KERNEL[13416.755622] add /devices/system/cpu/cpu1/cpuidle/state0 (cpu)
KERNEL[13416.755643] add /devices/system/cpu/cpu1/cpuidle/state1 (cpu)
KERNEL[13416.755656] add /devices/system/cpu/cpu1/cpuidle/state2 (cpu)
KERNEL[13416.755670] add /devices/system/cpu/cpu1/cpuidle/state3 (cpu)
UDEV [13416.759319] add /devices/system/cpu/cpu0/cpuidle/state2 (cpu)
UDEV [13416.759348] add /devices/system/cpu/cpu0/cpuidle/state3 (cpu)
UDEV [13416.759364] remove /devices/system/cpu/cpu1/cpuidle/state1 (cpu)
UDEV [13416.759379] remove /devices/system/cpu/cpu1/cpuidle/state0 (cpu)
UDEV [13416.759394] add /devices/system/cpu/cpu1/cpuidle/state1 (cpu)
UDEV [13416.759409] add /devices/system/cpu/cpu1/cpuidle/state0 (cpu)
UDEV [13416.759424] remove /devices/system/cpu/cpu1/cpuidle/state3 (cpu)
UDEV [13416.759439] add /devices/system/cpu/cpu1/cpuidle/state3 (cpu)
UDEV [13416.759453] remove /devices/system/cpu/cpu1/cpuidle/state2 (cpu)
UDEV [13416.759468] add /devices/system/cpu/cpu1/cpuidle/state2 (cpu)
UDEV [13416.759482] add /devices/system/cpu/cpu0/cpuidle/state1 (cpu)
UDEV [13416.759496] add /devices/system/cpu/cpu0/cpuidle/state0 (cpu)
KERNEL[13417.205442] add /devices/pci0000:00/0000:00:1d.0/usb6/6-1 (usb)
KERNEL[13417.208418] add /devices/pci0000:00/0000:00:1d.0/usb6/6-1/6-1:1.0 (usb)
UDEV [13417.227113] add /devices/pci0000:00/0000:00:1d.0/usb6/6-1 (usb)
UDEV [13417.229757] add /devices/pci0000:00/0000:00:1d.0/usb6/6-1/6-1:1.0 (usb)
et voici ce qui se passe si je connecte le périphérique Vector correctement transféré:
udevadm monitor
monitor will print the received events for:
UDEV - the event which udev sends out after rule processing
KERNEL - the kernel uevent
KERNEL[13696.085406] add /devices/pci0000:00/0000:00:1d.7/usb2/2-2 (usb)
KERNEL[13696.465828] add /devices/pci0000:00/0000:00:1d.7/usb2/2-2/2-2:1.0 (usb)
UDEV [13696.484915] add /devices/pci0000:00/0000:00:1d.7/usb2/2-2 (usb)
UDEV [13696.492091] add /devices/pci0000:00/0000:00:1d.7/usb2/2-2/2-2:1.0 (usb)
sortie de lsusb:
lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 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 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 007 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 008 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 004: ID 17ef:1004 Lenovo Integrated Webcam
Bus 004 Device 002: ID 08ff:2810 AuthenTec, Inc. AES2810
Bus 004 Device 003: ID 0a5c:2145 Broadcom Corp. Bluetooth with Enhanced Data Rate II
Bus 006 Device 007: ID 0000:0102
Bus 002 Device 011: ID 1248:1001
tail -f /var/log/kern.log, y compris la connexion et la déconnexion du périphérique:
tp@tp-ThinkPad-R500:~$ tail -f /var/log/kern.log
Jul 15 10:46:53 tp-ThinkPad-R500 kernel: [15135.583561] iwlwifi 0000:03:00.0: Radio type=0x1-0x2-0x0
Jul 15 10:46:53 tp-ThinkPad-R500 kernel: [15135.632544] ADDRCONF(NETDEV_UP): wlan0: link is not ready
Jul 15 10:46:53 tp-ThinkPad-R500 kernel: [15135.633620] tg3 0000:04:00.0: irq 49 for MSI/MSI-X
Jul 15 10:46:53 tp-ThinkPad-R500 kernel: [15135.662314] ADDRCONF(NETDEV_UP): eth0: link is not ready
Jul 15 10:46:55 tp-ThinkPad-R500 kernel: [15137.314088] tg3 0000:04:00.0: eth0: Link is up at 100 Mbps, full duplex
Jul 15 10:46:55 tp-ThinkPad-R500 kernel: [15137.314093] tg3 0000:04:00.0: eth0: Flow control is on for TX and on for RX
Jul 15 10:46:55 tp-ThinkPad-R500 kernel: [15137.315407] ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
Jul 15 10:46:56 tp-ThinkPad-R500 kernel: [15138.477486] input: Logitech Bluetooth Mouse M555b as /devices/pci0000:00/0000:00:1a.1/usb4/4-2/4-2:1.0/bluetooth/hci0/hci0:11/input14
Jul 15 10:46:56 tp-ThinkPad-R500 kernel: [15138.477699] generic-bluetooth 0005:046D:B009.0002: input,hidraw0: BLUETOOTH HID v4.16 Mouse [Logitech Bluetooth Mouse M555b] on 00:24:2C:BF:81:72
Jul 15 10:47:05 tp-ThinkPad-R500 kernel: [15148.080037] eth0: no IPv6 routers present
Jul 15 10:52:03 tp-ThinkPad-R500 kernel: [15445.116070] usb 6-1: new full-speed USB device number 8 using uhci_hcd
Jul 15 10:52:16 tp-ThinkPad-R500 kernel: [15458.488118] usb 6-1: USB disconnect, device number 8
C'est probablement un problème avec le support VB usb dans Ubuntu
Installez le support USB 2.0 comme indiqué précédemment https://www.virtualbox.org/wiki/Downloads
Mais ajoutez ensuite votre utilisateur à vboxusers group https://help.ubuntu.com/community/VirtualBox/USB
C'est un problème courant dans VB de ne pas avoir de privilèges USB sur les utilisateurs vbox
Sudo adduser yourusername vboxusers
Malheureusement, après avoir ajouté au groupe, vous devez vous déconnecter et vous connecter, puis réessayez. VB devrait reconnaître la clé USB dans la liste.
(Dans les dernières versions, il n'est même pas nécessaire d'ajouter le filtre, il vous suffit d'ouvrir le menu "Périphériques USB" sur le VM en cours d'exécution, de sélectionner le périphérique et de le brancher sur la machine cliente)
Vous devez installer le virtualbox extension pack
https://www.virtualbox.org/wiki/Downloads
et vous voulez également installer le guest additions
pour obtenir les pilotes appropriés pour votre client de virtualbox.
Certains périphériques USB peuvent ne pas fonctionner correctement avec Virtual Box. Cela peut être le cas avec votre interface CAN vers USB, mais il est intéressant d'essayer si Virtual Box y a accès.
Pour ce faire, nous pouvons essayer d’ajouter un filtre USB "vide" dans les paramètres USB de votre machine:
Cela peut déjà aider à reconnaître votre appareil. Nous pouvons également essayer de spécifier davantage les propriétés USB en cliquant avec le bouton droit de la souris sur "New Filer 1" pour ouvrir une fenêtre de configuration avec des info-bulles explicatives pour chaque entrée. :
Lisez également le Manuel Virtual Box pour une explication de ces paramètres et comment les obtenir.
Pouvez-vous confirmer que vous avez coché la coche Enable USB 2.0 (EHCI) Controller
indiquée dans la réponse de Takkat? De plus, il peut être utile de voir ce qui se passe sur le périphérique USB lorsque vous le branchez sur votre ordinateur. Dans cet esprit, les commandes suivantes peuvent vous aider à développer plus d'informations.
lsusb
udev monitor
Il est possible que vous deviez créer des règles udev pour le périphérique afin de vous assurer qu'il appartient à un groupe approprié. Il peut être utile d’en savoir plus sur le périphérique que vous utilisez.