X10 Community Forum

🔌General Home Automation => Automating Your House => User Modified Devices => Topic started by: Dave4720 on May 04, 2010, 05:07:34 PM

Title: True X10 Compatible Toggle Switch (Modification)
Post by: Dave4720 on May 04, 2010, 05:07:34 PM
True X10 Compatible Toggle Switch (Modification)

I have attached two PDF files (pages 1-4 and pages 5-7) with low-resolution photos, because of the 128kB limit.  You'll need both documents. 

Well, I finally got fed up with the non-toggle switch X10 solutions.  I’m tired of push button switches, soft-start, finding a reduced dim setting for some reason when I did not intend one.  I just want to enter a room, swipe my hand across an old-fashioned toggle switch as I have done for years - up for ON, down for OFF.  I decided to see if I could modify a KR19A Keychain Remote and interface it to a standard toggle switch.  Yes, I know of the ToggleLincs, but they are center-off and still don’t act/feel like every other toggle switch I have, and they are prohibitively expensive for me.

Disclaimer:  This is being presented along the lines of “hey, look what I did”, and should not be taken as “hey, you should do this”.  This is presented for academic purposes only.  Anyone who wishes to try this does so at your own risk.  The modifications enclosed herein require the knowledge of electronic engineering concepts and house wiring.  There is no guarantee of success in any other application other than my own.  Ok, now the lawyers are satisfied.

Let’s look as some of the X10 offerings.  WS12A - push-push square button.  I never liked those.  Can’t just “swipe the wall” and flick the toggle.  However, they do work without a neutral.  The Decora incandescent and relay controllers - again, push-push (but not push upper end for ON and push lower end for OFF), and doesn’t fit in with existing non-Decora switches. Also, they will not work without a neutral at the switch box.  SS13A “Stick-a-Switch” - nice, I use them in places.  Unwieldy to replace at an existing wall box location, especially a multiple gang switchbox. I have to aim to hit the small buttons, and I find left-ON, right-OFF to be backwards, and three switches are overkill if I just want to control one thing.  Then there’s the XPT module and associated faceplates.  These work similarity to my mod as they do NOT control AC at the switchbox, they only send AC commands via existing wiring (and demands a neutral) and also require a controlled device elsewhere. They do offer a nice variety of switch combinations via changeable switchplates, but again, none are a true toggle. And the INSTEON offerings - very nice and VERY expensive.  The ToggleLinc comes close, but the center OFF still bugs me. 

I just want to flick a toggle switch like the old days!  So I decided to build my own.

Initial Concept

I noticed the KR19A Keychain Remote was a small device with ON and OFF buttons.  This could be glued or double-stick taped to the back of a standard AC switch, and was narrow enough to fit within a standard wall switchbox, or within a single width of a multiple gang box.  The problem was how to interface the constant-connection standard AC switch to the push-ON / push-OFF operation of the KR19A.

Switch Interface

A standard single pole AC toggle switch was not a candidate because there are only two contacts, either connected or disconnected.  A standard 3-way AC toggle switch is a double-pole double-throw switch.  A common terminal is switched to either of two switch poles.  This was close to the one-button for ON and one-button for OFF of the KR19A, but the AC off was not a center-off style (like the ToggleLinc).  The standard 3-way AC toggle switch is in one position or the other, and remains in that position until changed.  The challenge was to turn this constant connection into a push-button equivalent.

KR19A Modification

I snapped apart a KR19A and found the typical conductive ink / conductive button approach.  The operation of the 1-ON and 1-OFF buttons utilized IC pins 1, 14, and 6. I needed to interface my AC switch these points.  I figured I could use the characteristic of a capacitor to emulate the push-release function of the KR19A keypad.  When a capacitor is switched into a circuit it acts initially as a short circuit.  After a period of time, the capacitor builds up a charge and acts as an open circuit.  By adjusting the resistor values shown in the schematic, I arrived at the R/C time constants that would result in the KR19A “thinking” a key was pressed for about one second.  The resistor in parallel would discharge the other, non-connected capacitor, so it would be ready for the AC toggle switch to be changed to its position.  So, basically, when I switch the AC switch ON, a capacitor “pushes” the ON button then stops one second later.  The other OFF capacitor is also discharged.  When I switch the AC switch OFF, a capacitor “pushes” the OFF button then stops one second later.  The other ON capacitor is also discharged.  This effectively interfaces the always-connected characteristic of the AC toggle switch to the push-release characteristic of the KR19A.


