Modifying the Wall Switch

Modifying 110v to 220v

Credits: based on a description from Hans Attersjo. Source no longer available on web


Image of modification schematic (100k)

  1. Change C1, the big, usually blue, capacitor marked 2E684 from 0.68uF/ 250V to 0.33uF/400V. Check that the height is not more than big electrolytic capacitor in the other corner (around 13mm). One can use  one 0.22uF/400V and one 0.1uF/400V capacitor in parallel to replace C1. The 0.22uf placed in the original mounting holes and the other one, glued upside down in the empty space on the right side of the choke. Don't drill holes there, the house code switch is on the other side of the pcb! One side of the choke is BTW connected to C1 so you can connect on side of the 0.1uF straight to the choke.
  2. Change C2, the small, usually blue, capacitor marked 2E104 from 01.uF/250V to 0.1uF/400V. One can mount it on top of the components up in the top left corner.
  3. Change R2 from 22 Ohm 1W to 47 Ohm 1W.
  4. If you have a WS477 three-way switch, change also D11 from 1N4004 to 1N4006 or 1N4007. Also change R11 from 10K 1/2W to 22K 1W. A 22k 2W would be safer in case the slave switch got stuck but there is not a lot of space.
  5. Local control gives you the possibility to dim the lamp also from the switch. With this enabled, you can press and hold the button to cycle through the available dim levels. A normal press of the button will still turn the light full on or full off. It is strange that they have wasted components to inhibit this feature. It might therefore be a good idea to enable local control before you reassemble the module. Just solder a bridge over the vertical 0.47uF capacitor. More on local control in the following segment. 

Adding Local Dimming

  1. There is a very quick version to the local dimming mod.
    1. Pry the cover off the wall switch pressing the four corner tabs.
    2.  (by Albert Tejera) The glob of solder you describe in the mod really shorts a capacitor out. Instead, after locating the 47uF electrolytic capacitor take some needle nose pliers and gently squeeze the end of the capacitort. Since an electrolytic is made from a pair of foils separated by a thin dielectric and then rolled together, squeezing the end of the can creates the desired short internally and effortlessly without breaking or pulling out any pins.
    3. Reassemble. If you need the powercut switch, read some tips on assembly

    This is fast because taking the circuit board out takes a lot of time (reassembling the cutoff switches and thumb wheels etc.)  This one takes a few minutes!


  2. If you have everything apart, you can enable local dimming by soldering a small jumper across the set of contacts shown in the picture.

Replacing the button

from an article in HTI by Doug Smith

The problem: If you open a switch you will find a small piece of springy metal attached to a plastic plunger. When you press the button, that metal piece shorts a set of contacts on the circuit board. Unfortunately that piece of metal is only attached by a blob of melted plastic and maybe a little glue. After repeated use the metal breaks off. If you have a switch that works from another controller but not by its own push button, this is probably the cause. If your switch has local dimming enabled (explained later), this failure will cause the light to continuously cycle from bright to dim and back.

The metal piece can be completely removed and a new surface mount switch soldered directly to the circuit board. There are a number of switches that will fit in the space. Many of the electronics catalogs such as Digikey carry them. I chose part number PB-73 from All Electronics ). Either the switch or the circuit board must be modified slightly for this to fit. I chose to modify the switch because it's quicker. Simply cut off two of the switch leads diagonal from each other then solder the remaining leads to the contacts on the circuit board. Your may need to use a knife to remove what's left of the nub on the end of the plastic plunger so it doesn't stick down too far. After everything is assembled you will have a wall switch with a light touch and a nice tactile feel.



Bulb change disable

 The slide switch below the push button is intended to cut all power to the light when you change the bulb. But they always seem to get slid over to the off position  and since most of us change a light bulb occasionally with the power on anyway, you might want to disable it.


Soldering a jumper between the contacts. This will will additionally save you from having to reinstall the little metal contact that activates it. 

Fixing module that randomly turns on
Credit: Steve Bloom - newsgroup post

