I build a lot of data logging devices, and I frequently use a real time clock and a EEPROM memory IC with various PICS using an I2C interface. While testing a new prototype I noticed that voltage would frequently shift from ~5.6V (normal) to ~3.3V. After much desoldering and breadboarding, the problem appeared to be related to the the 10K pull-ups I was using for the I2C interface. Without the pull-ups the voltage stayed at 5.6. But the pull-ups are necessary. So after trying several hardware solutions, I simply set the SCL and SDA pins high early in the program, and keep them that way. This seems to fix the problem, but I am still a bit baffled by it. Why would the pull-ups cause a voltage drop?? Just thought I would share this in case anyone else sees something similar.