The standard operation of the KR19A had to be retained, that is, all keys (except dim) had to still function so as to program the House-Code and Unit-Code.  I believe my circuit keeps a very slight load on the battery, and the battery will need to be replaced at some time.  I would remove the toggle-switch- KR19A assembly from the wall box, pop the cover off, change the battery, reprogram the HC/UC and then reassemble.

This meant my modification could NOT interfere with the rubber keypad and the standard key press operation.  I used small magnet wire attached to the appropriate IC pins and routed them immediately away from the IC and around to the PCB topside.

NOTE:  I did find that I had to temporarily disconnect the wire from the common switch screw terminal - to remove the AC switch input from the KR19A - in order to use the KR19A buttons.  There was no problem to disconnect the wire, reprogram the HC/UC, and reconnect the wire.

I epoxied the wires at two tack-down points as they went past the battery as to not interfere with battery removal and replacement.  In the corner shown, I soldered the resistors and capacitors, using VERY SMALL surface-mount components, soldered larger 22awg wires to connect to the AC switch, and then encapsulated the wiring and components under epoxy.  The corner of the KR19A plastic case was cut out to allow the wires an exit point.   This construction allowed the KR19A housing to be easily separated, and the battery changed with no problem.  Once snapped back together, the key buttons are very accessible for reprogramming.  The modified KR19A was attached to the AC toggle switch using double-stick foam tape.

I had a thought about programming codes.  Normally, one has to skip codes when using a KR19A, as it takes two sequential unit codes.  So, if your House Code is ‘A’, and your desired device is Unit Code ‘1”, the second set of KR19A buttons take Unit Code ‘2’, like it or not.  This initially alarmed me, as my ceiling lights are on L1, L2, L3, and I already have controls and macros that use these assignments. I did not want to change to L1, L3, L5. No worry, however.  True, the KR19A controller for L1 will initiate L2 on button set 2 - but only if button set 2 were ever pressed, and they won’t be because the KR19A is inside the switchbox.  So, KR19A #1 controls L1 (and never used L2), and KR19A #2 controls L2 (and never used L3), and KR19A #3 controls L3 (and never used L4).  No problem assigning sequential unit codes!


Since this toggle-switch-KR19A assembly replaces the local wall switch, I had to get another switching device. I had several locations where I wanted to use this toggle-switch-KR19A assembly.  I was still annoyed with the soft-start modules, so they were out.  In two locations, since I had no neutral wire present, I was forced to use a WS12A.  With this modified assembly, I was open to ANY X10 powering module.  I chose the XPFM Single Pole Fixture Module for CFL compatibility, full 15A capability, and no soft-start.  Since this module is installed AT THE FIXTURE BOX, I knew a neutral would be present.  I hoped the relay CLICK would not be too annoying.


I already had replaced my old metallic switch boxes with the blue CARLON Nonmetallic Old-Work Electrical Boxes, so I had no concerns about RF and metal enclosures.  I also have a very sensitive WGL & Associates V572 RF Transceiver.

AFTER TURNING OFF ALL POWER, I accessed the switch fixture box.  I removed the existing WS12A switch; it could just as well have been a standard non-X10 switch.  I took the wires that are normally attached to the switch (hot in and switched out) and connected them with a wire nut.  I understood that the toggle-switch-KR19A assembly would switch NO AC at the wall location.  The wall location now simply served as a switch point for RF transmissions.

Since I connected the previously switched hot leads to the light fixture, I knew this fixture would now be 100% energized at all times.  Leaving power OFF, I installed the XPFM Single Pole Fixture Module to regain control over the application of AC power.

