Tips for successfully loading MP3 onto a Creative NANO using Kubuntu Linux
(and how to recover from mistakes)

Quick Start:

  • Connect Nano to USB port
  • sudo mkdir -p /mnt/nano
  • sudo mount -o defaults,users /dev/sdb1 /mnt/nano
  •   Note: Your device name may be different!
  • cp -r /path/mp3_dir /mnt/nano
  • sync
  •   Note: Wait for sync operation to complete (may take 20 minutes!)
  • sudo umount /mnt/nano
  • Disconnect Nano, power up and start playing MP3 music.
  • How to determine device name used by Nano

  • sudo tail -f /var/log/messages
  • Connect Nano to USB port
  • Entries similar to the following should be written to /var/log/messages
  • Apr  7 11:36:03 laptop kernel: [17263693.756000] usb 5-4: new high speed USB device using ehci_hcd and address 8
    Apr  7 11:36:03 laptop kernel: [17263693.888000] usb 5-4: configuration #1 chosen from 1 choice
    Apr  7 11:36:03 laptop kernel: [17263693.888000] scsi3 : SCSI emulation for USB Mass Storage devices
    Apr  7 11:36:08 laptop kernel: [17263698.888000]   Vendor: CREATIVE  Model: Zen Nano Plus     Rev: 1141
    Apr  7 11:36:08 laptop kernel: [17263698.888000]   Type:   Direct-Access                      ANSI SCSI revision: 04
    Apr  7 11:36:08 laptop kernel: [17263698.888000] SCSI device sdb: 473600 2048-byte hdwr sectors (970 MB)
    Apr  7 11:36:08 laptop kernel: [17263698.888000] sdb: Write Protect is off
    Apr  7 11:36:08 laptop kernel: [17263698.892000] SCSI device sdb: 473600 2048-byte hdwr sectors (970 MB)
    Apr  7 11:36:08 laptop kernel: [17263698.892000] sdb: Write Protect is off
    Apr  7 11:36:08 laptop kernel: [17263698.892000]  sdb: sdb1
    Apr  7 11:36:08 laptop kernel: [17263698.892000] sd 3:0:0:0: Attached scsi removable disk sdb
    Apr  7 11:36:08 laptop kernel: [17263698.892000] sd 3:0:0:0: Attached scsi generic sg1 type 0
    
  • The Nano got the SCSI sdb1 device -> /dev/sdb1
  •   Note: This output is also written to the kernel message ring buffer, dumped by
          the dmesg command; "dmesg | tail -n 20".

    My fun-filled evening of stumbling and discovering how to successfully transfer data to the Nano
    (possibly as boring as watching a travel log)

    My Computer Configuration

  • Dell Latitude D620 laptop
  • OS: Kubuntu Linux (Edgy)
  • My Nano Configuration

  • Creative Zen Nano Plus (1GB)
  • Firmware: 1.14.01 (Never updated)
  • My Nano came pre-loaded with a test MP3 file, Introduction.mp3, which is convenient for verifying the laptop and Nano are communicating. Once connected to my laptop, Linux detected the Nano as a USB device, and started a Konqueror session to manage the new device. Myself being a command line jockey, immediately minimized this window, and executed "mount" in my open shell. /media/usbdisk was mounted on /dev/sdb1. ls /media/usbdisk revealed the presence of "Introduction.mp3", a 354KB 128kbps MP3 file 21s long. df reveals the device is really 946832KB long, a little short of 1GB, but formatted media size always is.

    My first attempt to copy one file to the Nano apparently was successful. This was a 130MB VBR-encoded MP3 file. After listening to some 10 minutes of this file, I was satisified the Nano does in fact play MP3 files. My next, more ambitious tests were less successful. In the end, some of the problems were due to a failing laptop DVD-ROM drive. My second test was to copy a collection of MP3 files from a CD to the Nano. After mounting the CD, I executed:

    cp -pr /media/cdrom/* /media/usbdisk

    The first sign of trouble was the sound of a never cycle of CD drive seeking, seeking, seeking... dmesg revealed SCSI seek errors. I rebooted Linux to resolve this problem. After the reboot, I found one subdirectory populated with MP3 files. Some of these files played. However, after a few minutes it was obvious these files were corrupt. I then rm -rf /media/usbdisk/*, but a df command revealed the /dev/sdb1 partition was still 73% full!

    Going back to the mount command reveals the file system on the Nano is VFAT. There are a number DOS filesystem repair utilities available on Linux. "dosfsck /dev/sdb1" revealed there were lost files. Running the following sequence of commands will free all space used by "lost" files:

    dosfsck -a -f /dev/sdb1
    rm -f /media/usbdisk/FSCK*
    This operation was needed a few times again after further mistakes.

    After finally giving up on the broken laptop DVD-RW drive, I used my desktop system to copy the MP3 files from the CD, then copied them over the network to my laptop. I was then back to:

    cp -pr /tmp/mp3/* /media/usbdisk

    That command completed in some 20 seconds.

    I then right-clicked on the USBDEV icon on the Kubuntu desktop, selected the "safe remove" option for the 10th time for the Nano USB device, and had high hopes for success this time.

    One thing bothered me. During the "safe remove" operation. The Nano LCD panel still displayed a moving "heartbeat" line. What else could that mean besides data was being transfered between the computer to the Nano. Hmm...

    Instead of playing the files I just loaded, I re-connected the Nano to my laptop. "ls -lR /media/usbdisk" revealed most of the MP3 files just uploaded were 0 bytes long. Starting to get a clue, I tried:

    rsync /tmp/mp3/. /media/usbdisk

    This failed, out of disk space. Back to running dosfsck, and cleaning up the lost files again... The next rsync did not work. I started getting "/media/usbdisk: mount read-only" errors. Baffled, I ended up rebooting Linux, which did resolve that problem. Afterwards, I ran these commands to tidy things up:

    rm -rf /media/usbdisk/*
    cp -pr /tmp/mp3/* /media/usbdisk.
    I again trusted the Kubuntu "safe remove" USB device did the right thing, and ran that process, unplugged the Nano from my laptop, and this time the Nano just got stuck at the "Creative" prompt on the LCD display. Removing and replacing the battery did not resolve this. Fortunately, the Nano would extablish a USB link to my laptop when connected, so I figured I'd try again.

    Once again, repeat after me:

    rm -rf /media/usbdisk/*
    dosfsck -a -f
    rm -f /media/usbdisk/FSCK*
    This gets you back to a clean file system. I then copied my files in place again. However, remembering that "heartbeat" icon, and considering the fact that is not there for decoration, it is definitely telling me something important, like data transfer in progress, I sat back for a while to consider how can I know then the data is done being transfered. Momentarily forgetting my basic UNIX, I eventually arrived at right answer: sync. I executed sync and it just sat there. I went off to finish making dinner. After 10 minutes, sync was still blocking, and the Nano LCD display was still indicating data transfer in progress. Probably 20 minutes later, my 650MB of data transfer to the Nano was finished. No wonder my previous attempts failed.

    In the end, the quick start answer for getting data to your Nano is found at the top of this file. Good luck, and enjoy!