WDLXTV-Live – The extreme upgrade

WDLXTV-Live is a souped up unofficial firmware for the Western Digital WD TV Live. It is based off of the 1.01.24 firmware, but with many extra features. This is a permanent flash, just like an official upgrade. It enables a wide range of extra functionality which is missing from the official firmware, such as bittorrent, webserver, NZB, SSH, FTP, NFS, etc. I’ve done my best to make everything as easily configurable as possible, but it does require a little bit of work on your own. All of the settings are located in S00custom-options, which is included in the zipfile of every release. Open it in a text editor and peruse your options. There is also a README included, which contains default passwords and other information, you are highly suggested to read it. If you need help there is a forum link at the bottom of the page. If you are a power user then you’ll be able to harness your Linux skills and fly off into the world of homebrew, wondering why you delayed any longer than you did.

Features included in WDLXTV-Live:

  • Movie Sheets
  • external dvd drive capability with cd-manager-0.7
  • Web Server
  • Python, Perl, and PHP
  • Deluge Bittorrent client w/ web interface
  • nzbget NZB downloader w/ web interface
  • SSH server
  • Telnet server
  • FTP server
  • NFS share mounting in local folders and Network Shares
  • sshfs for mounting a remote server as a local directory
  • curlftpfs for mounting remote FTP server as a local directory
  • unionfs for consolidation of multiple directories/locations/servers/etc as one entity
  • patched samba configuration for better detection of Windows shares
  • user customizable background & screen saver images (3 backgrounds to choose from)
  • extra subtitle size options of 44, 48, 50, 56, 60, 64, 68, 72, 76, & 80
  • selectable 4/8/10/12/21 video thumb view (see Changelog)
  • selectable 4/6/8 file list view (see Changelog)
  • sleectable 10/15 photo/music thumb view (see Changelog)
  • ext2 & ext3 filesystem support ** (un)officially supported now **
  • device hotplugging
  • all media (including network shares & optical devices) can be viewed in ‘All Videos’
  • USB Hub support
  • mounting of app bin packs (if available) at boot, for plugNplay addtional functionality
  • mounting of OSD overlay (if available) at boot, for full theming
  • user customizable init.d scripts for full os customization
  • emergency flash recovery
  • many, many additional system binaries and related tools for power users.
  • probably more I’m leaving off…

NOTE: I am not responsible for anything crazy that might happen during the process of flashing this firmware. Nothing should go wrong and everything should work accordingly, BUT if it does…

To flash this firmware:

  • Place wdtvlive.bin on a memory stick along with wdtvlive.ver and insert it into your WDTV Live.
  • When asked if you want to upgrade your firmware, say yes.
  • The WDTV Live will reboot and after several minutes the whole flashing process will complete and reboot again.
  • Upon successful flash you will see WDLXTV_Live in the about screen of system settings.
  • The firmware no longer needs to be on anything attached to the WDTV Live.
  • Downgrade instructions are always provided at the bottom of the README which is included in every release’s zip.

Now you should note that cosmetically the only thing you’ll notice different after installing WDLXTV-Live is the background changing, and if you have list view selected the default is 8 instead of 7. Well you might also notice that your windows machines sharing folders show up better too, since I’ve made a small change there too. The power of WDLXTV-Live though lies in customizing the features by using the config file I provide in every releases zip, called S00custom-options. S00custom-options is a text file which contains many options (suprise) which may be enabled/disabled. You use S00custom-options by placing it at the root of a device, then power cycling your WDTV Live with the device attached. The changes go into affect after a single power cycle, then S00custom-options can be removed until you need it again. The forums are an excellent source for advice and I highly suggest you check them out. The official support forum is forum.wdlxtv.com.

In addition if there are any app.bin packs, containing self sufficient application packages, on a boot drive they will be loaded. There is currently a transmission BT app pack and a couple others if you check the forums. Just like app.bin packs, OSD overlays are possible as well, which allows full OSD theming…this is for future development. If you find you don’t like the firmware you can downgrade to an official version using instructions found at the wdtv firmware hacking wiki.

