当前位置: 首页>>技术教程>>正文


无法识别无线卡Realtek RTL8723AE-BT

, , ,

问题描述

我买了一台装有RTL8723AE-BT无线网卡的新笔记本电脑,但似乎没有什么能让它起作用。

Realtek通常会为其卡提供驱动程序,但这个特定的驱动程序在Realtek的网站上没有驱动程序。我尝试了以下步骤以尝试使其工作:

  1. 已安装的ndiswrapper版本1.57(来自存储库,带有dkms)和1.58rc1(来自ndiswrapper网站的源代码编译)。两者都失败了:版本1.57没有提供IoWMIOpenBlock和IoWMIQueryAllData函数的接口。 1.58rc1在它们的位置有虚函数,但它失败并带有”ioremap failed”消息。经过进一步调查,我发现1.58rc1中的函数NdisMMapIOSpace(ndis.c:808)被调用物理地址和长度为零,这导致失败。由于这个函数似乎没有在ndiswrapper的代码中的任何地方调用,我假设Windows驱动程序以某种方式用伪造的参数调用它。

  2. 我尝试使用64位版本(在我安装的系统上,使用x86_64版本的Ubuntu)和32位版本(在启用了持久性的live-USB x86系统上)的Windows XP驱动程序。两个版本都发生了相同的错误。

  3. 由于Realtek的RTL8192CE /SE /DE的Linux驱动程序实际上在其源代码中提到了8723芯片组,我尝试编译它们并对它们进行修改,但它们没有获取卡ID(10ec:8723)。我还尝试在sysfs(/sys /bus /pci /drivers /rtl8192de)位置(驱动程序(实际上,每次一个,一次一个)上的echo 10ec 8723 > new_id,但是即使使用sudo我也得到”Permission denied”错误。我sudo su再试一次,我得到错误bash: echo: write error: Invalid argument

我已经没想完了。购买仅与Ubuntu一起使用的新笔记本并且无法使用其wi-fi连接真的很令人沮丧。

如果有人能说明替代方案,我会非常感激。

编辑:lshw -C网络输出

$ sudo lshw -C network -numeric
  *-network UNCLAIMED     
       description: Network controller
       product: Realtek Semiconductor Co., Ltd. [10EC:8723]
       vendor: Realtek Semiconductor Co., Ltd. [10EC]
       physical id: 0
       bus info: pci@0000:03:00.0
       version: 00
       width: 64 bits
       clock: 33MHz
       capabilities: pm msi pciexpress cap_list
       configuration: latency=0
       resources: ioport:d000(size=256) memory:f7900000-f7903fff
  *-network
       description: Ethernet interface
       product: RTL8111/8168B PCI Express Gigabit Ethernet controller [10EC:8168]
       vendor: Realtek Semiconductor Co., Ltd. [10EC]
       physical id: 0.2
       bus info: pci@0000:04:00.2
       logical name: eth0
       version: 0a
       serial: 00:90:f5:cd:6d:f7
       size: 100Mbit/s
       capacity: 1Gbit/s
       width: 64 bits
       clock: 33MHz
       capabilities: pm msi pciexpress msix vpd bus_master cap_list ethernet physical tp mii 10bt 10bt-fd 100bt 100bt-fd 1000bt 1000bt-fd autonegotiation
       configuration: autonegotiation=on broadcast=yes driver=r8169 driverversion=2.3LK-NAPI duplex=full firmware=N/A ip=192.168.0.106 latency=0 link=yes multicast=yes port=MII speed=100Mbit/s
       resources: irq:43 ioport:c000(size=256) memory:f2104000-f2104fff memory:f2100000-f2103fff

最佳解决办法

Realtek正在非官方地提供官方Linux驱动程序(通过Dropbox)

Realtek在92系列驱动程序版本0006.0514.2012中添加了对RTL8273AE-BT的支持。由于未知原因,他们的网站上尚未提供Windows和Linux驱动程序。但Realtek技术支持一直在提供Dropbox链接,其中包含许多用户报告的源代码/固件tarball。

我从哪里得到它?安全吗?

  • 可以通过this Dropbox link.下载驱动程序

  • 我可以使用this content listing确认此文件是它声称的文件,前提是它具有以下MD5或SHA1哈希:(您可以使用md5sumsha1sum验证)MD5:fd10e9a347c6447f649324d6bdab53de SHA1:1ccd6ae73878d8bf65bd7c0384e333b121606230

如何在Ubuntu上构建和安装驱动程序?

  1. 使用Ctrl + Alt + T打开终端。

  2. 您需要先安装这些软件包才能构建驱动程序:

    sudo apt-get install build-essential linux-headers-generic linux-headers-`uname -r`
    
  3. 粘贴以下行以一步下载并解压缩驱动程序存档:

    wget -O- http://dl.dropbox.com/u/57056576/DRIVERS/REALTEK/rtl_92ce_92se_92de_8723ae_linux_mac80211_0006.0514.2012.tar.gz | tar -xz
    
  4. 切换到解压缩的驱动程序目录,构建并安装驱动程序:cd rtl_92ce_92se_92de_8723ae_linux_mac80211_0006.0514.2012 make sudo make install

  5. 通过加载来测试驱动程序(这是一个one-time步骤;重新启动一次后,驱动程序应该在每次启动时自动加载):

    sudo modprobe rtl8723e
    

次佳解决办法

Commenting out/removing the IEEE80211_HW_BEACON_FILTER (line 320 in base.c) makes it possible to compile when using the 3.4 kernel. So far I haven’t experienced any problems. The card seems to work as it did before, although it might be less power-efficient. I can’t guarantee it won’t cause any problems, but it’s better than nothing.

那么,这里有一些关于你的新反馈:我做了以上所有并得到了相同的编译错误并修改了你的建议。然后司机工作了ONCE。重新启动后,它不再可以打开任何无线连接。尝试启动到Windows 7,仍然,它不再能检测到任何无线连接。

我现在确信这个程序已经阻止了我的wlan适配器 – Windows仍然可以识别设备,但是存在一些问题,因为它不再感知任何无线连接。我必须使用外部的linksys适配器,因为我的板载realtek不见了:/

<<>>无视上述评论,因为当我写这篇文章时我很生气。

更新:我发现不知何故该驱动程序已将我的WLAN模块的’Roaming Sensitivity’设置为’Low’,这导致它无法检测到任何无线信号。在Windows 7中,我去了设备管理器并将该设置更改为’High’和voilá – 它还活着了!呼…

在任何情况下,请注意,如果您在遵循互联网的建议时不小心,可能会发生这种情况。在再次启动进入我的ubuntu分区之前我会三思而后行

第三种解决办法

我与来自Realtek的支持人员进行了交谈,并收到了另一位用户在此问题上提交的Dropbox托管的相同文件。我按照自述文件的说明编译了驱动程序并且它有效,您可能需要将8723 *固件文件复制到rtlwifi文件夹中。

应该说,这个解决方案并不完美,我与WEP AP有一些非常不稳定的联系。此驱动程序也支持内核3.3。

3.4内核已经删除了mac80211模块中的一些调用,这个调用需要编译,因此出现错误而无法编译。这对于ubuntu来说现在不是问题,但它意味着你不能在up-to-date Fedora 17或使用3.4+内核的任何其他发行版上安装驱动程序 – 包括即将推出的Ubuntu版本。

有关更改的信息,请参阅http://article.gmane.org/gmane.linux.kernel.wireless.general/84114/match=ieee80211_hw_beacon_filter

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/2234.html,未经允许,请勿转载。