Archive for April, 2008

The Chinese think LA is a small city…

Friday, April 25th, 2008

I heard the best quote ever on today’s All Things Considered story on easing travel restrictions for Chinese tourists. Rob Schmitz reported that Chinese tour operator Vincent Bao may need to eliminate some destinations on his itinerary:

The last time he took a Chinese group to downtown LA, for example, Bao says they got off the bus, rolled their eyes, and said it reminded them of any number of small Chinese cities. They then demanded to be taken to Rodeo drive, so they could shop.

You know, before I went to China, I would have thought this was hyperbole — I grew up in a small town in the American Midwest, surrounded by undeveloped fields, so back then it was hard for me to imagine a place like LA being called small and unimpressive. Now that I’ve been around China, however, I’d have to say their assessment of America’s #2 city (by population) is just about right. Interesting thing is, I never really thought about it that way, until I heard this quote; it’s hard to see your own country through another countryman’s eyes. It’s also interesting to see all those dollars spent by Americans in Wal-Mart flow to China and come back home to Rodeo Drive, to be spent on high-end European luxury goods. I guess the weakening US dollar is good for something.

AutoGuitarHero

Wednesday, April 23rd, 2008

“I knew the only way I was going to beat my son Alex at Guitar Hero was to cheat”

-Michael ( January 1, 2008)

Oh man, this is so cool. A guy has created a circuit that takes in composite video, performs signal processing, and then correctly “hits” buttons on the guitar hero controller based upon what’s on the screen. He calls it the AutoGuitarHero AGH1000:

The AGH1000 is connected between the Wii’s video output and the TV or monitor’s video input. The Wii’s video output format is NTSC Composite Video. This means that all the information to properly drive a video monitor is present on a single wire – typically the yellow RCA connector. We used this composite video signal to generate signals that electrically press the correct notes and strum button at the correct time. The system consists of four sections – the Analog Processing Board, the Digital Processing Board, the Driver Board, and the Opto-Isolator Board.

Cheats like this are undetectable to the console…from the perspective of the code inside the console, he’s hacked The Matrix.

He’s posted videos of it working, schematics, and source code (VHDL oh noes! I loves mah verilog). Thanks for sharing Michael!

I get a hankering to do something like this every time I play Tetris at level 5 against the game AI on my DS (or when i play caustik). Someday, when I have spare time (…), I want gut a DS and put a frame buffer scraper on it and wire up its buttons to the GPIOs of a chumby. Actually, I want to hack up two of these, and configure them to play head to head. Then, people can submit AI engines for each hacked Tetris DS controller and we can have dueling user-submitted Tetris AIs. Using the DSes as the intermediate for the head-to-head game ensures that you are obeying “regulation” DS rules (how fast pieces can be turned, dropped, and order of piece generation) and running the image recognizing game AI on chumbys would put a limit on how much CPU and memory resources you can have. That might be the only way I could beat caustik at some form of Tetris…actually, nah, I think caustik could write a better AI engine than I can, come to think of it.

Drat.

Thanks to roastbeef for the link!

Sony XEL-1 OLED TV Teardown

Thursday, April 17th, 2008

I was at the Embedded Systems Conference today in San Jose, and I saw a presentation where a Sony XEL-1 OLED TV was torn down live. It’s a sweet piece of technology, the crispest screen I’ve ever seen. Unlike LCDs, the screen doesn’t develop weird artifacts when you poke at it or twist it. I first saw it at CES in January, and then I got to lay my hands on it ever so briefly while in Japan a couple weeks ago…so tempted to get one…and then, I run into it today, again, by chance: the speaker’s luggage was lost so the teardown presentation, originally scheduled for yesterday, got moved to the day I was at the conference.

Unfortunately, I failed to note who the speaker and sponsoring organization was so I can’t properly credit them; if someone knows I’d appreciate a note in the comments. Kudos to the speaker; a teardown is a gutsy thing to do in front of a live audience, as hacking is not an easy performance art. I had to demonstrate a certain soldering procedure once at a factory in China. I had over a half dozen girls, each of them expert solder jockeys in their own right, literally breathing down my neck as they watched every move (and mistake) I made. I think the fact that they were probably better at soldering than I was made it an extra-stressful live demonstration.

