O Ethernet Shield não funciona, não se conecta com a rede e você não sabe o que fazer para solucionar este problema? Este tipo de ocorrência está cada vez mais comum em diversos projetos que utilizam as versões chinesas do Ethernet Shield W5100.
Para entender o que acontece com estes dispositivos e também verificar uma solução para este problema realizou-se algumas pesquisar e por fim encontramos uma solução. Teoricamente, o problema que ocorre com este Shield é apenas uma incompatibilidade entre ele e o Swits utilizado nas redes de internet.
Para quem comprou o Ethernet Shield W5100, testou e não obteve êxito no funcionamento do mesmo, é possível que este artigo apresente a solução para o problema.
Ethernet Shield W5100
Antes de entendermos porque o Ethernet Shield não funciona, precisamos entender um pouco melhor sobre a sua estrutura e funcionamento, por isto é de suma importância que analisemos o real problema que ocorre com estes produtos.
Desenvolvido no formato Shield, o presente produto possui uma facilidade bem grande quando se diz respeito à sua conexão via Arduino, uma vez que basta encaixá-lo acima do microcontrolador sem se preocupar com qual pino devemos utilizar.
Mas por mais que possamos achar que isto seja um ponto negativo, já que acaba utilizando todos os pinos do Arduino, apenas os pinos 10, 11, 12 e 13 são realmente utilizados para a comunicação do Shield, os demais pinos continuam disponíveis.
Um dos principais problemas quando o Ethernet Shield não funciona em dispositivos como o Arduino UNO e Mega é o possível contato entre o metal de isolamento do conector USB dos mesmos e os pinos do conector RJ45 do Shield, assim como mostra a imagem abaixo:
Muitas vezes esta pequena observação já pode solucionar a maioria dos problemas e é por causa disto que o Ethernet Shield possui pinos tão alongados quando comparado a outros.
Mas este é o único motivo no qual o Ethernet Shield não funciona ?
Não, esta é uma das possíveis casas de problema no funcionamento do Ethernet Shield, outro problema comum de acontecer diz respeito aos conflitos de IP e demais informações de configuração da rede que se utiliza no código.
Mas como estamos falando de problemas físicos de funcionamento, um dos problemas que anda dando bastante dor de cabeça para quem utiliza este recurso, diz respeito a um pequeno resistor presente nas placas Chinesas do Ethernet Shield.
Ethernet Shield com Resistor 511
Um problema recorrente quando o Ethernet Shield não funciona diz respeito à compatibilidade do mesmo com dispositivos como roteadores e Switch, pois ao se conectar com alguns destes dispositivos ou ao usar cabos muito longos, o Shield apresenta instabilidade de conexão e pode até mesmo não funcionar.
O Ethernet Shield pode funcionar com um dispositivo e com outro não?
Sim! Existe um fator de compatibilidade que auxilia no funcionamento do Ethernet Shield W5100 em alguns dispositivos e em outros não, ou até mesmo funcionar conectado diretamente ao computador e não funcionar quando migrado a um roteador e que vamos ver logo mais.
Mesmo que pareça algo “comum”, este fator de compatibilidade, infelizmente não deveria ser assim, originalmente o projeto do Ethernet Shield desenvolvido pela empresa Arduino, por exemplo, possuía um resistor 49R9 de 49,9 Ohms como demonstrado abaixo e que não possuía este problema.
Com o passar do tempo outros fabricantes começaram a reproduzir modelos similares do Arduino Ethernet Shield e acabaram por padronizar os resistores em valores de 51 Ohms, um valor bem similar ao modelo original que não daria problema se em algum momento não tivesse sido alterado por outro.
Com nomenclaturas bastante semelhantes, os resistores de 51 Ohms são representados pelo código 510 foram substituídos por modelos representados pelo código 511, mas que por sua vez possui um valor dez vezes maior, chegando a 510 Ohms.
Como podemos ver, este resistor está localizado logo atrás do conector RJ45 do Ethernet Shield e é constituído de um conjunto tipo aranha de quatro resistores de mesmo valor e que são filtros fundamentais para o funcionamento do projeto.
Qual a diferença entre o resistor 510 e 511 ?
Estes valores são indicativos utilizados em resistores SMD para a determinação de sua resistência, na qual os dois primeiros dígitos representam a denominação base e multiplicado por 10 na potência denotada pelo terceiro dígito, veja o exemplo:
Para quem não lembra, vale ressaltar que qualquer elemento elevado na 0 será sempre igual a 1, como visto no exemplo do resistor 510.
Mesmo que pareça que este problema não tem solução e que infelizmente tem-se que descartar o Shield caso ele não seja compatível com determinados dispositivos, existem solução para a correção deste erro.
Problema com Resistor 511 Resolvido
Alguns roteadores e dispositivos de rede não apresentam problema de funcionamento mesmo com este valor tão diferente do utilizado originalmente, especialmente se o cabo de rede for curto.
Com o avanço da tecnologia, a precisão das informações é algo cada vez mais crucial para o desenvolvimento de redes seguras e precisas, o que torna esta incompatibilidade causada pelo resistor algo cada vez mais presente nos últimos dispositivos desenvolvidos.
De maneira direta, o método mais simples para resolver o problema sem alteração estética quando o Ethernet Shield não funciona, diz respeito à troca do conjunto de resistores.
A troca do resistor SMD pode ser feita por resistores de valores mais baixos como o originalmente utilizado de 51 Ohms (Resistor SMD 510), porém vale ressaltar o cuidado e a experiência necessária para este procedimento.
Tendo em vista a dificuldade da troca e da compra destes componentes, outro procedimento possível para resolução do problema é a inclusão de resistores de 100 Ohms entre os pinos 1 e 2 (TX+ / TX-) e os pinos 3 e 6 (RX+ / RX-) como demonstrado na imagem abaixo:
Para auxiliar na visualização dos pinos que devemos soldar e também dar uma melhor compreensão do processo, segue abaixo o diagrama de pinos do Conector RJ45 com seus respectivos pinos utilizados sinalizados.
Como podemos ver, este procedimento acaba por modificando parcialmente a estética do produto, porém após a instalação junto ao Arduino, os resistores ficarão na parte de baixo e não irão interferir em nada.
Porque trocar o resistor do Ethernet Shield quando ele não funciona?
Todo equipamento eletrônico é constituído de diversos componentes e normalmente são interligados através de fios e cabos e dependem uns dos outros para executarem as suas funções.
Para que todos trabalhem de forma alinhada e conjunta, a potência transferida entre um e outro deve ser máxima, ou seja, a impedância de entrada de um deve ser o mais semelhante possível à do seguinte.
Para entender um pouco melhor, a impedância elétrica que citamos acima representa a oposição que um circuito elétrico faz à passagem de corrente quando é submetido a uma tensão, ou seja, quando maior a resistência, menor será a corrente e menos eficaz será a transmissão de dados.
Este procedimento foi testado e após a inclusão dos resistores de 100 Ohms, o Ethernet Shield voltou a funcionar normalmente comunicando-se com dispositivos que antes o mesmo não conseguia realizar a troca de dados.
Conclusão
Este é um projeto desenvolvido com o intuito de resolver um problema cada vez mais recorrente na utilização de dispositivos Ethernet Shield, a incompatibilidade do mesmo com dispositivos mais modernos e que não conseguem reconhece-lo para estabelecer comunicação de dados.
De forma simples e rápida pudemos ver que podemos resolver o problema, porém além disto, verificamos o porque isto acontece e conseguimos conhecer um pouco mais do Ethernet Shield e sua funcionalidade.
Então já sabe, se o Ethernet Shield não funciona, não se preocupe que isto tem solução, inclusive a Usinainfo hoje já comercializa o Ethernet Shield W5100 com dois resistores de 100 Ohms inclusos em suas embalagens para caso necessário, fazermos as instalações dos mesmos.
Com um modelo de artigo um pouco diferente hoje, conseguimos apresentar novos conceitos e conseguimos explorar um pouco mais possíveis problemas e soluções à cerca de um produto tão utilizado em diversos projetos.
Não se esqueça de comentar o que achou deste artigo, o que achou da solução que apresentamos e se achou alguma solução diferente para este problema, não deixe de compartilhar conosco.