SIDE NOTE:  I had a horrible time installing the XPFM into the ceiling can - who ever said these fit a standard can has not tried it.  However, that is an issue of the XPFM and not my toggle-switch-KR19A modification.


I reassembled the ceiling lamp fixture and restored AC power.  I tested my circuit and toggle-switch-KR19A assembly.  Flick UP and the light turns ON; Flick DOWN and the light turns OFF.  Wonderful!  The relay click, being up in the ceiling was not objectionable, and for me, was quite an acceptable tradeoff for eliminating the soft-start, or being able to control CFLs.  The wall switch controls the light - just like a normal toggle switch - as well as any other X10 controller.  Sure, there is the X10 command lag of 1-2 seconds from the time I flick the switch until the XPFM responds, since I am not instantly controlling a local switch, but rather I am evoking the RF-to-AC Line Command function.  However, that is a characteristic of controlling an X10 device via the AC line from a non-local source.  Still an acceptable tradeoff in regaining standard toggle switch functionality.

Just like a standard 3-way switch, the switch position does not necessary mean the controlled device is ON or OFF.  If the switch is in the up-ON position, and another X10 device has turned the light OFF, I would need to flick the switch to the down-OFF position (issuing a meaningless OFF command), and then flick the switch to the up-ON position to turn the light back ON.  It is true that the UP position always sends an ON command, and the DOWN position always sends an OFF command, unlike standard 3-way switch, where the position of the switch relative to ON/OFF depends on the position of other switches, and it is possible to have an circuit OFF with both switches in the UP position.

True, there are additional tradeoffs associated with this toggle-switch-KR19A modification.  Below I list the pros and cons.  I’m sure there are others I have not thought of.

Toggle-Switch-KR19A Assembly Pros

True flick-up-ON, flick-down-OFF toggle switch control.
True standard AC toggle look and feel, no center-OFF.
Works in a box with NO neutral (works in a box with NO AC whatsoever).
Can control any (or a number simultaneously) of X10 control modules.
Can initiate an X10 macro.
Eliminates soft start if a relay module is used.
Works with CFLs if a relay module is used.
Low cost.

Toggle-Switch-KR19A Assembly Cons

Requires modification of an X10 device.
Requires an additional control module wired at the point of control.
1-2 second delay for device to respond (normal X10 command delay).
No local dimming control.
User may have to flick-off; flick-on if initial “ON” did not work.
Eventually needs battery replacement and reprogramming.

Final Thoughts

All and all this was a simple modification for me, and I had more trouble installing the XPFM module than creating the modified toggle switch.  But I love having my toggle switches back AND having X10 control as well.  (For instance, my outdoor PR511 Motion Sensor Floodlights also turn on the nearest inside ceiling light as well when triggered.)

Since this Toggle-Switch-KR19A Assembly requires no AC wiring locally, I could move a toggle switch location or add additional toggle switch to an existing circuit once I had wired in the local controlled device.  Yes, the SS13A “Stick-a-Switch” provides a convenient way to “stick” a switchplate to any wall location and instantly make a new switch without cutting a hole and mounting a switchbox.  However, since I am a fanatic about true toggle switch operation, cutting a hole and mounting a switchbox - especially WITHOUT snaking any AC wiring - is a true solution for me.

Title: Re: True X10 Compatible Toggle Switch (Modification)
Post by: Knightrider on May 04, 2010, 06:39:22 PM
I love it!

+1 from me!
Title: Re: True X10 Compatible Toggle Switch (Modification)
Post by: Brian H on May 04, 2010, 06:40:20 PM
 #:) What a great modification.
Thank you for the time and effort to make it presentable for all X10 users.

Helpful from me.  >!
Title: Re: True X10 Compatible Toggle Switch (Modification)
Post by: HA Dave on May 04, 2010, 08:49:41 PM
Impressive presentation. Helpful from me as well.
Title: Re: True X10 Compatible Toggle Switch (Modification)
Post by: -Bill- (of wgjohns.com) on May 04, 2010, 09:32:43 PM
 #:) Very nice!  A helpful from me.
