Due and I2C

Bought a DUE a month ago. Works great EXCEPT the I2C. All my I2C projects work great on a MEGA2560 but will not work on the DUE. I tried removing the 1k pull ups on the DUE board as they are too small and the project boards I have have pull ups on them. I wired into the 3.3 v supply for the projects to make them compatable with the DUE. Nothing seems to work.

I wired into the 3.3 v supply for the projects to make them compatable with the DUE.

Are they supposed to run off 3v3?

Any data sheets for the "projects"?

Have you connected the GNDs of all components?


I tried both the LSM303 digital compass and TSL2561 light sensor. Both in breakout board form from adafruit.

The have gotten the one wire digital sensor from dallas working as well as a GPS module working (via the UART) on the DUE and the MEGA2560.

I just can not get the I2C stuff working on the DUE. I wire it the same on the DUE as I do on the MEGA. Both boards can be powered up with 3.3 or 5v. I am using the wire.h library.

I understand from these forums that this maybe a DUE related problem?


Please post code & schematics...


mega has 5v I2C, Due is a 3v3 board, so i assume it has 3v3 I2C.

have you checked your peripherals can run at both voltages,

Due does not like 5v on its IO pins,

To date, Adafruit has not stated their items are Due compatible. It's on their to-do list but not done.

Thanks for the suggestions.

Turns out the pull up resisters on the DUE board for the I2C pins are too small. I swapped them out for 10k and the adafruit compass and light sensor work great now!

Yes, the 1k pullups on the DUE's I2C lines really are a mistake on the pcb. They are unnecessarily too small. I've griped about this before.

I always remove them, and use my own.