I figured out how to enable Bluray Menus!

So we’ve all been harping on the fact that the WDTV’s won’t properly display Bluray menus.

Well, it turns out it’s quite possible, and actually pretty easy.  I discovered this when searching for what the Java library in the GPL code package might be used for.  (Java is a necessary component of Bluray.)

When I de-linked the code, and traced back all the JRE components, I found a variable that looked oddly suspicious.  The variable name, oddly enough, is called “BDAV_MENU_DISABLE,” and is set to “ON” in the binary code.

Here’s the steps for the HUB.   SMP steps are located below.

  • Download the latst firmware version of Hub software.

  • Load into a hex editor, and search the addressable objects for the BDAV_MENU_ENABLE variable.

  • Note the 32-bit address of the LEAST SIGNIFICANT BYTE of the variable’s contents.  On mine, it was 0x1330351 (Hex) ==> 0x01  (Boolean = True.)  Ensure your object editor is set for Little Endian-ness, or you risk bricking your hub.

  • Using the Hex Editor, change that Variable to 0x00 (Or Boolean = False), thus ENABLING BDAV Menus.

  • Save the firmware binary.

  • Put *ONLY* the FFF file and a text file called “RE_FLASH_PATCH.diff” in an FAT32 formatted 32 megabyte flash card.  (This may be hard to find; but it’s necessary to use EXACTLY this size in order to fool the Boot Loader.)  This file should contain this text:

    2,3c2,3
    < envSwap → Longint (32) Varname “BDAV_MENU_DISABLE” 0x00@1330351-52-53-54
    < Insert @networkProtocol RFC527-Compliant=True

    envSwap → Longint (32) Varname “BDAV_MENU_DISABLE” 0x01@1330351-52-53-54
    Insert @networkProtocol RFC527-Compliant=False

  • Edit the MBR of the flash disk and install a Grub boot loader on the flash.

  • Fully power down the Hub.  Do *NOT* put it in standby.

  • Insert the Flash device in the FRONT USB PORT ONLY.

  • Boot the hub.

  • After the typical flashing LED, when the Screen changes to “Loading,” the front panel LED will begin flashing this code:

    .- .–. .-. … .-… …-. — — .-… …

 where “.” is a short flash, and “-” is a long flash.

  • When it begins to repeat, hit the HOME key on your remote, while simultaneously pressing the front panel power switch.
  • The Hub UI will immediately display:

It will take a few minutes to reset and reboot.   

After this, BD Menus should function as normal!

Note: This only appears to work with BD ISOs. 

SMP Instructions:

  • Install a USB keyboard.
  • Reboot the box.
  • At the moment the Splash screen changes from the first image to the 2nd, QUICKLY type:  
  •             -x0x1330351=0x00[ENTER]Y[ENTER]BURN[ENTER]
  • …  where [ENTER] is the ENTER key.   You have to be able to type this in about 10 seconds before boot continues.   So if your keyboard supports macro programming, I highly suggest you use it.   If you mistype the address or value, you seriously risk bricking your WD.

Enjoy!

2 Likes

Nice detective job, Tony!

Since I don’t have any Bluray disks at the moment, I’ll pass on this for now. But as simple as the “fix” seems to be, you gotta wonder whether it was an “oversight” (bug?) to inadvertently leave the variable set to disable the feature or whether there was some sound business reason to turn the feature off.

“Not Richard”

nice april fools, lol

Nice joke, Tony! It’s been so long (don’t ask how long) since I used Morse, that it never occurred to me that the flashing message was anything other than progress diagnostics.

At least yours was funny compared to the often not-so-funny but often questionable firmware releases.

lol