O caso do monitor Illusion (ou Como a economia de energia pode causar dor de cabeça)

O Caso do Monitor Illusion… ou Como a Economia de Energia Pode Causar Dor de Cabeça

Renato B. Santiago

2005

\begin{table}
\centering
\begin{small}
\caption{Legenda da Tabela: tabela que resume o critério de correção do relatório.} \label{Tabela1}
\begin{tabular}{cc}
\hline
Critério & Pontuação\\
\hline
Introdução & $2,00$ \\
Fundamentos teóricos & $1,50$ \\
Metodologia & $1,50$ \\
Resultados/Discussão & $3,00$ \\
Conclusão & $2,00$ \\
Total & $10,00$ \\
Total Experimento & $0,7 \times 10 = 7,00$ \\
\hline
\end{tabular}
\end{small}
\end{table}

Publicado na revista Antenna Eletrônica Popular
Vol. 126, Nº 2 – Ref. 1203/2006

Sou possuidor de um monitor de vídeo de marca Illusion. Após alguns anos de uso, o mesmo passou a apresentar um defeito um tanto estranho ao meu ver. Em busca de uma solução para o problema, houve grande dificuldade em conseguir informações sobre o referido monitor. Por isso disponibilizo aqui um breve relato de como o problema foi solucionado e algumas informações que foram levantadas para tal.

Espero que as informações aqui contidas ajudem outros profissionais que porventura venham a se deparar com um monitor
semelhante.

1. O Monitor Trata-se de um Monitor à Cores de 14 polegadas. A marca estampada na parte frontal, logo acima da tela, é “Illusion”, mas infelizmente foi impossível saber se isso é realmente um fabricante ou apenas uma marca inventada pelo fabricante real usada apenas nesse monitor. O modelo é RH-1464.

É um equipamento que já possui seus 6 ou 7 anos de vida. Nesse meio tempo aconteceu de queimar o transistor de saída horizontal, o qual foi substituído por um BU2508 comum e que cumpre corretamente suas funções até os dias de hoje (final de 2005).

2. Os Problemas Há cerca de 3 anos notei que ao ligar o computador não mais surgia a tela de inicialização: a primeira imagem a aparecer já era a da interface gráfica do Linux. Não sei quanto tempo ele ficou dessa forma, pois geralmente eu ligava o computador e ia tomar um café enquanto o sistema operacional era carregado e, quando eu retornava, o carregamento já se encontrava concluído e tudo então transcorria normalmente.

Ao notar o problema, fiz alguns testes de forma a determinar exatamente o que acontecia e a conclusão foi de que o monitor só funcionava corretamente quando a placa de vídeo enviava a imagem com resolução de 800×600 pixels. A tela de texto do DOS, 640×480, 1024×768??? Nada disso funcionava. Quando a placa de vídeo enviava qualquer imagem com resolução diferente dos 800×600 pixels, o monitor apagava e seus LEDs frontais passavam a piscar indicando \textit{stand-by}.

Mas como pode? Estamos acostumados à defeitos que surgem À PARTIR de determinado ponto de funcionamento: antes dele o equipamento funciona corretamente e ao ser ultrapassado aquele ponto, o defeito \textit{mostra sua cara}. Seria de se esperar que, por exemplo, o monitor funcionasse apenas com resoluções \textbf{maiores} que 800×600, mas não. Ele SÓ funciona em 800×600!!! Mas isso não é possível!!! É inconcebível!!! Não pode!!!

Antes que a loucura tomasse conta de tudo, partí para a busca da causa do problema e assim, da solução. Pensei comigo:
“\textit{calma, tudo funcionava perfeitamente há algum tempo; é só um componente defeituoso; o monitor
está “quase” funcionando; deve ser uma besteira qualquer…}”. E assim, imbuído de novo ânimo e cheio de uma coragem que então tomavam conta de mim, partí rumo ao novo horizonte que me esperava!!!! Rumo à um novo tempo, onde cada elétron poderá seguir seu caminho e onde cada monitor mostrará sua imagem
vinda diretamente da alma de cada CPU!!!

