Background: I've got a little board that runs my furnace, replacing a simple relay board that used to be there. The board is controlled by a generic PC sitting next to it, and itself talks to three digital thermostats:
formatting link
The problem I'm having is glitches. The latch that drives the furnace (latch->opto->alternac) occasionally latches in a random state, and the furnace starts up (or shuts down) only to revert a second or so later when the computer sends an update. This isn't rocket science; the signals are nice and slow (parallel port) and all ttl levels.
I've added 0.1uF bypasses across each IC, and a 4.7uF across the power leads, which reduced the glitching but didn't eliminate it. I added a bigger cap across the +5 but it still glitches.
The problem stems from an electrostatic filter in the furnace. Yup, bug zapper. Bzzt, glitch. Bzzt, glitch. Without the bypasses it would glitch randomly, now it seems to glitch only if the filter is sparking (still random, though).
The power for the board is tapped from the +5 in the PC over the ribbon cable. Yeah, not the best of designs but it was only the first design. I'm thinking ethernet or usb for the next one. Anyway, the
+5 is brought to the board, and distributed to the thermostats too. I'm thinking of using the +12 instead, with a 7805 at each board, to clean up the power.
Any thoughts on this? Am I wasting my time because of the ribbon cable? Do I only need more caps? Any ideas about where the glitch is entering the system?