Title: Re: True X10 Compatible Toggle Switch (Modification)
Post by: mbettez on May 05, 2010, 01:13:33 AM
I was so proud of myself for tearing apart a socket rocket to install it in a light fixture box, then I read this!

very nice mod, I'll definitely give it a try!

Title: Re: True X10 Compatible Toggle Switch (Modification)
Post by: JMac on May 05, 2010, 09:42:10 AM
Nice write-up.  I'll add this to my project list.  Very helpful......
Title: Re: True X10 Compatible Toggle Switch (Modification)
Post by: Dave4720 on May 05, 2010, 10:17:12 AM
You know, I got to thinking … for those who may be put off by the small SMT components mounted inside the KR19A, there is another approach.  It would make the external wiring to the AC switch a little more bulky, but you could move the Rs and Cs outside the KR19A and therefore be able to use larger - and more manageable - 1/4W resistors and leaded tantalum capacitors.  Much larger than the 1206 and 0805 components I used.

I would solder them as shown in the schematic, and heat-shrink the in-line assembly.  Then, the only real challenging soldering operation is tacking the wire to the small IC pins.

Just a thought.

Title: Re: True X10 Compatible Toggle Switch (Modification)
Post by: Brandt on May 05, 2010, 01:03:11 PM
This is very cool, I've been bothered by X10 switches as soon as I started to read about them.  There is nothing perfect about any of them. The closest switch to fit my needs is either the Switchlinc or Togglelinc, but is way to expensive because it comes with all that extra insteon fluff.

Right now in my main passage-ways I have older PCS x10 switches. They are amazing...The only thing missing is being able to update my HA software when used locally.

I think the primary selling point of the X10 switches, is to be able to control your lights by remote.

I think a perfect solution for X10 switches would be (aside from the style (toggle, paddle, etc..)):

Controllable by remote.
Controllable locally
Optionally the ability to enable or disable soft start
Being able to transmit their x10 house/unit code when toggled locally so any HA software can be updated.

I read about someone attempting to use those wire wrapped rings ( don't remember what they are called ) to detect the flow of electricity to the load, and then wired those to the attic so some kind of transmitters or maybe it was a powerflash.

 #:) :)+
Title: Re: True X10 Compatible Toggle Switch (Modification)
Post by: HA Dave on May 05, 2010, 02:53:40 PM
I was so proud of myself for tearing apart a socket rocket to install it in a light fixture box, then I read this!

Hey! I don't remember reading about that modification. Did you remember to post it?
Title: Re: True X10 Compatible Toggle Switch (Modification)
Post by: bitman on May 05, 2010, 05:16:48 PM
Very industrious!

I'll do it!  -:)
Title: Re: True X10 Compatible Toggle Switch (Modification)
Post by: Brian H on May 05, 2010, 06:40:14 PM
I must say anyone that can get a Socket Rocket apart and use its insides is a talented person.  :)%
I have broken a few but never got the parts in one piece.  ???
Title: Re: True X10 Compatible Toggle Switch (Modification)
Post by: mbettez on May 05, 2010, 11:00:19 PM
I was so proud of myself for tearing apart a socket rocket to install it in a light fixture box, then I read this!

Hey! I don't remember reading about that modification. Did you remember to post it?

Ask and you shall receive.  The socket rocket mod is now up.
Title: Re: True X10 Compatible Toggle Switch (Modification)
Post by: HA Dave on May 05, 2010, 11:06:48 PM
........ The socket rocket mod is now up.

And very well done too! http://forums.x10.com/index.php?topic=20358.msg114842#msg114842
Title: Re: True X10 Compatible Toggle Switch (Modification)
Post by: JMac on June 08, 2010, 07:02:48 AM
Thanks again - Dave4720.  I was able to modify the KR19A using your well-written instructions.  I'll have to admit that soldering the magnet wires to the IC pins required the use of some magnification for this old dude, but otherwise it was a snap.  I used standard sized resistors and capacitors (as per your later suggestion)on a Radio Shack project board to make it a little easier. Here's another helpful.
Title: Re: True X10 Compatible Toggle Switch (Modification)
Post by: Dave4720 on November 08, 2010, 06:35:23 PM
In a thinly disguised attempt to pat myself on the back, I can report that my toggle switch modification has worked well the past few months.