Fortunately, the speaker was kind enough to pass around the parts during the talk, so I managed to snag some nice hi-res photos of the insides of this device. I’ll share some of the better ones with you.

Most of the images are clickable to very high resolution versions.

Above is the back of the OLED panel. Across the bottom is a set of chip-on-flex TAB drivers; there is a Cyclone-II FPGA plus some DRAM memory. I count three switching regulators for bias generation, and a couple of beefy op-amps. The Fujitsu part is a 24 MHz 16-bit MCU with 384 kbytes of FLASH and 24 kbytes of DRAM. The local RTC is hooked up as well as the main oscillator. It also has a USB2.0 interface; the presenter seemed to think it was connected to the external USB port in the base unit somehow, although I can’t independently verify that. One thing that was noted during the presentation and by some of the show-goers is the excessive amount of thermal management material that was used in the display’s construction. Apparently, OLEDs suffer from “avalanche thermal failures”. I’m guessing from the name it means that once an OLED display gets hot beyond a certain point, it spirals into oblivion, burning itself out, so Sony took no chances and used all sorts of premium thermal compounds and heatsinks in the design of the device.

One interesting thing about the OLED display is that it’s actually transparent when in the off state. The amazing contrast ratio is due in part to this semi-soft, dark backing that’s bonded to the rear of the OLED display. You can see above where I have peeled the backing away to reveal what the actual panel looks like from behind. My guess is the dark backing is there to deal with light scattered away from the front, so that you can get that amazing 1,000,000 : 1 contrast ratio. It may also have some function in terms of distributing heat in the display. Since each OLED element is a tiny heater when it’s on, you can get very uneven thermal distributions on the glass depending upon the image pattern, so I could imagine that a thermally conductive backing is also important for reliability. However, the backing didn’t feel cold to touch like most highly thermally conductive compounds do, so maybe it is just an optical scattering material.

Above is a photo where I’ve held the panel in front of a desklamp, so you can see how transparent the OLED material is. It’s slightly less transparent than an undriven LCD panel.

Above is the mainboard inside the XEL-1. It’s chocked full of parts, and was covered with heatsinks. As you can see, there are multiple banks of DRAM on the board. The NEC D720101 is a USB host controller. The MB91305 in the upper left hand corner is 32-bit, 64 MHz embedded controller “most suitable for embedded applications, for example, DVD player, printer, TV…”. The Sony CXD9903GG appears to be an image formatter of some kind — perhaps performs image scaling, rate matching, filtering, etc. The NEC D61162AF1 is an impressive chip. It has four cores, an NEC VR5500 core running at 654 MIPS @ 327 MHz, a MIPS32 4KEc core running at 236 MIPS @ 196 MHz, and two audio CPUs, MIPS32 4KEm cores running at 236 MIPS @ 196 MHz. It also has a 2.6 GB/s DDR2 memory interface, a hardware MPEG stream transport engine, and a few other goodies alluded to, such as an AES/3DES processor, something involving Dolby, and a small 2-D graphics engine. Whatcha gonna do with all that junk, all that junk inside your trunk? I’ll tell you what I think they do with that in a bit.

In the top left, interestingly, is a 10W audio amplifier from TI (I can’t make out the part number in the photo exactly, so I’m just going by the speaker’s notes). It’s a 10W audio amplifier…that drives a pair of 1 W speakers. Again, that’s a lot of junk in the trunk…

Above is the backside of the mainboard. In the middle is a Realtek RTL8110SCL gigabit ethernet controller, and in the top right in a CXD9890 which I’m not quite sure what it does — there’s a forum on-line that speculates it is a video switch of some sort, which I might be willing to believe. There’s also a little Altera EPM3064A hiding out on the bottom … ahh, that brings me back in the day when I was an undergrad at the MIT Media Lab in the TV of the Future lab hand-packing logic into one of those things for the Cheops project…haven’t seen one of those little CPLDs in forever.

