Under the Covers
Figure 10: The LinkTheater main board
(click image to enlarge)
To see what hardware was driving this system, I popped the cover off and took a look. Figure 10 shows the design is based around a Sigma Designs EM8620L Digital Media Processor. As the block diagram in Figure 11 shows, the processor is built around a 166MHz RISC core and includes pretty much everything needed to build a box with the LinkTheater's features.
Figure 11: Sigma Designs EM820L block diagram
The other components on the board are merely there to support the EM8620L and include a Buffalo WLI-MPCI-G54 Broadcom-based mini-PCI board radio, Realtek RTL8100BL 10/100 Ethernet PHY, VIA VT6212 - 4-port USB 2.0 Host Controller, RAM, and Flash.
As usual, I was also interested in what operating system was running on the LinkTheater, so I did a network port-scan of the box to see if I could find anything interesting. The scan showed some sort of web server running on port 2020, but attempting to access it with my browser returned nothing. I then tried snooping network traffic between the box and the server, which gave me an interesting User-agent string describing the browser/user interface on the Link Theater that filled in some missing details:
Syabas/05-03-050204-02-LTI-240-000/02-LTI (uCOS-II v2.05;NOS;KA9Q; Res624x416,HiColor; www.syabas.com)
Like the Viewsonic box I reviewed a while back, it looked as if the OS on the box was a variant of Micrium's uCos with Syabas suppling the browser. And now that I think back, the music images that appear on the LinkTheater are very similar, if not the same, as what I saw on the Viewsonic unit.
Next I tried looking into a firmware image that came on the CD, but it was password protected and I didn't feel like running afoul of the DCMA by cracking it. But while I was poking around, I noticed a copyright from LiteOn on one of the setup screens. A visit to their web site showed a networked DVD player that was similar to the LinkTheater and there were firmware images available for it.
I downloaded one, scanned through it and found traces of Linux, including a kernel version string of "2.4.17-uc0" and strings referencing "busybox" - a typical Linux program used in embedded devices. Finally, scanning through a long discussion thread turned up a message from a Buffalo engineer who mentioned that getting WPA support meant having to develop a supplicant in Linux. So we have some mixed clues as to what's running on the box and there could actually be multiple operating systems running, each handling different subsystems.
I was also interested in getting my Kuro Box to serve up content to the LinkTheater. This should have been fairly easy since the Kuro and the Link Station are close cousins. I scrounged up most everything I needed off the Internet and from a helpful LinkStation owner. I got as far as getting a main menu displayed on the LinkTheater, when I came across another program, wizd, that appeared to be an implementation of the required protocol.
I couldn't tell much about it because all the documentation was in Japanese, but it included source code so I was able to build and run it on my Kuro Box and my Macintosh iBook. Using wizd gave me a better looking display than my generic UPnP servers and since it included source code, it gave me the ability to customize it as I wished (Figure 12).