I did change the capacitor to 10uF to lengthen the pseudo “button press” to a healthy one-second plus.  The lights now work as well as X10 does in general … meaning rare-but-non-zero malfunctions (mostly a light not coming on when switched).

It must be working well because I caught myself flicking the toggle switch and just entering or exiting the room.  When I first installed them, I always hesitated and waited for the PLC delay before moving on.  Now, I don’t even think about them not working.

I even kinda like the relay “pop” noise and am now used to it.  And oh-so-good for the switchbox location with no neutral.

Another advantage - not so much from my mod - of having the overhead box full time hot with a XPFM for switching, is I’m going to run a lighting and general-purpose power pole near the overhead light.  I can steal full-time hot from the nearby box MUCH easier than running a new circuit, and I can do so because the wall switch does not switch the power to the overhead box, rather it switches a XPFM to the light.

I love it when X10 allows creativity and when it works.  ;D
Title: Re: True X10 Compatible Toggle Switch (Modification)
Post by: dhelms29505 on June 13, 2011, 01:32:36 AM
I was wondering where the link is for the attachments? I maybe missing it viewing it from android.
Title: Re: True X10 Compatible Toggle Switch (Modification)
Post by: Brian H on June 13, 2011, 06:10:57 AM
The two attached files are near the bottom of the original post in the thread.
Shows on my screen as maybe a light blue.
Title: Re: True X10 Compatible Toggle Switch (Modification)
Post by: Noam on June 13, 2011, 09:41:23 AM
I remember reading this several months ago, and thinking how clever it was. True, the whole hassle with changing the battery and having to remove a wire to reprogram is there, but depending on how many times a day to use the switch, the battery could potentially last for years.

Another way to approach it, if you had the ability to fish wires from that box, could have been to wire a standard (single-pole) wall switch to the contacts of a PowerFlash module, and locate that somewhere out of the way.

The PowerFlash is more expensive than a keychain remote, and they take up an outlet (which, if you have several of them, can be its own nightmare to deal with), but they never need battery replacements, and you don't need to deal with modifying anything.
I don't recall the different modes offhand, but there is a mode for a "momentary" contact, and for on/off, based on the status of the switch you wire to the contacts.

Several years ago, I read instructions on Ido Bartana's website (www.idobartana.com) for modifying a plug-in "tabletop" controller to act as a contact-closure module (like a Powerflash), but with several sets of contacts.
It wasn't hard to do, and that could also be used for an application like this.

I'm not saying your approach is bad (in fact, I think it is brilliant!), just thinking of other ways to do the same thing.
Title: Re: True X10 Compatible Toggle Switch (Modification)
Post by: Brian H on June 13, 2011, 10:44:08 AM
If it is a dry contact only and not a low voltage input.
WGL makes {made} a eight input powerflash style module PF8. Though I looked just now for a link to it and it was not showing on the WGL site.
Title: Re: True X10 Compatible Toggle Switch (Modification)
Post by: JTTrojan on October 30, 2012, 01:42:24 PM
Hi, first time poster here.  I've been scouring the net for a "normal" toggle switch x10 transmitter and just came across your mod.  I think I'll attempt it, but I have a question.  Can I also hardwire a light to the switch for normal direct operation, or will this line voltage mess up the control of the KR19A transmitter? 

I've got a regular wall switch already wired to turn on LED undercabinet lights in my kitchen, but I want it to also simultaneously turn on undercabinet lights in two locations on the other side of the room.  Running romex to these two locations is not going to happen, so I need an x10 solution.   Thanks for the help!
Title: Re: True X10 Compatible Toggle Switch (Modification)
Post by: dave w on October 30, 2012, 03:24:44 PM
Can I also hardwire a light to the switch for normal direct operation, or will this line voltage mess up the control of the KR19A transmitter?  

