
基于Linux内核4.0.6的20150626更新步骤,建议先查看最后更新的部分
20151205更新,发现在8月13日,将mt7601u驱动程序从4.2移植到了4.1.5树莓派3无线网卡驱动,因此要将内核升级到4.1.5或更高版本,只需下载mt7601u.bin并将其放在/ lib中/固件/继续执行以下命令. 查看具体来源
sudo wget https://github.com/porjo/mt7601/raw/master/src/mcu/bin/MT7601.bin -O /lib/firmware/mt7601u.bin
如果内核高于4.1.5,则无需再阅读它. 该驱动程序已包含在内,您无需自己编译. 您只需要添加/lib/firmware/mt7601u.bin.
否则,请查看以下几行以更新系统,然后添加mt7601u.bin树莓派3无线网卡驱动,就可以了.
更新于20170107,最近在raspbian系统中重新安装了Cage,该系统是2016-11-25的版本,内核是4.4,并且发现mt7601u.bin也附带了它. 可以通过插入直接使用它. 此版本的麻烦之处在于,默认情况下关闭SSH. 您需要将一个名为ssh的文件添加到启动分区以启用SSH.
首先,更新您的Raspberry Pi(以避免编译和插入错误的版本):
sudo apt-get update sudo apt-get upgrade sudo apt-get dist-upgrade sudo rpi-update
更新gcc和g ++:
#可能有点问题,先不要更新 20150506 #sudo apt-get install gcc-4.8 g++-4.8 #sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.6 20 #sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 50 #sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.6 20 #sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.8 50
访问MTK的官方网站以下载驱动程序并将其上传到Raspberry Pi:
解压缩:
tar xjvf DPO_MT7601U_LinuxSTA_3.0.0.4_20130913.tar.bz2 cd DPO_MT7601U_LinuxSTA_3.0.0.4_20130913/

打开common / rtusb_dev_id.c,在{USB_DEVICE(0x148f,0×7601)},/ * MT6370 * /: 下添加以下内容:
{USB_DEVICE(0x148f,0x760b)}, /* 360 Wifi */
{USB_DEVICE(0x2955,0x1001)}, /* baidu Wifi */
{USB_DEVICE(0x2a5f,0x1000)}, /* Tencent WiFi */
{USB_DEVICE(0x2955,0x0001)}, /* XiaoDu Wifi */
{USB_DEVICE(0x2717,0x4106)}, /* Xiaomi Wifi */
打开include / os / rt_linux.h并找到
int fsuid; int fsgid;
并将其更改为
kuid_t fsuid; kgid_t fsgid;
检查当前内核版本:
uname -r
我的版本是3.18.8+,因此请下载相应的3.18 linux源代码并将其解压缩:
wget https://github.com/raspberrypi/linux/archive/rpi-3.18.y.tar.gz tar xvfz rpi-3.18.y.tar.gz
获得root权限并将源代码移动到/ usr / src目录:
sudo su mv linux-rpi-3.18.y /usr/src
创建指向内核模块库目录的链接:

ln -s /usr/src/linux-rpi-3.18.y /lib/modules/3.18.8+/build cd /lib/modules/3.18.8+/build
makemrproper可以看作是更强大的makeclean命令,用于清除环境变量,即清除配置文件,通常在编译内核之前运行:
make mrproper
生成当前正在使用的系统的内核配置的内核配置信息:
gzip -dc /proc/config.gz > .config
生成编译内核所需的内容:
make modules_prepare
获取在内核编译期间生成的内核模块的导出符号文件. 因为内核不是从头开始编译的,所以没有,但这是编译内核模块所必需的:
wget https://github.com/raspberrypi/firmware/raw/master/extra/Module.symvers
转到网卡驱动程序目录以编译驱动程序(输入DPO_MT7601U_LinuxSTA_3.0.0.4_20130913):
make make install modprobe mt7601Usta
如果未报告任何错误,则说明驱动程序安装已完成.
然后修改/ etc / network / interfaces文件,我将其更改为:

auto lo iface lo inet loopback iface eth0 inet dhcp allow-hotplug wlan0 iface wlan0 inet manual wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf iface default inet dhcp allow-hotplug ra0 iface ra0 inet manual wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf
添加的ra0对应于MT7601,wlan0尚未更改,其他无线网卡应正常工作.
然后修改/etc/wpa_supplicant/wpa_supplicant.conf并填写要连接的无线网络的配置.
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
network={
ssid="yourssid"
psk="yourpassword"
proto=RSN
key_mgmt=WPA-PSK
pairwise=CCMP TKIP
group=CCMP TKIP
auth_alg=OPEN
priority=3
}
最终优先级是配置的优先级. 数字越大,连接越多. 添加一些即可在不同位置自动连接.
重新启动计算机,并使用ifconfig,iwconfig等测试无线网卡是否正常工作.
使用rdp远程登录并打开Wifi设置屏幕截图
=======================
20150306更新: 将内核更新到3.18后,需要重新编译驱动程序,并且会发生各种问题. 在参考了[2]和[3]之后,升级了gcc版本并修改了rt_linux.h.
20150306已在RaspberryPi Model B +上成功测试,内核为3.18.8.
20150506更新: 升级gcc后,在makemodules_prepare期间似乎会遇到编译器错误的问题. 我又在Raspberry Pi的官方论坛上找到了它; t = 49864&start = 179此处:
首次运行rpi-source时,必须具有默认的gcc 4.6.3. 您还必须指定–skip-gcc,以便rpi-source不在乎所使用的其他gcc以及用于构建默认内核的内容. 如果使用4.8.2作为默认gcc运行rpi-source,最终将在内核准备(make prepare?)阶段得到如下消息:
…错误您的编译器有太多错误;已知会误编译内核……

这就是为什么必须首先使用带有--skip-gcc参数的默认gcc 4.6.3运行rpi-source的原因. 完成rpi-source之后,您必须更改为gcc 4.8.2. 内核不允许您编译内核本身,但可以为其编译兼容的模块. 有点棘手. 如果默认的Raspbian gcc可以编译兼容的模块,那就太好了. 也许gcc 4.8.3不会抱怨内核编译错误问题?
p>
似乎您首先使用了它随附的4.6.3准备,然后使用4.8的含义. 让我们研究一下.
20150623更新: 我在以下位置找到了3.18.11 +#776的驱动程序; t = 49864&start = 353,已传输到百度磁盘. 使用方法:
tar xzf mt7601-3.18.11-776.tar.gz /install.sh
此外,github上还有一个第三方驱动程序,适用于内核3.19及更高版本,并已合并到内核4.2中,因此将来升级到4.2时,您将不再需要担心它. 如果要自己编译,请在上面的github链接上查看.
今天将我的RPi B +更新为4.0.6内核(Linux raspberrypi 4.0.6+#798 PREEMPT Tue Jun 23 17:48:03 BST 2015 armv6l),然后成功使用了上面提到的github新驱动程序.
步骤与以前基本相同. 本文未详细提及以下步骤.
更新Raspberry Pi,以确保您正在使用gcc 4.6查看当前内核版本,下载相应的源代码,将其解压缩,移至/ usr / src以建立指向内核模块库目录的链接,然后切换/ lib / modules /`uname -r` / buildmakemrpropersudo modprobe configs的目录#这将生成/proc/config.gzgzip –dc /proc/config.gz> .configmake modules_prepare下载Module.symvers并切换到gcc 4.8, (即上面的update-alternatives行)否则,将编译内核oop. 我试过了20150506的更新也提到了这一点. 将官方驱动程序中的src / mcu / bin / MT7601.bin复制或到/ lib / firmware /,名为mt7601u.bin下载驱动器源代码并将其解压缩到您喜欢的目录中. usb.c中有很多USB DEV ID,包括360腾讯小米. 您不需要添加make && sudo make install && sudo depmodsudo modprobe mt7601u(在make install之后添加mt7601u. ko将放在/lib/modules/4.0.6中,如果有问题,请将其放在/ lib / modules /中4.0.6 + / kernel / drivers / net / wireless /))插入您的MT7601,ifconfig外观是否存在wlan0 / Etc / network / interfaces文件没有ra0部分,只有wlan0
相关参考:
1. 在Raspberry Pi上使用360WIFI(也适用于小米,百度,腾讯WIFI):
2 .; t = 98913
3 .; t = 49864和p = 690479
观看次数: 6,504
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-218241-1.html
给它留个记性免得在来同时也当军演了练练手