RHT Logo

Reflective Heat Technologies Arduino IPv6 Web Server

RHT uses the Arduino platform for its solar thermal system sensors. Given that many sensor networks will be built using IPv6 in the future, RHT has developed an IPv6 Ethernet library.  This work is offered to the arduino community for its collective benefit.

The official Arduino Ethernet Shield is based on the WizNet 5100 chip, which implements the IPv4 protocol stack in silicon.  As a consequence, the Arduino Ethernet Shield cannot be used to implement an IPv6 stack.  

To implement an IPv6 stack, it is necessary to use a shield based on hardware that permits the management of IP and Ethernet layer functions.   Shields based on the MicroChip ENC28J60 chip (such as those sold by Ekitszone and Nuelectronics) are suitable for the implementation of an IPv6 or dual IPv4/IPv6 stack.  This approach requires the TCP state machine to be implemented in software and results in more complex arduino code.

The RHT v6EtherShield library is based on the EtherShield library developed by Pascal Stang, Xing Yu, and Guido Socher.  The ipv6etherhield developed by Guenther Hoelzl was tested but found to be unstable and would not compile on the most recent versions of the Arduino Integrated Development Environment (IDE). Thank you to all of those whose work was used as the basis of this effort.

The RHT v6EtherShield library is designed to run on the Arduino Mega platforms, and as a result requires that the connection of the ENC28J60-based shield to the Arduino Mega be modified. Pins 10, 11, 12 and 13 of the ENC28J60-based shield must be bent out (or cut), and these pins of the shield be connected (by adding wires) to the Arduino Mega pins 53, 51, 50 and 52 respectively.

The RHT v6EtherShield supports the following addresses:

The RHT v6EtherShield web server example provides a minimal implementation of an IPv6 protocol stack as follows:  

Potential Applications:

Arduino IDE versions:

To use the RHT v6EtherShield library:

Questions and comments may be addressed to ipv6@reflectiveheat.com.