{\itshape
Humm! Acho que ando lendo muitos livros de aventura….}

3. Reconhecendo o Terreno Antes de abrir o monitor procurei no Google informações sobre ele e, para minha decepção, existem duas possibilidades: ou é um monitor muito bom que nunca apresentou defeito ou muito pouca gente, praticamente ninguém no mundo, possui um desses. Não existia simplesmente nada. Ou melhor, encontrei duas pessoas fazendo perguntas sobre esse monitor em fóruns, mas respostas? Nada!!! Inclusive, pude ajudar um deles, cujo monitor estava parado há dois anos esperando para descobrir o código do transistor \textbf{Q403}, um \textbf{2SK2134}. O monitor dele já está em pleno funcionamento. Também tentei procurar por defeitos semelhantes em outros monitores e outra vez: NADA!!! Pois é, dessa vez eu estava
sozinho!

Como não tenho muita experiência com monitores, eu sabia que aquilo ia demorar. Coloquei o monitor na bancada e o abri. Fiz as verificações de praxe: nada enegrecido, soldas em bom estado, nenhum mau contato, tensões básicas corretas. Como eu só poderia trabalhar no monitor cerca de uma ou duas horas por dia, dei por encerrada aquela primeira investida e fui dormir pensando “É, vai demorar mesmo”.

No decorrer do outro dia que se seguiu, busquei entender o problema mais a fundo, pois não fazia idéia de por onde começar.

Procurei pensar de forma lógica: O monitor entra ou sai do modo de stand-by quando a resolução é modificada. Sendo assim, eu precisava descobrir duas coisas:

  1. Que mudanças ocorrem no sinal enviado pela placa de vídeo quando a resolução é modificada?
  2. Que tipo de sinal a placa de vídeo envia para o monitor quando o computador deseja que ele entre em \textit{stand-by}? Sim, porque o computador tem o poder de ordenar ao monitor que ele entre em modo de economia de energia.
Sobre a primeira questão, o que podemos deduzir à primeira vista é que ao mudarmos a resolução, modificamos as freqüências de sincronismo horizontal e vertical. Eu também deduzi, erroneamente como fui descobrir depois, que de alguma forma, o monitor precisava saber a resolução enviada pela placa de vídeo, para que pudesse trabalhar corretamente.

Sobre a segunda questão, eu precisava descobrir como a placa de vídeo dizia ao monitor para que ele entrasse em \textit{stand-by}. A grande dúvida era a seguinte: até onde eu sabia naquele momento, os dados enviados para o monitor eram de natureza totalmente analógica e se referiam apenas à imagem a ser reproduzida. Como então a placa de vídeo tinha a capacidade de desligar um monitor? Haveriam também sinais digitais envolvidos?

Ao retornar para casa, me pus a pesquisar sobre ambos os assuntos e descobri algumas coisas interessantes, as quais descrevo a seguir.

3.1. (S)VGA e suas particularidades Em uma busca preliminar na Internet, não conseguí nada que dissesse algo sobre as mudanças que o sinal VGA sofreria quando da mudança de resolução, além é claro das óbvias e já citadas mudanças nas freqüências de sincronismo. Como nada encontrei na literatura, fui verificar eu mesmo, afinal eu dispunha dos equipamentos necessários para tal. Nas medições, feitas na saída da placa de vídeo de um velho computador IBM modelo P90, com placa de vídeo onboard, encontrei os seguintes sinais de sincronismo, para as diversas resoluções:

{\centering
Tabela 1 – Sinais de Sincronismo Coletados na Saída (S)VGA da Placa de Vídeo de um P90-IBM
\par}