Notes/Limitations:

  • DO NOT remove any drive containing opt.bin, osd.bin, or app.bin files (while WDLXTV-Live is running) as it will cause the system to become unstable

  • To see xfs/reiserFS/NFS/dvd mounts you must have an officially supported (fat, ntfs, hfs, hfs+) drive attached, unless using cifs-interceptor.
  • net.mounts are where you can place NFS/CIFS/etc shares that you would like loaded at boot.
  • more notes to come probably…

Changelog:


0.4.1.9-6
* includes derlinuxers index.php tweaks for dynamic webplugin loading into webend
* derlinuxer's S01ntp patch for static IP
* fixed /usr/bin/bandwidth_test
* fixed various osd backgrounds
* fixed USB_POWER_OFF=1 no osd.bin bug
* optimized wdlxtv.watch
* new /conf/ monitor
* logos for youtubeHD, shoutcast, & easynews in switchers
* new now playing overlay

0.4.1.9-4
* updated wireless-tools / fixed wireless adapters
* better detection of preferred wireless network
* updated live365 shoutcast proxy
* included eiri (allows remote control remapping and command execution)
* tweaked live365 pages
* updated wireless drivers to 1.02.19 version (no extra chipset compatability)
* fixed net.agent (WDLXTV-G2)
* updated NTP with static IP
* included iperf-2.0.4-5 & choekstr's bandwidth_test script
* optimized various scripts

0.4.1.9
* included Zoster's UMSP-0.1.2 media server (WDLXTV-Live)
*** includes Revision3, Shoutcast, Apple Trailers, BBC podcasts...
* included Mr_Miyagi's Webend (WDLXTV-Live)
* WDLXTV_LIVE-MINIMAL now includes lighttpd/php5-cgi/perl (default disabled)
* YouTube-switcher enabled (WDLXTV-Live) (requires LIGHTTPD=ON)
*** YouTubeHD : D (see S00custom-options) (WDLXTV-Live)
*** included rezmus EasyNews-proxy beta YouTube-switcher (WDLXTV-Live)
* patched several issues with WPA2PSK (wdlxtv-G2)
* fixed Deluge state dir (WDLXTV-Live)
* included live365-switcher (WDLXTV-Live) (requires LIGHTTPD=ON)
*** rezmus ShoutCast-proxy live365-switcher included (see S00custom-options)
* included fixed russian/italian/german translations
* fixed cifs-interceptor with NFSD=OFF (WDLXTV-Live)
* added rt2570, rt73, rtl8187 wireless drivers (WDLXTV-G2)
* fixed double mounts with media library disabled
* included ReMARKables netherlands translation (see S00custom-options) (WDLXTV-Live)

0.4.1.8
* fixed Samba (windows) exported shares & auto exporter
* added YouTube key saver (WDLXTV-Live)
* fixed cifs-interceptor (WDLXTV-Live)
* USB_POWER_OFF=1 works now (attached devices off during standby)
* CODEPAGE & IOCHARSET are used in mounting for non-english filesystems
* disabled ETH_xx_ACTION(s), replaced with POWER_xx_ACTION(s)
* re-included missing lighttpd & enabled lighty-enable-mod
* included mod_magnet & mod_webdav for lighttd
* tweaked 10,11,12 item list views
* included liblua5.1-0 (5.1.4-5)
* Switched NTP to default OFF (WDLXTV-G2)
* various script tweaks & bug fixes
* added ftp & zip binaries

0.4.1.7-1
* swapped smbtree back to matching version to fix network shares (WDLXTV-Live)
* added missing pam modules for ftp server (WDLXTV-G2)

