Thanks for all the suggestions guys.
I picked up a pair of snap-on ferrite cores from radioshack. They fit the USB that came with my Uno perfectly: http://www.radioshack.com/product/index.jsp?productId=3012599
Unfortunately they don't help. After it crashed again, I put the kludge back...
Everyone who said the cable was right.
I dug through /home/brewpi/logs/stderr.txt and found a few spots that looked like data corruption:
Aug 06 2014 18:34:27 JSON decode error: No JSON object could be decoded: line 1 column 0 (char 0)
Aug 06 2014 18:34:27 Line received was...
It stopped working again. Hooked up external power to the Arduino Uno and restarted everything.
Same deal. Worked for about 20 minutes and then fails.
On-page LCD reads "Cannot receive LCD text from Python script," script status says "Script not running," and the status reads "not loaded."...
The USB is connected to a Raspberry Pi. I went with a 2 amp power adapter for it since I knew it was going to be powering the Uno.
I'm pretty sure the Uno is still doing it's job when this happens, it just loses communications with the RPi.
It's working at the moment but if it goes down...
My setup works for about 30-ish minutes before filling the logs with this error:
Aug 08 2014 18:40:03 Socket error(32): Broken pipe
Traceback (most recent call last):
File "/home/brewpi/brewpi.py", line 444, in
conn.send(json.dumps(lcdText))
error: [Errno 32] Broken pipe
Aug 08 2014...