View Single Post
  #12 (permalink)  
Old 10-13-2007, 03:55 AM
phazed's Avatar
phazed
PPCGeeks Regular
Offline
 
Join Date: Oct 2007
Posts: 125
Reputation: 20
phazed is just getting started
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
NOT THE LCD... 95% sure

In order for this to make sense you will need to know some things that make an LCD operate, so bear with me.

A LCD (passive or active matrix) only change state when the software issues a screen update or refresh. For instance, if you press up and down on your home screen, the software will fill the Display Controller's Buffer to "update" the changes by the user.. in this case to reflect that you are highlighting your calendar, live search, the Start Menu, or whatever else you manipulate. Otherwise, if there have not been any changes on the screen.. the software doesn't keep refreshing the LCD... there is no need to waste battery and processor time in doing so. This is the basis for saving power because the screen communication can stop.

First is the Display Controller. The Display controller is a microprocessor that directly interfaces with the LCD physically in order to switch each individual pixel independently. This is (generally) integrated onto the Screen itself. The Display Controller has a ribbon cable that connects to the Qualcomm MSM7500's MDDI (Mobile Display Digital Interface). That is... the 400MHZ ARM-6 Main Processor essentially has a Video Card built into the same chip. Don't believe me? Check out this post: http://forum.ppcgeeks.com/showthread.php?t=7991 and you can verify visually the Qualcomm processor model. Then go to Qaulcomm...
Qualcomm MSM7500 Overview: http://www.cdmatech.com/products/msm...t_solution.jsp
Mobile Display Digital Interface (MDDI):
http://www.cdmatech.com/technologies/mddi.jsp

I have worked with a lot of LCD passive and active matrix screens (I'm an Electronics hobbyist for fun, and a Union Electrician for work) and I am 95% positive it is a software issue. It is definitely not because of a weak screen, and this is why...

When my ppc6800 is fully charged I don't have any problem with the screen changing colors.. it's only when its at around 30-40% that it starts to do this.

Also, I made a PowerPoint Presentation (http://forum.ppcgeeks.com/attachment...1&d=1192262056)with a white background and 7 frames with different letter. If I play this slide show and press buttons/tap the color shift doesn't occur. It seems the processor is not put into hibernate or power save while having animation. So it's not hardware.

But why does this happen?
This is because either:

1. The MDDI enters a Hibernation mode when the image isn't changing, saving battery power. When the MDDI is needed again it "wakes up" and causes this color change. This reinitialization re-connects the Processor to the Display Controller. There is a block of machine code that runs to do this.. and this is where the problem could be. It should be fairly simple for HTC to fix, as I know there isn't a problem with the LCD/Disp.Controller.

2. As power decreases the processor goes into power save mode, which will generally decrease the communication rate between the Display Controller and the MDDI. producing this effect. Again.. it's all programmed in there(ROM).. Maybe an option to turn this feature off or on at the expense of battery? Or fix the Low Level programming?


phaZed
Attached Files
File Type: zip PowerPoint White Background.zip (23.7 KB, 3 views) Click for barcode!
Reply With Quote