2
\$\begingroup\$

I have a simple SPST NO Tact switch which is creating a noise pulse in a very sensitive receiver. Moving the switch, shielding etc is not possible.

I need to understand how the switch is creating is creating this noise, so I can kill it.

Switch Scnematic

R2 could be increased in value, but I tried that without improvement. This seems to suggest that it's the discharging of parasitic capacitance at the switch that is causing the noise.

R3 was originally intended to help prevent ESD near the switch from reaching the processor, but it also should prevent that trace capacitance from contributing to the noise.

Switch Layout

The R3 and R2 are located right at the switch, which should minimize any parasitic trace capacitance that would be discharged when the switch closes.

I've tried adding 1k in series with the ground side of the switch, thinking the noise was caused by discharging the parasitic capacitance, but that didn't make any noticeable change.

I tried 1nF across the switch, and not surprisingly the noise got worse. That seems to align with the idea that it's parasitic capacitance at the switch causing the noise when the switch closes. Adding C across the switch would also be a bad idea long term because the discharge current would exceed the switch rating unless I also added series R to the cap...

So, can anyone explain the mechanism by which the switch is creating bursts of RF noise on closure and/or how to prevent that?

EDIT: We proved it's the switch by removing R3, and tying TP7 to VCC through 10k, so that the processor can't see the switch. The contacts are a collapsing metal dome which touches metal contacts. I had to dissect a switch to find that out, the data sheet doesn't explicitly say so, but the resistance is 0.1 ohm max which hints that it's metallic contacts.

So it is the discharge of the internal capacitance, equalizing the voltage between the contacts, which is radiating the noise.

I'm starting to think that we just need to find a conductive rubber switch, and there may be NO practical solution to the original switch.

Edit: I'm well aware of the bounce, and debouncing is done in SW. In the test where we disconnected R3, the RF pulses were still observed with no change at all, while the switch was physically disconnected from the processor input, and that input tied high to simulate the unpushed switch. This is the first time I've seen this phenomenon in this type of switch.

You can see a similar phenomenon if you have a sensitive receiver, antenna, and two screwdrivers. Set up the receiver down near 500kHz, and then simply touch the metal screwdriver shafts together near the antenna while holding the plastic handles. You'll hear clicking in the receiver. More or less strongly depending on the distance and the stored charge on the metal shafts. In this case the switch is < 0.1 inch from the antenna, and we force a charge of 3.3V when the switch is open.

\$\endgroup\$
  • 3
    \$\begingroup\$ Stupid question of the century: Are you sure it is the switch and not whatever the processor does in reaction to the switch? \$\endgroup\$ – JRE Sep 26 '18 at 16:20
  • \$\begingroup\$ Try putting like a 1M or larger resistor across the switch. \$\endgroup\$ – JRE Sep 26 '18 at 19:42
  • \$\begingroup\$ I will try it, but I don't see what that would change. The open switch would still get charged up to nearly VCC, and it won't do anything to the discharge current. \$\endgroup\$ – David VanHorn Sep 26 '18 at 20:15
  • \$\begingroup\$ Nope, no difference. \$\endgroup\$ – David VanHorn Sep 26 '18 at 21:48
  • \$\begingroup\$ EMI is created by the current going through the switch and the bouncing effect of the switch. You can try to increase R2 to the maximum value possible to perhaps 10 Mohm. (based on the uC impedance), you can also put a big resistor between the switch and GND. The cap will make it worse, because it will discharge and increase the current flow. \$\endgroup\$ – Damien Sep 27 '18 at 2:20
1
\$\begingroup\$

A metal-dome switch generates a significant mechanical impulse when it is pressed. If your design includes ceramic capacitors (especially MLCCs), this impulse may be inducing microphonic effects in these capacitors. You can try to confirm this by tapping the board while it is in use.

Using a less mechanically "clicky" switch will solve the problem. So will using different types of capacitors.

\$\endgroup\$
0
\$\begingroup\$

I think it could be the "switch bouncing effect", which is shown in the picture below. Almost every mechanical switch does that and you can also watch this with an oscilloscope. The typical "bouncing duration" is about 50us.

That's why it's bad product design to just connect a switch and resistors directly to a processor input. Instead, there should be some kind of R-C lowpass filter to filter out the bouncing behaviour of the switch.

Try to add a 1uF capacitor from terminal 1&2 of the switch to GND. This should fix it. (BTW, your 1nF capacitor is way too small to have a significant effect on this bouncing behaviour)

Edit: You may also want to limit the current from the 1uF capacitor with a series resistor to not damage the switch.

bouncing switch

\$\endgroup\$
  • \$\begingroup\$ Why would the bounces cause noise if a single transition would not? \$\endgroup\$ – pipe Sep 26 '18 at 22:26
  • 1
    \$\begingroup\$ Usually debounce is done on the software \$\endgroup\$ – Damien Sep 27 '18 at 2:23
  • \$\begingroup\$ If debouncing is done in software, that does not mean that the switch is not bouncing physically anymore! It’s the physical bouncing that (maybe) causes RF bursts coupling in the sensitive receiver. And bouncing still happens wen you disconnect the switch from the uC by removing R3. \$\endgroup\$ – Stefan Wyss Sep 27 '18 at 4:03
  • \$\begingroup\$ I'm sure it is mechanically bouncing, I would be surprised if it were not. Adding a parallel capacitor to a metallic switch without significant series resistance will cause excessive current on closure and eventually damage the switch. It won't prevent the mechanical bounce either, short of welding the contacts. \$\endgroup\$ – user103218 Sep 27 '18 at 15:29

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.