0.4.1.7
* WDLXTV_G2 now available for WDTV HD Gen 2 devices
* added better system On/Off detection for turning off/on USB bus
* patched to show subtitle delay without audio channel info (thx rezmus)
* Deluge updated to 1.2.1-1
* included nfsd (kernel) NFS server
* new auto-export mode for Samba & NFSD servers
* Samba binaries from official fw 1.02.14
* Samba shares can be password protected
* NTP works with static IP & wireless now
* included all available NLS/codepage modules (see S00custom-options)
* XFS and ReiserFS drives now supported
* rezmus patch for custom fonts in OSD themes
* online-delayer now pings self instead of gateway
* Deluge auth file located at /conf/deluge.auth
* list.watch is now wdlxtv.watch
* fixed a few lib symlinks

0.4.1.0
*** Include wdtvlive.fff with wdtvlive.bin and wdtvlive.ver when you flash ***
* resized youtube home dark box image to fit
* changed windows resolve order back to official FW order
* added zoster's 11/12 & bonus 10 item list views
* included techflaws corrected german UI translation
* added 2 additional video info overlay options (see S00custom-options)
* fixed smbd zombies in ext3-boot-live
* ssh/scp/sftp clients changed to openssh binaries
* included ssh-copy-id for passwordless login from wdtv-live
* /sbin/usb.power.off and /sbin/usb.power.on turn off/on usb bus power (thx pibos)
* fixed openssl cert/private symlinks
* full md5sum & netstat included
* updated S00custom-options
* updated libxml, libssl, libz, & libcrypto
* moved around libs to mirror debian-wdlxtv-live
* added /etc/screenrc & /etc/ssh/ssh_config & /etc/ssl/openssl.cnf (bind mount over for custom)

0.4.0.0
* now based on official firmware 1.01.24
* fixed firmware signature byte order == seamless upgrade from official
* widened various youtube views
* fixed optical drive double mounts
* added www-data to cdrom group
* fixed php-cgi arguments
* fixed smb.conf bug

0.3.4.5
* fixed app.bin loading from devices with space's in label
* streamlined custom smb.conf usage
* additional (non offficially mounted) devices are now added to smb config
* added ssh-public-key to display public key
* wdlxtv-live-minimal now available (no php/python/perl/nzbget/deluge/lighttpd)
* updated net.mounts with curlftpfs & sshfs examples
* firmwares are now fully (48B) signed

0.3.4.4
* modified /sbin/suspend (stops all startup scripts)
* added /sbin/resume (reverse of suspend)
* rarfs included (not automagic atm -- or perfect)
* unrar-seek included
* disabled cd-manager (optical drive access option in UMSP)
* removed busybox blkid symlink
* fixed mount.watch extra umounting / NOUUID bug
* ethernet actions order enforced

0.3.4.3
* added real PATH export to /etc/profile
* modified timezone export in /etc/profile
* ethernet actions now available

0.3.4.2
* fixed plug.watch bug dealing with multiple partition devices
* fixed mount.watch bug causing duplicate NOUUID devices to show up
* fixed HFS device mounting issue
* Hub support *should* be pretty spot on
* fixed custom-language-XX input, custom OSD translations now load
* can supply customized smb.conf file (include at root of attached device-experimental)
* fixed FTP server 425 error issue (add -H flag)
* fixed sshfs & outgoing scp (use public key auth)
* fixed timezone (added export to shell profile)
* enabled outgoing ssh identity
* corrected typo in lighttpd server.upload-dirs location
* updated ntfs-3g-2010.1.16
* fixed chsh

0.3.4.1
* ntfs-3g-2009.4.4-1 included (power users test at own risk)

0.3.4
* using Paragon NTFS driver, NTFS devices *should* now mount correctly (finally)
* curlftpfs-0.9.2-1 included
* openssl-0.9.8k-7 included
* fixed nzbget webui images not showing up
* Deluge state directory enabled (requires power cycle after changing torrent watch dir)

0.3.3.1
* fixed hotplug script for proper app/device mounting
* changed smb.conf resolve order to: lmhosts host wins bcast

