Known Issues (PDE devices)
- On some jukeboxes, after a disconnect, often XNJB will not reconnect unless the NJB is disconnected physically and reconnected. XNJB just hangs on 'Connecting' (this will timeout eventually with an error). This is caused by no data being returned by a usb_bulk_read call. However, data is sent correctly as the NJB shows the connected to computer graphic. There must be an issue with resetting the usb bus in libusb that is different on Mac OS X to Linux (I have not seen this problem on Linux). This behaviour is shown on my NJB3 but the NJB1 very rarely needs a hard disconnect.
- XNJB might fail with an error like 'usb_set_configuration: No such file or directory'. Don't know what causes it but it appears as though a restart fixes it.
Known Issues (MTP devices)
- Can't get or set the date/time of the device.
- XNJB does not read in album art with iTunes Integration enabled. Does anyone know how to get album art from iTunes?
-
Some devices are dual mode MTP and UMS/MSC. The UMS code on OS X is broken (as of
approximately 10.4.8) so fails to mount your player. However, it will grab it
so XNJB cannot connect. The only way of getting round this that I know of is
to disable the UMS driver so you cannot mount any UMS devices (USB keys, cameras,
etc.). If you think you have this problem, get the debug version of XNJB and run
in the console. You will see error messages similar to this if you have this problem:
Device 1 (VID=0781 and PID=7460) is a SanDisk Sansa Express.The key thing to look out for is 'another process has device opened for exclusive access'. If you have this problem then the following workaround should help. It's fully reversible but does require a restart. As with all of XNJB, this is at your own risk.
usb_os_open: 0781:7460
usb_claim_interface: called for interface 0
Interface 0 of device is 0x4f83
claim_interface: Interface 0 of device from QueryInterface is 0x3c7200
USB error: claim_interface(USBInterfaceOpen): another process has device opened for exclusive access
USB error: usb_claim_interface: couldn't claim interface
usb_claim_interface(): Undefined error: 0
LIBMTP PANIC: Unable to initialize device 1
LIBMTP PANIC: configure_usb_devices() error code: 7 on line 1561
LIBMTP_Get_First_Device: Error Connecting
- Open up a terminal window
-
Type (this is all one line with a space between paths):
sudo mv /System/Library/Extensions/IOUSBMassStorageClass.kext /System/Library/Extensions/IOUSBMassStorageClass.kext.disabled
and when prompted enter your password. - Restart.
-
To reverse this change, just reverse the filenames (this is all one line with a space between paths):
sudo mv /System/Library/Extensions/IOUSBMassStorageClass.kext.disabled /System/Library/Extensions/IOUSBMassStorageClass.kext
and restart.