Hat Ethernet WIZnet para Raspberry Pi Pico

La Raspberry Pi Pico sin lugar a dudas fue un gran acierto, un microcontrolador económico, con un procesador muy rápido, lenguaje de programación basado en microPython y un respaldo de una de las fundaciones con mayor orientación hacia la informática física, La fundación Raspberry. Por su bajo costo (alrededor de $ 4.000.-) permite grandes prestaciones y ser un complemento perfecto para muchos proyectos, sin embargo, algo que nos hacia falta era la conectividad cableada. Justamente para suplir esto llega el HAT Ethernet, con el podremos convertir esta pequeña y económica tarjeta de desarrollo en un servidor web.

El HAT ethernet está basado en el integrado W5100S, soporta protocolos TCP, UDP, WOL over UDP, ICMP, IGMPv1/v2, IPv4, ARP, PPPoE, puede trabajar con voltajes de operación 3.3v/5v, full/half dúplex y tiene conector Rj45.

Para poder usarlo tendrás que soldar los pines a la tarjeta.

Con los pines soldados y la Pi Pico ya podrás usar este útil complemento que, si bien le llamamos HAT, esta vez va por debajo de la tarjeta de desarrollo.

Instalaremos los módulos de CircuitPython en nuestra tarjeta, para este caso se usará la versión 7.2.5 en español. Estos módulos están en un archivo. UF2 descargado del siguiente link

Con el archivo descargado conectaremos el USB de la RPI Pico mientras se presiona el botón “BOOTSEL”. 

Arrastramos el archivo. UF2 dentro de la carpeta de la Pico. Al finalizar la ventana se cerrará automáticamente.

Continuando seguimos con la puesta a punto de Thonny, seleccionamos elegir interprete del menú “Ejecutar”.

Allí seleccionaremos como interprete CircuitPython (genérico) y el puerto lo dejaremos con detección automática.

Con ello ya estamos listos para comenzar.

La tarjeta ya es reconocida y podemos probar su funcionalidad.

Para probar si la tarjeta está funcionando con normalidad cargaremos un programa de prueba que hará parpadear el “LED” de la pi pico.

Para continuar descargaremos las librerías WIZnet y las copiaremos dentro de la carpeta lib en el interior del almacenamiento de la Pi Pico.

Puedes descargar ingresando a este link y pegando la dirección https://github.com/Wiznet/RP2040-HAT-CircuitPython/tree/master/libraries, con ello descargaras un rar que contiene todas las librerías. La carpeta lib debe quedar como la siguiente imagen.

Copiadas las librerías el primer ejemplo a desarrollar será asignar una dirección para poder hacer ping, para ello copiaremos el siguiente programa. 

Parte 1

A tener en cuenta:

         SPI0_SCK = board.GP18

         SPI0_TX = board.GP19

         SPI0_RX = board.GP16

         SPI0_CSn = board.GP17

         W5x00_RSTn = board.GP20

      Estos pines pueden ser modificados de acuerdo a la conexión que se tenga,

Parte 2

                        spi_bus = busio.SPI(SPI0_SCK, MOSI=SPI0_TX, MISO=SPI0_RX)

Existen parametros que se deben tener en cuenta dentro del programa:

         Mac, fue asignado un valor aleatorio, puede ser modificado

         Mascara, valor estandar

         Gateway, direccion del router

         DNS, dns gratuito de google

       Parte 3

Cuando ejecutamos el programa veremos el mensaje de asignación de parámetros, y nuestra tarjeta ya tendrá una dirección en la red (se deben copiar las 3 partes).

Para la dirección IP usamos 192.168.1.5, te recomendamos cambiar el 5 por un numero mucho mas alto y evitar problemas, prueba entre 150 y 200.

Como comprobación podemos hacer un ping desde nuestro ordenador, abriremos el cuadro de dialogo Ejecutar con Windows + R y allí ejecutamos cmd.

Escribimos ping 192.168.1.5 y veremos los paquetes entregados.

Con la dirección IP asignada a la tarjeta, podemos pasar a un segundo ejemplo, crear un servidor que nos permita interactuar con el mundo. La prueba es con el mismo led incorporado a la tarjeta.

Ahora el programa que necesitamos será el siguiente:

Parte 1

Parte 2

Como se mencionó antes, se recomienda una dirección IP alta para evitar conflictos, para este ejercicio utilizamos la IP 192.168.1.200

Parte 3

Parte 4

Lorem fistrum por la gloria de mi madre esse jarl aliqua llevame al sircoo. De la pradera ullamco qué dise usteer está la cosa muy malar. En esta parte del programa se inicia la creación de contenido para visualización web.

Parte 5

Lorem fistrum por la gloria de mi madre esse jarl aliqua llevame al sircoo. De la pradera ullamco qué dise usteer está la cosa muy malar. En la parte 5 finalización de la creación de contenido para la visualización web y comienzo de la lógica para encendido del led.

Parte 6

en esta sección se finaliza la lógica restante de interacción con el led.

Parte 7

Este ejemplo es bastante largo en comparación con el anterior, esto porque la tarjeta funcionara como un servidor web, por lo mismo encontraremos microPython como lenguaje de programación y html para la creación de la web, por un lado, se crearán los parámetros para la conexión, por otro el desarrollo web y finalmente la interacción con lo físico encendiendo y apagando el led desde el servidor web.

Como pueden ver con este sencillo complemento, las posibilidades de desarrollo crecen radicalmente, es posible desarrollar casi cualquier proyecto, ligarlo al IoT, o a tecnologías que utilicen como medio físico una conexión ethernet, perfectamente podría convertirse en un adquisidor de datos o un esclavo de algún sistema más complejo. Esto es una simple pincelada para que comiences desarrollos complejos o para que aprendas cómo funcionan sistemas IoT.

Te informaremos cuando el producto esté en stock nuevamente. Por favor, deje su dirección de correo electrónico válida.
Ir arriba