Where is Wire.h?

I'm having trouble with i2c on the DUE and am aware that there is a Wire fix for the DUE as of July 1, 2015 that may help.


Where is the Wire library? I do not see it in the libraries folder, or anywhere else I have looked. I see all the other standard libraries except SPI, EEPROM and Software Serial. I have the current 1.6.5 IDE.

How would I include a different library for Wire?

I don't see the Wire Fix in the release notes: https://www.arduino.cc/en/Main/ReleaseNotes

For Windows try: C:\Program Files\Arduino 1.6.5\hardware\arduino\avr\libraries\Wire.h

Of course your directory structure may differ slightly.

<directory where preferences.txt is>/packages/arduino/hardware/sam/1.6.4/libraries/Wire/

For Windows try:
C:\Program Files\Arduino 1.6.5\hardware\arduino\avr\libraries\Wire.h

is for AVR only.

<directory where preferences.txt is>/packages/arduino/hardware/sam/1.6.4/libraries/Wire/

is for AVR only.

Makes sense but I don’t see a sam folder, only the avr.

With that said, updating the Wire.cpp in the avr directory fixed my problem. Good karma to you both.

I love the power, data size and memory of the SAM but there are few rough edges.

All the Arduino built in header files can be found here:-
C:/Program Files/WindowsApps/ArduinoLLC.ArduinoIDE_1.8.10.0_x86__mdqgnx93n4wtt/hardware/arduino/avr/cores/arduino

You may have to take ownership of the directory to be able to browse here.

If you want to search files, there is another way I’ve been using for years.

Install Cygwin which is a Unix emulator, it runs in a window, if you type ‘df’, you can see all your windows drives mounted e.g.

Filesystem 1K-blocks Used Available Use% Mounted on
E:/cygwin64 231983156 129486096 102497060 56% /
C: 438641744 200648820 237992924 46% /cygdrive/c

Navigate to where you want to search in files for something and use grep

In fact, you can use all the normal Unix tools on your Windows files
search/replace using sed etc. etc.