42 responses to “Anatomy of a cheap USB to Ethernet adapter”

  1. AS

    Given that the ethernet chip will need to make 100MHz internally to do the 100-BaseTX interface they may then be dividing that down to 20MHz and doing the multiply by 24 from there to get 480MHz for USB. Shouldn’t be any farther off than the crystal is otherwise though jitter might be an issue.

    If you can get a decap of the chip it’d be interesting to see.

  2. Madox

    Thanks Guy, now I need to buy some. Can you email me your eBay link?

    1. Barry Staes

      I recently bought one from http://w2comp.com and it has the same ASIX chipset and looks. Seems the price has gone up though..

  3. Gerard

    The two TXC packages are probably just SMD crystals, not oscillators. Depending on the size I’d guess the 7B or 7M series. Price somewhere around $0.25.

    http://www.txccorp.com/en/c_products/01_1.asp

  4. raymond

    I think you did an amazing job here!

  5. Bob

    I bought a similar pair of these from dealextreme (dx.com) for $1.60 shipped, each (SKU: 142016)! They are about 1/3rd shorter in length, but I don’t know if they are the same manufacturer. I haven’t actually tried them on my Android tablet yet.

  6. anounyym1

    http://www.ebay.com/itm/New-USB-to-RJ45-Lan-10-100Mbps-Ethernet-Adapter-For-Windows-2000-XP-Vista-/350748056963?pt=AU_Gadgets&hash=item51aa369d83 here is ~$3.30

    I bought same looking usb ethernet adapter for Raspberry pi and looks working with linux. Here is picture inside of it: http://kuvaton.com/k/YqZ6.jpg

    Mar 23 06:59:46 archive kernel: [384047.297045] usb 4-1: new full-speed USB device number 2 using uhci_hcd
    Mar 23 06:59:46 archive kernel: [384047.439166] usb 4-1: New USB device found, idVendor=0fe6, idProduct=9700
    Mar 23 06:59:46 archive kernel: [384047.439172] usb 4-1: New USB device strings: Mfr=0, Product=2, SerialNumber=0
    Mar 23 06:59:46 archive kernel: [384047.439176] usb 4-1: Product: USB 2.0 10/100M Ethernet Adaptor
    Mar 23 06:59:49 archive kernel: [384050.869394] dm9601 4-1:1.0 eth0: register ‘dm9601′ at usb-0000:00:1a.1-1, Davicom DM9601 USB Ethernet, 00:e0:4c:53:44:58
    Mar 23 06:59:49 archive kernel: [384050.869430] usbcore: registered new interface driver dm9601
    Mar 23 06:59:50 archive NetworkManager[627]: failed to allocate link cache: (-10) Operation not supported
    Mar 23 06:59:50 archive NetworkManager[627]: (eth0): carrier is OFF
    Mar 23 06:59:50 archive NetworkManager[627]: [1364014790.447553] [nm-device-ethernet.c:456] real_update_permanent_hw_address(): (eth0): unable to read permanent MAC address (error 0)
    Mar 23 06:59:50 archive NetworkManager[627]: (eth0): new Ethernet device (driver: ‘dm9601′ ifindex: 3)
    Mar 23 06:59:50 archive NetworkManager[627]: (eth0): exported as /org/freedesktop/NetworkManager/Devices/1
    Mar 23 06:59:50 archive NetworkManager[627]: (eth0): now managed
    Mar 23 06:59:50 archive NetworkManager[627]: (eth0): device state change: unmanaged -> unavailable (reason ‘managed’) [10 20 2]
    Mar 23 06:59:50 archive NetworkManager[627]: (eth0): bringing up device.
    Mar 23 06:59:50 archive kernel: [384051.555169] dm9601 4-1:1.0 eth0: link up, 100Mbps, full-duplex, lpa 0xFFFF
    Mar 23 06:59:50 archive NetworkManager[627]: (eth0): carrier now ON (device state 20)
    Mar 23 06:59:50 archive NetworkManager[627]: (eth0): preparing device.
    Mar 23 06:59:50 archive NetworkManager[627]: (eth0): deactivating device (reason ‘managed’) [2]
    Mar 23 06:59:50 archive NetworkManager[627]: Added default wired connection ‘Wired connection 1′ for /sys/devices/pci0000:00/0000:00:1a.1/usb4/4-1/4-1:1.0/net/eth0
    Mar 23 06:59:50 archive NetworkManager[627]: (eth0): carrier now OFF (device state 20)

  7. Comparing USB to Ethernet converters: Apple vs. Knock-off - RaspberryPiBoards

    [...] Gratton] recently cracked open a pair of USB to Ethernet converters to see what’s inside. One was an Apple branded device, the other a no-name from eBay. The [...]

  8. anounyym1

    Oh yeah, Windows 7 doesn’t have “build in” drivers for it and it shows up as “USB 2.0 10/100M Ethernet Adaptor” with hardware ID: USB\VID_0FE6&PID_9700&REV_0101

  9. Galane

    At least this is a functional product, unlike those 12 volt USB vehicle power adapters that connected 12 volts directly to the USB port.

    Don’t recall where I read that, some company designed a product for vehicle use and the engineers specified a certain 12V lighter socket adapter. Some bean counter saw that the 12V adapter used a standard USB plug and decided that any such 12V adapter would be fine, found the most rock bottom price and made the change in the order. Saved a lot of money. Fortunately the company had the engineers test some samples of the product before shipping! POP POP FIZZ FIZZ! I can just imagine the language was as blue and smelly as the smoke from the product.

    Using a single crystal and circuitry to derive two or more timing signals has a long history in electronics. Apple’s official dongle is basically just applying gold leaf to the cake by using two. Doesn’t make the cake function better but it looks pretty. ;-)

    How about adding an LED to the Apple adapter since it has the spot for one? Better yet, a small piece of PCB with a rainbow row of LEDs matching the old Apple logo colors.

  10. anounyym1

    Can’t find any date mark. Only text on PCB is KY-9700, that crystal looks to be same 25MHz (NKG25.000), and on ethernet transformer reads: (Pulse, T1144NL, 0819-J). I bought this one on May 2012.
    When I look ebay, this one got same sticker than I got http://www.ebay.com/itm/White-USB-2-0-LAN-Ethernet-Adapter-10-100Mbps-For-Apple-Mac-MacBook-Air-PC-/300841347075?pt=AU_Laptop_Accessories&hash=item460b8aa803
    In your picture there is two lines of text on sticker, like on this one http://www.ebay.com/itm/New-USB-2-0-Ethernet-10-100M-RJ45-Network-LAN-Adapter-Card-/310559436903?pt=UK_Computing_Plugs_Jacks_Wall_Plates&hash=item484ec8f067

    Picture of other side PCB: http://kuvaton.com/k/YqZe.jpg
    And packaging: http://kuvaton.com/k/YqZc.jpg

  11. Russell McMahon

    A simple RFI / EMI test that is often useful is to place an AM band “transistor radio’” immediately adjacent to the device and tune across the while band. while listening for “spuries”. When placed hard against the device almost anything will produce some signal somewhere. Now move the receiver away progressively while checking for the level of major signals found initially. A device that will meed Class B certification will usually “quiet up” reasonably rapidly. If you can detect it from 10 feet away “you may have problems”. Obviously such a test has an immense degree of variability depending on equipment used, variability of environment and how you hold your tongue. It’[s still quite useful as a subjective indication.
    - Tuning the FM band is usually not such a good indicator as AM.
    - Interesting & useful results can be had from the low cost small screen (7″ or so?) monochrome CRT tube “cube shaped” televisions still available from Asia. These usually have continuously tunable frequency input. Tuning these across their several bands gives both visual and audible indications of spurious outputs and can allow actual harmonics of on board components to be detected. (Continuous tuning makes them much more useful for this purpose than fixed channel units). Possible example only
    http://upload.ecvv.com/upload/Product/20118/China_5_5_B_W_TV_TV_50920118142129553.JPG

  12. Hardcorefs

    I have a load of research on this crap, because I needed to build a high speed interface to a project I was working on.
    One of the most interesting facts, is that these devices are sold as 10/100
    When in fact the chips internally are not capable of anything more than USB 1.1 standard.
    Basically many of these chips are built around a reltek macro library they sell the products as being USB 2.0 compatible, which some are, but the actual internal Ethernet core is interfaced with USB 1.1…
    Which means :
    1. That anything you plug it into gets downgraded to 1.1 speed….
    2. You can never come close to saturating the link.

    you will see this time and time again , if you take a look into actual chipsets used on some products (RPie for example)
    The SOC will have two distinct USB infrastructure ports, but then some idiot designs a hub chip between one of them to give say 2-4 ports, but does not route the other port off the PCB.
    The net effect is that you plug in one of these devices, the hub sees 1.1 standard and BANG… all of your USB traffic hits the 1.1 wall.
    Ideally you have to ensure that all your 1.1 standard devices are off one of the SOC USB ports and that all the 2.0 are off the other.
    The sad thing is to get USB working properly, you need to be a systems engineer as regards to which devices you plug in externally to the equipment……
    and in some cases it means pulling the chipset data sheets and looking at the INTERNAL spec of the chips..

  13. Leif

    @Galane mentions a story about how some straight through cheap 12V to USB (adapters) came about.

    I don’t know anything about that particular story and it’s validity but perhaps part of the reason this happens is that the USB spec says that it should be ok… sort of.

    My understanding anyway is that the spec for USB hosts does say 5V and only 5V. However for clients it is written that they are supposed to accept a wide range of voltages (I forget how high) and not blow up.

    I guess the people making the spec knew that knockoffs would cut corners and tried to make the device manufacturers build their devices to survive that kind of ‘abuse’.

    However, that doesn’t mean it is ok to use an adapter like that. First off, just like you can’t trust the knockoff cigarette plug to usb adapters to do the right thing you can’t trust device makers to fully follow the spec. They might not actually take the higer voltages well. Also.. car power is very very dirty. There are huge spikes in there, especially every time you start your engine. Without a good regulator and filtering in the adapter you can still kill or shorten the life of your device even if it does handle 12 volts.

  14. Peter

    One other thing you could run into is the following : future updates of the driver software won’t work anymore.The guys who made the knockoff chip, actually do not know of all quirks around in the real chip,so they implement only the nescessary functionality.But the guys at ASIX, who know their own software and hardware inside and out can easily build-in some functionality to test if there is a genuine ASIX chip fitted.
    I’ve seen this happening with USB-RS232 bridges from prolific.The knockoff hardware only works with a very old driver which they supply on a CD.

    1. W00fer

      I’ve seen that aswell, although the Prolific (or knock-off) usb to rs232 adapter that I used in my blog works with the driver in Windows XP that comes from Windows Update.

      So I still don’t know if it is a genuine chip or not.

  15. Glen Turner

    I bought something similar at the ANU in Canberra, Australia. It even knocked off a Linksys USB ID.

    New USB device found, idVendor=066b, idProduct=20f9
    New USB device strings: Mfr=1, Product=2, SerialNumber=3
    Product: HG20F9 USB2.0
    Manufacturer: USBLINK
    SerialNumber: 000003

    A look for complaints on the web about it not working on Linux showed people from the USA and UK. The kernel people were happy to take a patch, despite the hijaaked but non-conflicting ID.

  16. Jesin

    I had a very bad experience with a cheap USB to Ethernet adapter. I received no driver CD but got a driver from Windows Update.

    The problem is even though the computer to which the adapter is connected reports 100Mbps the other end auto negotiates to 10Mbps half duplex. This results in a lot of collisions.

    Also it doesn’t seem to support promiscuous mode. Windows reports it as “Corechip semiconductor inc 9700″ while Linux reports it as “Davicom DM9601″.

  17. Diane

    Thanks, great info re knock-offs.
    Will they work on latest version of Mac Air and appreciate any tips how to download driver/s from web for an unknown – according to MAC. Would hope to use in Japan as most hotels use Ethernet connection. Is it worth a purchase…if one isn’t too tech savvy.

  18. thaiiy

    I was able to get a cheap USB ethernet adapter identified as HG20F9 to work with Mac OSX 10.8 by changing the Vendor and Product IDs to that of ASIC’s Ax88772B chip as per this blog:

    http://rolande.wordpress.com/2012/10/25/getting-the-aten-usb-serial-adapter-working-with-mac-osx-lion

    Drivers for the Ax88772B can be found on the web or ASIC’s website.

  19. o

    The unmarked chip could be using an inaccurate internal divider (or even an internal calibrated RC oscillator) to produce the USB clock.

  20. tfwalpha

    I am having a cheap USB to ethernet adapter which i bought from ebay.in
    It had come with a driver disk that contained the driver only for windows but I need to get it working with my Macbook Air. The device after plugging in gets detected in the system information as CH9100 USB miniport ethernet Adapter but is misconfigured due to some reason.

    Here is the screenshot http://img706.imageshack.us/img706/7451/icti.png

  21. IzzyData

    I’ve been using $2.00 hdmi cables for years and have never noticed a difference. Too many of these products are over engineered in the first place and aren’t really affecting by stripping away a bit of fail safes to save tons of money in production.

  22. Ant

    You can tell from the shape of the cheap adapter that it’s basically one of the same generic boards that are sold in non-Apple-styled packaging as a generic USB-Ethernet stick. Compare with http://www.ebay.com/itm/201013966617 for example, although there are slight differences, but you see these adapters sold quite widely in differing packaging – some are cased purely in black plastic but many have transparent or completely clear packaging – which of course makes it easier to see the activity LED therein, where fitted.

  23. Rasmus

    Thanks for the write up!

    I’ve always been wondering how bad those cheap parts where compared to their “real” (and pricy) counterparts. Nice to see a well done comparison :)

  24. Apple USB Ethernet adapter vs its cheap knockoff | Sanziro

    […] written a detail analysis comparing Apple’s $29 USB Ethernet adapter with a cheap shanzhai clone obtained from eBay for […]

  25. Dejan Zelic

    I think $29 is kind of ridiculous to a usb ethernet cable especially since the copy is $3. If you have to use a USB ethernet cable you probably can’t expect much.

    BTW Great article. Do you have a history in manufacturing? How did you learn about all of this stuff?

  26. leb

    These cheap adapters almost certainly haven’t passed FCC/CE Class B. If you’ve ever built any devices like this you’d know that passing FCC/CE Class B isn’t always easy. It’s one of the reasons why the Apple device has the shielding it has. With hardware you often get what you pay for.

    A oscilloscope would really help you. It looks like the power supply has less filtering. Who knows how much ripple and noise it has on it’s output?

    Was another high speed device active on the same USB bridge chip (inside the Mac) at the same you were testing?

    Also, simple tests for reliability are fine but clocking issues often show up under worst case heating conditions. For example suppose you were using your laptop in the hot aisle of a data center to diagnose an issue?

    At least these devices probably don’t have any safety issues like the cut rate chargers out there. Look at this article and consider if you would use a cheap power adapter or give one to your spouse or child.

    http://www.righto.com/2012/03/inside-cheap-phone-charger-and-why-you.html

  27. Guan Yang

    Is there a reason neither manufacturer decided to use an RJ-45 port with built in magnetics?

  28. Tuesday Morning News

    […] […]

  29. Viking

    I have a really cheap “USB 2.0 to Fast-Ethernet adapter”. I paid something like $2 with free shipping on eBay from HK just to try it and:
    a) It only works on Windows with its own drivers and always make Debian’s kernels crash on both x86 and armhf after some data tranfers.
    b) It’s a USB 2.0 FULL-SPEED device, meaning a 12Mbps transfer rate on the USB side.

    Next time I’ll try something in the $5 range to see if I can do some experiments on linux with a TRUE Fast-Ethernet device.

    Bye

  30. Michael Tsai - Blog - Anatomy of a Cheap USB to Ethernet Adapter

    […] Angus Gratton: […]

  31. Get supplies outlet coupon code

    Great post, you have pointed out some superb details, I will tell my friends that this is a very informative blog thanks

Leave a Reply