May 082013
 

This is a short summary of the German article I have posted yesterday. Have a look at it, if you want to see photos how to distinguish Version 1.0 from Version 2.0 of this TP-Link TL-WN725 N Nano WiFi USB dongle.

Update

We have released a package in our repository to install this driver in the most easy fashion possible. Head on over to our new blog-post to read all about it!

What is this about?

TP-Link changed the chip driving it’s TL-WN725N Nano WiFi stick. Whereas v1.0 would work out of the box with the newest Raspbian (02-09-13) v2.0 does not work unless you install a custom driver.

Driver installation procedure (legacy)

If possible, you should use the instructions to install the driver from our repository – it is more convenient for you. The remainder of this article is here for historical purposes.

MrEngman from the Raspberry Pi Forum has compiled a driver for v2.0 (which uses the 8188eu chip), including modifications for making the blue LED work and less debug output (thus making it faster).

Here are his installation instructions, quoted from this forum post on the Raspberry Pi Forum:

wget https://dl.dropboxusercontent.com/u/80256631/8188eu-20130209.tar.gz
tar -zxvf 8188eu-20130209.tar.gz
sudo install -p -m 644 8188eu.ko /lib/modules/3.6.11+/kernel/drivers/net/wireless

Once you have installed the driver you should activate it:

sudo depmod -a
sudo modprobe 8188eu

The first command will update the kernel module settings – on the next reboot, the new driver should be included automatically. The second command allows you to load the driver immediately. Now you can try ifconfig to see wlan0 – it should be available now.

Raspbian Image with driver

We have bundled the driver with a fresh Raspbian image, based on Raspbian 2013-02-09.

Additionally we have updated the apt cache, and installed all currently available updates to the default packages. This should save you some bandwidth and – more importantly – time.

This image will be 4 GB in size when you decompress it (use 7-zip), and should be installed by the usual method of image writing to SD cards. Please note that we have not expanded the image to fit the whole (4 GB) SD card, you still need to run sudo raspi-config to finish the set-up.

The original tar.gz file from MrEngman is in the folder /home/pi/wlan-fix – just in case you should ever need it, it is already installed and activated for you in this image.

download-tp-link-wlan-fix-image[4]Download raspbian-wifi-fix130523.7z (532 MB)

 

Update

I have updated the image today (31.05.2013). It has all updates as of the 23rd of may of a stock Raspbian install. Also I have resized the image to the real size the partitions need initially.

Please note, if you run updates the driver may become disabled. Simply use

sudo depmod -a
sudo modprobe 8188eu

to fix this after the updates.

 

Simple WiFi network setup

In the simple case of the Raspberry Pi being used with WLAN only, a DHCP access point / router, and no roaming is required, you should be fine with the followíng /etc/network/interfaces file

auto lo

iface lo inet loopback
#iface eth0 inet dhcp

allow-hotplug wlan0
auto wlan0
iface wlan0 inet dhcp
        wpa-ssid "your-ssid"
        wpa-psk "your-password"
#wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf
iface default inet dhcp