There’s one more circuit board in the XEL-1, which is a SmartCard reader board. There is Teridian 73S8024RN smart card interface IC on it. I was explained, by a very patient clerk in Akihabara, that smart cards are required by digital TV subscribers in Japan.

So, I promised I’d get to answering what’s up with all that junk in the trunk of the XEL-1’s mainboard. The answer becomes obvious when you compare it against the insides of a Sony Bravia KDL-20J3000 [Japanese language link]. The KDL-20J3000 is available only in Japan. I imported one a couple of weeks ago because I have developed a bizarre interest in Japanese TV hardware, even though I don’t watch any TV at all. The feature of the KDL-20J3000 that I found most interesting is that it has a built-in web browser; all of the high-end Japanese Bravia TVs have this feature and it’s not available in US Bravias. This is probably due in part to the fact that the web browser seems to be tied to a Japanese-language portal. A portal is necessary because there is no keyboard available on the remote; you must do all your browsing with a D-pad interface. I was curious about what they were using to make all that stuff go. Well, I wonder no longer. It’s that NEC D61162AF1; it certainly has the chops to run a little web browser, and then some!

Above is a photo of the Bravia TV mainboard. In the top middle is the NEC D61162AF1; to the left is the exact same Fujitsu 32-bit micro used in the XEL-1, and below that is the exact same Sony CXD9903GG also used in the XEL-1.

Above are some close-ups of the interesting parts of the Bravia mainboard. The audio amplifier is a TPA3100D2, a 20W class-D amp, probably the same, if not a related part to the one used in the XEL-1…

Above is the impedance testing coupons on the edge of the Bravia mainboard, featuring both differential and single-ended test lines. The Bravia PCB is pretty big, and there are a lot of high-speed signals running around on it, so it’s natural that they’d require controlled impedance. The impedance testing coupons are a method for testing if the PCB has adequate electrical integrity before putting components on it. Dunno why I’m attracted to test coupons. I also compulsively check out the scribe line test structures on the edges of silicon dies as well.

So what’s the XEL-1 doing with all that junk in its trunk? My guess is that the XEL-1 basically has the exact same image engine architecture as used in the Bravia line of TVs, but packed into that tiny case. I haven’t read about the XEL-1 having a built-in web browser, so it’s possible they just borrowed the whole core from the Bravia line but disabled the web browser feature. Unfortunately, I haven’t been able to actually use a XEL-1; all the times I’ve seen it are either in showrooms or as now, disassembled, in pieces.

Presumably, borrowing the high-end Bravia digital TV engine was all done in the name of time to market — use a volume design that’s proven, and just repackage it into a tiny board, and turn off the features you didn’t need. When you’re Sony and you’re charging $2,000 for a product, you can afford to do stuff like that!

Exit Review: Blackberry 8700c

Thursday, April 17th, 2008

I think it’s time to start a new kind of gadget review: the exit review.

Gadgets always seem to arrive on the scene with a lot of splash and hype, but rarely do you find an article telling you how the gadget fared in Real Life. The Exit Review is something I’m going to try doing every time I retire a major gadget of mine; the idea of it is to reflect upon how the gadget performed over its duration of service. Of course, reviews like this are all hindsight, so they don’t drive sales — which probably explains why nobody does them, because there’s no money to be made doing them. However, as a design engineer I think there are lessons to be learned through reflection, and as a consumer I believe that apples don’t fall to far from the tree — a good gadget maker will get my business again, and a bad one will never see another dime from me.

Recently, my 2-year contract with AT&T wireless expired, so I’m up for a new phone. It’s time to retire my trusty Blackberry 8700c. To set the mood for the exit review, you really must see pictures of how the device looks today.


Click on the photo above for a much larger version.


Laser engraving works great on the Blackberry.