Yes the line voltage will smoke the KR19 electronics....in a big way.

However, IF you can find a DPDT wall toggle switch it would work. Lowes, Home Depot etc. may have them. If not, try Grainger. It is going to be hard to find

I have no idea if this is allowed by "code".

Title: Re: True X10 Compatible Toggle Switch (Modification)
Post by: Dave4720 on October 31, 2012, 05:06:22 PM
But ... the mod uses a SPDT (Single-pole DOUBLE-throw) switch.  The switch has TWO positions, and the cap acts to simulate a "push-release" action.  One side operates the KR19 'ON' button, and the other side operates the KR19 'OFF' button.

One side of a DPST (Double-pole SINGLE-throw) switch would only operate one of the KR19's buttons ... you could never operate the other side.  You need the double-throw.

You would need a DPDT switch ... if they even make one.  And definitely mixing AC and low voltage in the same box is not to code.  Although I don't always follow the code Gods, I would not mix AC and low voltage in the same box.

I'd use the KR19 switch to control several XPFM relays in the fixture box, all set to the same code.
Title: Re: True X10 Compatible Toggle Switch (Modification)
Post by: dave w on October 31, 2012, 08:35:22 PM
Yeah Dave4720, I forgot you need an OFF signal also.  :'  Thanks, I will correct my post.
Title: Re: True X10 Compatible Toggle Switch (Modification)
Post by: JTTrojan on November 05, 2012, 06:00:44 PM
Thanks Dave and Dave.  Back to the drawing board I guess.

Is there a transmitter (or transmitter mod) that would basically act as a relay to transmit an ON signal when it detects a voltage and transmit an OFF signal when the voltage is removed?  Maybe a modified DS10a?

What I have now is a 120V wall Decora switch with Romex going to a box hidden behind the wall housing a little transformer (think "wall wart").  This transformer converts the line to low voltage for LED strips.  The low voltage wire is then fed from the box through the wall to a couple different spots to power undercabinet lighting.

So... I'm thinking I could take a feed off of the low voltage line (it's something like 6V) to trigger the "relay".  Thus, when I flip the switch it not only lights up the LEDs hardwired to it, but also activates two XPFM modules or hacked socket rocket receivers to turn on two other LED strips across the room.  I feel like there should be an easy solution here to avoid running romex, but I'm new to this whole x10 thing. 
Title: Re: True X10 Compatible Toggle Switch (Modification)
Post by: Brian H on November 05, 2012, 06:29:58 PM
DS10A is a Security type module.
It does not send a standard X10 RF On and Off command.

If you wanted a power line X10 command. The hard to find now PF248 Powerflash module. Can send an On and Off power line signal from either a dry closure or a low voltage DC or AC signal.
PSC01 is the X10Pro version of the Powerflash.

Dry closure only. You could use a Insteon I/OLinc and program an optional X10 primary Address into it.
Title: Re: True X10 Compatible Toggle Switch (Modification)
Post by: bkenobi on December 03, 2012, 11:01:47 AM
I think your best bet is to just use Insteon ToggleLinc switches.  They are pricey, but the one I have installed gets really good ratings on the WAF scale!  With these switches, you can control a local load as well as remote loads.  In my case, I use the switch to control a remote module by having the switch send a PLC command.  What you want to do sounds like this plus local control which would work fine.

The only thing to be aware of is that the module is a bit larger than the WS467 and it requires a neutral wire.  If you can handle a slightly larger module (which you would need if you were going to use this mod anyway), and you have a neutral, I'd say you would be good to go (and up to code)!

Title: Re: True X10 Compatible Toggle Switch (Modification)
Post by: npaisnel on April 18, 2021, 02:49:21 AM
That is brilliant
I am here searching for hacks/ solutions like this to create a solution to the single light/ two switch issue,
Wondering if there would be a way to create a DPDT switch out of a pair of LMM31’s or similar....

How did this hack of the remote hold out ?