The Rio Cali is a decent MP3 player, but the compability is almost non-existant.
The kernel detects the Rio through the USB interface, but does not associate it with a device node (i.e. /dev/sdb). Fortunately, one can make use of a third party driver,
rioutil. This allows you to transfer files on the Rio via the command line, which is hardly ideal. Other users claim to have gotten the Rio to work as a mass storage device, but I have had no such luck.
What really pisses me off about the Rio is the lack of support for the SD card. Music must be transfered onto the SD card using their own propietary software. I imagine that if you upload it into a special directory that the Rio reads from, it might work, but I haven't been able to determine this hierarchy yet. Perhaps if I get access to a Windows computer, I might have a shot.
Tech support was absolutely useless. They told me they only support Windows and Mac. The lady claimed she doesn't even know what Linux is. This is unexcusable for any company, so based on principle alone, I would not recommend someone to purchas from Rio.
It's a shame, because the hardware looks fine. I don't expect every company to go out of their way to support Linux, but Rio seems to go out of their way to discourage Linux. Especially with the SD card.