Error 'USBDeviceOpen falló' solo con mi cuenta de usuario cuando uso el controlador PowerMate USB. OK con cuenta nueva

2

Tengo un controlador PowerMate USB de Griffin: funciona, pero al usar mi cuenta de usuario normal no puedo controlar la configuración de la luz . Con una nueva cuenta nueva, todo funciona como se esperaba. ¿Cómo puedo encontrar la causa del problema?

Puedo interactuar con él, girarlo, presionarlo y reacciona como se espera.
Pero no puedo controlar la configuración de la luz: la luz siempre está encendida, incluso si la puse en modo pulsante. No parpadea cuando debería.

Cada vez que hago una acción que debería cambiar el estado de luz (asignando el Conjunto predeterminado a la unidad PowerMate o cambiando el estado de luz predeterminado en la configuración), aparece este error en la consola:

  

19/03/11 17:39:42 PowerMate [441] Ubicación del dispositivo PowerMate: 26410000 servicio: 0000b69b USBDeviceOpen falló: e00002c5

A veces, obtengo varias entradas del mismo error (hasta 14 veces). Excepto este error y el siguiente error al iniciar la aplicación, no hay nada útil.

  

La ruta (nula) dada a - [NSWorkspace iconForFile:] no es una ruta completa.

Estoy corriendo Lion 10.7.1 (el problema fue similar en Snow Leopard).

Esto es lo que he hecho hasta ahora para solucionar el problema:

  • Asegúrese de que la aplicación PowerMate.app no se esté ejecutando

  • Desenchufa el dispositivo USB PowerMate y todos los demás dispositivos USB (excepto mi teclado)

  • Elimine todo lo creado por la aplicación PowerMate.app con:

.

rm ~/Library/Preferences/com.griffintechnology.PowerMate.plist;
rm -rf ~/Library/Caches/com.griffintechnology.PowerMate;
rm -rf ~/Library/Application\ Support/PowerMate;
  • Repare la autorización con Disk Utility.app

  • Reboot.

  • Aplique la última actualización combinada (MacOSXUpdCombo10.6.6.dmg)

  • Reboot

  • Inicie la última versión de la aplicación PowerMate.app (versión 3.0 - 3012).

  • Luego conecte el dispositivo USB PowerMate.

¿Algo más que sugieras para encontrar la diferencia entre mi cuenta y una nueva?

Diferencias conocidas que importan entre las cuentas:

Similitudes entre las cuentas:

Ambas cuentas son administrador de la máquina.
Son miembros del mismo grupo.

Salida del comando id:  mi cuenta normal (la que tiene el problema):
uid=501(mylogin) gid=20(staff) groups=20(staff),401(com.apple.access_screensharing),102(com.apple.access_ssh),204(_developer),100(_lpoperator),98(_lpadmin),81(_appserveradm),80(admin),79(_appserverusr),61(localaccounts),12(everyone),402(com.apple.sharepoint.group.1)

la nueva cuenta de prueba nueva (la en la que funciona):
uid=502(test2) gid=20(staff) groups=20(staff),401(com.apple.access_screensharing),204(_developer),100(_lpoperator),98(_lpadmin),81(_appserveradm),80(admin),79(_appserverusr),61(localaccounts),12(everyone),402(com.apple.sharepoint.group.1)

Estoy en contacto con el soporte de Griffin. Son muy agradables, pero hasta ahora no hemos podido encontrar el motivo del problema.

Actualización: Aparentemente, el código de error e00002c5 significa "acceso exclusivo y dispositivo ya abierto".
¿Alguna idea de cómo averiguar qué proceso tiene acceso a un dispositivo USB?

    
pregunta Guillaume 19.03.2011 - 18:07

2 respuestas

1

Encontré al culpable: MenuMeters estaba accediendo a la configuración de iluminación del dispositivo PowerMate.

No sabía que MenuMeters tenía una configuración para mostrar el uso de la CPU a través del brillo de PowerMate. Estuvo allí desde 2003, pero no me importó ya que antes no tenía un PowerMate.

La última versión corrige este error. Muchas gracias a Alex Harper por su gran pieza de software y soporte continuo. enlace

    
respondido por el Guillaume 01.02.2012 - 10:37
1

Esto suena como que algo está roto con el nodo del dispositivo para el dispositivo usb. Puedes comparar las configuraciones con algo como esto:

  1. averiguar cuál es el nodo del dispositivo. El último paso mostrará el nombre del dispositivo después de > (y algunos otros elementos no deseados que puede ignorar). Necesitará ese nombre de dispositivo en el paso 2. Sería mejor hacer esta prueba en el usuario temporal que funciona, justo después de un reinicio nuevo.
    1. ls -1 /dev/ > /tmp/before ( nota, eso es "dash one" )
    2. conecta el dispositivo
    3. ls -1 /dev/ > /tmp/after
    4. diff /tmp/before /tmp/after
  2. compare los permisos del dispositivo entre los dos.
    1. inicia sesión como tú mismo
    2. ls -el /dev/devicename > /tmp/broken ( nota, eso es "dash e ell" esta vez )
    3. iniciar sesión como usuario temporal
    4. ls -el /dev/devicename > /tmp/working

Este último bit creará dos archivos que se ven así:

crw-rw-rw- 1 root wheel 11, 1 Mar 26 16:20 cu.Bluetooth-PDA-Sync

El primer bit ( crw-rw-rw- ) es una representación textual de los bits de modo ... es posible que la diferencia sea la causa.

El siguiente bit que podría ser el problema es el usuario ( root ) y el grupo ( wheel ), cualquiera de los cuales podría estar causando el problema.

Supongo que se está creando dinámicamente (incorrectamente) cuando se inserta el dispositivo. Otra posibilidad es que el nodo del dispositivo sea persistente, pero incorrecto. Si ambos archivos coinciden, entonces muéstrenos qué son y probablemente podamos averiguar en qué debe configurarse el dispositivo.

    
respondido por el cabbey 05.04.2011 - 10:30

Lea otras preguntas en las etiquetas