Sansa Clip in Linux / Ubuntu 8.04 - Erratic / random MSC connection and Workaround

I bought a 4GB clip a few days ago. Overall, I am very well impressed.

The only major issue I’ve run into is that, even when I select “MSC USB mode” in the Clip, when I plug it into the computer, MSC mounting can take a random amount of time, from 10 seconds to 4 minutes, and most of the time it just never connects (it is not automounted and “lsusb” doesn’t show the device as present). When failing, the Clip alternates the messages “Connected” and “Writing” but the computer sees no Mass Storage USB device at all; the Clip actually does not charge its battery when this happens.

This is with the latest 01.01.29 firmware version.

The trick of putting the device on hold and connecting while holding the button pressed has no better results: sometimes it works after holding for a few minutes, sometimes it doesn’t work at all. I tried three different USB cables, no difference, completely erratic and random behaviour.

This behaviour happens both in my Dell laptop in the office and my home ASUS-based desktop. Both use Ubuntu 8.04 / 64 bits. None has ever had any problem with any USB2.0 device and I use quite a few of those (USB2.0-IDE external HD / 3G wireless modems / scanner / cameras / etc).

I’ve found a workaround that works in both machines:

sudo rmmod ehci-hcd    

After I do this, the Clip immediately mounts. Subsequent disconnections / reconnections are also immediate, no wait time at all.

The ehci-hcd kernel module is Linux’s USB 2.0 driver. 

Based on my successful experience with many other USB2.0 devices in the same machines it seems that the Clip’s USB driver/firmware has some serious issue when negotiating the USB speed with Linux. 

So, this is my request to Sansa devs to please have a look at this issue; testing the firmware with any Linux machine before releasing would certainly help here… Linux is free and growing, this will cost you guys very little and many users would be happier.

For now my suggestion to other linux users experiencing this same annoyance with the Clip is to temporarily remove the USB 2.0 driver before connecting the clip.

The module can be easily reloaded without a reboot with:

    sudo modprobe ehci-hcd  

Message Edited by ari on 07-11-2008 10:26 PM

Message Edited by ari on 07-11-2008 10:32 PM

Don’t know why, but I’ve had more luck with Xubuntu finding connected USB devices than Ubuntu (and they’re the same version, just different window managers).

It seems to be the problem with Ubuntu 64-bits

https://bugs.launchpad.net/ubuntu/+bug/177235

– cheers

This problem is not specific to 64-bit versions.

My quicker workaround on 32-bit Ubuntu 8.04 in MSC mode is simply to unplug the device and plug it back in.  It works instantly every SECOND time it’s plugged in.  Not ideal, but consistent.  Agree the firmware could use a little persuading to communicate better.