First, there is no support for EXR-3s USB in ALSA contained in Linux-2.6.19-2. Therefore, a minor patch to kernel is necessary to tell the kernel to understand USB device with id (0x0582, 0x0060), which corresponds to the midi interface of the EXR-3s. To see if your hardware is sufficiently similar, use the 'lsusb' command to check the USB ID of your hardware (see below). The patch can be retrieved here: EXR-3s-ALSA.diff.
When building the kernel, the following kernel parameters should be set. These provice support for both the MIDI interface and the USB storage device contained in EXR-3s:
To test that you have everything set up, turn your EXR-3s on and use: lsusb. You should see something like the following:
Bus 001 Device 004: ID 0582:0060 Roland Corp.
Bus 001 Device 001: ID 0000:0000
If you don't see anything, then it's probable that you don't have one of the USB configurations set properly. Also, see whether turning on the device produces output such as the following to the /var/log/messages:
Jan 21 18:03:08 lazy vmunix: usb 1-2: new full speed USB device using uhci_hcd and address 5
Jan 21 18:03:08 lazy vmunix: usb 1-2: configuration #1 chosen from 1 choice
If these do not occur, either the device is not connected to the USB port, or your kernel isn't configured properly.
0 [MAX ]: GUS MAX - Gravis UltraSound MAX
Gravis UltraSound MAX at 0x220, irq 3, dma 5&6
1 [EXR3s ]: USB-Audio - EXR-3s
Roland EXR-3s at usb-0000:00:07.2-2, full speed
If this is not occurring, check that the Roland device ID shown in 'lsusb' matches "0582:0060". If not, your device is not the same as what the patch advertises, and therefore the kernel doesn't understand it as an ALSA device even after patching (maybe you have to provide similar information than in the patch yourself for that device).
If you get this far, then you should be able to use the MIDI connection with all the normal ALSA midi software. You may need to specify the correct ALSA MIDI port, if you have more than one (check pmidi -l output).
Note that if you enable the filesystem mode by pressing the "USB" button on your Roland, the device id in 'lsusb' output is changed to "0582:0062", which means it allows access to the filesystem on the device. The USB mass storage support, SCSI drivers and the VFAT file system should already support this use. When you change to the filesystem mode, you should see something like the following in /var/log/messages:
Jan 21 18:22:11 lazy vmunix: scsi 2:0:0:0: Direct-Access Roland EXR 1.00 PQ: 0 ANSI: 0 CCS
Jan 21 18:22:11 lazy vmunix: SCSI device sda: 8001 512-byte hdwr sectors (4 MB)
Jan 21 18:22:11 lazy vmunix: sda: Write Protect is off
Jan 21 18:22:11 lazy vmunix: SCSI device sda: 8001 512-byte hdwr sectors (4 MB)
Jan 21 18:22:11 lazy vmunix: sda: Write Protect is off
Jan 21 18:22:11 lazy vmunix: sda:
Jan 21 18:22:11 lazy vmunix: sd 2:0:0:0: Attached scsi removable disk sda
If this doesn't occur, you should check that you have enabled the SCSI options, and the USB storage device option. If this occurs, then you just need to mount the device, so as root, do the following (use the same device name 'sda' that is shown in the log message):
# mkdir /mnt/EXR3s
# mount -t vfat /dev/sda /mnt/EXR3s
If this part doesn't work, check that you have enabled the filesystem in the kernel config. After this, you should have access to the file system, mounted at /mnt/EXR3s. Note that you should unmount the device before turning off the device, or before exiting the "PC<->EXR" mode on the device. It's probably possible to configure the mount and unmounting to occur automatically, but I haven't done that, so I don't have instructions on that. I believe there is some trouble with using the vfat filesystem with automatic mounting/unmounting [the fs doesn't support it].