Screen Power Control?


esavior

Still Fresh
Joined
Dec 2, 2005
Messages
11
I have been doing some extended work over the serial cable lately and I am starting to worry about the screen staying on for so long. Sure its just that black square but if you look at it you can tell its still getting power. Anyone know of a way to get my gp2x to cut off power to the LCD? I have been digging through the databook for maybe a hardware register but no luck so far.

Note: This has nothing to do with playing music -_- select doesnt make the screen go dark.
 
esavior posted on May 21 2006 at 08:45 PM said:
I have been doing some extended work over the serial cable lately and I am starting to worry about the screen staying on for so long. Sure its just that black square but if you look at it you can tell its still getting power. Anyone know of a way to get my gp2x to cut off power to the LCD? I have been digging through the databook for maybe a hardware register but no luck so far.

Note: This has nothing to do with playing music -_- select doesnt make the screen go dark.
LCD screens do not suffer brun in as they emit no light themselves they cannot burn a picure onto the screen. Light from a backlight passes throughit as though it would a stained glasswindow, sort of, and is not bright enough to damage anything. Hell this screens been on for about 4 months straight now on this pc. The only thing that is annoying about it being on all the time is as my other screen is much brighter and I didnt notice I wondered why my eyes were hurting lol. It was the 100% brightness setting was on. much bdetter set to 50 :p
 
Last edited by a moderator:
this code is mostley by robbrown

Code:
#include <stdio.h>
#include <fcntl.h>
#include <sys/mman.h>
#include <linux/fb.h>
#include <errno.h>
#include <unistd.h>
#define aa errno 
#define OFF_GPIOH		  (0x0837)
#define PWR_TFT_BIT		(2)
char buf[100];
 
void *trymmap (void *start, size_t length, int prot, int flags, int fd, off_t offset)
{
   char *p;
   int aa;
 
   sprintf (buf,"mmap(%X, %X, %X, %X, %X, %X) ... ", (unsigned int)start, length, prot, flags, fd, (unsigned int)offset);
   printf (buf);
   p = mmap (start, length, prot, flags, fd, offset);
   if (p == (char *)0xFFFFFFFF)
	  sprintf (buf,"failed. errno = %d\n", aa);
   else
	  sprintf (buf,"OK! (%X)\n", (unsigned int)p);
 
   return (void *)p;
}

 
int main(int argc, char **argv)
{
   int i;
   int memfd;
   unsigned short tfton, tftoff;
   unsigned short *mmCpuRegisters;
 
   /* Small initial delay, to let everything settle */
   for (i=0;i<100000;i++);
 
   memfd = open("/dev/mem", O_RDWR);
   if (memfd == -1)
   {
	  printf ("/dev/mem open failed\n");
	  return 0;
   }
 
   sprintf (buf,"/dev/mem opened successfully - fd = %d\n", memfd);
   printf (buf);
 
   mmCpuRegisters = (unsigned short *)trymmap(0, 0x10000, PROT_READ | PROT_WRITE, MAP_SHARED, memfd, 0xc0000000);
   if (mmCpuRegisters == (unsigned short *)0xFFFFFFFF)
   {
	  printf ("Failed to map CPU registers\n");
	  return 1;
   }
 
   tfton = mmCpuRegisters[OFF_GPIOH] | (1<<PWR_TFT_BIT);
   tftoff = tfton & (~(1<<PWR_TFT_BIT));


//		 mmCpuRegisters[OFF_GPIOH] = tfton;
		 mmCpuRegisters[OFF_GPIOH] = tftoff;

 
return 0;
}
http://vimacs.homelinux.org/tft%20on-off.zip
 
Whilst the screen doesn't suffer burn in effect, there are 2 other things to worry about. When the screen is lit continuously like that the background light is on all the while (has a limited life, and have you seen how much they cost for a standard LCD panel???), and the transistors that drive the LCD pixels also are being continuously switched (or held on) at screen refresh. Transistors only have a limited life as well!

It's more likely that the back light will expire before any of the LCD pixels or the transistors driving them.

Personally I would be looking for a way to switch off the screen.
 
This TFT screen has been on for 3-4 years all together. It did cost about the price of a computer when brought but I mean it hasnt crapped out yet. Shit reminds me. I left my screen upstairs on. Oh well :p
 
sam fisher posted on May 21 2006 at 03:21 PM said:
esavior posted on May 21 2006 at 08:45 PM said:
I have been doing some extended work over the serial cable lately and I am starting to worry about the screen staying on for so long. Sure its just that black square but if you look at it you can tell its still getting power. Anyone know of a way to get my gp2x to cut off power to the LCD? I have been digging through the databook for maybe a hardware register but no luck so far.

Note: This has nothing to do with playing music -_- select doesnt make the screen go dark.
LCD screens do not suffer brun in as they emit no light themselves they cannot burn a picure onto the screen. Light from a backlight passes throughit as though it would a stained glasswindow, sort of, and is not bright enough to damage anything. Hell this screens been on for about 4 months straight now on this pc. The only thing that is annoying about it being on all the time is as my other screen is much brighter and I didnt notice I wondered why my eyes were hurting lol. It was the 100% brightness setting was on. much bdetter set to 50 :p

Thats what I thought until I went to a store and saw how the screen saver has been burned into the desktop on a bunch of LCD panels (the screen saver is always on so customers know the computer is on). Maybe it went away after awhile but it was deffenetly burned into the screen.
 
Last edited by a moderator:
Maybe a shitty to powerful light. We dont ever turn this screen off. Simple as that. the pc is restarted once every couple of weeks. Fact is that nothing has happened to this yet.

Edit: also screensavers were made to PREVENT burn in on CRT monitors when the pc is idle so I have no idea whatyou are talking about, mate.
 
Well the screen saver was not really a saver of any kind just an ad.

It had a smallish square in the middle of the screen that was filled with random info and then it would fade to a new square, all the same size. That square was then burned into the desktop.
 
Back
Top