[How-To] Alternatives of Samsung WiFi Link Stick

This forum is for information related with B series hardware instead of firmware/software.
Locked

User avatar
erdem_ua
SamyGO Admin
Posts: 3125
Joined: Thu Oct 01, 2009 6:02 am
Location: Istanbul, Turkey
Contact:

[How-To] Alternatives of Samsung WiFi Link Stick

Post by erdem_ua »

Related WiKi page for newcomers:
http://wiki.samygo.tv/index.php?title=U ... es_with_TV

While I inspecting firmware, I saw some kernel modules on '/lib/modules' directory related with WiFi dongles.

I think compatible WiFi dongles uses Ralink RT2870 or RT73 modules.
Than I gues the compatible WiFi dongle modules are uses this chips:
RT73: RT2571W, RT2573, RT2671
RT2870: RT2770 and RT2870

Potentially working on RT73 kernel modules are:
Asus WL-167g
Sitecom WL113 v1-002
GW-US54HP
D-Link DWL-G122 (new rev)
Digitus DN-7003GR (VPR 1.0)
Belkin F5D7050 Ver 3
Edimax EW-7318USg
Hawking HWUG1
Linksys WUSB54GR

I couldn't find dongle names with compatible with RT2870 libraries. But if you use such dongle in linux, please try it on TV and tell me if its working or not :!:

I found samsung device ID on the web and I think this is WiFi Link Stick ID because I don't know if samsung produces another WiFi dongle....

Code: Select all

{ USB_DEVICE(0x04E8, 0x2018) }, /* samsung */
I don't know if Samsung put a filter for dongle detection code (probably they put it). But this modules could be run on your TV with a little work (or without work)
I couldn't test it because my USB dongle uses rndis_wlan driver. If you donate me a usb dongle that uses rt73 or rt2870 library, I will work on it. :D
arris69
Official SamyGO Developer
Posts: 1700
Joined: Fri Oct 02, 2009 8:52 am
Location: Austria/Vienna (no Kangaroos here)
Contact:

Re: Alternatives of Samsung WiFi Link Stick

Post by arris69 »

1. Samsung use cutdown drivers
2. ralink original driver may don't support the samsung dongle out of the box. (too lazy to compare the list :cry: )

Samsung Driver:

Code: Select all

description:    RT73 Wireless Lan Linux Driver
alias:          usb:v07B8pB21Dd*dc*dsc*dp*ic*isc*ip*
alias:          usb:v04E8p2008d*dc*dsc*dp*ic*isc*ip*

Code: Select all

description:    RT2870 Wireless Lan Linux Driver
alias:          usb:v04E8p2018d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v14B2p3C09d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v148Fp2870d*dc*dsc*dp*ic*isc*ip*
Ralink Driver (unmodified):

Code: Select all

description:    RT73 Wireless Lan Linux Driver                                                                                                                                                         
alias:          usb:v13B1p0020d*dc*dsc*dp*ic*isc*ip*                                                                         
alias:          usb:v13B1p0023d*dc*dsc*dp*ic*isc*ip*                                                                         
alias:          usb:v07D1p3C03d*dc*dsc*dp*ic*isc*ip*                                                                         
alias:          usb:v050Dp705Ad*dc*dsc*dp*ic*isc*ip*                                                                         
alias:          usb:v0B05p1724d*dc*dsc*dp*ic*isc*ip*                                                                         
alias:          usb:v0B05p1723d*dc*dsc*dp*ic*isc*ip*                                                                         
alias:          usb:v0586p3415d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v0411p00D8d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v0EB0p9021d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v148Fp9021d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v0DF6p90ACd*dc*dsc*dp*ic*isc*ip*
alias:          usb:v0DF6p9712d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v1690p0722d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v1044p800Ad*dc*dsc*dp*ic*isc*ip*
alias:          usb:v1631pC019d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v1371p9032d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v1371p9022d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v1472p0009d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v0769p31F3d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v07B8pB21Dd*dc*dsc*dp*ic*isc*ip*
alias:          usb:v0DB0pA861d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v0DB0pA874d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v0DB0p6877d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v14B2p3C22d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v1044p8008d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v18E8p6238d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v18E8p6229d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v18E8p6196d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v14B2p3C10d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v050Dp905Bd*dc*dsc*dp*ic*isc*ip*
alias:          usb:v7392p7618d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v7392p7318d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v148Fp2671d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v148Fp2573d*dc*dsc*dp*ic*isc*ip*
depends:        usbcore
vermagic:       2.6.18_SELP-ARM preempt mod_unload ARMv6 gcc-4.2

Code: Select all

