Hello!
I wanted to share my problem and see if anyone has encountered something similar.
My project is Sprinkler timer.
Hardware:
1)Atmega328 with UNO bootloader on stripeboard (16Mhz crystal 18pf caps)
2)DS1307 on same stripeboard with battery (2x AAA) backup.
3)LCD 2x16 (cheapest) on other stripeboard.
4)ALPS rotary encoder with push-button together with LCD(connected to analog pins that are used as digital).
5) 3,3A 2x12V transformer.
6)L7805 5V regulator.
7)5V relays driven by IRF530.
So now to problem - while on UNO board and breadboard everything worked fine, except there were different power, other DS1307 and other LCD and LED's instead of relays. Now when I have put everything together on stripeboards several problems starting to show up:
1)from time to time odd characters appears on LCD and seems that LCD freezes (seems that atmega keeps on running).
2) and biggest problem is that time on DS1307 jumps back - only hours and something like 3 hours every time, and it happens randomly. In program there is separate function for time changing which can be called only by specific combination of rotary and push button manipulations, so I thought it couldn't be called by bugs. Only thing I can think of is that 12V AC wires from transformer are located ~5mm from DS1307 and it's crystal or defective DS1307.
Any suggestions?
Best regards,
Hakko