\begin{center}
\tablefirsthead{}
\tablehead{}
\tabletail{}
\tablelasttail{}
\begin{supertabular}{m{1.495cm}m{6.381cm}m{6.46cm}}
~
&
\centering{\bfseries Sinc. Horizontal\newline
Pino 13 Conector VGA} &
\centering\arraybslash{\bfseries Sinc. Vertical\newline
Pino 14 Conector VGA}\\
\raggedleft{\bfseries DOS} &
\includegraphics{imagens/horizontal_dos.png} &
\includegraphics{imagens/vertical_dos.png} \\
\raggedleft{\bfseries 640×480} &
\includegraphics{imagens/horizontal_640x480.png} &
\includegraphics{imagens/vertical_640x480.png} \\
\raggedleft{\bfseries 800×600} &
\includegraphics{imagens/horizontal_800x600.png} &
\includegraphics{imagens/vertical_800x600.png} \\
\end{supertabular}
\end{center}
Vale dizer que os períodos e dimensões das formas de onda são aproximados. O que importa para nós é apenas a diferença entre os sinais e, observando a tabela acima, com os sinais recém medidos, raciocinei triunfante:

\_Ahhh, peguei!! A polaridade dos sinais é invertida dependendo da resolução. Muito espertos esses engenheiros!!! Mas
não contavam com minha astúcia!!!!

{\itshape
Mais tarde eu descobriria que eu não era tão astucioso assim…}

3.2. Padrão VESA Como o estimado leitor já deve ter percebido, o quebra-cabeças ainda não estava completo. Ainda precisava descobrir como a placa de vídeo consegue colocar o monitor em modo de economia de energia. Desta vez, quem me salvou foi o manual de instruções do monitor (minha avó sempre disse para guardarmos o manual do equipamento). Na seção chamada “Power Management” (Gerenciamento de Energia), encontrei as seguintes informações, as quais tomei a liberdade de traduzir e transcrever aqui:

Este monitor trabalha com os padrões de gerenciamento de energia designados pela \textit{Video Electronics Standards Association (VESA)} e/ou pela \textit{United States Environmental Protection Agency (EPA)}. Este recurso é projetado para economizar energia elétrica através da redução do consumo.

Esta função é ativada por um programa utilitário do sistema operacional ou do Windows. Ela desliga a tela do monitor e também desliga ou muda a cor do indicador de {\textquotedbl}ligado{\textquotedbl} (\textit{power indicator}) do monitor.

\begin{center}
\tablefirsthead{}
\tablehead{}
\tabletail{}
\tablelasttail{}
\begin{supertabular}{m{1.6539999cm}m{1.178cm}m{1.31cm}m{1.31cm}m{2.0509999cm}m{1.6539999cm}m{2.501cm}}
\centering{\bfseries Mode} &
~
&
\multicolumn{3}{m{5.071cm}}{\centering{\bfseries Signal}} &
\multicolumn{2}{m{4.355cm}}{\centering{\bfseries Power}}\\
&
\centering{\bfseries Cable} &
\centering{\bfseries H-Sync} &
\centering{\bfseries V-Sync} &
\centering{\bfseries Video} &
\centering{\bfseries Indicator} &
\centering\arraybslash{\bfseries Consumption}\\
\centering{\bfseries ON*} &
Attach &
Yes &
Yes &
Actived &
Green &
{\textless}= 80W\\
\centering{\bfseries Stand-by} &
Attach &
No &
Yes &
Blanked &
Amber &
{\textless}= 15W\\
\centering{\bfseries Suspend} &
Attach &
Yes &
No &
Blanked &
Amber &
{\textless}= 15W\\
\centering{\bfseries OFF} &
Attach &
No &
No &
Blanked &
Amber &
{\textless}= 5W\\
\centering{\bfseries Override} &
Attach &
No &
No &
Visible\newline
Background &
Green &
{\textless}= 80W\\
\centering{\bfseries Self-test} &
Detach &
No &
No &
Bright\newline
Background &
Green &
{\textless}= 80W\\
\end{supertabular}
\end{center}
* Na condição \textbf{ON} (Ligado), este monitor também proporciona os modos \textbf{Override} e \textbf{Self-test} para permitir que o usuário final tenha capacidade de resolver problemas. Os modos \textbf{Override} e \textbf{Self-test} não são estados de gerenciamento de energia.

1. O modo \textbf{override} diz respeito ao fato do monitor mostrar um fundo visível se você ligá-lo antes de ligar o computador. Nesse caso, o indicador de “Ligado” mostra a cor verde.\newline \textit{Nota: Se você desligar o computador antes de desligar o monitor, ele irá para o modo de gerenciamento de energia }\textbf{\textit{OFF}}\textit{. O indicador de “ligado” se tornará âmbar.}

