I started a project with multiple I2C devices with my Yun which worked great. Now I wanted to continue the project, connected everything back together and now none of the I2C devices are recognized. I ran the I2C Scanner sketch, but when something is connected do D2 and D3, the execution hangs until I unplug the device(s).
I know at least some of the devices work, because I just removed them partly from another project and if I run the same I2C Scanner sketch on an Duemilanove clone with a 328, all three devices appear with their addresses.
Okay, I "repaired" it by myself, even if I don't know how:
I thought I should test if the two pins even work. So I loaded up the default blink sketch and made it that two LEDs connected to D2 and D3 blink alternating. At fist only D3 was blinking, changed wires, still only D3. So no error in wiring.
Then I search for the 32U4 Datasheet and searched for the pin out. Luckily it easy to access the pins, so I hold my jumper wire directly to the solder pad next to the pin. And shure enough, the LED started blinking. But still no blinking when connected to the D2 header.
I grabbed my trusty multimeter, checked D3 (less than 2 ohms) and D2: 1.8 ohms :o
Connected the wires again, plugged in the USB cable and boom: it blinked again!
Fired up my old sketch I wanted to work on and connected those wires: All the I2C devices started working.
I have no idea what the multimeter check changed on the board, but now it works again!