description:    RT2870 Wireless Lan Linux Driver                                                                                                                                                                 
alias:          usb:v0DB0p6899d*dc*dsc*dp*ic*isc*ip*                                                                         
alias:          usb:v100Dp9031d*dc*dsc*dp*ic*isc*ip*                                                                         
alias:          usb:v050Dp815Cd*dc*dsc*dp*ic*isc*ip*                                                                         
alias:          usb:v0411p00E8d*dc*dsc*dp*ic*isc*ip*                                                                         
alias:          usb:v1737p0071d*dc*dsc*dp*ic*isc*ip*                                                                         
alias:          usb:v1737p0070d*dc*dsc*dp*ic*isc*ip*                                                                         
alias:          usb:v7392p7717d*dc*dsc*dp*ic*isc*ip*                                                                         
alias:          usb:v7392p7718d*dc*dsc*dp*ic*isc*ip*                                                                         
alias:          usb:v5A57p0282d*dc*dsc*dp*ic*isc*ip*                                                                         
alias:          usb:v5A57p0280d*dc*dsc*dp*ic*isc*ip*                                                                         
alias:          usb:v1690p0740d*dc*dsc*dp*ic*isc*ip*                                                                         
alias:          usb:v04E8p2018d*dc*dsc*dp*ic*isc*ip*                                                                         
alias:          usb:v14B2p3C09d*dc*dsc*dp*ic*isc*ip*                                                                         
alias:          usb:v1482p3C09d*dc*dsc*dp*ic*isc*ip*                                                                         
alias:          usb:v050Dp815Cd*dc*dsc*dp*ic*isc*ip*                                                                         
alias:          usb:v050Dp805Cd*dc*dsc*dp*ic*isc*ip*                                                                         
alias:          usb:v157Ep300Ed*dc*dsc*dp*ic*isc*ip*                                                                         
alias:          usb:v129Bp1828d*dc*dsc*dp*ic*isc*ip*                                                                         
alias:          usb:v0E66p0003d*dc*dsc*dp*ic*isc*ip*                                                                         
alias:          usb:v0E66p0001d*dc*dsc*dp*ic*isc*ip*                                                                         
alias:          usb:v15C5p0008d*dc*dsc*dp*ic*isc*ip*                                                                         
alias:          usb:v083Ap6618d*dc*dsc*dp*ic*isc*ip*                                                                         
alias:          usb:v13D3p3247d*dc*dsc*dp*ic*isc*ip*                                                                         
alias:          usb:v14B2p3C25d*dc*dsc*dp*ic*isc*ip*                                                                         
alias:          usb:v0471p200Fd*dc*dsc*dp*ic*isc*ip*                                                                         
alias:          usb:v1740p9702d*dc*dsc*dp*ic*isc*ip*                                                                         
alias:          usb:v1740p9701d*dc*dsc*dp*ic*isc*ip*                                                                         
alias:          usb:v0CDEp0025d*dc*dsc*dp*ic*isc*ip*                                                                         
alias:          usb:v0586p3416d*dc*dsc*dp*ic*isc*ip*                                                                         
alias:          usb:v0CDEp0022d*dc*dsc*dp*ic*isc*ip*                                                                         
alias:          usb:v083Ap7522d*dc*dsc*dp*ic*isc*ip*                                                                         
alias:          usb:v083Ap8522d*dc*dsc*dp*ic*isc*ip*                                                                         
alias:          usb:v083ApA618d*dc*dsc*dp*ic*isc*ip*                                                                         
alias:          usb:v083ApB522d*dc*dsc*dp*ic*isc*ip*                                                                         
alias:          usb:v15A9p0006d*dc*dsc*dp*ic*isc*ip*                                                                         
alias:          usb:v1044p800Bd*dc*dsc*dp*ic*isc*ip*                                                                         
alias:          usb:v07AAp003Fd*dc*dsc*dp*ic*isc*ip*                                                                         
alias:          usb:v07AAp003Cd*dc*dsc*dp*ic*isc*ip*                                                                         
alias:          usb:v07AAp002Fd*dc*dsc*dp*ic*isc*ip*
alias:          usb:v14B2p3C27d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v14B2p3C23d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v050Dp8053d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v14B2p3C07d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v07D1p3C11d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v07D1p3C09d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v2019pED06d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v14B2p3C28d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v14B2p3C06d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v0DF6p002Dd*dc*dsc*dp*ic*isc*ip*
alias:          usb:v0DF6p002Cd*dc*dsc*dp*ic*isc*ip*
alias:          usb:v0DF6p002Bd*dc*dsc*dp*ic*isc*ip*
alias:          usb:v0DF6p0017d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v0B05p1742d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v0B05p1732d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v0B05p1731d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v177Fp0302d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v0789p0164d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v0789p0163d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v0789p0162d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v083Ap7512d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v0DF6p003Fd*dc*dsc*dp*ic*isc*ip*
alias:          usb:v0DF6p0039d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v07B8p2770d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v07B8p2870d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v148Fp2870d*dc*dsc*dp*ic*isc*ip*
alias:          usb:v148Fp2770d*dc*dsc*dp*ic*isc*ip*
depends:        usbcore
vermagic:       2.6.18_SELP-ARM preempt mod_unload ARMv6 gcc-4.2
Last edited by erdem_ua on Tue Oct 13, 2009 10:06 pm, edited 1 time in total.
Reason: Code tags for kernel modules info
User avatar
erdem_ua
SamyGO Admin
Posts: 3125
Joined: Thu Oct 01, 2009 6:02 am
Location: Istanbul, Turkey
Contact:

Re: Alternatives of Samsung WiFi Link Stick

Post by erdem_ua »

I think we could use hex edit for alternate device ID strings too.
Since chip is same, it will work with original driver :)
But needs testing with those dongles...
marcelru
Official SamyGO Developer
Posts: 171
Joined: Thu Oct 01, 2009 7:27 am

Re: Alternatives of Samsung WiFi Link Stick

Post by marcelru »

erdem,

The wlan usb stick that you quote IS the Samsung WIS09, compatible with our TVs. I happen to have one and it works fine. I also happen to have a D-Link DWL-G122, HW rev. C1. On a normal linux box it uses the ralink RT73 driver. I plugged it into my TV (UE40B7020, fw 2008) and it isn't even recognized, let alone that it works. So, unless I missed something, I guess that the RT73 driver in the samsung firmware needs some attention before it will work.
User avatar
erdem_ua
SamyGO Admin
Posts: 3125
Joined: Thu Oct 01, 2009 6:02 am
Location: Istanbul, Turkey
Contact:

Re: Alternatives of Samsung WiFi Link Stick

Post by erdem_ua »

I searched 32B650.zip for rt73's and rt2870's driver file. I found directories under "/linux/linux-r011/drivers/" but there is no file. They removed codes. I think this breaks GPL rules.

Is it too early to fill report at
http://gpl-violations.org/ :?:
User avatar
erdem_ua
SamyGO Admin
Posts: 3125
Joined: Thu Oct 01, 2009 6:02 am
Location: Istanbul, Turkey
Contact:

Re: Alternatives of Samsung WiFi Link Stick

Post by erdem_ua »

I don't know if debian compiled kernel modules work on TV (probably will work) but I tried to compile Kernel and modules from source with cross-arm tools and I failed. I will try again with native cross arm linux (thanks qemu).
User avatar
erdem_ua
SamyGO Admin
Posts: 3125
Joined: Thu Oct 01, 2009 6:02 am
Location: Istanbul, Turkey
Contact:

Re: Alternatives of Samsung WiFi Link Stick

Post by erdem_ua »

You don't needed to paste all string to here. It's enough that being use of rt73 or rt2870sta driver.

Road seperate 2 ways from here. One of them jump in that kernel modules with IDA an change required strings, that enables rt73 and rt2870sta devices in that approach.
But other way is far better, compiling our kernel modules, which enables any WiFi dongle on you samsung TV.

I tried once but I failed. It's better to open topic for compiling Samsung Kernel.
geo650
Official SamyGO Developer
Posts: 303
Joined: Wed Oct 07, 2009 12:03 pm

Re: Alternatives of Samsung WiFi Link Stick

Post by geo650 »

Hello!
I am posting a short report from testing Edimax EW-7318USg USB WiFi b/g dongle with LExxB650.
As you may know, it doesn't work natively with B65x, but here are some useful facts:

part of /proc/bus/usb/devices:

Code: Select all

T:  Bus=02 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#=  2 Spd=480 MxCh= 0
D:  Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs=  1
P:  Vendor=148f ProdID=2573 Rev= 0.01
S:  Manufacturer=Ralink
S:  Product=802.11 bg WLAN
C:* #Ifs= 1 Cfg#= 1 Atr=80 MxPwr=300mA
I:  If#= 0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=(none)
E:  Ad=81(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E:  Ad=01(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
when the WiFi stick is put into USB2 port - it generates /proc/kmsg messages:

Code: Select all

<6>usb 2-1: new high speed USB device using ehci-s5h2x and address 2
<6>usb 2-1: configuration #1 chosen from 1 choice
and when is released:

Code: Select all

<6>usb 2-1: USB disconnect, address 2
LED on the dongle is not blinking at all. Nothing.

Similar WiFi driver with source code can be found on the author's website:

http://www.ralinktech.com/support.php?s=2

George.

EDIT: A few minutes ago I hex-edited VIDs in rt73.ko file, then executed commands:

Code: Select all

rmmod rt73
cd /dtv/usb/sda1
insmod ./rt73.ko
and... it seems to work now! Great!
I've modified only 4 bytes of rt73.ko:

Code: Select all

Comparing files rt73.ko and RT73_ORIG.KO
00049C9A: 8F E8
00049C9B: 14 04
00049C9C: 73 08
00049C9D: 25 20
Now I have to check if it can be seen in the TV's menu.
(I am using simple serial cable without patched firmware, so I don't know how to exit telnet after executing it on the console).
Last edited by geo650 on Mon Oct 12, 2009 11:05 pm, edited 1 time in total.

Locked

Return to “[B] Hardware”