Thanks, William. I recently bought and reverse-engineered a smart outlet strip (i.e. master/slave power switch) to see how someone else solved the problems I had to solve. It used a more complex method to save standby power consumption. It used an opto-coupler and 4 diodes to switch in an extra high voltage capacitor when the relay is on to prevent burning up surplus power in the zener diode when the relay is off. BTW, the high voltage coupling capacitor provides about 20mA per microfarad of available current at 12V0VAC, 60Hz.
I liked your design used in Gadget #195, much better than the one I have always used to derive appliction poiwer directly from teh line VAC. It provides a lot more flexibility in both available voltage and current. As for the code comments... comments can always be improved. I usually only comment on the major loop or function boundaries and when ever there is a user modifiable variable, table or other issue.
Wow! Thank you William, for using my SCR voltage regulator! I invented it back in 1978. I tried to publish it in EDN magazine back then and they didn't want it. It's loosely regulated, but it is very energy efficient. When the relay is off, you're not burning up power in a zener diode. You already know that you can add a small voltage regulator if you need more precise regulation, like for the microcontroller. You may have seen it used in three of my GF projects, GF#195, the master/slave switch, GF#198, the remote fan control and GF #218, the space heater thermostat. I have used it in a number of unpublished other gadgets that I have around the house as well. Maybe it was a good idea, after all, huh? I've had a couple of people ask me about it. At least one person appreciates it. It's also more robust against power surges than a zener diode regulator. The master/slave power switch and several other gadgets I have that use the SCR circuit have survived many thunderstorms here in Florida, including one that took out half the electronics in my house.
Yours is a great project! Some comments on your ASM code would have been nice, though.
When I was young my dad used a low-tech version, although it was more of a general safety thing rather than to keep me out of it. Basically, he wired the main outlets in the workshop through a switch mounted in a lockable box about 6' off the ground (although I dont' think the box was ever actually locked). It box also had a red indicator bulb to remind him to shut off off workshop power when he was done. This kept some of his older tools from being a potential hazard (fire or otherwise) when nobody was around. Later, he upgraded the circuit to include a GFI when those things became common.
Festo's BionicKangaroo combines pneumatic and electrical drive technology, plus very precise controls and condition monitoring. Like a real kangaroo, the BionicKangaroo robot harvests the kinetic energy of each takeoff and immediately uses it to power the next jump.
Design News and Digi-Key presents: Creating & Testing Your First RTOS Application Using MQX, a crash course that will look at defining a project, selecting a target processor, blocking code, defining tasks, completing code, and debugging.
Focus on Fundamentals consists of 45-minute on-line classes that cover a host of technologies. You learn without leaving the comfort of your desk. All classes are taught by subject-matter experts and all are archived. So if you can't attend live, attend at your convenience.