Using Windows wireless card drivers in Pisi Linux

For many wireless networkcards, Linux drivers are not available. Don’t worry! Despite that, it is very easy to get your card working: With ‘ndiswrapper’, you can load the Windows-drivers. This is a small guide to get wireless working.

1. Make sure ndiswrapper is installed. You can check it in the Package Manager or type in the Terminal:

pisi info ndiswrapper

You see the following:

groni@groni_pisilinux2 ~ $ pisi info ndiswrapper
ndiswrapper package is not installed
Package found in pisi repository:
Name                : ndiswrapper, version: 1.59, release: 10
Summary             : A network driver wrapper
Description         : module-ndiswrapper allows you to use Windows XP drivers for WLAN cards without proper Linux
drivers.
Licenses            : GPLv2
Component           : kernel.drivers
Provides            :
Dependencies        : kernel
Distribution        : PisiLinux, Dist. Release: 1.0
Architecture        : x86_64, Installed Size: 540.00 KB, Package Size: 115.00 KB, install.tar.xz sha1sum:
184cbce7b5461f352c8fc7a50effdab5891ea107
Reverse Dependencies:

Package found in core repository:
Name                : ndiswrapper, version: 1.59, release: 9
Summary             : A network driver wrapper
Description         : module-ndiswrapper allows you to use Windows XP drivers for WLAN cards without proper Linux
drivers.
Licenses            : GPLv2
Component           : kernel.drivers
Build Dependencies  : kernel-module-headers
Reverse Build Dependencies:

groni@groni_pisilinux2 ~ $

You see here it is not installed, install the package, now the package is in the core Repository and you have not add it, add it  with the following command:

sudo pisi ar core https://github.com/pisilinux/core/raw/master/pisi-index.xml.xz

after it type “sudo pisi ur” to update the Repo

Install ndiswrapper with “sudo pisi it ndiswrapper”

2. Download the Windows drivers of your networkcard. If you don’t know where you can find it, have a look at this list: Linux wireless LAN support 

More Informations about models found you at this site. ndiswrapper’s wiki  (For the next steps, download the driver to your Desktop and remember your username.)

3. Unzip it, and remember the name of the created directory with the drivers.

4. Open a terminal in administrator mode: PisFor many wireless networkcards, Linux drivers are not available. Don’t worry! Despite that, it is very easy to get your card working: With ‘ndiswrapper’, you can load the Windows-drivers. This is a small guide to get wireless working.

1. Make sure ndiswrapper is installed. You can check it in the Package Manager or type in the Terminal:

pisi info ndiswrapper

You see the following:

groni@groni_pisilinux2 ~ $ pisi info ndiswrapper
ndiswrapper package is not installed
Package found in pisi repository:
Name : ndiswrapper, version: 1.59, release: 10
Summary : A network driver wrapper
Description : module-ndiswrapper allows you to use Windows XP drivers for WLAN cards without proper Linux
drivers.
Licenses : GPLv2
Component : kernel.drivers
Provides :
Dependencies : kernel
Distribution : PisiLinux, Dist. Release: 1.0
Architecture : x86_64, Installed Size: 540.00 KB, Package Size: 115.00 KB, install.tar.xz sha1sum:
184cbce7b5461f352c8fc7a50effdab5891ea107
Reverse Dependencies:

Package found in core repository:
Name : ndiswrapper, version: 1.59, release: 9
Summary : A network driver wrapper
Description : module-ndiswrapper allows you to use Windows XP drivers for WLAN cards without proper Linux
drivers.
Licenses : GPLv2
Component : kernel.drivers
Build Dependencies : kernel-module-headers
Reverse Build Dependencies:

groni@groni_pisilinux2 ~ $

You see here it is not installed, install the package, now the package is in the core Repository and you have not add it, add it with the following command:

sudo pisi ar core https://github.com/pisilinux/core/raw/master/pisi-index.xml.xz

after it type “sudo pisi ur” to update the Repo

Install ndiswrapper with “sudo pisi it ndiswrapper”

2. Download the Windows drivers of your networkcard. If you don’t know where you can find it, have a look at this list: Linux wireless LAN support

More Informations about models found you at this site. ndiswrapper’s wiki (For the next steps, download the driver to your Desktop and remember your username.)

3. Unzip it, and remember the name of the created directory with the drivers.

4. Open a terminal in administrator mode: Pisi Linux Menu -> System ->Konsole. Open it, then type sudo su and give in your administration password.

5. Go to the directory with the drivers. cd /home/username/directory-with-the-drivers.

6. Check for already installed drivers:

ndiswrapper -l

7. If necessary remove them with:

ndiswrapper -r drivername

8. Install the driver:

ndiswrapper -i driver.inf (Replace ‘driver’ with the name of your .inf-file.)

9. Check with:

ndiswrapper -l

10. Check for problems:

depmod -a

11. Load ndiswrapper module:

modprobe ndiswrapper

12. Type this:

ndiswrapper -m

13. Check for: “adding “alias ……..”

14. Check if device is present with:

iwconfig

15. Configure for Pisi Linux the device: Tasma -> Internet & Network -> Network Manager -> New connection

15a. Configure for Pardus 2009 the device in: System Tray > Network Manager right click > Configure Connection >Add …..

16. Check for the connection with:

iwconfig

17 To load ndiswrapper after a new start enter:

echo ndiswrapper>>/etc/modules.autoload.d/kernel-3.19

Typical errors with ndiswrapper
wrong driver version

