Page 1 of 3 123 LastLast
Results 1 to 10 of 28

Thread: Please help with this driver for Edirol UA-4FX

  1. #1
    Join Date
    Feb 2005
    Beans
    6

    Please help with this driver for Edirol UA-4FX

    Hello, i have an Edirol UA-4FX that I want to use with ubuntu, but this USB audio/MIDI interface isn't completely supporte, it has a davanced mode that I need to make an interactive musical performance.
    I have found a webpage that has some patch to the driver, but I am completely lost with it since it doesn't explain how to make the same thing on my pc. I leave here the link to the wiki page hoping some soul can help me

    http://alsa.opensrc.org/index.php/Ed...d_mode_to_work

    Thankyou in advance

  2. #2
    Join Date
    Aug 2005
    Beans
    5
    Distro
    Ubuntu 8.04 Hardy Heron

    Re: Please help with this driver for Edirol UA-4FX

    Dude, I just got mine to work in advanced mode w/ rosegarden. I'll try to have a howto up in a couple of days for you. Just trying to get it work with ardour right now with no success but when that happens I'll be sure to post.

  3. #3
    Join Date
    Jul 2007
    Location
    Minnesota, USA
    Beans
    24
    Distro
    Ubuntu 8.04 Hardy Heron

    Re: Please help with this driver for Edirol UA-4FX

    I have a UA-4fx as well and would love to get advanced mode working! Let us know your result lameiro and we can test it out.

  4. #4
    Join Date
    Aug 2005
    Beans
    5
    Distro
    Ubuntu 8.04 Hardy Heron

    Re: Please help with this driver for Edirol UA-4FX

    In order to get the Edirol UA-4FX to work alsa must be compiled from source with the patch given on the opensrc.org website. Copy the file they give and save as a .diff file. I saved mine as UA4FX.diff. Now find out which kernel you are running. You can do this by typing 'uname -r' in the terminal. Once you have that info you can get started. Open up your terminal and get to work.

    Code:
    sudo apt-get install build-essential linux-headers-2.6.24-23-rt alsa-source
    note: the linux-headers-2.6.24-23-rt is the headers for the kernel I'm running. Be sure to get the correct kernel headers for your kernel.

    Now unpack the alsa-source package. Should be in the /usr/src directory.

    Code:
    cd /usr/src
    sudo tar xjf alsa-driver.tar.bz2
    Now that that is unpacked copy and apply the UA4FX.diff patch you have saved already to the directory where compiling will be done.

    Code:
    sudo cp UA4FX.diff /usr/src/modules/alsa-driver 
    sudo patch -p0 < UA4FX.diff
    sudo ./configure
    I then removed the old alsa drivers from my system.

    Code:
    rm -rf /lib/modules/2.6.24-23-rt/ubuntu/sound/*
    Then I did an sudo make && make install.

    After a reboot I thought the drivers would have been installed in the directory that I removed but I had no sound and I had no directory where I had deleted. I solved this by:

    Code:
    sudo cp -R /usr/src/modules/* /lib/modules/2.6.24-23-rt/ubuntu/sound
    I then did a reboot with the UA-4FX hooked up in advanced mode. Opened up the terminal
    Code:
    cat /proc/asound/cards
    My output:

    Code:
     2 [UA4FX          ]: USB-Audio - UA-4FX
                          EDIROL UA-4FX at usb-0000:00:0a.0-1, full speed
    Success!!


    It now works perfectly w/ midi in Rosegarden but I have yet to have the midi work in Ardour. If any Ardour experts have gotten it to work I would appreciate some help w/ that. Thanks,

    mtriston
    Last edited by mtriston; February 18th, 2009 at 07:48 AM.

  5. #5
    Join Date
    Jul 2007
    Location
    Minnesota, USA
    Beans
    24
    Distro
    Ubuntu 8.04 Hardy Heron

    Re: Please help with this driver for Edirol UA-4FX

    I am not really sure what happened. But I followed your guide and I got advanced mode to work the day I did it. Though my /proc/asound/card1/stream0 only showed the currently selected sample rate, not all three. Also 96 didn't seem to playback correctly, but 48 was fine which is what i care about.
    So I tried it again today and it would not load snd-usb-audio when I plugged it in.
    Code:
    [  120.805589] usb 1-1: new full speed USB device using uhci_hcd and address 2
    [  120.982717] usb 1-1: configuration #1 chosen from 1 choice
    There are some oddities in my lsusb -v:
    Code:
    Bus 001 Device 003: ID 0582:00a3 Roland Corp. 
    Device Descriptor:
      bLength                18
      bDescriptorType         1
      bcdUSB               1.10
      bDeviceClass          255 Vendor Specific Class
      bDeviceSubClass         0 
      bDeviceProtocol       255 
      bMaxPacketSize0         8
      idVendor           0x0582 Roland Corp.
      idProduct          0x00a3 
      bcdDevice            1.00
      iManufacturer           1 
      iProduct                2 
      iSerial                 0 
      bNumConfigurations      1
      Configuration Descriptor:
        bLength                 9
        bDescriptorType         2
        wTotalLength          202
        bNumInterfaces          3
        bConfigurationValue     1
        iConfiguration          0 
        bmAttributes         0x80
          (Bus Powered)
        MaxPower              360mA
        Interface Descriptor:
          bLength                 9
          bDescriptorType         4
          bInterfaceNumber        0
          bAlternateSetting       0
          bNumEndpoints           0
          bInterfaceClass       255 Vendor Specific Class
          bInterfaceSubClass      2 
          bInterfaceProtocol      2 
          iInterface              0 
        Interface Descriptor:
          bLength                 9
          bDescriptorType         4
          bInterfaceNumber        0
          bAlternateSetting       1
          bNumEndpoints           1
          bInterfaceClass       255 Vendor Specific Class
          bInterfaceSubClass      2 
          bInterfaceProtocol      2 
          iInterface              0 
          ** UNRECOGNIZED:  07 24 01 01 00 01 00
          ** UNRECOGNIZED:  0b 24 02 01 02 03 18 01 80 bb 00
          Endpoint Descriptor:
            bLength                 7
            bDescriptorType         5
            bEndpointAddress     0x01  EP 1 OUT
            bmAttributes            9
              Transfer Type            Isochronous
              Synch Type               Adaptive
              Usage Type               Data
            wMaxPacketSize     0x0140  1x 320 bytes
            bInterval               1
        Interface Descriptor:
          bLength                 9
          bDescriptorType         4
          bInterfaceNumber        0
          bAlternateSetting       2
          bNumEndpoints           1
          bInterfaceClass       255 Vendor Specific Class
          bInterfaceSubClass      2 
          bInterfaceProtocol      2 
          iInterface              0 
          ** UNRECOGNIZED:  07 24 01 02 00 01 20
          ** UNRECOGNIZED:  0b 24 02 03 02 03 18 01 80 bb 00
          Endpoint Descriptor:
            bLength                 7
            bDescriptorType         5
            bEndpointAddress     0x01  EP 1 OUT
            bmAttributes            9
              Transfer Type            Isochronous
              Synch Type               Adaptive
              Usage Type               Data
            wMaxPacketSize     0x0138  1x 312 bytes
            bInterval               1
        Interface Descriptor:
          bLength                 9
          bDescriptorType         4
          bInterfaceNumber        1
          bAlternateSetting       0
          bNumEndpoints           0
          bInterfaceClass       255 Vendor Specific Class
          bInterfaceSubClass      2 
          bInterfaceProtocol      1 
          iInterface              0 
        Interface Descriptor:
          bLength                 9
          bDescriptorType         4
          bInterfaceNumber        1
          bAlternateSetting       1
          bNumEndpoints           1
          bInterfaceClass       255 Vendor Specific Class
          bInterfaceSubClass      2 
          bInterfaceProtocol      1 
          iInterface              0 
          ** UNRECOGNIZED:  07 24 01 07 00 01 00
          ** UNRECOGNIZED:  0b 24 02 01 02 03 18 01 80 bb 00
          Endpoint Descriptor:
            bLength                 7
            bDescriptorType         5
            bEndpointAddress     0x82  EP 2 IN
            bmAttributes            5
              Transfer Type            Isochronous
              Synch Type               Asynchronous
              Usage Type               Data
            wMaxPacketSize     0x0140  1x 320 bytes
            bInterval               1
        Interface Descriptor:
          bLength                 9
          bDescriptorType         4
          bInterfaceNumber        2
          bAlternateSetting       0
          bNumEndpoints           2
          bInterfaceClass       255 Vendor Specific Class
          bInterfaceSubClass      3 
          bInterfaceProtocol      0 
          iInterface              0 
          ** UNRECOGNIZED:  06 24 f1 02 01 01
          Endpoint Descriptor:
            bLength                 7
            bDescriptorType         5
            bEndpointAddress     0x03  EP 3 OUT
            bmAttributes            2
              Transfer Type            Bulk
              Synch Type               None
              Usage Type               Data
            wMaxPacketSize     0x0020  1x 32 bytes
            bInterval               0
          Endpoint Descriptor:
            bLength                 7
            bDescriptorType         5
            bEndpointAddress     0x84  EP 4 IN
            bmAttributes            2
              Transfer Type            Bulk
              Synch Type               None
              Usage Type               Data
            wMaxPacketSize     0x0020  1x 32 bytes
            bInterval               0
        Interface Descriptor:
          bLength                 9
          bDescriptorType         4
          bInterfaceNumber        2
          bAlternateSetting       1
          bNumEndpoints           2
          bInterfaceClass       255 Vendor Specific Class
          bInterfaceSubClass      3 
          bInterfaceProtocol      0 
          iInterface              0 
          Endpoint Descriptor:
            bLength                 7
            bDescriptorType         5
            bEndpointAddress     0x03  EP 3 OUT
            bmAttributes            2
              Transfer Type            Bulk
              Synch Type               None
              Usage Type               Data
            wMaxPacketSize     0x0020  1x 32 bytes
            bInterval               1
          Endpoint Descriptor:
            bLength                 7
            bDescriptorType         5
            bEndpointAddress     0x84  EP 4 IN
            bmAttributes            3
              Transfer Type            Interrupt
              Synch Type               None
              Usage Type               Data
            wMaxPacketSize     0x0020  1x 32 bytes
            bInterval               1
    cannot read device status, Operation not permitted (1)
    I switch it back to non-advanced mode and it is working fine.

    I am debugging as I am typing this, and I tried all the USB ports on my laptop and in advanced mode when it doesn't work, gnome-device-manager displays a warning on the USB HUb that it is connected to saying "Insufficient power to operate USB device."
    I then did a sudo modprobe snd-usb-audio and the device came to life. My lsusb -v output still has those UNRECOGNIZED lines in it, and device-manager still says insufficient power, but the device works. I am wondering what isn't getting enough power? I tried all the usb ports again, watching that power message and I realized, that entry in devicemanager is always there, even when I don't have it plugged in. When I plug the device in and works and no warnings on the actual device. Somehow I have a ghost device. I am going to reboot and see how it goes.
    Attached Images Attached Images

  6. #6
    Join Date
    Jul 2007
    Location
    Minnesota, USA
    Beans
    24
    Distro
    Ubuntu 8.04 Hardy Heron

    Question Re: Please help with this driver for Edirol UA-4FX

    Okay, I rebooted. Ghost device is gone. I plugged in the UA-4fx in advanced mode and the USB Device with insufficent power showed up. snd-usb-audio did NOT load. I did a manual modprobe and the UA-4fx sound drivers loaded under that USB device with insufficent power and the device seems to be working great in 48Khz mode.

    When I am in non-advanced mode the Insufficent power message does not appear. Also, Under the USB Device it shows 3 USB interfaces in Advanced mode, but in non-advanced mode it shows one Audio Control Interface and two Audio Streaming Interfaces.

    Anyone else experiencing something like this know if this is driver, device or laptop usb hub related?
    Attached Images Attached Images

  7. #7
    Join Date
    May 2008
    Location
    Porto / Portugal
    Beans
    94
    Distro
    Ubuntu Studio 10.04 Lucid Lynx

    Re: Please help with this driver for Edirol UA-4FX

    Man, you gave very good news!!!! I was thinking in selling the UA-4FX, well at the moment I'm not at home, but tomorrow I will test it and put the results. THANKS!!!!!!!!!!!

    binger, is it possible that your problem is related to the fact that you use the device in the laptop, maybe you were running on batteries and the laptop cant give enough current to the UA-4FX.Try to use a good usb hub with external power source, that will maybe solve your problem.
    Classic music and GNU/Linux are like a good red wine. At first you may not like it, but with time you will love it, and maybe you will not want anything else!!!

  8. #8
    Join Date
    May 2008
    Location
    Porto / Portugal
    Beans
    94
    Distro
    Ubuntu Studio 10.04 Lucid Lynx

    Re: Please help with this driver for Edirol UA-4FX

    Hello.
    well I tried to applied the patch, and when I try to do the "make" comand, this is the final result. after this I tried make install and also gave me errors. This is a fresh ubuntustudio install 8.10 with the rt kernel 2.6.27-3-rt.
    Can someone tell-me what is going on here? some help?

    Code:
    make[2]: Leaving directory `/usr/src/modules/alsa-driver/misc'
    make[1]: Leaving directory `/usr/src/modules/alsa-driver'
    make -C /lib/modules/2.6.27-3-rt/build SUBDIRS=/usr/src/modules/alsa-driver  CPP="gcc -E" CC="gcc" modules
    make[1]: Entering directory `/usr/src/linux-headers-2.6.27-3-rt'
      CC [M]  /usr/src/modules/alsa-driver/acore/info.o
    /usr/src/modules/alsa-driver/acore/info.c: In function ‘resize_info_buffer’:
    /usr/src/modules/alsa-driver/acore/info.c:90: error: implicit declaration of function ‘PAGE_ALIGN’
    make[3]: *** [/usr/src/modules/alsa-driver/acore/info.o] Error 1
    make[2]: *** [/usr/src/modules/alsa-driver/acore] Error 2
    make[1]: *** [_module_/usr/src/modules/alsa-driver] Error 2
    make[1]: Leaving directory `/usr/src/linux-headers-2.6.27-3-rt'
    make: *** [compile] Error 2
    Classic music and GNU/Linux are like a good red wine. At first you may not like it, but with time you will love it, and maybe you will not want anything else!!!

  9. #9
    Join Date
    Jul 2007
    Location
    Minnesota, USA
    Beans
    24
    Distro
    Ubuntu 8.04 Hardy Heron

    Re: Please help with this driver for Edirol UA-4FX

    Alright, so I went through the build and patch process twice just to make sure. When I plug in my UA-4fx in advnaced mode it shows up fine as a USB device, but does not load snd-usb-audio module properly. So after I plug it in, i just have to run sudo modprobe snd-usb-audio and then it works great in 44.1/48 and with MIDI. Is this have to do with my modprobe.d or hardware Ids maybe?

    Running that little command is pretty easy and I'm glad that it works. In non-advanced mode it works by just plugging it in still.

  10. #10
    Join Date
    May 2008
    Location
    Porto / Portugal
    Beans
    94
    Distro
    Ubuntu Studio 10.04 Lucid Lynx

    Re: Please help with this driver for Edirol UA-4FX

    Ok, after asking at the programming talk, eightmillion directed me to udev.uDEV
    So I was here looking and reading, and finally made it to work. I made a rule to load the module (modprobe).
    How to make that?
    Code:
     sudo gedit /etc/udev/rules.d/90-modprobe.rules
    an there add between some of the other rules
    Code:
    # UA-4fx load sound driver 
    
    ATTR{manufacturer}=="EDIROL" , ATTR{product}=="UA-4FX" , RUN+="/sbin/modprobe -Qba snd-usb-audio"
    save and test it, if you ear the sond, it is working!!!

    I would like to know what do you think about making a script that automates all this process of patching, compiling, patching, crating rules etc? do you think it is worth the effort?
    Last edited by rlameiro; February 8th, 2009 at 07:04 PM.
    Classic music and GNU/Linux are like a good red wine. At first you may not like it, but with time you will love it, and maybe you will not want anything else!!!

Page 1 of 3 123 LastLast

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •