Help Installing USB D-Link WUA 1340 Firmware

Hi, I went out and bought a USB wireless device. When I plugged it into my ubuntu computer, it mumbled something about installing some firmware, then it just worked. OpenSUSE, however, is a little bit different, and it seems like it’ll take a little more work to get the firmware installed and configured properly. This is totally beyond my capabilities, especially with redhat based OpenSUSE, because I’ve stuck to debian based distros until quite recently.

I wend to the d-link and downloaded the proper package, which was a zip, so I unzipped it, opened the readme, and quickly realized that I was over my head. I’m hoping that there is a package I can install that will download and install this firmware for me, like my ubuntu system did, but failing that, I just really need some help to figure out what to do.

Here are the instructions, which I find so very daunting…


* README

*

* Ralink Tech Inc.

* 

* http://www.ralinktech.com

*



=======================================================================

ModelName:

===========

RT73(RT2571W) Wireless Lan Linux Driver





=======================================================================

Driver lName:

===========

rt73





=======================================================================

Supporting Kernel:

===================

linux kernel 2.4 and 2.6 series. 

Tested in Redhat 7.3 or later.





=======================================================================

Description:

=============

This is a linux device driver for Ralink RT73 a/b/g WLAN Card.





=======================================================================

Contents:

=============

Makefile.4		    : Makefile for kernel 2.4 series

Makefile.6		    : Makefile for kernel 2.6 series

*.c					: c files

*.h					: header files





=======================================================================

Features:

==========

   This driver implements basic IEEE802.11. Infrastructure and adhoc mode 

   with open or shared or WPA-PSK or WPA2-PSK authentication method. 

   NONE, WEP, TKIP and AES encryption. 





=======================================================================

Build Instructions:  

====================

1> $tar -xvzf RT73_Linux_STA_Drv_x.x.x.x.tar.gz

    go to "./RT73_Linux_STA_Drv_x.x.x.x/Module" directory.

    

2> $cp Makefile.4  ./Makefile       # [kernel 2.4]

    or

   $cp Makefile.6  ./Makefile       # [kernel 2.6]

   

3> [kernel 2.4]

    $chmod 755 Configure

    $make config         # config build linux os version



4> $make all            # compile driver source code

4.1> $make install



5> $cp rt73.bin /etc/Wireless/RT73STA/	    # copy firmware

 

6>  $dos2unix rt73sta.dat

    $cp rt73sta.dat  /etc/Wireless/RT73STA/rt73sta.dat       

    # !!!check if it is a binary file before loading !!!  

    

7> $load                

    #[kernel 2.4]

    #    $/sbin/insmod rt73.o

    #    $/sbin/ifconfig rausb0 inet YOUR_IP up

        

    #[kernel 2.6]

    #    $/sbin/insmod rt73.ko

    #    $/sbin/ifconfig rausb0 inet YOUR_IP up





=======================================================================

CONFIGURATION:  

====================

RT73 driver can be configured via following interfaces, 

i.e. (i)"iwconfig" command, (ii)"iwpriv" command, (iii) configuration file

     (iv)RaConfig



i)  iwconfig comes with kernel.  

ii) iwpriv usage, please refer to file "iwpriv_usage.txt" for details.

iii)copy configuration file "rt73sta.dat" to /etc/Wireless/RT73STA/rt73sta.dat.

iv) RaConfig is utility for rt73.



Note: 

           

Configuration File : rt73sta.dat

---------------------------------------

# Copy this file to /etc/Wireless/RT73STA/rt73sta.dat

# This file is a binary file and will be read on loading rt.o module.

#

# Use "vi -b rt73sta.dat" to modify settings according to your need.

# 

# 1.) set NetworkType to "Adhoc" for using Adhoc-mode, otherwise using Infrastructure

# 2.) set Channel to "0" for auto-select on Infrastructure mode

# 3.) set SSID for connecting to your Accss-point.

# 4.) AuthMode can be "WEPAUTO", "OPEN", "SHARED", "WPAPSK", "WPA2PSK", "WPANONE"

# 5.) EncrypType can be "NONE", "WEP", "TKIP", "AES"

# for more information refer to the Readme file.

# 

# The word of "[Default]" must not be removed

[Default]

CountryRegion=0

CountryRegionABand=7

WirelessMode=0

SSID=AP350

NetworkType=Infra

Channel=0

AuthMode=OPEN

EncrypType=NONE

DefaultKeyID=1

Key1Type=0

Key1Str=0123456789

Key2Type=0

Key2Str=

Key3Type=0

Key3Str=

Key4Type=0

Key4Str=

WPAPSK=abcdefghijklmnopqrstuvwxyz

TxBurst=0

PktAggregate=0

TurboRate=0

WmmCapable=0

AckPolicy=0;0;0;0

BGProtection=0

IEEE80211H=0

TxRate=0

RTSThreshold=2347

FragThreshold=2346

PSMode=CAM

TxPreamble=0

AdhocOfdm=0

FastRoaming=0

RoamThreshold=70



-----------------------------------------------

syntax is 'Param'='Value' and describes below. 



1. CountryRegion=value                                 

	value

		0: use 1 ~ 11 Channel

		1: use 1 ~ 13 Channel

		2: use 10, 11 Channel

		3: use 10 ~ 13 Channel

		4: use 14 Channel

		5: use 1 ~ 14 Channel

		6: use 3 ~ 9 Channel

		7: use 5 ~ 13 Channel

   	 	                                      

2. CountryRegionABand=value      							

	value	

		0: use 36, 40, 44, 48, 52, 56, 60, 64, 149, 153, 157, 161, 165 Channel

		1: use 36, 40, 44, 48, 52, 56, 60, 64, 100, 104, 108, 112, 116, 120, 124, 128, 132, 136, 140 Channel

		2: use 36, 40, 44, 48, 52, 56, 60, 64 Channel

		3: use 52, 56, 60, 64, 149, 153, 157, 161 Channel

		4: use 149, 153, 157, 161, 165 Channel

		5: use 149, 153, 157, 161 Channel

		6: use 36, 40, 44, 48 Channel

		7: use 36, 40, 44, 48, 52, 56, 60, 64, 100, 104, 108, 112, 116, 120, 124, 128, 132, 136, 140, 149, 153, 157, 161, 165 Channel

		8: use 52, 56, 60, 64 Channel

		9: use 34, 38, 42, 46 Channel

		10: use 34, 36, 38, 40, 42, 44, 46, 48, 52, 56, 60, 64 Channel

       

3. SSID=value                	

	value

		0~z, 1~32 ascii characters.

                    	

4. WirelessMode=value

	value	

		0: 11b/g mixed, 

		1: 11b only, 

		2: 11a only,        //Support in RfIcType=1(id=RFIC_5226) or RfIcType=3(id=RFIC_5225)   

		3: 11a/b/g mixed,   //Support in RfIcType=1(id=RFIC_5226) or RfIcType=3(id=RFIC_5225)

		4: 11g only	        

                    	

5. TxRate=value

	value

		 0: Auto    	//WirelessMode=0~4 	

		 1: 1 Mbps	 	//WirelessMode=0 or 1 or 3

         2: 2 Mbps	 	//WirelessMode=0 or 1 or 3

         3: 5.5 Mbps 	//WirelessMode=0 or 1 or 3

         4: 11 Mbps 	//WirelessMode=0 or 1 or 3

         5: 6  Mbps  	//WirelessMode=0 or 2 or 3 or 4

         6: 9  Mbps  	//WirelessMode=0 or 2 or 3 or 4

         7: 12 Mbps  	//WirelessMode=0 or 2 or 3 or 4

         8: 18 Mbps  	//WirelessMode=0 or 2 or 3 or 4

         9: 24 Mbps  	//WirelessMode=0 or 2 or 3 or 4

        10: 36 Mbps  	//WirelessMode=0 or 2 or 3 or 4

        11: 48 Mbps  	//WirelessMode=0 or 2 or 3 or 4

        12: 54 Mbps  	//WirelessMode=0 or 2 or 3 or 4

 	                                       

6. Channel=value

	value

		depends on CountryRegion or CountryRegionABand

                    	

7. BGProtection=value

	value

		0: Auto 

		1: Always on 

		2: Always off

                    	

8. TxPreamble=value

  	value

		0: Preamble Long

		1: Preamble Short 

		2: Auto

                    	

9. RTSThreshold=value

	value

		1~2347                                                       

                    	                                       

10. FragThreshold=value

	value       	

		256~2346

                    	

11. TxBurst=value

	value

		0: Disable

		1: Enable



12. NetworkType=value	    		

	value 

		Infra: infrastructure mode

       	Adhoc: adhoc mode



13. AdhocOfdm=value

    value

        0: WIFI mode    (1,2,5.5,11 mbps rates)   				   

        1: b/g mixed,   (1,2,5.5,11,6,9,12,18,24,36,48,54 mbps rates)

        2: 11g only,    (6,9,12,18,24,36,48,54 mbps rates) 

        3: 11a only,    (6,9,12,18,24,36,48,54 mbps rates)

        

14. AuthMode=value

	value

		OPEN	 	For open system	

		SHARED	  	For shared key system	

		WEPAUTO     Auto switch between OPEN and SHARED

		WPAPSK      For WPA pre-shared key  (Infra)

		WPA2PSK     For WPA2 pre-shared key (Infra)

		WPANONE		For WPA pre-shared key  (Adhoc)

		WPA         Use WPA-Supplicant

		WPA2        Use WPA-Supplicant



15. EncrypType=value

	value

		NONE        For AuthMode=OPEN                    

		WEP         For AuthMode=OPEN or SHARED 

		TKIP        For AuthMode=WPAPSK or WPA2PSK or WPANONE                 

		AES         For AuthMode=WPAPSK or WPA2PSK or WPANONE                 

		

16. DefaultKeyID=value

	value

		1~4



17. Key1=value

    Key2=value

    Key3=value

    Key4=value

	value

		10 or 26 hexadecimal characters eg: 012345678

        5 or 13 ascii characters eg: passd

    (usage : "iwpriv" only)



18. Key1Type=vaule

    Key2Type=value

    Key3Type=vaule

    Key4Type=vaule

    value

		0   hexadecimal type

		1   assic type

    (usage : reading profile only)



19. Key1Str=value

    Key2Str=value

    Key3Str=vaule

    Key4Str=vaule

    value

		10 or 26 characters (key type=0)

		5 or 13 characters  (key type=1)

    (usage : reading profile only)	

                                                    

20. WPAPSK=value              	

	value

		8~63 ASCII  		or 

		64 HEX characters



21. PSMode=value

    value

    	0: CAM			Constantly Awake Mode

		1: Max_PSP		Max Power Savings

		2: Fast_PSP		Power Save Mode

	

22. IEEE80211H=value

	value

		0:	Disable

		1:	Enable	Spectrum management

	    (This field can be enable only in A band)



23. FastRoaming=value

    value

        0: Disable

        1: Enable Fast Roaming



24. RoamThreshold=value

    vale

        61 ~ 89

        

    This value is a absolute threshold in dBm.

    The condition to roam when receiving Rssi less than (-1*value).



// //////////////////////    																		

//  No Support !!!

// /////////////////////

//  PktAggregate,            

//  TurboRate,																

//  WmmCapable,				

//  AckPolicy

// /////////////////////



MORE INFORMATION

=================================================================================

If you want for rt73 driver to auto-load at boot time:

A) choose rausb0 for first RT73 WLAN card, rausb1 for second RT73 WLAN card, etc.

 

B) go to "./RT73_Linux_STA_Drv_x.x.x.x/Module" directory.

   $make install



NOTE:

	if you use dhcp, 

	add this line

	BOOTPROTO='dhcp'

	in the file ifcfg-rausb0 .





*C) To ease the Default Gateway setting, 

    add the line

    GATEWAY=x.x.x.x   

    in /etc/sysconfig/network



D) When build for SUSE, please unmark the part for SUSE in Makefile.



E) When build for Mandriva 2007.1, please unmark the part for Mandriva in Makefile.

   You have to remove the module pre-loaded by Mandriva 2007.1 before

   you can load our rt73sta module.

   

   Commands:

   

   # rmmod rt73

   

   Then go to the driver source directory to insert rt73 module

   

   # insmod rt73.ko

   

   or

    Edit this file /lib/modules/`uname -r`/build/.kernelrelease before "4> make all"

    change it to 2.6.17-13mdv (should be the same as "uname -r" value)

    follow "Build Instructions: 4> and 4.1>"  then the driver should be loaded correctly on boot up.

    

The very first command fails for me, and it doesn’t make any sense at all. The file doesn’t exits! I expect that the README is just out of date, or very poorly written. Either way, I’m lost. Please help!

PenguinMigrations wrote:
> Hi, I went out and bought a USB wireless device. When I plugged it into
> my ubuntu computer, it mumbled something about installing some firmware,
> then it just worked. OpenSUSE, however, is a little bit different, and
> it seems like it’ll take a little more work to get the firmware
> installed and configured properly. This is totally beyond my
> capabilities, especially with redhat based OpenSUSE, because I’ve stuck
> to debian based distros until quite recently.
>
> I wend to the d-link and downloaded the proper package, which was a
> zip, so I unzipped it, opened the readme, and quickly realized that I
> was over my head. I’m hoping that there is a package I can install that
> will download and install this firmware for me, like my ubuntu system
> did, but failing that, I just really need some help to figure out what
> to do.
>
> Here are the instructions, which I find so very daunting…

Those instructions are for building a driver; however, you just told us that a
driver loads, but it needs firmware. FWIW, the x.x.x.x stuff is general. You
needed to substitute the specific numbers for your driver.

To find the firmware it needs, open a terminal and enter the command

dmesg | grep firmware

That should tell you what file is needed. That file should be added to
/lib/firmware. I don’t know anything about the D-Link device and cannot guess
where to look for the firmware, but http://linuxwireless.org/en/users/Drivers/
should get you started.

FWIW, openSUSE obeys the open part very strictly. It absolutely does not include
anything on the CD or DVD that is not licensed with something like GPL. That is
the reason that the firmware must be obtained separately.

Larry

Thankyou for clarifying this issue for me. Would the firmware on my ubuntu machine be what I need? If so, is there anything about permissions/ownership that I should be aware of before copying the file over to my openSUSE system?

PenguinMigrations wrote:
> Thankyou for clarifying this issue for me. Would the firmware on my
> ubuntu machine be what I need? If so, is there anything about
> permissions/ownership that I should be aware of before copying the file
> over to my openSUSE system?

The vendors restrict distribution of their proprietary firmware, but there are
no restrictions that prevent you copying it for your own use. You are just not
allowed to give it to someone else.

Larry

Yeah! As usual, finding the solution was more difficult than employing the solution. In the end, all I needed to do was install the ralink-firmware package, which was sitting in the repos. I’m online with my wireless USB now. Color me happy! Anyhow, thanks for your help. Its greatly appreciated. Now if only I could get my internal wireless to work… sigh.

Thanks again.

PenguinMigrations wrote:
> Yeah! As usual, finding the solution was more difficult than employing
> the solution. In the end, all I needed to do was install the
> ralink-firmware package, which was sitting in the repos. I’m online with
> my wireless USB now. Color me happy! Anyhow, thanks for your help. Its
> greatly appreciated. Now if only I could get my internal wireless to
> work… sigh.

What is your internal wireless device? Use lspci or lsusb to fiind the ID’s.

Larry

My internal wireless doesn’t show up in either lsusb or lspci. see…

my lsusb:



Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 002: ID 07d1:3c04 D-Link System WUA-1340
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub


and my lspci:


00:00.0 Host bridge: Intel Corporation 82845G/GL[Brookdale-G]/GE/PE DRAM Controller/Host-Hub Interface (rev 03)
00:02.0 VGA compatible controller: Intel Corporation 82845G/GL[Brookdale-G]/GE Chipset Integrated Graphics Device (rev 03)
00:1d.0 USB Controller: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #1 (rev 02)
00:1d.1 USB Controller: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #2 (rev 02)
00:1d.2 USB Controller: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #3 (rev 02)
00:1d.7 USB Controller: Intel Corporation 82801DB/DBM (ICH4/ICH4-M) USB2 EHCI Controller (rev 02)
00:1e.0 PCI bridge: Intel Corporation 82801 PCI Bridge (rev 82)
00:1f.0 ISA bridge: Intel Corporation 82801DB/DBL (ICH4/ICH4-L) LPC Interface Bridge (rev 02)
00:1f.1 IDE interface: Intel Corporation 82801DB (ICH4) IDE Controller (rev 02)
00:1f.3 SMBus: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) SMBus Controller (rev 02)
00:1f.5 Multimedia audio controller: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Audio Controller (rev 02)
00:1f.6 Modem: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Modem Controller (rev 02)
01:03.0 CardBus bridge: O2 Micro, Inc. OZ601/6912/711E0 CardBus/SmartCardBus Controller
01:0a.0 FireWire (IEEE 1394): VIA Technologies, Inc. IEEE 1394 Host Controller (rev 80)
01:0c.0 Ethernet controller: National Semiconductor Corporation DP83815 (MacPhyter) Ethernet Controller


There’s nothing in the bios about the internal wireless and no hardware switch on the chassis, so either the salesman lied to me and there is no wireless, or it needs to be enabled with an unlisted keyboard function, or possibly something else that I haven’t considered. I’ve sent an email to the company that sold it originally, infoclick.ca, and hopefully they will be able to send me some more useful information. If you have any ideas though, let me know. Thanks.

PenguinMigrations wrote:
> My internal wireless doesn’t show up in either lsusb or lspci. see…
>
> my lsusb:
>
>
> Code:
> --------------------
>
>
> Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
> Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
> Bus 001 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
> Bus 002 Device 002: ID 07d1:3c04 D-Link System WUA-1340

It is right above. The driver is rt73usb and it needs firmware. Use ‘dmesg |
grep firmware’ to see what file it wants, but it should be available with the
‘ralink-firmware’ package installed with YaST.

Larry

Umm, thats my USB wireless. I already found and installed the firmware through the package manager. Thanks anyhow. I also drilled out the two rivets (yes, rivets!!) that were stopping me from taking apart my laptop, and surprise, there is no wireless! There was just a little piece of rubber glued to the inside of the case where the case says the wireless should be. Go figure. Anyhow, I’m going to replace the USB wireless with a PCMCIA Wireless. I’ll end up breaking the USB wireless before too long. (I’m clumsy) Any suggestions for a good PCMCIA for Linux?