Month: April 2013

Como reparar placa do HP Pavilion dv6000

Conheço pelo menos mais cinco pessoas que assim como eu comprou um notebook HP Pavilion DV6000 e após alguns meses de uso ele simplesmente pára de ligar e fica reiniciando antes de aparecer a tela com o logo da HP na BIOS.

Não sei se alguém da HP um dia vai ler este post, mas se acaso ler, fique ciente que estas 5 pessoas e eu nunca mais compraremos um notebook da HP. Acredito que assim como nós outras milhares de pessoas que passaram por este mesmo problema também não comprarão.

Mas afinal, por que este problema acontece e por que a HP não conseguiu detectar isso antes de lançar o notebook no mercado. Vamos lá, um problema de cada vez.

O erro em questão ocorre porque o chip de vídeo (GPU) da Nvidia sobreaquece e alguns pinos chegam a derretar a solda, com isso o notebook fica instável e não liga. Este problema acontece com mais frequência em notebooks onde a poeira bloqueia as aletas de refrigeração do cooler, porém acredito que mesmo sem poeira este problema vai acontecer depois algum tempo.

O mais provável que é a HP não tenha percebido este problema porque não testou o notebook em campo por tempo suficiente, ou tenha testado apenas em países de clima frio, etc.

Este problema serve como um bom exemplo para outras empresas que estão lançando produtos no mercado. Se você não quiser ter dor de cabeça no futuro e perder seus clientes para sempre, teste exaustivamente seu produto, em várias condições de uso, principalmente em condições extremas. Apenas o “burn-in” (tipo de teste onde o equipamento é deixado ligado várias horas rodando rotinas de testes pesadas) não é suficiente.

A segunda regra básica: disponibilize protótipos para clientes (equivalente ao “projeto piloto” de sistemas), isto ajudará a pegar falhas que você não tinha previsto no seu produto.

Finalmente, se encontrar algum problema grave no produto, tome uma ação rápida para evitar que os clientes sejam prejudicados pela(s) falha(s) do seu produto.

Infelizmente nada disso aconteceu no caso do Notebook HP Pavilion DV6000.

Agora que o problema já esta contextualizado, vamos à solução, na verdade não é uma solução, mas apenas uma forma de reverter o problema e amenizar os efeitos causados.

Primeiro você terá que abrir seu notebook, use o manual de serviço da HP para abri-lo corretamente (se você não tem costume de abrir equipamentos eletrônicos, então peça para algum amigo que tenha conhecimento para fazer isso pra você).

Você deverá desparafusar o cooler para remove-lo da placa mãe, veja os parafusos na imagem abaixo:

Em seguida você deve preaquecer a placa antes de aquecer a GPU Nvidia (quadro selecionado em vermelho na imagem acima). Coloque a temperatura da sua estação de ar quente em 100 graus, aqueça a área próxima ao chip e também a área embaixo da placa. É importante fazer isso antes de aquecer o chip, pois a placa poderia “delaminar” (trincar, quebrar) e romper as trilhas. Preaqueça por uns 2 minutos.

Agora pegue uma folha de alumínio (destas de cozinha) e corte no centro dela um quadrado do tamanho do chip GPU e coloque o furo exatamente sobre o chip de forma que toda a área do chip fique visível/acessível. Isto evitará que o ar quente derreta o conector do cooler que está próximo do chip e que outros componentes próximo ao chip sejam desoldados.

Coloque 4 moedas de 5 centavos sobre o chip GPU, uma ao lado da outra, formando um quadrado. Como elas são revestidas de cobre, conduzirão o calor rapidamente e também o peso delas vai ajudar o chip a abaixar um pouco quando a solda, que fica embaixo do chip, derreter.

Altere a temperatura da estação de solda para 320C e para velocidade do ar média, não muito forte. E comece jogar o ar quente próximo ao centro do chip GPU em movimentos circulares a uma altura de 5 centimetros do chip, de forma que as quatro moedas fiquem bem aquecidas também. Faça isso durante uns 10 minutos, para garantir que a solda realmente vai derreter, pois demora tempo para que o calor consiga acequer a parte debaixo do chip.

