board with all the components soldered on. Very few parts indeed. I could've soldered the ICs directly onto the board but I make it a policy to always use sockets. If ever I decommission the board I can always recover the ICs instantly and reuse them without the hassle of desoldering and without having solder all over the pins.
The only part that I goofed was the triac (TO-92 package). It was an old part and was heavily oxidized. I cut corners and didn't clean it sufficiently and so paid for with leads that wouldn't take on solder. After snipping off the excess leads I dabbed solder on the freshly exposed metal thereby finally making good contact. That's the reason for the blobs of solder on them.
The board is now installed and the water heater timer is working as designed. It's controlling how long a 2500-watt heater is kept on. Just a brief description of the operation:
Countdown time depends on how many times the user presses the momentary contact switches.
Initially, momentarily pressing switch A sets time to 2 minutes. Thereafter each momentary press of A increments time by 2 minutes.
Initially, pressing switches A and B at the same time sets time to 5 minutes. Thereafter, each press of A will increment the time by 5 minutes.
If the user makes an error pressing B cancels the countdown and s/he can begin anew. When time has been set and after around 3 seconds with no button presses the heater is turned on and countdown commences.
Initially, keeping A depressed for several seconds (until the "heater started" beep tone sounds) will set time to 30 minutes and immediately turn on the heater.
Once countdown begins pressing either switch A or B will abort countdown and heating.
Because there are no display readouts, a sonalert buzzer and an LED are used as feedback to the user. 2-min and 5-min increments, 30-min set time, abort/cancel all have different beep patterns so the user doesn't get lost, so to speak. The LED flash pattern is in sync with the buzzer. Once countdown starts the LED blinks once every second.