Change your-ssid and your-password, but please keep the quotation marks around them. As you see in the setup above, the wpa_supplicant.conf is commented out.

  • Mike

    Really handy tutorial, thanks a lot

  • admin

    root@raspbmc:/home/pi# sudo modprobe 8188eu
    ERROR: could not insert ’8188eu’: Exec format error

    The driver needs to be recompiled for Raspbmc, this solution will not work directly. Sorry.

    • Ben

      having the same troubles with raspbmc

  • Kevin H

    Hi Max, thanks for the above. Unfortunate to get the TL-WN725N V2 from Amazon, so my son was dissapointed with his birthday present – but with your help he is now happy again!

  • Pierre

    Thanks for putting this together. I was successful in connecting to my home WPA2 personal network using your suggested edits to /etc/network/interfaces but I’m having no luck with the WPA2 enterprise network at my office.

    I was hoping to use the wpa_gui “Wifi Config” tool in the desktop environment but it doesn’t see the adapter. Should it? It’s also giving me an error of “could not get wifi supplicant status”.

    Any help would be appreciated!

    • admin

      I am not sure whether the driver will work with wifi supplicant, which is probably necessary for the Wifi Config tool.
      If you have added the changes we suggested to /etc/network/interfaces – wifi supplicant is not being used in it, so this may be the cause of the problem.

  • madquark

    Hi,
    when I try to update the kernel module settings *sudo depmod -a*, I get an error

    ERROR: failed to load symbols from /lib/modules/3.6.11+/kernel/drivers/net/wireless/8188eu.ko: Invalid argument

    Do you know what could be the problem, thanks

    • admin

      It is most probably a mismatch between your kernel and this (already compiled) driver. Do you use Raspbian? Did you install the newest updates – they could have broken the driver?

      • madquark

        Thank you for your answer.
        I think I’m using the latest Raspian, updated also from Pi config screen. I’ll try with your bundled image this evening, and no updates :)

        • admin

          I’ve updated the image and included instructions how to fix on updates.

  • http://lightcastletech.com Dan

    Great article. What I needed was just the “Simple WiFi network setup”, but it was reasureing to find I had the V1 of the Edimax adapter. Good to know. Thanks!

  • Ed

    I am using two wifi networks which are loaded from wpa_supplicant.conf. I am unsure how to handle this now, do I list both of them in the ‘interfaces’ file… Just as you have the one network shown? Before, wpa_gui would handle which network I wanted to be on. Do I have to pick just one now?
    Thanks!
    Ed

    • admin

      Hello Ed,

      I have not tested the adapter with wpa_supplicant.conf yet – I’m “unfortunately” very busy with day-to-day business (buying, packaging, selling). It actually might work with it (anyone out there tested with it?) with the correct settings.

      An interesting alternative seems to be the application “ifscheme” which will manage two WiFi networks for you – both of which can be set up in the /etc/network/interfaces file.

      Install it using “aptitude install ifscheme”. A sample setup can be found on: http://www.alwayssunny.com/blog/?p=30

      Please note, that I have not tested this beyond installing ifscheme (i.e. no actual WiFi connections have been made / configuration changes). I’d be happy if you share your experiences with us about this tool.
      If you need further help with this, hit me up in ca. 2 weeks from now – I should be under less pressure then, and able to run some tests for you.

  • Pingback: TP-Link TL-WN725N version 2 in Raspberry Pi | Programming and Technology

  • Matthew

    Hi guys,
    I only have a 4gb card (3.69gb) and the img is JUST slightly too big for me to fit on, is there any chance you can make it even slightly smaller? I only wanted to use this image with XMBC as XMBC Raspbmc doesn’t have support for this driver.
    Thank you!

    • admin

      Hi Matthew,

      this image is Raspbian based, not XBMC based – the driver unfortunately needs to be recompiled for Raspbmc – even if I resized the image, you still would not get what you wanted.

      We will try to release a compiled driver for Raspbmc in the next couple of weeks. Feel free to remind me, if we don’t do anything about it in 14 – 20 d.

      And – sorry about the size. I know we did a quick and dirty job there :-)

      Max

      • Matthew

        Oh no no no no, I meant that I needed it so that I could use the Raspbian version of XMBC that runs on top of raspbian but until next month I can’t get a bigger card. I’m sorry about this :(
        When ever I try to write it to a 4gb card with Win32DiskImager I get the following error:
        “Not enough space on disk: Size: 7761920 sectors Available: 7744512 sectors Sector size 512″ meaning that the .img file is 0.01gb bigger than my card capacity :( very frustrating

  • zelg

    I just bought the TP-Link Wn725N and put them into my brand new RPi Modell B on bottom USB slot. The install distribution (Squeezeplug V6.02, latest OS updates) does recognize the USB as such. It even reports “wlan adapter”…
    Nevertheless, when starting up, the says: could not open modules.dep.bin. The bin file is empty when browsing the file. Is there any missmatch in installing routine as describe above for Squeezeplug?

    • admin

      I have heard of Squeezeplug for the very first time through you. The project sounds interesting, and I will look into it soon (couple of weeks). As for the installation described in this article, there has to be a perfect match to the kernel version. The driver was compile for the kernel 3.6.11+ . Please check your version with the following command: ” uname -r “. If there is a mismatch, the driver was most probably NOT correctly installed, and it can’t be used with Squeezeplug just right now. We are working to set up a crosscompiling service to release binaries for XMBC (Raspbmc, OpenELEC, …), and others.

      • zelg

        Thanks, this was helpfull.
        Originally, there is the 3.2.27+ in the build from SqueezePlug. I will update linux files. But even then, I had allready done. I got working the 3.6.11+, but then on startup: Debian is reporting issues with driver interface and “could not set wlan0″….

        • admin

          I will look into this when we start to compile the driver. Maybe there is some other issue involved. Have you checked that your /etc/network/interfaces file has a sane setup? Maybe you should comment it out altogether, ifconfig still should show wlan0.

  • Jason Smith

    Worked First Time. Thank you so much :D

    • admin

      You’re welcome.

  • Pingback: TP-Link TL-WN725N WiFi usb adapter throughput on Raspberry Pi » pi3g Blog

  • Pingback: TP-Link TL-WN725N Nano WiFi Adapter v2.0 e Raspberry Pi

  • Joeci Cordeiro

    Friend you know if I can use the adapter TPLINK WN721N tl or multilaser nano re035

    • pi3g

      We had the TL-WN722N working here – probably the WN-721N could work, too. I don’t know about the multilaser nano re035. In general I also would recommend Ra-Link RT5370 based devices, now (i.e. Logilink WL0084B Nano Adapter) – we are going to switch to them shortly.

      • pi3g

        But of course there also could be several versions of those (WN-721N and TL-WN722N). I have the TL-WN722N(DE) Ver 1.0 with P/N 0152502056

        Share your success story with us, please.

  • ManueLLL

    work like a charm with Tp-Link TL-WN723N , thank you so much!

  • mr_ozio

    3.2.27+ firmware can be updated to 3.6.11+

    sudo apt-get install rpi-update
    sudo apt-get install git-core
    sudo wget https://raw.github.com/Hexxeh/rpi-update/master/rpi-update -O /usr/bin/rpi-update && sudo chmod +x /usr/bin/rpi-update
    sudo rpi-update

    and then you can use this guide

  • stahlbrandt

    Thanks a lot and vielen, vielen dank to you MrEngman. ! Worked like a charm to upgrade my V1.0 ready system to use TP-Link TL-WN725N version 2.

    • stahlbrandt

      and to you of course! ;) Well described!

  • andre

    i follow your instruction, but before install i get this error
    install: cannot create regular file `/lib/modules/3.6.11+/kernel/drivers/net/wireless’: No such file or directory

    any thoughts?
    thanks before

    • pi3g

      have you used sudo, or are you root?

      /lib/modules/3.6.11+/kernel/drivers/net/

      Also: is your kernel 3.6.11+ ? Use uname -a to verify:

      root@andromeda:~# uname -a

      Linux andromeda 3.6.11+ #474 PREEMPT Thu Jun 13 17:14:42 BST 2013 armv6l GNU/Linux

      If your kernel is NOT 3.6.11+, you would need to compile the driver yourself.

      On a sidenote: if you are trying to install into Raspbmc, the author claims in the newest version (June update) to have achieved compatibility with v2 of the TP-Link device; In my test it did not work unfortunately, maybe I am missing something there.

      • andre

        hi pi3g

        i got that error after

        sudo install -p -m 644 8188eu.ko /lib/modules/3.6.11+/kernel/drivers/net/wireless

        my kernel is 3.6.11 rooted

        yes, im trying to do raspbmc wifi installation, unfortunately it doest work with the latest update. my raspi still tethered :(

        • pi3g

          this is a different kernel (“+” is missing) – we’ll look into compiling the driver for raspbmc as soon as there is some time … we feel your pain :-)

          • andre

            Thank you pi3g. Hopefully our pain would end soon :)
            Keep up the good work!

  • icebrew

    hi,

    could not sudo in RasPlex 0.39, any ideas as the folder is read only.

    thanks.

    • pi3g

      1) To become root, use “su -” and enter your own password (default with the Rasplex user “plexuser” is “rasplex”)

      rasplex001:~ $ su -

      Password:

      rasplex001:~ #

      The “#” indicates that you are root now.

      2) uname -a tells me that you will NOT be able to use this driver:

      rasplex001:~ # uname -a

      Linux rasplex001 3.6.11 #1 PREEMPT Sun Jun 16 11:39:50 CDT 2013 armv6l GNU/Linux

      That is, because the kernel version does not match the one the driver was compiled for.

      3) Maybe someone else compiled this driver for Rasplex …

      4) As Rasplex is OpenELEC based, and not Debian based, I’m out of my depth how to add essential building tools, sudo, etc. I quote:

      ” With OpenELEC it is not possible to change the system for security and stability reasons so even ‘apt-get’ would not be able to do this.
      We also dont have and want to maintain such a repo for various other great reasons.”

      So – sorry – no driver coming from us for Rasplex …

      • Guest

        no worries mate, thanks for your explanation.

  • Chuck

    Thanks a lot. I’ve got the v2 dongle and now its working.

  • Marcin

    Is there everythink ok with this image? I’ve got:
    EXT4-fs (loop0): bad geometry: block count 458240 exceeds size of device (458239 blocks)

    Similar problem in parted.

  • Pingback: Raspberry PI as Cisco Console Server - Networklessons.com

  • Jan Jasinski

    Thanks!!!

  • bart

    I think I followed your instructions from a to z (checked to model & version, copied the code, …) and my dongle seems to remain invisible to my pi. (but works on a windows machine)
    Any suggestions on what could be the problem ??

    • pi3g

      paste some infos please (with the driver already installed):

      lsusb

      uname -v

      ifconfig

    • bart

      just to be complete: I don’t see any device popping up when using lsusb (I think) + a lot of skipping because wlan0 can’t be found

      • pi3g

        bart, even if the device has no driver for it, it SHOULD be visible to lsusb. It might show it under a completely different ID, and without any explanation what it is – but it should show the CHIP producer’s company name (Realtek)

        Bus 001 Device 010: ID 0bda:8179 Realtek Semiconductor Corp.

        is what it will show for me. If you have a different version (3?) it may show something different.

        Double-check the way it is connected (e.g. powered hub?)

        Also use
        udevadm trigger
        to rescan for USB devices (as root)

        • bart

          the dongle is connected straight onto the board (could this be the problem ?)

          udevadm trigger doesn’t seem to solve the puzzle:
          the lsusb gives me 4 devices:
          Bus 001 Device 006: ID 0424:9512 Standard Microsystems Corp.
          Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
          Bus 001 Device 007: ID 0424:ec00 Standard Microsystems Corp.
          Bus 001 Device 009: ID 0a5c:21e8 Broadcom Corp.

          uname -v =
          #474 PREEMPT Thu Jun 13 17:14:42 BST 2013

          ifconfig doesn’t return any info on wlan0

          Any ideas ? I’ll try to plug it into a powered usb hub for a change. Plugging it into a windows machine gave a satisfactory result, so the dongle is working. The box says v2.

          Thanks for the help!
          Bart

          • bart

            and there it is … all fixed: just a matter of connecting it over a powered usb. Time to eat the cardboard box the dongle came in :-)

            Thanks for the active support & fully functioning driver !!

          • pi3g

            Glad to help … and also good to know for other users out there, that the problem can be fixed by a powered USB Hub. By the way, it worked for me plugged directly into the Raspberry – it may be that your choice of PSU for the Raspberry is also important (Ampere and Voltage stability under load).

  • ade

    Thank you! Awesome!

  • Simon Shaw

    Many thanks indeed for this buddy! Saved my bacon!

  • Darin

    Hi, I’m using this driver and I’ve been trying to change the MAC address for my wireless and it won’t seem to work. I’ve tried a few different methods to change it. When I use the ifconfig command like so:

    sudo lfconfig wlan0 down
    sudo ifconfig wlan0 hw ether
    sudo ifconfig wlan0 up

    The MAC address remains unchanged and I receive no error.

    When I use macchanger, I receive the following:

    ERROR: Can’t read permanent MAC: Operation not supported
    Permanent MAC: 00:00:00:00:00:00 (Xerox Corporation)
    Current MAC: 64:66:b3:09:24:6a (unknown)
    New MAC: 4e:53:50:4f:4f:46 (unknown)

    Does this driver simply not support changing the MAC address?

    Any help would be appreciated.

  • Jaap van den Dries

    Updated firware, and driver was not working so I tried depmod and modprobe commands above, but now giving error ‘could not insert 8188eu, exec format error’, what to do now?

  • Pingback: Easy TP-Link TL-WN725 driver installation » pi3g Blog

  • Nazmee Kamaruzaman

    hye….why ‘ERROR: could not insert ’8188eu’: Exec format error’ come out after doing “sudo modprobe 8188eu” command?

    • http://www.pi3g.com/ pi3g

      The kernel has been updated since this has been written – you need to search on the Internet for the newest 8188eu driver, download and install it. Please refer to the comments on the other blog post linked from this site. I believe a user there has commented on the driver.

      We have decided to abandon this project ourselves and switch to different hardware … so we can provide no further support. Sorry.