The WS467 wall switch (and I suspect it's variations, as well) does indeed "randomly" turn on. 

Specifically, under the correct conditions, a WS467 can "glitch" on due to a power spike from a large bank of magnetic ballast fluorescents on the same circuit, large motor, etc. And filter caps across the 78566 chip, resistor change in the "button" line nor MOVs do not help. 

The solution is actually quite simple, once it is figured out. The 78566 chip in the WS467 contains 2 unused pins (pin #8 and pin #9) who's function is unknown to me. However, manipulation of pin #9 can cause the WS467 to turn on the light. 

After discovering this, I have since tied pin #9 to -v and the "random" light turnons have stopped. My personal preference is to install a 10K 1/8-1/4w resistor across the top of the ic between pin #9 and pin #18. A hard wire will probably be ok, but not acceptable standard practice when dealing with bidirectional I/O pins.


Repairing a broken wall switch

 In most cases, the failure was in a high wattage resistor near the 'bottom' of the module. Look at how a wall switch is normally mounted inside a wall box. Call the part closest to the floor the 'bottom'. When you disassemble the wall switch, look for a 1/2 watt ~68Ohm resistor near the bottom of the module. If it has a brown crack on it, you know that you have located the overheated/dead part. Replace it with a 1 watt unit.

Another component prone to failure is the triac. You can replace the triac with a new triac. For 110v modules RadioShack RS # 276-1000. That's also an NTE #5645

Fixing 3 way master switches that doesn't respond to remote switch

Here is a sure cure for 3 ways working only from the master switch or just OFF from the remote switch

1. First try switching the connection between the blue and the black wires. There is a report that this may solve the problem. If it doesn't read on.

2. If you can, connect both the slave and master to the 'hot' line wires, not in series with each other as suggested in the WS4777 instructions. If this doesn't solve the problem, read on.

3. This solution requires replacing a resistor inside the master switch. The little theory behind it: the signal strength from the slave switch is attenuated by the resistance of the wall wires and the resistance of the lamp filament (the X10 signal passes through the lamp). Thus with long wires, and some hot lamps, there is insufficient signal to detect remote switching. This resistance is added to a resistance of an INTERNAL resistor inside the switch. My solution was to reduce the internal resistor, such that the total resistance (wall wires + fillament + internal resistor) is reduced, increasing signal strength.

Sometimes the problem has an even weirder manifestation: the slave switch can turn the light OFF but not ON. This is related to another parameter: the X10 transmission protocol. Turning ON requires more '1' bits than OFF. '1' bits are higher voltage, which as discussed, are attenuated. OFF is the absence of voltage, which is there by default. Thus OFF works but ON doesn't.

Yet other times, the opposite happens: the wall switch turns on but not off. The wall switch module is wired in series with the light bulb, this means that the powerline signals have to pass through the filament of the bulb in order to complete the circuit. The reason you can get the wall switch module to turn on but not off is because the X-10 signal has to pass through the lamp, and a hot lamp has a higher resistance than a cold lamp, therefore it takes a slightly higher amplitude of signal to turn a wall switch off than it takes to turn it on. If however you have a big enough signal, you would not notice the difference.

The procedure to solve all these problems:

1. Open the module: unscrew the screw holding the aluminum plate to the triac and carefully push the tabs at the four corners of the case and open the two halves of the plastic case. Push out the RED BLACK and BLUE wires from the plastic notch.

2. Carefully, using a small flat screwdriver push out the PCB from the plastic case. Behind it are the two code wheels and the power cut and switch. The powercut has a small metal tab that you don't want to lose if you want this feature.

3. The area of interest is where the RED wire is soldered in the PCB. It is followed by a 10Kohm 1/2W resistor (brown, black,orange). Replace this with an 8KOhm resistor. Assemble everything back.

Using a wall switch with an original rocker

You don't have to give up your old regular nice looking switches when installing X10 wall switches. Your old switches may be antique, or better looking or have a better feel to them than X10's push button. You can add any switch which is (or you can turn into) a spring return, to X10.


  1. Dug a hole in the wall deep enough behind the original switch to hide a stripped down X10 module in. It's trivial if you have drywall. I have cement blocks, so I bought a drilling cup that does a beautiful job. The cup and drill adapter are around $20. 
  2. Unhooked the original switches from the load and live lines and added a small spring in the switch so they return after pressed. I was pleasantly surprised to find the original switches had EVERYTHING there ready for the spring: two plastic pins to hold both ends of the spring. I found the spring of old BIC pens to be perfect. 
  3. Modification to the X10 module are: 
    1. Enable local dimming according to the section on this page.
    2. Start the procedure of "Replacing the button" according to the section on this page. However, instead of mounting a surface push button, solder two wires to the terminals, and thread them through the plastic case and fill the case cavity with hot glue to secure the wires to it.
  4. Connected the other end to the original switch terminals. 

Thus the original switch controls the X10 module, not the light directly as before. 4. Inserted the module behind the original light switch. The downside of this mod is that its not as straightforward to get to the X10 module, but so far (a few years), there was no need to.

Here is a nice looking (IMO) Israeli style light switch. When operated, the backside shorts/opens the wires connected to the white (bottom) terminal to those connected to the pink terminal (top).
The switch with the front cover removed, showing the rocker. Suprisingly, the rocker has a couple of pins - just what's needed to hold the return spring.
After the return spring is inserted to beneath the rocker, using the pins, the cover is put back.
And the X10 module is connected to the original switch. To secure the connecting wire to the module, fill the cavity in the X10 cover with hot glue.

The X10 module is hidden behind the switch.


Adding Neutral Wire to enable work with compact fluorescent

Credit: Steve Bloom

  1. Replace blue wire with a white wire
  2. Lift non-triac end of choke and attach removed piece of blue wire and cover with heatshrink.
  3. Some modules are slightly different in that the manufacturer chosen to take liberties with the circuitry and had moved the 330k zero-crossing detector resistor to the triac side of the choke/coil. In that case, pull and move the 330k resistor, per the original documented schematic.
  4. Reassemble. If you need the powercut switch, read some tips on assembly

    That is it. The safety switch is not actually in line with the load (per UL), but it does prevent the WS467/WS477 from turning on when your finger is in the socket.

Replacing the controller IC to enhance functionality

under construction

based on these projects:

[1] The improved wall switch project: Dr. Ed Cheung

[2] X10 compatible appliance module

Excerpts from Dr. Ed Cheung project [1]:


The purpose of this project is to see if its possible to replace the microchip inside an X-10 WS-467 wall switch with a custom programmed microprocessor. The reason is that the stock wall switch exhibits some undesirable behavior. One example is that the switch turns the lamp on full bright when you send it a DIM command when the wall switch is off. The more desirable trait would be to brighten up from off gradually.

Inspection of several wall switches showed that the chip bore markings from the Microchip corporation, fueling the suspicion that it is possible to replace it with a PIC micro (from Microchip). A unit with an A/D converter is needed since the X-10 carrier is fed unamplified to the stock chip, and can have amplitudes in the tens of millivolts.

Results of the investigation

After removing the stock chip, and soldering in a socket, I was able to plug in a ribbon cable leading to a solderless breadboard. This allowed me room to work and experiment.

My initial attempts were successful, I was able to port my X-10 receiver from my home automation library and was able to receive X-10 commands. These commands were succesfully used to control the attached light bulb. The only modifications needed to the circuit board were the replacement of a zener diode and of course the microchip.

I then attempted to send X-10 commands from the wall switch, but the low operating voltage of the PIC and the inadequate signal coupling transformer made this not possible. Specifically, I directly connected both sides of the signal transformer's secondary to the PIC, and drove them in a complementary 'bridged' fashion. This applied 10 Volts peak-peak to the secondary. Due to the 10::1 ratio, this voltage appears as 1 Volt peak-peak on the primary and the power line. As a comparison, a mini controller plugged into the same outlet as the wall switch, produced 5 Volts peak-peak at the signal transformer's primary. Thus we need about a five fold increase in transmit amplitude.

Another issue is the fact that the PIC can sample no faster than 50kHz, while the X-10 carrier is at 120kHz. Since we will thus be subsampling, the apparent frequency of the X-10 carrier in the sampled data will be aliased down to the frequency Tr:

Tr = Tx - nTs, where n is an integer such that: 0 < Tr <= Ts

Thus if Tx is an exact multiple of Ts, the apparent frequency will be zero, and the carrier will not be detected. Since the sampling rate is 12.6khz, the carrier needs to shift by +/- 6.3kHz to cause this.

Finally, since the PIC is not frequency selective, burst of noise by nearby TRIACs can cause the carrier to be distorted compeletely. A better detection algorithm can address this, or analog hardware needs to be added to provide frequency selectivity.

Long Term Update

Leviton released in the Spring of 1997 wall switches that no longer go on full blast when the module is OFF. They are the same price as the regular Leviton switches ($35-$50). Because of this, the value of an Improved Wall Switch has been diminished. This project is on permanent hold at this point, and I am making the source code available for non commercial use.

Source code
Include file from Microchip (link currently broken)

Modifying for low-voltage operation

Thanks to Steven Bloom for his feedback on this mod.

For low voltage operation, the triac in the module must be protected from the inductance of the load, which is induced by the coil of the low voltage transformer.

The following addition of a 'snubber' network is the only difference I am aware of between a wall switch and a 'low-voltage' module, sold for more then twice as much.

The snubber network adds a capacitance and resistance so that the triac sees more of a purely resistive load then otherwise. For more on this, look up 'snubber circuit' in altavista.


  1. Connect a 100ohm/0.25W resistor in series with a 0.1uf/1000V unpolarized capacitor. This circuit is the snubber network.
  2. Connect this network in parallel to the triac, across the load. This means that one end is connected to the blue wire and the other to the black wire. The black wire is connected to one leg of the triac, so its a convenient place to solder it there. The blue wire is connected to the safety slide switch. It may be useful to take a look at the schematic for this.
  3. Make sure nothing is shorting, and assemble everything back. The circuit can fit snugly under the PCB board.

Reassembling the power-cut switch
Credit: Antonio Guia

If you choose to use the powercut switch here are two methods to do it. The second one was found to be preferable.

Method 1: Use some electrical (or other) tape to hold the code wheels in place then lift the board into the housing with the little metal power-cut plate balanced on its perch.

Method 2: Take the plastic power-cut slide-switch out of the housing (squeeze the two retaining tabs from the inside with pliers and push them out one side at a time). This way you can reassemble the unit without the metal tab, and after everything is back together, simply drop the tab into place. It's easy to seat it properly this way then push the slide-switch back into its hole.


Modification to a silent appliance module
Credit: Steve Bloom

The topics range from quieter appliance modules to ceiling fan control with wall switch to cheaper fluorscent wall switches.
The answer is basically the same for all of these topics: convert a lamp module (LM465) or wall switch (WS467) into a true solid state switch.
My house has now been 100% click free for almost a year now, and this includes banks of fluorescents in the kitchen, ceiling fans, attic boost fans, water heater, window air conditioners, bathroom fans, and stereo.
The solution is so simple:

  1. Open up the lamp module or wall switch (wall switch must be a 3-wire model. mod if neccessary per schematic).

  2. Remove the

    • Triac (BTA10-400)

    • choke (large coil wrapped in black tape)

    • 1k resistor (connected to the triac)

    • Dual diodes (connected to the 1K resistor)

    • 39 ohm resistor (connected to the diodes)

    • I also remove all of the extra components associated with the remote sense-330k, diodes, C537, 3.3uf).

  3. Add a crydom #CX240D5 but see Tom Myers comment below - you may need a different SSR(~$9.00) 5 amp solid state zero-crossing relay (SSR) with the SSR + terminal connected the modules
    "grd" (same reference point as the ic's pin#2) and the ssr - going to the collector of the transistor (C337) where the 39 ohm resistor went to.

  4. Wire the SSR AC pins across the vacated triac position using heat shrink as appropriate.

  5. Install a 22mfd electrolitic capacitor directly across the SSR + and - terminal observing polarity (the capacitor effectively removes dimming for a true on/off.  if dimming is commanded, ssr will simply turn on if brt enough, or off if dim enough).
    and, presto-chango, a truely useful "appliance" module or wall switch.
    Though not quite as neat and pretty, all of the crydom SSR ,regardless of amperage, has the same type of input interface. I used a wall switch, ran the SSR + and - terminals lines out of the case, and glued a crytom 50 amp SSR to the back, shoved it into a wall box, and it now controls my water heater. The same basic approach was used with the window air conditioners, but I hide the wall switch (with the entire metal plate and switch button removed) and the SSR behind the outlet in a deep box.

    Tom Myers wrote in response
    I've performed 2 or 3 of these SSR mods to wall switches. I've found that you must use the MOC3043 part number with the 5ma IF current spec to have reliable operation in a wall switch. There is only about 6 volts on the collector of the transistor used to drive the SSR circuit (across the cap).

    With a 1K current limit at 6v, that's only 6ma, which is below the 10ma threshold current (10ma) for the MOC3042 or MOC3041 (15ma).

    Changing the limit resistor doesn't help. There is simply not enough gain on the transistor to supply more current from the drive signal coupled into to by it's base capacitor.

another description of the procedure, including adding a neutral wire

1.  Using the schematic as reference and tracing the circuit out, remove the coil/choke, triac assemble, the 1k resistor, 2 diodes and the 39ohm resistor, noting (with pencil?) the hole positions of each.
2.  Install a jumper wire into the vacated position of 39ohm resistor.
3.  Install a jumper wire into the vacated position of coil/choke.
4.  Install a 22uf tantalum capacitor into the vacated position of the diode closest to the triac (should be the one with the band away from the triac).  Make sure that the capacitor's + goes to the hole for the diode's band (gnd/rtn).
5.  Cut off blue wire close to board but allowing enough to reattach a wire to blue stub.
6.  Attach an appropriate length of white wire to the blue stub.  This is the ws467's new neutral wire.
7.  Attach the cutoff piece of blue wire to the ssr's pin #1 (one of the ac pins).
8.  Connect ssr's pin #2 (the other ac pin) into the hole of the vacated position of the triac leg that went to the black wire (enlarging hole as required).
9.  Connect ssr's pin #3 (+) and #4 (-) into the vacated position of the 1k resistor with the + going to the gnd/rtn hole of the resistor.
10.  Cut off wire strain relief "hoop" from ws467 cover, then reassemble ws467.
11.  Be sure to add a couple drops of glue, or rtv or such, between the alluminum plate and the plastic body of the ws467 since the triac/screw no longer holds the two together, thus preventing them from coming apart the first time the button is pressed.

Tom Myers wrote in response
I've performed 2 or 3 of these SSR mods to wall switches. I've found that you must use the MOC3043 part number with the 5ma IF current spec to have reliable operation in a wall switch. There is only about 6 volts on the collector of the transistor used to drive the SSR circuit (across the cap).

With a 1K current limit at 6v, that's only 6ma, which is below the 10ma threshold current (10ma) for the MOC3042 or MOC3041 (15ma).

Changing the limit resistor doesn't help. There is simply not enough gain on the transistor to supply more current from the drive signal coupled into to by it's base capacitor.

Increasing Range and Reliability
Credits: )) Sonic ((

This modification requires testing and tweaking the module while it is connected to the mains powerline. This information is provided AS-IS, for informational purposes only, with no warranty whatsoever.   It is your responsibility to know and understand common safety procedures, especially those involving electricity at potentially dangerous power levels. Proceed at your own risk.

  1. Start by reading the general alignment procedure

  2. Disassemble the module . It is O.K. to either leave the front cover (with the House and Unit code dials) in place, or remove both covers and work with a bare PCB. Attach a very short extension cord, if needed, to allow for adjustment while module is powered.
  3. Move the module to the location where it will be used. Bring along oscilloscope, isolation transformer (if needed), and previously calibrated controller of known correct frequency.
  4. Connect the controller to a separate circuit, or at least an electrically distant outlet on the same circuit, via some means of attenuating its 120kHz output (as discussed in the general alignment principles)
  5. Connect oscilloscope 10X probe to pin 1 of 78570 IC (i like to use the 33pF capacitor lead which attaches to pin 1), probe ground to circuit common (the narrower of the two A.C. prongs, i.e. “Hot”). Oscilloscope must be isolated from the A.C. powerline, since module must be directly connected for best results. Avoid touching oscilloscope while module is powered. I usually start with 10mV/div (X10=.1V/div actual), and 5Ásec sweep.
  6. Connect module directly to the A.C. line.
  7. Key controller to generate a continuous signal (Bright or Dim achieve this on most controllers so equipped).
  8. Inspect waveform. If there is clipping, reduce the amplitude of the signal from the controller until the displayed waveform is sinusoidal.
  9. Adjust module transformer for maximum 120kHz signal amplitude. This is likely to be a broad, “low-Q” peak.
  10. . Unplug/disconnect all.
  11. . Reassemble module and test.