How to try this library

A project log for HardWire, the hardware of the Arduino Wire

An improved, low level controllable, Arduino Wire library by means of a simple hack.

enricoEnrico 11/19/2016 at 20:170 Comments

This library can be downloaded from the GitHub links. It can be added in you Arduino project by copying the HardWire folder to the library folder ofthe Arduino IDE and then selecting it to add in your sketch. For a more detailed documentation, follow the GitHub links posted in the project's page.

Practical deep examples are under development, but basically you can follow the official Wire guide. Here will be described only the differences between the original Wire and the HardWire, everything else is compliant with the guide linked above to the Wire.

All the functions marked as new in the WireHard are the core difference between the official Wire library. The normal Wire handle them automatically, always reading or writing in the shared buffer, transparently to the user.


Again, follow the official Wire guide. But this version supports a HARD_WIRE_MODE that shall be notified in the init. If mode is omitted, it is initialized following the normal Wire initialization and the additional handlers are still supported, but is not mandatory to use them. Actually, is never a mandatory to use the additional handlers.