Can I modify an X-10 Appliance module to use a duty cycle.

I need to modify an X-10 appliance module so it will turn on when activated with the motion sensor but the modification I need is to limit the ON time to a duty cycle.   Here's the reason.  I use an X-10 Eagle Eye motion sensor to activate a recirculating hot water system.  In the morning, the motion sensor is activated, the recirc pump turns on and my solar hot water tank is circulated throughout the house.   There are (2) problems with the stock circuit.

1) the appliance module sometimes stays on randomly and can drain the hot water tank overnight, or worse, trigger the electric heat and run up a huge bill. So, the Appliance module definitely needs a forced cycle at that unit to prevent running continuously.

 2) when people are always in the room with the motion sensor, the pump only needs to stay on for a few minutes per hour to keep hot water in the recirculation system, but when motion activity is continuous then the motion sensor stays on and triggers the circulation pump to run continuously thereby draining the solar tank needlessly.  

I've believed X-10 could do well by adding a duty cycle to the module but maybe someone here has the ability to guide me how to do this.  My duty cycle would be something like 3 minutes per 60, for example and preferably adjustable so other applications can use it.  So, once activated by an X-10 signal, the appliance module would run no more than duty cycle allows regardless of the motion sensor commands.  However, if the motion sensor commands OFF I suppose that makes sense to continue to use that command.

My preference is to put the components inside the X-10 Appliance module if that is possible and safe.  Putting controls in the Motion sensor does not prevent the pump running beyond the duty cycle and adding PCs or other controller boxes is not desired.   However, if a microcontroller would work and fit then I think it could be the basis for a much more functional X-10 module.  I've researched the other Appliance Module modifications but so far I don't see anything that would extend to this feature.   I do appreciate your ideas so thanks in advance.

sort by: active | newest | oldest
frollard5 years ago
A roundabout way would be to get 2 555 timers in monostable mode (easy google)

One that gives 3 minutes, the other that gives a 60 minute timer --

Have it hooked up that the 3 minute operates a relay to the appliance, so when the power comes on the appliance runs for 3 minutes

Have the other 555 hooked up to interrupt the activation of the first timer for 60 minutes. That inhibit timer could just prevent the first timer from seeing the power coming on.

My personal fave way would of course just be to use a microcontroller -- it's overkill but a LOT more customizable by just changing a few lines of code rather than having to rewire things. Arduino and pickit basic are both very beginner friendly.
django_isa4 years ago
Hello solarwater!
It has been a year and you probably already figured out a solution. However, just in case, I want to let you know that I have an eagleeye on my basement stairs so I will know if somebody went down.
The eagleeye that I have can be set up to send an ON signal to an x10 appliance module and not send the OFF until the parameter entered on the eagleeye has expired. In my case, I used the max which is about 5 hours on.
If you have PC control and monitoring of your X10, can't you do it all with macros in there ?

Failing that, you could add a microcontroller somewhere that "pushes the buttons" of one of the X10 lightswitches, to operate your load.

solarwater (author)  steveastrouk5 years ago
I would prefer the x-10 appliance module to stand alone and provide the duty cycle required. A small mod within the x-10 unit would be a big benefit for users of this device instead of adding the complexity of a PC. Thank you for your idea.
I think you forget the X10 bit then, and think of this as a switch activated by an ir sensor.

Is the performance you need also related to time, or must it always work as you indicate - pumping continuously on occupation, then dropping to a duty cycle ?

solarwater (author)  steveastrouk5 years ago
I like X-10 only because the occupied rooms and the pump are at different ends of the house so the communication is easy and cheap this way. I didn't want to re--invent the communication as the Eagle Eyes and the Appl Modules are cheap to acquire.

The pump would activate upon occupation (as in the morning) but nothing to do with Time-of-day since the schedule is never the same. Most of the recirc pumps have a timer but it doesn't work for my purposes and many other people. Much of the time, rooms (kitchen bathrooms) are not occupied and winter solar is the scarce commodity so I don't want to waste it by having the pump cycle beyond what is necessary to flush the lines with hot water (about 3 minutes). But, when I do occupy the room, I want the pump to be on that duty cycle because the time to get hot water is excessive and wastes a ton of water.

Once the pipes are filled with hot water there is no need to pump any longer, at least until the next duty cycle completes and the sensor detects occupancy.

Most recirc systems have timers only and waste a lot of energy. If we could tailor a simple system to charge the lines with hot water based on duty cycle and occupancy, you have the absolute best system around for conserving energy and I think it would be valuable to others. X-10 just seemed to be the easy starting point and I have all the components working today except for this feature. Thanks for your suggestion.
So, if we have an X10 IR, talking to a "Black Box", which in turn talks to the X10 appliance module, we're good ? The function of the Black Box is what we need to create ?

solarwater (author)  steveastrouk5 years ago
That may be right. As I recall, the X-10 protocol sends dual signals for both on and off and we want those to go through to the Appliance Module (AppMod). Either the Black Box interrupts the AM or the Black Box controls the AM. Seems that it would be easier to let the AM deal with the X-10 signals and just interrupt the ON cycle but that's why I'm here. I don't think we want the Black Box has to interpret X-10 signals which are already passing through now. I have lots of schematics for duty cycle controls but this involves line voltage so I'm unfamiliar how to proceed.

I believe the AM has a relay that energizes the circuit. My hope was a duty cycle control that would interface with that relay. I think that could be the black box part. Thoughts?
I think its easier to let the box do the work for you. Messing inside mains-live equipment is not recommended unless you are qualified. A TW523 and an arduino is much safer, and would lend itself to other projects.

OK, you need an Arduino, and the 30 dollar TW523 PLI. The rest is software, and THAT is all in here:


iceng5 years ago
You are Over-thinking the problem.
I heat my bathroom with a hot water to air exchanger circulated by
electric pump from the hot water heater that is simply controlled by
a wall thermostat  ( when cooler then set closes a switch and
opens that switch when warmer ) and I always have plenty of hot
shower water for two.

solarwater (author)  iceng5 years ago
Iceng: I need a circuit that activates on a motion sensor but will not exceed a duty cycle. A thermostat will only provide temperature control but I need to acknowledge occupancy (Eagle Eye motion sensor) and then limit the on time by duty cycle. Thanks for the comment though.
Have the eagle eye supply the 24VAC (transformer) to the thermostat.
No eye no activity and when occupied still don't run out of hot water.

Anyway you do it, good luck !
solarwater (author)  iceng5 years ago
Thanks. A thermostat won't work. I am charging pipes with hot water. It only needs a 3-minute charge once per hour and only when occupied in the premises. A thermostat doesn't do it. Let's move on.