Adding 802.11g support to the WDTV Player

Western Digital has manufactured a series of video players that can connect to your TV and play video files off of a USB drive or over the network. I personally own a WDTV Live, which contains a built in ethernet port and networking support. I use it all the time and couldn’t be happier with it.

I recently had the opporunity to purchase a WDTV very cheap. When I got it home, to my disappointment, I found it was the older WDTV (non-Live) version, which does not have network support, it was meant only to play files off of attached USB drives.

A quick google search turned up the WDLXTV project, an alternative firmware for the WDTV which adds quite a few features, including network support! Unlike the WDTV Live, it does not support viewing web videos like Youtube, but it does support streaming movies from network shares over NFS or Windows Networking (SAMBA), which is something I do frequently.

Unfortunately, WDLXTV’s networking support, especially for wireless networking, is pretty buggy and under-documented. However, I managed to get WDLXTV working with a DLink DWA-110 802.11g adpater quite well. Here is how I did it:

I have seen a large number of posts from people struggling to get the DWA-110 to work on a 1st Gen WDTV, but I have never seen anyone post a working configuration. Well, I finally found one, and I wanted to post it for all my fellow sufferers. The DWA-110 uses the RT73 chipset, so this may work for other similar adapters. I have tested this configuration with unencrypted and WPA2 encrypted networks, both work fine. I have only tested with DHCP, not with a static IP, so no guarantees there. I use this configuration to stream videos from a Windows/SAMBA share. It works great for SD content, and even most of my 720p stuff. 1080i/p files definitely stutter/crash on occasion when played over the network. Note that although I have the uPnP plugin installed, it doesn’t seem to detect any of my uPnP shares. When I remove the uPnP plugin, the whole thing stops working, so it seems to be pretty sensitive to tweaks. 

Note: WDLXTV firmware version 0.5.8.1. This is probably important. 

List of Files on my USB Drive:

  • log-saver.app.bin (version ???, download here)
  • net.config
  • net.mounts
  • rt73sta.dat
  • S00custom-options
  • samba.app.bin (version 0.2, download here)
  • screen_saver.png
  • UPnP-djmount.app.bin (version 0.2.2, download here)
  • wdtv.bin
  • wdtv.ver
  • welcome_background_bg.jpg
  • wireless-mod-rt.app.bin (version 1.2, download here)

Note: If any of these files are unavailable at the locations linked, a collection of all the files on my WDLXTV flash drive (minuse the config files) is available here.


File Contents

net.config

# Network configuration file
#You can override the hostname here:
HOST=wdtv
# if you do not set a hostname,a random one is assigned.
# attempt to set jumbo frames
#MTU=9000
#
# Dynamic IP Configuration:
DHCP=yes
#
# Static IP Configuration:  (only if not DHCP)
#DHCP=no
#IP=192.168.0.10
#GW=192.168.0.1
#NM=255.255.255.0
#DNS1=192.168.0.1
#DNS2=205.171.3.65
#
# Optional:
#specify time server host
NTP=pool.hest
#specify timezone
TZ=CET
#
#one of rt61sta.dat, rt73sta.dat, RT2400.dat, RT2500STA.dat, RT2570STA.dat, RT2870STA.dat (used by rt3070 as well)
WLAN_CFG=rt73sta.dat
#one of rt61.ko, rt73.ko, rt2400.ko, rt2500.ko, rt2570.ko, rt2870sta.ko, rt3070sta.ko
WLAN_LOAD=rt73.ko
#need to bring up device?
WLAN_UP=yes
#time to sleep while waiting for wireless association
WLAN_SLEEP=10

net.mounts

#
# Example net.mounts file to demonstrate auto-mounting
# of network shares
#
# note: that if you store a net.mounts file in /conf/ then it will ALSO
# execute on startup.
#

# Mount a windows file share (must be done by IP address)
#xmount //192.168.0.33/ShareName ShareName cifs

#  if your "guest" account is disabled, you must supply username and password
#xmount //192.168.0.34/ShareName ShareName cifs user=username,pass=password

# Mount an NFS share
#xmount 192.168.0.44:/nfsroot ShareName nfs

xmount //192.168.1.1/USB_Storage Share1 cifs
xmount //192.168.1.6/Videos Share2 cifs

rt73sta.dat

[Default]
CountryRegion=0
CountryRegionABand=7
WirelessMode=0
SSID=(put ssid here with no parenthesis)
NetworkType=Infra
Channel=0
AuthMode=WPA2PSK
EncrypType=AES
DefaultKeyID=1
Key1Type=0
Key1Str=0123456789
Key2Type=0
Key2Str=
Key3Type=0
Key3Str=
Key4Type=0
Key4Str=
WPAPSK=(put WPA key here with no parenthesis)
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

These should be all the custom files you need. The rest should come with or be auto generated by the various app packs. 

Note: I have had the best luck by putting the USB drive on the side USB port, and the wifi dongle on the back USB port. Sadly yes, it does seem to make a difference.

That said, this seems to be pretty reliably. I have used it for a few days in a row with no problems about freezing and no reboots. It even seems to turn “off” and “on” pretty reliably.

Leave a Reply

Your email address will not be published. Required fields are marked *