2. O modo \textbf{self-test} diz respeito ao fato do monitor mostrar um fundo brilhante se você ligá-lo antes de conectar o cabo de vídeo no computador. O indicador de {\textquotedbl}Ligado{\textquotedbl} mostra a cor verde.

Para minha surpresa, vi que não existia apenas um modo de economia de energia, mas \textbf{três} (\textit{Stand-by}, \textit{Suspend} e \textit{OFF}), cada qual com sua particularidade e, o mais interessante: para dizer ao monitor em que modo ele deveria operar, a placa de vídeo retirava um ou ambos os sinais de sincronismo.

Agora tudo estava claro!!! Por alguma razão, em determinadas resoluções, o monitor não estava detectando a presença de algum dos sinais de sincronismo e acabava entrando em algum modo de economia de energia. Mas restava ainda descobrir o porquê!!!

4. Busca do Culpado De posse das informações, parecia que agora seria simples descobrir o componente defeituoso, se é que seria apenas um. Bastaria descobrir a razão pela qual os sinais de sincronismo não estavam sendo detectados pelo monitor nas circunstâncias onde o defeito surgia.

Verificando o caminho para onde seguiam os sinais de sincronismo no monitor, pude notar que os mesmos iam diretamente do conector de vídeo para o microcontrolador principal do monitor (se não o único), passando apenas por alguns resistores e capacitores. Verifiquei-os todos, um a um, e para meu azar estavam todos em perfeito estado. Infelizmente, eu não possuía um osciloscópio em casa para que pudesse verificar se os sinais chegavam corretamente ao microcontrolador, mas com o multímetro era possível saber que \textit{alguma coisa} chegava. Todos os componentes que pareciam ter alguma relação direta com a detecção dos sinais estavam em perfeito estado. O que fazer agora? Após essa primeira tentativa, quase cega e que não resultou em nada, resolví pensar mais um pouco.

Sabendo que o problema só não ocorria na resolução de 800×600, dei mais uma olhada na \hyperlink{tabela1}{Tabela 1} tentando perceber as diferenças dos sinais de sincronismo nas diferentes resoluções, e como o leitor já deve ter imaginado, não pude deixar de notar que em 800×600, ambos os sinais se apresentavam na forma de pulsos positivos de nível TTL (5V), o que não ocorria nas outras resoluções. Como eu já havia testado os componentes envolvidos, achei ser um problema interno ao microcontrolador, ou algo parecido, que não o deixava \textit{perceber} os pulsos de sincronismo negativos. E por que eu não poderia inverter os pulsos negativos com simples transistores bipolares corretamente polarizados? Sim, fiz isso, mas…

O resultado não foi bem o esperado, pois tudo continuava como antes, como se os transistores nunca tivessem sido colocados alí. Pude concluir que o problema não era com a polaridade dos pulsos, mas não sem antes passar alguns dias tentando, em vão, alterar resistores, capacitores e tudo que me parecia poder impedir o microcontrolador de detectar os sinais. Durante os estudos cheguei a levantar o caminho e a possível função de cada pino do microcontrolador principal, os quais mostro na tabela abaixo.

{\centering
Tabela 2 – Função Estimada dos Pinos do Microcontrolador.
\par}