It was installed on a 64bit kernel, a 32 bit Windows drivers, or conversely. Uninstalling driver and use a matching system architecture drivers.

ndiswrapper version 1.57 loaded (smp=yes, preempt=no)
usbcore: registered new interface driver ndiswrapper
ndiswrapper (check_nt_hdr:150): kernel is 64-bit, but Windows driver is not 64-bit;bad magic: 010B

Here was installed a 32bit-driver in a 64bit System
initialization error

Most initialization error -22. This problem occurs in certain 32bit and 64bit Windows device drivers.

ndiswrapper: probe of 0000:00:08.0 failed with error -22
..
ndiswrapper (pnp_start_device:395): Windows driver couldn’t initialize the device (C0000001)

Inapropiate driver

Various messages “unknown symbol”. Used driver version is not suitable for Ndiswrapper. Ndiswrapper can not implement some of the properties of the Windows driver. The device initialization fails but it just does not. This problem occurs most often when using newer Windows7 or Vista drivers.

Example:

ndiswrapper (import:233): unknown symbol: NDIS.SYS:’NdisAllocateNetBufferAndNetBufferList’
ndiswrapper (import:233): unknown symbol: NDIS.SYS:’NdisMIndicateReceiveNetBufferLists’
usw.

Uninstalling driver and use if possible an older version for Windows XP / 2000 / 98
Ndiswrapper is not loaded

Ndiswrapper starts not automatically at system startup.

It may be that the required configuration file is not applied in the Folder, but you can easily copied it manually. Then the wireless card or wireless stick is detected directly even at startup.

Check alias table:

cat /etc/modprobe.d/ndiswrapper

Here are the required device IDs by Ndiswrapper who are stored contained in the * .inf file of the installed Windows drivers.

Copy configuration file, this should not be missing:

sudo cp /etc/modules.conf /etc/modprobe.d/ndiswrapper.conf

Uninstalling a driver

To install a new driver from ndiswrapper, it is possibly to remove the old driver first. First one finds by

sudo ndiswrapper -l

the name out of the installed driver. Removing the driver finally happens with

sudo ndiswrapper -r Name of the driveri Linux Menu -> System ->Konsole. Open it, then type sudo su and give in your administration password.

5. Go to the directory with the drivers. cd /home/username/directory-with-the-drivers.

6. Check for already installed drivers:

ndiswrapper -l

7. If necessary remove them with:

ndiswrapper -r drivername

8. Install the driver:

ndiswrapper -i driver.inf (Replace 'driver' with the name of your .inf-file.)

9. Check with:

ndiswrapper -l

10. Check for problems:

depmod -a

11. Load ndiswrapper module:

modprobe ndiswrapper

12. Type this:

ndiswrapper -m

13. Check for: “adding “alias ……..”

14. Check if device is present with:

iwconfig

15. Configure for Pisi Linux the device: Tasma -> Internet & Network -> Network Manager -> New connection

15a. Configure for Pardus 2009 the device in: System Tray > Network Manager right click > Configure Connection >Add  …..

16. Check for the connection with:

iwconfig

17 To load ndiswrapper after a new start enter:

echo ndiswrapper>>/etc/modules.autoload.d/kernel-3.19

 

Typical errors with ndiswrapper

wrong driver version

It was installed on a 64bit kernel, a 32 bit Windows drivers, or conversely. Uninstalling driver and use a matching system architecture drivers.

ndiswrapper version 1.57 loaded (smp=yes, preempt=no)
usbcore: registered new interface driver ndiswrapper
ndiswrapper (check_nt_hdr:150): kernel is 64-bit, but Windows driver is not 64-bit;bad magic: 010B

Here was installed a 32bit-driver in a 64bit System

initialization error

Most initialization error -22. This problem occurs in certain 32bit and 64bit Windows device drivers.

ndiswrapper: probe of 0000:00:08.0 failed with error -22
..
ndiswrapper (pnp_start_device:395): Windows driver couldn't initialize the device (C0000001)

Inapropiate driver

Various messages “unknown symbol“. Used driver version is not suitable for Ndiswrapper. Ndiswrapper can not implement some of the properties of the Windows driver. The device initialization fails but it just does not. This problem occurs most often when using newer Windows7 or Vista drivers.

Example:

ndiswrapper (import:233): unknown symbol: NDIS.SYS:'NdisAllocateNetBufferAndNetBufferList'
ndiswrapper (import:233): unknown symbol: NDIS.SYS:'NdisMIndicateReceiveNetBufferLists'
usw.
...

Uninstalling driver and use if possible an older version for Windows XP / 2000 / 98

Ndiswrapper is not loaded

Ndiswrapper starts  not automatically at system startup.

It may be that the required configuration file  is not applied in the Folder, but you can easily  copied  it manually. Then the wireless card or wireless stick is detected directly even at startup.

Check alias table:

cat /etc/modprobe.d/ndiswrapper

Here are the required device IDs by Ndiswrapper who are stored contained in the * .inf file of the installed Windows drivers.


Copy configuration file, this should not be missing:

sudo cp /etc/modules.conf /etc/modprobe.d/ndiswrapper.conf

Uninstalling a driver

To install a new driver from ndiswrapper, it is possibly to remove the old driver first. First one finds by

sudo ndiswrapper -l

the name out of the installed driver. Removing the driver finally happens with

sudo ndiswrapper -r Name of the driver

Faulty driver, incomplete installations or empty installation directories under / etc / ndiswrapper and /etc/modprobe.d/ndiswrapper may need to be deleted.

 

Advertisements