Na parte do dissipador de calor que está ligada ao cooler e que fica exatamente sobre o chip GPU há uma pequena chapa de cobre e abaixo dela uma borracha condutiva, remova esta borracha e coloque uma chapa de cobre no lugar dela (eu cortei uma moeda de 5 centavos em formato retangular). Desta forma a chapa de cobre original estará em contato com a chapa que você criou e esta por sua fez estará em contato direto com o chip GPU da Nvidia. Cuidado para a sua chapa não ficar muito grande e dar curto-circuito com os componentes (resistores e capacitores) soldados na parte superior da GPU.

Finalmente corte o fio branco do conector do cooler, assim o cooler vai ficar funcionando na velocidade máxima o tempo todo.

Information is not power

Thinking about information and power I reached this conclusion:

“Information is not necessarily power. Power is not how much you know, but how efficiently you use the knowledge you have!” — A. C. Assis

Then I searched for this quotation that I just created to know if someone else create something similar, then I found this nice text:


http://www.sacred-texts.com/nth/tgr/tgr10.htm

Note: my quotation is not based on this text because it was created before I found it, but it could summarize well the idea explained on that text.

Running NuttX on Kinetis KL25Z Freedom Board (FRDM-KL25Z)

This tutorial will explain how to run NuttX on Freescale Freedom Board:

First of all Download the GCC-ARM-EMBEDDED:
https://launchpad.net/gcc-arm-embedded/+download

I’m using version gcc-arm-none-eabi-4_7-2012q4-20121208-linux.tar.bz2 but you could use newer versions.

Decompress the toolchain file:

$ tar xvf gcc-arm-none-eabi-4_7-2012q4-20121208-linux.tar.bz2

Move toolchain to /usr/local directory:

$ sudo mv gcc-arm-none-eabi-4_7-2012q4 /usr/local/gcc-arm-embedded

Add this directory to your PATH:

$ export PATH=/usr/local/gcc-arm-embedded/bin:$PATH

Case you are using Ubuntu you could install the gcc-arm-none-eabi from Terry Guo repository and just ignore these instructions above.

Download NuttX from its repository:

$ git clone git://git.code.sf.net/p/nuttx/git nuttx

Now configure NuttX to compile for Freedom board:

$ cd nuttx/nuttx/
$ cd tools/
$ ./configure.sh freedom-kl25z/nsh
$ cd -

Now edit nuttx .config and replace CONFIG_ARMV6M_TOOLCHAIN_BUILDROOT by CONFIG_ARMV6M_TOOLCHAIN_GNU_EABIL:

$ vi .config
...
#CONFIG_ARMV6M_TOOLCHAIN_BUILDROOT is not set
CONFIG_ARMV6M_TOOLCHAIN_GNU_EABIL=y

Compile nuttx using make command:

$ make

Copy nuttx.srec to Freedom board, case you have installed MBED 2.0 firmware (recommended) then you need to copy nuttx.bin instead.

Now to have access to NSH terminal running on the board, just use minicom, picocom, or your preferred serial terminal client, configured to /dev/ttyACM0 and 115200.

Cloning and update your project to github

You could automate the process of pushing modifications to github, then you won’t need to enter your user and password all the time.

This guy at http://amaras-tech.co.uk/article/159/Using_Github_behind_a_restrictive_firewall almost get there, he edited the .git/config and add:

url = https://morganp@github.com/morganp/maruku_snippet.git

And put this statement: “Entering your password will still be required.”

But don’t worry, fortunately he is wrong, you could just use:

url = https://morganp:yourpassword@github.com/morganp/maruku_snippet.git

Note: putting your password at .git/config is very unsecure, then you should at least change this file permission in order to avoid other user sharing your computer has access to it:

$ chmod 600 .git/config

How to solve MTP issue on Sony Xperia S

If you are using Ubuntu 12.10 and using a Sony Xperia S probably you are facing issues to get its internal memory mounted on your computer.

Fortunately someone at Google faced this same issue and decide to fix it (ironically Google and Samsung created this issue when they decide to use MTP on Galaxy Nexus S for the first time).

The software is called go-mtpfs and it is easy to install and use:

sudo add-apt-repository ppa:webupd8team/unstable
sudo apt-get update
sudo apt-get install go-mtpfs

You can also install a unity plugin:

sudo apt-get install go-mtpfs-unity

Source http://www.webupd8.org/2012/12/how-to-mount-android-40-ubuntu-go-mtpfs.html