Introduction: NetAnalyzer

About: Asesor Informático, Administrador de Sistemas e Infraestructuras Informáticas, Programador Multi-Plataforma, Especialista en Sistemas de Linux, Técnico en Mantenimiento Industrial, Radio Aficionado LU3FLA.

NetAnalyzer is an arduino based system that allows analyzing and detecting lan networks. Its operation is simple, connecting it to an Ethernet network links via DHCP and then allows to view network data (IP, Netmask, Gateway and DNS).
The functions to perform analysis on the network are: Ping a Gateway, Ping a DNS, Ping a Google DNS and Send Data by Email, among others. are not yet activated, as they are in development.

NetAnalyzer es un sistema basado en arduino que permite analizar y detectar redes lan. su funcionamiento es simple, al conectarlo a una red ethernet enlaza vía DHCP y luego permite visualizar los datos de red (IP, Netmask, Gateway y DNS). Las funciones para realizar análisis en la red son: Ping a Gateway, Ping a DNS, Ping a Google DNS y Enviar los Datos por Email, entre otras. aun no se encuentran activadas, ya que se por estar en desarrollo.

Step 1: Materials

Materials
These are some of the materials I used for this project, some are recycled, that makes it more interesting.

  • 1- Arduino Pro Mini 5v/16mhz
  • 1- Ethernet ENC28J60
  • 1- LCD display 1602 HD44780
  • 1- Voltage Regulator LM7805
  • 1- LD1117-33 Voltage Regulator (PC Recycling)
  • 1- Rotary Encoder with NA (Recycling) button
  • 1- Single Pole Switch
  • 1- Speaker or Buzzer
  • 1- NA push-button
  • 1- Resistors of 220 ohms
  • 2- Resistors of 1k ohms
  • 6- Resistors10k ohms
  • 1- Universal PCB for Prototypes
  • 1- 9V Battery Connector (Recycling)
  • 2- 12 Pin Female Connector (Pin Strips for Arduino Pro Mini)
  • 1- 8 Pin Male Connector (Pin Strip)
  • 1- 8 Pin Female Connector (Recycled)
  • 1- 5 Pin Male Connector (Recycling)
  • 1- 5 Pin Female Connector (Recycled)
  • 1- 5 Pin Dual Row Female Connector (5 Pins Dual Row) (Adapter PC Motherboard for Ethernet ENC28J60)
  • 1- 4 Pin Male Connector (Pin Strip)
  • 1- 4 Pin Female Connector (PC Recycling)
  • 1- 3 Pin Male Connector (Pin Strip)
  • 1- 3-Pin Female Connector (PC Recycling)
  • 1- 3 Pin Female Connector (Pin Strips for Arduino Pro Mini)
  • 1- 2 Pin Male Connector (Pin Strip)
  • 1- 2 Pin Female Connector (Recycling)
  • 1- 2-Pin Male Connector (Recycling Printer)
  • 1- 2 Pin Female Connector (Printer Recycling)

Materiales
Estos son algunos de los materias que use para este proyecto, algunos son reciclados, eso lo hace mas interesante.

  • 1- Arduino Pro Mini 5v/16mhz
  • 1- Ethernet ENC28J60
  • 1- Pantalla LCD 1602 HD44780
  • 1- Regulador de Voltaje LM7805
  • 1- Regulador de Voltaje LD1117-33 (Reciclado de PC)
  • 1- Rotary Encoder con Pulsador NA (Reciclado de Autoestereo)
  • 1- Interruptor Monopolar
  • 1- Parlante o Buzzer
  • 1- Pulsador NA
  • 1- Resistencias de 220 ohms
  • 2- Resistencias de 1k ohms
  • 6- Resistencias de 10k ohms
  • 1- Placa Universal para Prototipos
  • 1- Conector para Batería de 9V (Reciclado)
  • 2- Conector Hembra de 12 Pines (Tiras de Pines para Arduino Pro Mini)
  • 1- Conector Macho de 8 Pines (Tira de Pines)
  • 1- Conector Hembra de 8 Pines (Reciclado)
  • 1- Conector Macho de 5 Pines (Reciclado)
  • 1- Conector Hembra de 5 Pines (Reciclado)
  • 1- Conector Hembra de 5 Pines Doble Fila (Adaptador Placa Madre de PC para Ethernet ENC28J60)
  • 1- Conector Macho de 4 Pines (Tira de Pines)
  • 1- Conector Hembra de 4 Pines (Reciclado de PC)
  • 1- Conector Macho de 3 Pines (Tira de Pines)
  • 1- Conector Hembra de 3 Pines (Reciclado de PC)
  • 1- Conector Hembra de 3 Pines (Tiras de Pines para Arduino Pro Mini)
  • 1- Conector Macho de 2 Pines (Tira de Pines)
  • 1- Conector Hembra de 2 Pines (Reciclado)
  • 1- Conector Macho de 2 Pines (Reciclado de Impresora)
  • 1- Conector Hembra de 2 Pines (Reciclado de Impresora)

