EtherSia
A minimal IPv6 Ethernet library for Arduino.
Classes | Macros
EtherSia.h File Reference

Main header file for EtherSia - include this in your project. More...

#include <Arduino.h>
#include <stdint.h>
#include "esendian.h"
#include "MACAddress.h"
#include "IPv6Address.h"
#include "IPv6Packet.h"
#include "Socket.h"
#include "UDPSocket.h"
#include "PingClient.h"
#include "TCPServer.h"
#include "HTTPServer.h"
#include "TFTPServer.h"
#include "Syslog.h"
#include "enc28j60.h"
#include "w5100.h"
#include "w5500.h"
#include "dummy.h"
#include "LinuxSocket.h"

Go to the source code of this file.

Classes

class  EtherSia
 Main class for sending and receiving IPv6 messages using the ENC28J60 Ethernet controller. More...
 

Macros

#define ETHERSIA_MAX_PACKET_SIZE   600
 The maximum size (in bytes) of packet that can be received / sent. More...
 
#define ROUTER_SOLICITATION_TIMEOUT   (3000)
 How often to send Router Solicitation (RS) packets.
 
#define ROUTER_SOLICITATION_ATTEMPTS   (4)
 How many times to send Router Solicitation (RS) packets.
 
#define NEIGHBOUR_SOLICITATION_TIMEOUT   (500)
 How often to send Neighbour Solicitation (NS) packets.
 
#define NEIGHBOUR_SOLICITATION_ATTEMPTS   (5)
 How many times to send Neighbour Solicitation (NS) packets.
 

Detailed Description

Main header file for EtherSia - include this in your project.

Macro Definition Documentation

◆ ETHERSIA_MAX_PACKET_SIZE

#define ETHERSIA_MAX_PACKET_SIZE   600

The maximum size (in bytes) of packet that can be received / sent.

This includes the Ethernet frame header and IPv6 header (54 bytes). The maximum Ethernet frame size (MTU/MRU) is typically 1500 bytes.

The value is used to size the buffer that is used for both sending and receiving packets, so it should be bigger than the biggest packet you want to send or receive.