\begin{center}
\tablefirsthead{}
\tablehead{}
\tabletail{}
\tablelasttail{}
\begin{supertabular}{m{0.83400005cm}m{5.993cm}m{-0.008000001cm}m{0.807cm}m{8.507cm}}
\centering{\bfseries Pino} &
\centering{\bfseries Função (ou \textit{para onde vai})} &
~
&
\centering{\bfseries Pino} &
\centering\arraybslash{\bfseries Função (ou \textit{para onde vai})}\\
\centering{\bfseries 01} &
LED 202 Painel Frontal &
~
&
\centering{\bfseries 21} &
Pino 37 do IC401 – Pincushion\\
\centering{\bfseries 02} &
LED 203 Painel Frontal &
~
&
\centering{\bfseries 22} &
Pino 38 do IC401 – Keystone\\
\centering{\bfseries 03} &
LED 204 Painel Frontal &
~
&
\centering{\bfseries 23} &
Pino 39 do IC401 – Control +B\\
\centering{\bfseries 04} &
LED 205 Painel Frontal &
~
&
\centering{\bfseries 24} &
C625 e Q686\\
\centering{\bfseries 05} &
LED 206 Painel Frontal &
~
&
\centering{\bfseries 25} &
Push-Button de Controle Frontal\\
\centering{\bfseries 06} &
ID Bit 0 Monitor &
~
&
\centering{\bfseries 26} &
Push-Button de Controle Frontal\\
\centering{\bfseries 07} &
Chave &
~
&
\centering{\bfseries 27} &
Push-Button de Controle Frontal\\
\centering{\bfseries 08} &
Vcc – W201 &
~
&
\centering{\bfseries 28} &
Push-Button de Controle Frontal\\
\centering{\bfseries 09} &
Pino 2 do IC202 &
~
&
\centering{\bfseries 29} &
Chave\\
\centering{\bfseries 10} &
Pino 3 do IC202 &
~
&
\centering{\bfseries 30} &
Base de um transistor que desliga a fonte\\
\centering{\bfseries 11} &
Vcc – W201 &
~
&
\centering{\bfseries 31} &
Pino 4 do IC202\\
\centering{\bfseries 12} &
+Vcc &
~
&
\centering{\bfseries 32} &
Pino 1 do IC202\\
\centering{\bfseries 13} &
Emissor Q202 &
~
&
\centering{\bfseries 33} &
+Vcc\\
\centering{\bfseries 14} &
Cristal Oscilador &
~
&
\centering{\bfseries 34} &
Não utilizado\\
\centering{\bfseries 15} &
Cristal Oscilador &
~
&
\centering{\bfseries 35} &
Base de Q505\\
\centering{\bfseries 16} &
Terra &
~
&
\centering{\bfseries 36} &
Não utilizado\\
\centering{\bfseries 17} &
Pino 31 IC401 – Amplitude Vertical &
~
&
\centering{\bfseries 37} &
Q686\\
\centering{\bfseries 18} &
Comps – Terra &
~
&
\centering{\bfseries 38} &
C625 e Placa traseira do cinescópio (Placa RGB)\\
\centering{\bfseries 19} &
Comps – Terra &
~
&
\centering{\bfseries 39} &
Sincronismo – vindo diretamente da placa de vídeo\\
\centering{\bfseries 20} &
Pino 15 do IC401 &
~
&
\centering{\bfseries 40} &
Sincronismo – vindo diretamente da placa de vídeo\\
\end{supertabular}
\end{center}
Descobrí que o pino 30 é conectado à base de um transistor que tinha o poder de desligar a fonte chaveada parcialmente e que é através dele que o microcontrolador coloca o monitor nos diversos modos de economia de energia. Saturando o transistor manualmente, pude manter o monitor ligado, mesmo nas resoluções em que o problema se manifestava, mas acredito que o microcontrolador se {\textquotedbl}desligava{\textquotedbl} de alguma forma e acabava por deixar também de atuar nos outros circuitos, pois a imagem era muito ruim nesse caso, apresentando diversas deficiências.

Nesse momento, eu já havia feito tudo e tentado todas as hipóteses. Já estava pensando no cúmulo de montar um circuito externo para gerar os sinais de sincronismo e ajustá-los através de um potenciômetro. Todos os componentes estavam bons, as trilhas não estavam interrompidas, tudo estava perfeito, mas simplesmente não funcionava! Não funcionava!!!

E foi em uma dessas madrugadas em que nos isolamos do mundo e já não sabemos se estamos acordados ou sonhando, uma das noites em que estava lá, olhando para aquele aglomerado de fibras, plásticos e metais que me desafiava, já quase desistindo, quando me veio uma idéia. Vejamos…