Step 2: Hardware

This project was modified on the fly and was created using a lot of recycling material, I do not have a complete list of materials and it took me a few days to create the diagram of the electronic circuit of it, I hope to be able to update this publication with more data.

Este proyecto se fue modificando sobre la marcha y se creo usando mucho material de reciclaje, no tengo una lista completa de materiales y me tomo unos días crear el diagrama del circuito electrónico del mismo, espero poder ir actualizando esta publicación con mas datos.

Step 3: Code and Libraries

This is one of the most important parts that, to avoid problems I divided the code into parts: LCD, Inputs (Buttons, Selector), Outputs (Led, Speaker) and Ethernet, I debugged each part and didn't have many problems to unite everything in a single project, maybe in some future version I will use an ESP8266 that already has more hardware power.
This project uses 2 libraries "LiquidCrystal" for the lcd screen, which is already included with arduino ide and "EtherCard" for the ethernet module, this last one has to be downloaded from its web since it is not included in arduino ide. To download just log on to the git repository of the library at https://github.com/jcw/ethercard/, then press the green button with the text "Clone or Download" and finally open the link with the text "Download ZIP", you will start downloading from the ZIP file. Once you have finished downloading, locating and unpacking the ZIP file, this generates a folder, rename it to "EtherCard" and move the folder of arduino ide libraries, it is located inside the folder where the arduino ide projects are saved. If you were able to complete all the steps you already have the libraries for the project. We're going to schedule, just download the compressed file and extract it, this creates a folder "NetAnalyzer" with a file "NetAnalyzer. ino" inside it, you have to move this folder (with the file) to the location where you save Arduino IDE projects. then start Arduino IDE, configure board, port and open the NetAnalyzer project, just program the Arduino and you will be able to use the system.

Esta es una de las partes que mas importantes, para evitar problemas dividí el código en partes: LCD, Entradas (Botones, Selector), Salidas (Led, Parlante) y Ethernet, fui depurando cada parte y no tuve muchos problemas para unir todo en un solo proyecto , quizás en alguna futura versión use un ESP8266 que ya tiene mas poder de hardware. Este proyecto utiliza 2 librerías "LiquidCrystal" para la pantalla lcd, que ya se incluye con arduino ide y "EtherCard" para el modulo ethernet, esta ultima hay que descargar la desde su web ya que no esta incluida en arduino ide. Para descargar solo hay que ingresar al repositorio git de la librería en https://github.com/jcw/ethercard/, luego presionar el botón verde con el texto "Clone or Download" y finalmente abrir el link con el texto "Download ZIP", se iniciara la descargar del archivo ZIP. Ya finalizada la descarga, localizar y descomprimir el archivo ZIP, esto genera una carpeta,m renombrar la a "EtherCard" y mover la carpeta de librerías de arduino ide, se encuentra dentro de la carpeta donde se guardan los proyectos de arduino ide. Si pudo completar todos los pasos ya tiene las librerías para el proyecto. Vamos a Programar, solo tienen que descargar el archivo comprimido y extraer lo, esto crea una carpeta "NetAnalyzer" con un archivo "NetAnalyzer.ino" en su interior, tienen que mover esta carpeta (con el archivo) a la ubicación donde guardan los proyectos de Arduino IDE. luego iniciar Arduino IDE, configurar placa, puerto y abrir el proyecto NetAnalyzer, solo resta programar el Arduino y ya podrán utilizar el sistema.