0.3.3
* fixed nzbgetweb default upload dir to match default nzbget watch dir
* fixed online.delayer to accomodate space at end of nameserver line
* rezmus's audio/video info & youtube header dmaosd patches
* widened generic thumbs selected title
* libfuse2-2.8.1-1.1 included
* strace-4.5.19-1 included
* sshfs now works [maybe ;) ]
* gettext-0.17-8 included for custom translations
* more libs are md5'd / dupe files symlinked for space
* HFS devices are now fsck'd before mounting to fix r/o issue
* experimental ext4 support (mounted as ext3)
* possible NTFS fix for app.bins
* lighttpd server.upload-dirs now writeable
* php5-cgi error logging enabled /var/log/php5

0.3.2
* fixed group/shadow/passwd to enable lighttpd
* fixed /etc/init.d/S96deluge to enable deluge
* fixed /etc/init.d/S96nzbget to enable nzbget
* fixed deluge config persistence
* unrar-nonfree-3.8.5-1 included
* actually included par2-0.4
* lighttpd can be disabled (config_tool -c LIGHTTPD=OFF)
* deluge webui can be disabled (config_tool -c DELUGEWEBUI=OFF)
* Merry Christmas!!!

0.3.1
* fixed resolv.conf symlink for DNS

0.3.0
* Rezmus USB-power-on-suspend patch
* fixed video_resume_points_table typo, should be video_resume_point_table
* cifs-interceptor entries now have optional 3rd field for mount options
* /conf/hosts for custom host definitions & fixed resolver for hostname lookup
* possible NTFS hub fix
* Day's S90net.mounts fix
* NTP fix for DHCP users
* 3 background options, look in S00custom-options for details
* crazymount & plug.watch utilize mdev
* working ldconfig & ldd + chsh & showmount included
* all init.d's are disabled during upgrade
* debian-wdlxtv upgraded to Squeeze
* live filesystem booting now working : D !!!!!!! (root filesystem must be in .rootFS to pivot)
* disabled online update procedure
* lighttpd-1.4.25 webserver w/gd included (default enabled)
* Deluge-1.2.0-rc4 Bittorrent client included (w/ webui) (default disabled)
* nzbget-0.7-r357 & nzbgetweb-0.1.4-t5 include (default disabled)
* hellanzb-0.13 included (default disabled)
* pure-ftpd-1.0.24 w/TLS included (default enabled)
* perl-5.10.1 included
* python-2.5.4 included
* php-cgi-5.2.11-2 included
* screen-4.00.03jw4 included
* unrar-free-0.0.1 included
* par2-0.4 included
* wakeonlan-0.41-10 included
* bash-4.0-4 included
* sshfs-2.2-1 included
* unionfs-0.23.hg.20090611-1 included

0.2.2.1
* fixed video playback ; )
* enabled persistent video_resume_points_table (if exists on device at boot)

0.2.2
* fixed default 12 thumb browse
* re-widened youtube related videos results
* ext3-boot-live now identifies itself better
* debian-wdlxtv-live now in beta (for gimme-the-dam-kitchen-sink-folk)
*** thanks to Bob for inspiration and initial work with debbootstrap
* better pivot & cleanup with root.bin
* cifs-interceptor mounts can now be NFS/cifs/etc instead of only NFS

0.2.1
* fixed net.mounts execution on interface up
* fixed 8 item list view

0.2.0
* firmware now based on official firmware 1.01.11!!!

0.1.9
* fixed bug in cifs-interceptor preventing CIFS from mounting
* added in code to pivot to ext3-boot-live firmware IF root.bin is located on /dev/sda1

0.1.8
* crond included (to enable: config_tool -c CROND=ON) (to edit: crontab -e)
* rearranged net.mounts & ntp execution
* NFS now mountable under network shares!!!! (requires workaround--http://b-rad.cc/cifs-interceptor)
* shells check for /conf/profile and load if exists
* actual original screen_saver & background images included now

0.1.7
* enabled upload on 'fixed' ftp server ;-)
* disabled ntp by default (cause of info bar issue) [to enable: config_tool -c NTP=ON]
* included original background and screen_saver images
* update included dox

