Many cheap USB wifi dongles use the MediaTek MT7601U chip.
Unfortunately, there is no driver in Linux kernel source tree which can work with this chip, yet. This repository is based on the original driver released by MediaTek which was rejected from Linux kernel because of the poor code quality. The repository includes various stability and performance improvements for kernels >= 3.x and has been tested with the following kernels:
- 3.15.10-200.fc20.x86_64
- 3.16.1-301.fc21.x86_64
- 3.16.1-301.fc21.i686
- 3.17.0-0.rc2.git3.1.fc22.i686
- 3.17.0-0.rc2.git3.1.fc22.x86_64
- 3.12.26-1.20140808git4ab8abb.rpfr20.armv6hl.bcm2708
For kernels 3.19 and later a new mac80211 driver was written from scratch by the community. It was done because there is very little chance that this vendor driver will ever become part of official Linux kernel. If you have Linux kernel version between 3.19 and 4.2 you can download the new driver from https://github.com/kuba-moo/mt7601u. If you have Linux 4.2 or later the new driver is already part of the kernel (it's called mt7601u). Note that from Linux 4.2 on you will have to blacklist the mt7601u driver to continue using code from this repository.
First install kernel-devel for your Linux distro
$ git clone https://github.com/porjo/mt7601.git
$ cd mt7601/src
$ make
$ mkdir -p /etc/Wireless/RT2870STA/
$ cp RT2870STA.dat /etc/Wireless/RT2870STA/
$ insmod os/linux/mt7601Usta.ko
If the module has loaded OK, you should see mt7601Usta
listed in the output of lsmod
and a new network interface ra0
should be present in the output of ip link
.
If all goes well, you can permanently install the driver with make install
.
In order to successfully compile this driver for Gentoo, you must compile your kernel with the appropriate wireless extensions included. One way to do that is by enabling Cisco/Aironet 34X/35X/4500/4800 PCMCIA cards wireless module. If you see errors when compiling the driver, check to see if you have the necessary wireless extensions by running zgrep -i wext /proc/config.gz
. The output should look something like:
CONFIG_WEXT_CORE=y
CONFIG_WEXT_PROC=y
CONFIG_WEXT_SPY=y
CONFIG_WEXT_PRIV=y
CONFIG_CFG80211_WEXT=y
More discussion can be found here
There is a PPA repo available containing a DKMS-capable package based on this repo:
https://code.launchpad.net/~thopiekar/+archive/ubuntu/mt7601
Thanks to @thopiekar
On 26 Aug, 2014 user @poma posted to the linux-wireless mailing list discussing the poor state of driver support for this chipset. Thread can be seen here:
http://www.spinics.net/lists/linux-wireless/msg126115.html
An inital patch was released on 28 Aug, 2014 with the following comment:
A patch[1] is composed partly from the RT3573 source code patched by ashaffer, from Andreas work, some of the ideas are from the beagleboard community, and some of my. :)
Debug(trace) is turned off.
Device now works more or less OK but slow, max. 10 Mbit, although connectable is only within the "N" & "N/G" modes.
What is important is the system no longer crashes, and disconnection are rare.
Generally better than before.
A second patch was released on 31 Aug, 2014 with the following comment:
A new patch[1] mainly based on patches at
https://github.com/ashaffer/rt3573sta
and several network throughput tests via the Iperf.
Source code: (c) Copyright 2002-2013, MediaTek Inc. (released under GPLv2)
Patch: @poma at linux-wireless mailing list