gnomad2 – usb_set_configuration: operation not permitted – fix

Gnomad2 is a GTK+ music manager and swiss army knife for the Creative Labs NOMAD and Zen range plus the Dell DJ devices using the Portable Digital Entertainment (PDE) protocol.

Creative does not support these devices under Microsoft Windows Vista, there are no vista compatible drivers for those devices “yet”…so the only hope for owners of Creative Zen devices who wish to use what they have bought under a recent operating system is to use them with Linux (or go back to Windows XP if they wish something not so current). That means that users using Vista cannot upload mp3s to Zen and cannot even charge the device. Unless you have working drivers the device charges very very slowly.

Installation in Linux is distro dependent and should not be a problem. Just find the gnomad/gnomad2 package on the package manager of your distro and install it. On gentoo/sabayon an emerge -avt gnomad should be enough.

For people that will face the “usb_set_configuration: operation not permitted” error on gnomad startup there is a simple fix. Add the following to a file named 99-gnomad.rules and save it under /etc/udev/rules.d/ (You MUST be root to do that).

SUBSYSTEM!="usb_device", ACTION!="add", GOTO="libnjb_rules_end"
# Creative Nomad Jukebox
SYSFS{idVendor}=="0471", SYSFS{idProduct}=="0222", GROUP="plugdev", MODE="0660"
# Creative Nomad Jukebox 2
SYSFS{idVendor}=="041e", SYSFS{idProduct}=="4100", GROUP="plugdev", MODE="0660"
# Creative Nomad Jukebox 3
SYSFS{idVendor}=="041e", SYSFS{idProduct}=="4101", GROUP="plugdev", MODE="0660"
# Creative Nomad Jukebox Zen
SYSFS{idVendor}=="041e", SYSFS{idProduct}=="4108", GROUP="plugdev", MODE="0660"
# Creative Nomad Jukebox Zen NX
SYSFS{idVendor}=="041e", SYSFS{idProduct}=="4109", GROUP="plugdev", MODE="0660"
# Creative Nomad Jukebox Zen USB 2.0
SYSFS{idVendor}=="041e", SYSFS{idProduct}=="410b", GROUP="plugdev", MODE="0660"
# Creative Nomad Jukebox Zen Xtra
SYSFS{idVendor}=="041e", SYSFS{idProduct}=="4110", GROUP="plugdev", MODE="0660"
# Dell Digital Jukebox
SYSFS{idVendor}=="041e", SYSFS{idProduct}=="4111", GROUP="plugdev", MODE="0660"
# Creative Nomad Jukebox Zen Touch
SYSFS{idVendor}=="041e", SYSFS{idProduct}=="411b", GROUP="plugdev", MODE="0660"
# Creative Zen (Zen Micro variant)
SYSFS{idVendor}=="041e", SYSFS{idProduct}=="411d", GROUP="plugdev", MODE="0660"
# Creative Nomad Jukebox Zen Micro
SYSFS{idVendor}=="041e", SYSFS{idProduct}=="411e", GROUP="plugdev", MODE="0660"
# Second Generation Dell Digital Jukebox
SYSFS{idVendor}=="041e", SYSFS{idProduct}=="4126", GROUP="plugdev", MODE="0660"
# Dell Pocket DJ
SYSFS{idVendor}=="041e", SYSFS{idProduct}=="4127", GROUP="plugdev", MODE="0660"
# Third Generation Dell Digital Jukebox
SYSFS{idVendor}=="041e", SYSFS{idProduct}=="412F", GROUP="plugdev", MODE="0660"
# Creative Zen Sleek
SYSFS{idVendor}=="041e", SYSFS{idProduct}=="4136", GROUP="plugdev", MODE="0660"
LABEL="libnjb_rules_end"

Then restart udev (or reboot your computer if you don’t know how to restart udev), start gnomad2 and your zen should work flawlessly under Linux.

If you still get errors check that your current user belongs to the group plugdev using the command: groups username . If plugdev does not appear add it using gpasswd:
gpasswd -a username plugdev
replacing username with your username on the box.

References: http://bugs.gentoo.org/show_bug.cgi?id=137728