0.1.6
*** !!! PERMANENT FLASH NOW !!! ***
* fixed ftp server
* tweaked NET_MOUNTS_DELAY implementation
* added hostname configuration & ntp (config_tool -c DEVICE_NAME=)
* added ntp-4.2.4p7 with timezone (config_tool -c TIMEZONE=)

0.1.5
* set ftp root to / (allows editing of /conf files)

0.1.4
* add delay for net.mounts execution (config_tool -c NET_MOUNTS_DELAY=10 [or 5/20/13/etc])

0.1.3
* patched busybox so CIFS/SAMBA shares mount correctly in 'Network shares'
* rsync-3.0.6 included

0.1.2
* fixed memory leak with smbtree
* better workaround for net.mounts

0.1.1
* actually unified background images
* workaround for net.mounts
* root password is blank (use pw-fix.app.bin to reset)

0.1 - initial release
* includes busybox-1.14.1, e2fsprogs-1.41.9, portmap-6.0, dropbear-0.52, hdparm-9.27, usbutils-0.86, wget-1.12
* includes cd-manager-0.7 for optical drive functionality
* telnet, ftp, & ssh servers enabled (each can be disabled)
* net.mounts can exist on attached device at boot or /conf for automagic mounting of NFS,SAMBA,whatever
* root password is: wdtvlive
* includes wdlxtv-0.5.7.1's mount.watch, list.watch, plug.watch, xmount, & crazymount
* app.bin, osd.bin, & opt.bin loading
* OSD tweaks (refer to S00custom-options for how to change views)
* added selectable 4, 6, 8 item list view (default=8)
* added selectable 4, 8, 12 thumb browse view (default=12)
* added 15 thumb view to music/photo (default=10)
* increased font size of title to 32 in thumb view
* filename listings are much wider
* widened YouTube related videos viewboxes
* unified background images to villa_bg.jpg (Villa_bg.png, villa_bg.jpg, villa_bg.png)
* one compiled font replacement may be stored as /conf/custom-translation.mo, it will overlay the first asian font
* independant welcome_logo and screen_saver
* Custom background and screen saver images can be supplied at boot
* requires villa_bg.jpg (maxsize=524288) or screen_saver.png to exist on a device attached at boot
* original screen_saver & welcome_background are supplied, in case you desire them.
* .addMounts functionality for media library scanning (Experimental--work in progress--do not use)
* .thumbDB functionality for persistent thumb cache
* .keepalive functionality for disabling of device spin down on device standby (possibly broken)
* Ethernet is kept alive during standby (look at S00custom-options to disable)
* users are enabled (experimental)
* custom USB slot icons can be enabled (look at S00custom-options)
* default Optical Drive thumb
* changed background to http://oliuss.deviantart.com/art/Hardwood-Night-88299626



Downloaded over 150,000 times!

Full Version: ** WDLXTV_Live-0.4.1.9-7 **
Minimal Version (no python/Deluge/nzbget): ** WDLXTV_Live-Minimal-0.4.1.9-7 **

NOTE: This is ONLY for the WD TV Live, not the original WDTV HD or the more recent WDTV HD Gen2. If you are looking for a custom firmware for the original WDTV check here. If you are looking for a homebrew firmware for the WDTV Gen2, well then make a donation with 'WDTV Gen2 firmware development fund' in the comments and I'll whip something up whenever the bounty is high enough ;)

Report any problems to the 0.3.X thread at forum.wdlxtv.com.

For instructions on Deluge BT and nzbget NZB downloader click here.

For instructions on custom OSD translations click here.


I've spent a tremendous amount of time hacking the WDTV firmware, so if you appreciate my efforts please donate a little something using the link above : ) Thanks & enjoy.