Yes, I’m very hard on my gadgets. I think the cosmetic state of the phone was eloquently summarized by a saleslady in China who blurted, “This looks like shit!”, upon inspecting my phone. Yes, those are in fact two enormous cracks in the front screen protector (they aren’t in the LCD itself — just in the outer protective case), and I’ve been happily using my phone like that for months.

Those cracks are like badges of honor — a real phone keeps working despite being drop-kicked from four feet or being rattled around inside a suitcase against an electric shaver while being dragged over cobblestone streets in Italy. The cracks don’t interfere with the functionality of the phone; they are thin so they don’t distort the text of emails that I’m reading. It’s a testament to the reliability of the phone. This is in contrast to the Apple iPhone, which is definitely a pretty face with a glass jaw. I’ve seen plenty of iPhones with shattered screens, and most of them after a couple months of use look like a dented and beat up old tin can. That is, unless you put your iPhone into one of those ridiculous iPhone condoms that everyone seems to use. What’s with that, anyways? People pay top dollar for a good-looking phone that’s super-slim, and immediately stick it into a bulky and horrific-looking rubber condom.

The crazy thing is those obvious battle scars don’t tell half the story. Every one of those little black nicks on the side of the phone (not really visible in the photos above) is made by a drop onto asphalt. I sleep on a lofted bed, six and a half feet up, and many mornings I wake to find that I’ve kicked my phone off the bed onto the ground. So there’s about a hundred drops there. It’s been hurled across the room, drenched in sweat to the point where it’s condensed on the inside of the screen, thrown in the sand, sat on, stepped on and kicked across the asphalt. So it’s durable.

It’s traveled with me to over a dozen countries in Europe and Asia, and the Quad-Band GSM radio has worked great in every country that uses a GSM standard (I did have to unlock the phone). The data service works overseas as well, too, so I can get my email fix. When I’m in the remote regions of South China I think I grip my Blackberry like a safety blanket, holding on to my final bastion of familiar English text in an overwhelming flood of mandarin characters.

Significantly, it’s still on its original battery. The amount of charge the battery can hold is definitely reduced, but it still lasts for about a day and a half of regular use without needing a charge. You can see in the photo above that the phone’s still at 3/4 full at the end of the day.

The most impressive thing about it, however, is how many times the phone has crashed on me since I’ve owned it: zero. There have been about five times in two years where the radio gets confused, and I’ve had to pull the battery — fortunately, that bug happens only when I’m using the phone to browse the web, and the UI is still working so you know something’s wrong. Also, I’ve never had a bad web page crash the phone outright. I’ve had the phone seize for about twenty seconds on some really nasty webpages, but then the Blackberry OS kills the browser thread and the phone is back to normal.

Thus, even when the phone is struggling, the screen never freezes up: I have never been mislead into thinking the phone is okay when it’s actually just frozen on the home screen. This is the killer failure that plagues users of Treos or Microsoft Mobile powered phones. I hear so many stories of users routinely missing urgent calls and forgetting appointments because their PDA phone crashed on the home screen — so they were fooled into thinking they were lucky and having an unusually quiet day. Maybe you could think of missing calls for a day as an “involuntary vacation mode feature”…I call it bollocks.

It seems ludicrous to me that anyone would accept using a phone that crashes! First and foremost, a phone…is a phone. It makes and receives calls. It must do that, without fail.

And because the engineers at Blackberry built a phone that does just that — make and receive calls without fail — and then also has a good email client in it with a full keyboard, my next phone, currently on order, is a Blackberry Curve 8310. I’m a little worried about that fancy trackball in the middle; I can certainly see me writing an unfavorable exit review of that feature in a couple of years, but I’m willing to take that risk for a phone that I can trust to ring when a loved one or a friend is in trouble and needs my help.

Totally Cool NES Hack

Monday, April 14th, 2008

Now this is cool. I saw this on the Longhorn Engineer blog.

Here’s a link to the original article. Very cool! I love the high-quality woodwork. I wish I knew how to do woodwork like that!