5. O Fim da Jornada De repente, as coisas que havia tentado, as informações que havia descoberto, seja empíricamente, seja através de pesquisa, começaram a tomar forma em minha mente, como os tijolos que se tornam paredes e que por sua vez se tornam casas:

  1. O microcontrolador controla todos os circuitos do monitor.
  2. Todos os circuitos estão em bom estado e funcionando bem, pois o monitor funciona corretamente em 800×600.
  3. Haveria a possibilidade remota de, quando em uma resolução mais baixa, algum circuito do monitor aumentar seu consumo, acionando alguma proteção da fonte que a faria desligar, mas isso não se confirmava, pois eu havia mantido o monitor funcionando manualmente sem nenhum prejuízo. Era realmente o microcontrolador que desligava a fonte.

De acordo com os preceitos acima, pude concluir que parecia ser um problema interno ao microcontrolador, o que condenaria o monitor ao limbo, mas o fato do monitor funcionar na resolução de 800×600 pixels não saía da minha cabeça. Se fosse um problema interno ao microcontrolador, uma falha na programação, qualquer coisa, o monitor não deveria funcionar em 800×600. Foi quando as questões me atingiram em cheio!!!

Como o microcontrolador, um componente digital, sabe se existe um sinal oscilante ou uma mera tensão contínua em seu pino de entrada? E mais. Como ele sabe a freqüencia de tal sinal para ter certeza que é realmente um sinal de sincronismo? Sendo ele um componente digital, é necessário que ele tenha uma referência de freqüência para comparação com as freqüências dos sinais de sincronismo entrantes. E que referência é essa???

O clock. SIM, O CLOCK!!! O clock cadencia o funcionamento do microcontrolador e é a única referência de tempo que ele tem. E quem define o clock? Geralmente um oscilador externo, que nos casos onde se necessita de uma certa precisão, utiliza um \textbf{Cristal de Quartzo }que define a sua freqüência. Mas… seria possível? Nãããão….

Havia passado pela minha cabeça a tola idéia de que, vejam só, o cristal do oscilador de clock poderia ter alterado sua freqüência de ressonância e conseqüentemente, a referência de tempo do microcontrolador, que por sua vez, embora funcionando perfeitamente, se enganaria com relação aos sinais de sincronismo. Mas eu realmente estava viajando demais.
Isso não acontece assim. Não é como um transistor ou diodo entrando em curto, está mais próximo de alguém que é picado por uma aranha exposta à radiação e, em vez de desenvolver câncer, se torna o
Homem-Aranha!!!\hyperlink{nota1}{\textsuperscript{* Ver Nota}}

Mas sabem como é, não custa tentar.

Retirei o cristal, já com muito sono naquele momento. Era um cristal de 8MHz e eu não tinha nenhum na sucata. Troquei-o por um de 7MHz e pouco, sem nenhuma fé de que aquilo fosse funcionar, afinal meu cristal não era sequer da frequência correta. Mas… não é que funcionou!!!! Era o cristal!!! Aquele cristal que eu havia ignorado durante todo aquele tempo e através do qual meu olhos passavam constantemente sem nunca haver de notar sua imperfeição. Maldito cristal!!!

Depois dessa, sequer fechei o monitor. Estava caindo de tanto sono e fui dormir, mas desta vez, o sono foi mais tranquilo. No outro dia, montei-o com imensa satisfação e hoje ele se encontra no computador ao lado da bancada, prestando ótimos serviços.

6. Downloads e Informações Durante os cerca de 15 dias que demorei para consertar o monitor, juntei algum material, o qual disponibilizo aqui para os interessados.

6.1. 6.1 Datasheets de Alguns Componentes Utilizados no Monitor Illusion RH-1464

\hypertarget{nota1}{}\textbf{* Nota do Autor:} Os mais jovens devem estar se perguntando que estória é essa de Aranha
Radioativa. Explico que, na estória original, o jovem Peter Parker adquiriu seus poderes após ser picado por uma aranha
exposta à radiação. Somente com o lançamento do longa metragem para o cinema é que a origem do Homem-Aranha foi
recontada, de forma a ficar mais plausível para os dias de hoje.