I have a project using an Arduino Mega 2560. It has four DS18B20 temperature sensors, data logging. voltage sensing, a RTC, bluetooth. It all controls 4 solid state relays. It ONLY works correctly if I power it with my desktop PC through USB. It will work for hours, turning the relays on and off at the appropriate times. Log to the data card and output through serial via bluetooth to my phone. Very, very rarely it will show -196.6° F on data and serial, not a big deal. I should add that the exact thing happens when I use a very basic sketch that only reads the temps of the 4 sensors and sends the readings to serial.
The problem is I can't use ANY other power source to the Mega, laptop through USB, 7.5V at VIN pin, 12V at power jack, 5V at USB. When using these other power sources the temp readings randomly, on all four readings go to -196.6° F sometimes 4 or 5 in a row. Speed of readings makes no difference. Slowing down to 3000 mS makes no difference.
I can't see much, if any, noise difference anywhere by probing power pins with an oscilloscope with any of the power sources. I've tried adding extra grounds just to make sure everything is grounded good.
Wiring diagram
View of project.
Two views of how secondary board is wired
Any suggestions?
Problem solved, it was my benchtop power supply.