Howto: ASIX 88178 USB Ethernet Adapter on Ubuntu 10.10 Linux

[update Dec 2011: Linux kernel 3.2 rc3 and later “just work” (with config USB_NET_AX8817X), so the following steps are not needed.]

Support for these devices has been in the Linux kernel since kernel 2.6.21 (file /drivers/net/usb/asix.c). However, prior to version 3.2, this driver fails to find an IP address, and comes up “disconnected”

To get the adapter working, we need to download, compile, and install the latest driver available from ASIX for the AX88X family. This driver is compatible with kernels 2.6.14+

Steps

Assumes you have another net connection on this machine. Download the driver on another machine and copy over if not.

mkdir asix
cd asix
wget http://www.asix.com.tw/FrootAttach/driver/AX88772B_772A_760_772_178_LINUX2.6.35_Driver_v3.5.0_Source.tar.bz2
tar xvjf *
sudo apt-get install module-assistant
sudo module-assistant prepare
sudo modprobe -r asix
make
sudo make install
sudo modprobe asix

Your USB network interface should now come up automatically.

These instructions have been written for our Plugable USB2-E1000 USB Gigabit Ethernet adapter, but should apply to any ASIX adapter with an ASIX AX88178 USB Ethernet controller and Realtek RTL8211CL PHY, which reports ASIX’s USB IDs VID_0B95 & PID_1780.

The steps should work identically on older Ubuntu kernel versions. It was also tested on Ubuntu 9.04, kernel 2.6.28.10. Comment here if you have any trouble, and we’ll try to figure it out.

Common errors

Before this update of the driver, the common errors you’ll see typically show up as a timeout trying to get an IP address from DHCP. You’ll see messages like

“no ipv6 routers present” in dmesg and /var/log/kern.log

And in /var/log/syslog:
“DHCP transaction took too long (>45s), stopping it”
“Marking connection ‘Auto eth1’ invalid”

Again, this update of the ‘asix’ kernel module should resolve these errors. For the future, hopefully the in-kernel ASIX driver will get patches to catch it up with the driver source available directly from ASIX.

33 comments on “Howto: ASIX 88178 USB Ethernet Adapter on Ubuntu 10.10 Linux”

  1. Bernie Thompson Reply

    Yes, definitely. If anyone knows any history on this that would help inform a push, please feel free to comment here or email me.

  2. fabiand Reply

    Afaiak HP is using the same adapters in it’s Envy line. They worked like a charm on Fedora.

  3. Lynx28 Reply

    Installed on Ubuntu 10.10 Netbook and the commands above worked without any hitch. When done I plugged in the adapter and was up and running with no problems. Was very happy to see support for the latest version of Ubuntu… very impressed!

    Thanks!

  4. Jonathan Reply

    Would just point out that if the ASIX adapter is your connection to the internet you’ll want to run ‘sudo apt-get install module-assistant’ before ‘sudo modprobe -r asix’ 🙂

  5. Jay Reply

    The manufacturer seems to have been sold and the source is no longer available. I think I’ve found the .c file. Does anyone still have their tarball?

  6. Bernie Thompson Reply

    Hi Jay – the ASIX site appears to down right now from here also. I’d recommend checking in tomorrow – this should be a short-lived problem. Thanks for your patience.

  7. Lawrence Reply

    I have not been able to get past the last three lines above, starting with the “make” command. I get an error “no target specified…”

  8. Bernie Thompson Reply

    Hi Lawrence! Let’s try to figure out what’s wrong .. at the point where you get that “no target specified..” error, is there a file called “Makefile” in the directory you’re in?

    If not, double check if the download and unpack of the asix drivers in the steps above, has all succeeded and filled the asix directory that you created …

    Let us know if things still remain stuck …

  9. Mark Lord Reply

    No longer working now, either with the mainline (linux-3.0.7) kernel driver, or with the 2.6.38 download from the link above. I have a different ASIX adapter that does work some of the time, but the 0b95:1780 never works.

    Using wireshark, I can use the adapter to listen for packets (works), but those it sends never go anywhere.. thus the issue.

  10. Mark Lord Reply

    Heh.. I just now tried something: I uncommented the //#define DEBUG line in the vendor driver (link above), and just having the debug messages appears to change the timing enough for the driver to begin working.

    Now if ASIX could fix whatever the race condition is that causes this behaviour, then their changes might have more of a hope of getting upstream.

    • Bernie Thompson Reply

      Hi Mark — Thanks for the report (and the solution)! If you know of a mailing list, etc. where the effort to get the ASIX driver changes upsteam is being discussed, please let us know — we’ll also push.

  11. Glyn Reply

    Hi, using Ubuntu 11.10 with all latest updates, followed your instructions, no errors …

    However, the adapter attempts to enable, but fails although it is connected …

    Please let me know if this works with Ubuntu 11.10 and later releases and let me know if I need to do something else to get this to function …

    • Glyn Reply

      Hi … had a sleep on it, I had checked everything which is why I was so puzzled … removed all ASIX drivers.

      Then updated Ubuntu 11.10;

      >sudo apt-get update
      >sudo apt-get dist-upgrade

      … re-installed following your original above instructions, using a managed static IP and “POW” the adapter is up and working, also working is the Belkin Gigabit USB 2.0 Network Adapter F5D5055 (same drivers)

      Also,I have the adapter working on MAC Lion, Snow leopard and Win 7.

      Many thanks for your instructions …

      blog: http://glynology.com
      twitter: @glynology

  12. Bernie Thompson Reply

    A quick update with some good news: The code to support the Plugable USB2-E1000 and some other ASIX AX88178-based adapters is on it’s way upstream into the Linux kernel mainline.

    http://www.spinics.net/lists/netdev/msg179715.html

    It’s not clear which kernel version this will land in, but it should be within a release or two.

  13. bart Reply

    If you have this “no ipv6 routers present” in dmesg and /var/log/kern.log, you can simply set ‘ipv6’ to ‘ignore’. For me Ubuntu stopped trying to run the ipv6 dhcp, and just continous to use the ipv4 without any problems 🙂

  14. alex Reply

    Did anyone tried to add vlans on this card? with vconfig?
    Also can you please try the jumbo frame feature? ifconfig eth0 mtu 1600 ?( at least)

    huge thanks

  15. Mithfindel Reply

    @alex: I just tried to use jumbo frames on a AX88178 powered Belkin adapter and it did not work as expected: I was able to set the MTU to any value using ‘ifconfig ethX mtu YYYY’ but it fell back to 1500 whatever the value given… Guess I am stuck with the sluggy 13Mb rate for now 🙁

    Using the latest ASIX module on a 3.0.0 kernel.

  16. alex Reply

    For anyone with the same questions: the mtu works just great and also the 8021q feature.

  17. Pingback: Installing AX88772 drivers on Ubuntu 12.04, need help

  18. Pingback: UbuntuでUSB LANインタフェースLAN-GTJU3を使う。 | EcCh@nの活動報告書。

Leave a Reply