Personal tools
You are here: Home Fedora Mobile Wireless Installing Ndiswrapper Kernel Modules

Installing Ndiswrapper Kernel Modules

by scott_glaser last modified Apr 14, 2009 12:48 PM
Contributors: Todias Oed, Scott Williams, daMaestro
— filed under:

Ndiswrapper is a project that focuses on getting support for wireless network devices for which the manufactures do not release any sort of linux driver.

DISCLAIMER: Please be careful and test how your system responds to various card events such as a hot removal. There are instances where they may cause you system to lock up. So be aware of this possibility.

Requirements

  1. Read our Getting Started with Wireless Guide.
  2. You must have a wireless network adapter that is supported by ndiswrapper, to see if your card is supported please check http://ndiswrapper.sourceforge.net/mediawiki/index.php/List
  3. Your yum configuration should be configured per this HOWTO.
  4. Your system should be fully up to date.

  5. Open a Terminal. In that terminal enter the following:

    $ su -c 'yum update'                  

    At the password prompt enter the password for you root user and press enter. If any kernel packages are installed a reboot will be required prior to continuing.

Doing the work

  1. Open a Terminal.
  2. Type:

    su -c 'yum install kmod-ndiswrapper'                  

    This installs the ndiwrapper module for the latest kernel installed, if available. There are times where the Livna repository will lag behind the packages released by the Fedora Project.  If this is the case and it says no package is currently available try again in a couple of hours.

  3. Once the kernel module is installed you need to create a directory to store your driver files by entering the following:

    su -c 'mkdir /ndiswrapper_drivers'
  4. Now you need to actually login as root to continue, to do so enter the following:

    su --login
  5. At the prompt enter the root password, then press enter.

  6. Now change to the directory you just created by entering the following:

    cd /ndiswrapper_drivers
  7. Then press enter.

  8. Now you will either need to get the drivers from your windows driver disk or download the drivers needed for your network card from http://ndiswrapper.sourceforge.net/mediawiki/index.php/List.

  9. Once you have downloaded the drivers you will need to copy them to the directory "/ndiwswrapper_drivers", to do so enter the following (This example assumes you have downloaded the file/files to the desktop, your configuration may vary based on where you download your files and the file names of your drivers. The files you need are are the .inf and .sys files for your card.):

    cp netbc564.inf /ndiswrapper_drivers/

    Then press enter, then enter the following to move your .sys file:

    cp bcmwl564.sys /ndiswrapper_drivers/

    Then press enter.

  10. Once the files are located in the proper directory, you need to install the drivers into ndiswrapper, do so by entering the following:

    ndiswrapper -i netbc564.inf
  11. Then press enter, a message similar to the following should be displayed:

    Installing netbc564
    Forcing parameter IBSSGMode|0 to IBSSGMode|2
  12. Now you need to verify that the drivers are installed properly and that the card is recognized by ndiswrapper. This is done by entering the following:

    ndiswrapper -l

    Then press enter, and a message similar to the following should be displayed:

    Installed drivers:
    netbc564 driver present, hardware present
  13. As long as this was successful, you need to load the kernel module.  This is completed by entering the following:

    modprobe ndiswrapper
  14. Now you need to verify that the module loaded properly, this is done by entering the following:
    dmesg | grep wlan0
  15. Press enter, messages similar to the following should be displayed:
    wlan0: ndiswrapper ethernet device 00:90:4b:b8:d9:c8 using driver netbc564, configuration file 14E4:4320.5.conf 
    wlan0: encryption modes supported: WEP, WPA with TKIP, WPA with AES/CCMP
    wlan0: no IPv6 routers present
  16. If a message similar to the one above is displayed all went well, so next we need to add the alias directive to the modprobe config file. This is done by running the following:

    ndiswrapper -ma
    echo "alias wlan0 ndiswrapper" >> /etc/modprobe.conf
  17. Then press enter.

  18. Now that the driver and module are installed, we need to exit out of root, do so by entering the following:
    exit

    Then press enter.

  19. Next proceed here to configure your device utilizing the Network Configuration tool, also known as System-Config-Network. We also recommend using NetworkManager.

Troubleshooting 

How to test 

  • Once you have created your device, and activated the new device, see if you can ping your gateway.  Once you can ping your gateway, try to ping an address on the internet such as www.google.com.  If that is successful you are done.

Common problems and fixes

  • One of the most common mistakes is the user forgetting to put the 0x before the WEP key if it is a hexi-decimal key. Double check this if you have problems connecting if you have enabled WEP.
  • If you plan on using WPA, you need to look at WPA_supplicant or Xsupplicant.
  • An anaconda bug in FC6 may have caused you to end up with an i586 kernel on your system. You can check this with one of the following two commands:
    su -c "yum -d 0 list kernel"
    rpm -qa --qf '%{NAME}-%{VERSION}-%{RELEASE}.%{ARCH}\n' 'kernel*'
    if you see "kernel.i586 Installed" please follow the suggested resolution listed here https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=211941#c24. Once you have removed the .i586 kernel complete the steps above and you should have no issues.

More Information

Disclaimer

We test this stuff on our own machines, really we do. But you may run into problems, if you do, come to #fedora on freenode.net

Added Reading

Document Actions
Log in


Forgot your password?
New user?