How can I reduce noise induced in a wire for my Nixie clock?

In summary, the button has a wire that acts as an antenna and is causing the clock to shift. Mr. Borek thinks that by removing the input and testing for stability, he may be able to fix the issue.
  • #1
Borek
Mentor
28,951
4,245
Not sure if I posted it here or elsewhere. I made a Nixie clock controlled with an Arduino. To make it possible to set the clock I have added a button connected with a wire. Pressed button generates an interrupt which I use to "round" the clock up or down to a full minute. The button has a capacitor added and some debouncing delay added in the code. It all works quite nicely, with one problem. Apparently now and then the wire acts as an antenna, producing false signals which shift the clock.

My first thought was to move the wire away from the 180V SMPS. It helped, but not completely. I will cut the wire to make it as short as possible (I am still on the breadboard, with Arduino Mini Pro sticking up, so I am limited in my options and the wire has to be hanging in the air for now), but somehow I am not convinced it will help get rid of the problem completely.

Any advice? What are my other options? Are there any standard ways of screening wires, getting rid of induced signals? I did some googling but didn't found anything obvious and easy to apply to my mess of wires. Chances are it is this mess that is a source of the problem and moving to a PCB (with a good separation of the Arduino/button connection and the high voltage circuit) will help, but I don't want to make the (almost) final version and risk it will still suffer from the same problem.
 
Engineering news on Phys.org
  • #2
Twisted pairs and coaxial cables are the classic ways. In your case, the simplest thing might be too twist the pair of wires you already have.
 
  • Like
Likes BvU
  • #3
anorlunda said:
twist the pair of wires you already have

Unfortunately, I have one wire only.

To make things more clear, that's how it looks (half of that is most likely like scratching the left ear with the right hand, but first, I didn't know better, and second, I used whatever I had/could easily buy/borrow):

1. Arduino Mini Pro
2. RTC (connected via I2C, green and orange wire in front)
3. SMPS 12V → 180V (for Nixie tubes)
4. SMPS 12V → 5V (Arduino, RTC, 2xSN74HC595N and 4x74141PC)

The red arrow points to the culprit wire connecting the button (mounted on the breadboard) to the Arduino.

IMG_5860-Edit.jpg


On the right there are shift registers and blue cables (only half of them visible) go to the Nixie board (scrapped from some old voltmeter).

And the whole thing, about 20 minutes ago:

IMG_5862.jpg
 
  • #4
Maybe you could reduce the value of the pullup/down resistor that clamps the wire voltage while waiting for a key press.
Power will only be wasted in that resistor when you press the button.

Edit:
Looks like you have a loop without a pull-up resistor?
What is the circuit of your button.
 
  • Like
Likes Borek
  • #5
Baluncore said:
Maybe you could reduce the value of the pullup/down resistor that clamps the wire voltage while waiting for a key press.

I had to check - it was grounded through 10k resistor. I put 1k there, we will see if it helps. These are completely random events, sometimes the clock works OK for several days, sometimes it shifts several times a day, so checking takes a lot of time.
 
  • #6
Borek said:
These are completely random events, sometimes the clock works OK for several days, sometimes it shifts several times a day, so checking takes a lot of time.
Maybe you could bring an ac/noise signal close to your circuit and check with 1kΩ then 10kΩ to speed up testing.
 
  • Like
Likes Borek
  • #7
Borek said:
Apparently now and then the wire acts as an antenna, producing false signals which shift the clock.

Mr. Borek, are you certain of this? Have you considered removing this input altogether and then perform a stability test?
 
  • #8
lewando said:
Mr. Borek, are you certain of this? Have you considered removing this input altogether and then perform a stability test?

Good question. I have not tried it (and I will definitely do in a few days, after seeing whether changing the resistor helped), but I have reasons to believe it is the noise.

Initially the button was on the leftmost side of the breadboard, followed by the Arduino. Just left to the clock I have a soldering station, distant just enough to reach the switch squeezing my fingers between the station and the cardboard box on which the clock stands now. At some point I realized the hour was often changed after I used the station (which inevitable meant shaking the wires). Then I rearranged the elements on the breadboard, and it definitely helped (or at least I don't have to correct the clock after soldering ;) ).
 
  • #9
Some other things to try:
1) Soldering of contacts is better than breadboarding, for best low-impedance grounds, otherwise double up or triple up your ground connections.
2) Make sure you have a variety of capacitors on your 5V power supply rails (1uF, 0.1uf, 0.01uf) to handle transients caused by Nixie tube changes of state.
3) Wiggle your wiring manually--maybe you can isolate a bad contact.
4) Arduino code-- beef up your debouncing. Make it ridiculous. Only recognize button presses greater than 1 second.
 
  • Like
Likes Borek
  • #10
Borek said:
I put 1k there

So far, so good.

(I am posting mainly to provoke the clock to misconduct :wink:)
 
Last edited:
  • #11
Interesting. I have seen in the past the Weller stations that are temperature controlled by the tip that is installed would produce enough EMI to trigger one of the channels of the logic analyzer that was hooked the digital system that was on the bench at the time. Just how this EMI propagated I don't know but I thought I would throw it out there. Now, I will be interested to know what soldering station Borek has.
 
  • #12
Averagesupernova said:
Now, I will be interested to know what soldering station Borek has.

Cheap and basic. But it has everything I need.

pobrany-plik.jpg
 
  • #13
So, tomorrow it will be a week and it seems like replacing the resistor with a lower one definitely helped - no surprises from the clock.

However, I have a question:

lewando said:
Make sure you have a variety of capacitors on your 5V power supply rails (1uF, 0.1uf, 0.01uf) to handle transients caused by Nixie tube changes of state.

What I don't get is what rule would the smaller capacitors play? Isn't the large one enough? If they are in parallel they work as one with a capacitance equal to the sum of capacitances and replacing 1 μF with 1.11 μF doesn't sound like a big deal. Sure, 1 μF is usually electrolytic so adding a smaller ceramic capacitor with a low ESR will help a bit - but if I already add 100 nF ceramic, adding 10 nF ceramic sounds superfluous.

What am I missing?
 
  • #14
Baluncore said:
Looks like you have a loop without a pull-up resistor?
What is the circuit of your button.

Sorry, missed your edit.

nixie_button.png


At the moment R1 is 1k (it was 10k) and C1 is 0.1 μF, the largest ceramic I have (added as a first attempt to solve the problem, even before asking for help).

I admit I made the schematics several weeks ago (in other words:I don't remember details) and I am prone to errors (in other words: I don't trust myself, so chances are it is not a correct depiction of the circuit), but at first sight it looks OK to me.
 
  • #15
Borek said:
Sure, 1 μF is usually electrolytic so adding a smaller ceramic capacitor with a low ESR will help a bit - but if I already add 100 nF ceramic, adding 10 nF ceramic sounds superfluous.

What am I missing?
ESR is most important in electrolytic caps because it determines the heat generation inside the cap due to ripple current. That is critical in power supplies because electrolytics dry out when hot.

But the series inductance of a ceramic is much less than an electrolytic. The ceramic is not a long foil tape so it has low ESR. If I want a quiet supply I use an electrolytic cap at the power supply, a tantalum cap on the PCB and a ceramic cap with every switching device or IC.
 
  • #16
Borek said:
I admit I made the schematics several weeks ago (in other words:I don't remember details) and I am prone to errors (in other words: I don't trust myself, so chances are it is not a correct depiction of the circuit), but at first sight it looks OK to me.
There is a problem with the schematic. Pressing the switch connects a 1k resistor across the power supply.
Maybe you actually have the R1=1k0 in the Vcc line to C1 = 0u1F, not in the Gnd line.
 
  • #17
As for the multiple capacitor suggestion on the VCC rail: let me explain... no, there is too much. Let me sum up:

This is to do power supply bypassing (also called decoupling), as it relates to your processor. By the way, your processor module may already be doing this--I don't know.

This capacitance, placed between VCC and ground, is located very near to the thing you want to protect.

What this does is create a local voltage/charge reservoir that helps maintain a constant voltage applied to the digital thing you want to protect.

For a given capacitor size and construction, it will have a specific frequency response. Generally speaking, the smaller the size of the capacitor, the better it will be at filtering higher frequency noise. Employing a couple of these of various sizes gives you noise rejection at a couple different frequencies.

Who knows what frequencies of noise your controller VCC rail is being subjected to? I don't, so really this is a precautionary guess.

Also your implementation of the switch is a little weird. This is a more standard way of doing it:

switch2_zpssdu6m43w.png
 
  • #18
Baluncore said:
There is a problem with the schematic. Pressing the switch connects a 1k resistor across the power supply.

Looks to me like it is not different from what happens on the schematics posted by @lewando ?

My understanding is that my circuit gives HIGH on the pin, and when the button is pressed the signal is grounded, so the pin becomes LOW. It is the change that triggers an interrupt (to be more precise: the interrupt is configured to be generated on the RISING signal, when the button is released, but it doesn't change much).

Actually I may have screwed up something, I see my code configures the pin to be connected to an internal pullup, which doesn't look necessary. I will tinker with it later.

I will think about multiple capacitors a bit more. It still doesn't add up for me.
 
  • #19
Borek said:
Looks to me like it is not different from what happens on the schematics posted by @lewando ?
...

I will think about multiple capacitors a bit more. It still doesn't add up for me.

But it is different, and lewando's is the standard connection method.

In yours, it appear the switch connects the labeled switch pins 1&2 to 3&4 when pressed. All that does is connect the non-GND side of R1 to Vcc. Pin 5 of U1 is connected to Vcc regardless of the switch position.

Wire it as lewando shows, and if the pin can be programmed with a pull-up, you don't even need the resistor. I've done exactly that with a ESP8266 board.

RE: small cap in parallel with large cap - this is done because large caps can have higher series R and series L. So while the large C value shunts signals to ground, and relatively lower freqs than a small cap, the R & L limits how much reduction you can get. The small C, while having less effects at low freq, has lower R & L, and shunts the higher freqs closer to ground. Draw a schematic with the parasitic R & L and you will see this.
 
  • #20
Schematic for the Arduino Pro Mini:
https://www.arduino.cc/en/uploads/Main/Arduino-Pro-Mini-schematic.pdf

Looks like the processor already has 10 uF in parallel with 0.1 uF on its VCC. And the regulator has 10 uF on its input. You probably don't need any extra capacitors.

Borek said:
Actually I may have screwed up something, I see my code configures the pin to be connected to an internal pullup, which doesn't look necessary. I will tinker with it later.

Bigger issue:
Baluncore said:
There is a problem with the schematic. Pressing the switch connects a 1k resistor across the power supply.
In other words, when S1 is closed VCC is still being applied to pin 5. Not sure how this would ever work.
 
  • #21
A designer is often unable to see an obvious error in a schematic because they are blinded by their confident thoughts, not viewing the diagram as presented, through their eyes.

NTL2009 said:
Wire it as lewando shows, and if the pin can be programmed with a pull-up, you don't even need the resistor.
The internal pull-up is probably irrelevant as it is only a few uA, effectively about 100k. The 1k resistor is there to route induced EMI currents to ground. With 10k, those induced currents dropped sufficient voltage to cross the input threshold. With the weak internal pull-up, the improved EMI immunity needed would require a tightly twisted pair from the ground, pin 4, and input signal, pin 5, to the switch.

It is always a bad policy to put a capacitor across a switch as that generates EMI from the high current pulse when the switch closes. The 0u1F cap is really not a good solution here for de-bounce or EMI hardening. The solution is actually in the layout, by eliminating the loop currents flowing in the distant ground connection. The greater the area of the loop, the more EMI is generated, and the more noise is picked up. The signal wire loop area makes a loop antenna. That problem is typical of the “open” "rats nest" wiring forced by breadboards.

The open area between the ground wire and the green switch signal wire is the problem. The ground reference for the PB switch should come from close to the signal on the PCB and be twisted with the green signal wire. At the switch end there should be no connection to other ground conductors. Ideally, the pull up resistor should be at the chip end of the twisted pair. When the PB switch is pressed, the same current should flow in both wires of the twisted pair.
 
  • #22
Borek said:
Sorry, missed your edit.

View attachment 110233

At the moment R1 is 1k (it was 10k) and C1 is 0.1 μF, the largest ceramic I have (added as a first attempt to solve the problem, even before asking for help).

I admit I made the schematics several weeks ago (in other words:I don't remember details) and I am prone to errors (in other words: I don't trust myself, so chances are it is not a correct depiction of the circuit), but at first sight it looks OK to me.
In order to help you, we need a correct schematic. As mentioned, the input pin is connected to Vcc regardless of switch position, so it can't possibly be wired like that and actually be working.
 
  • #23
Sorry guys, I have checked with the board and the GND and VCC are reversed on the schematics (that is, pin is all the time connected to the GND through the resistor, and switch when pressed connects it directly to VCC).

I have modified the board as @levando suggested, getting back to 10k and removing the capacitor. Still works :wink: Another week to check if it will be stable.

NTL2009 said:
RE: small cap in parallel with large cap - this is done because large caps can have higher series R and series L.

OK, so it is to deal with the element non-ideality. I didn't know there will be a large difference between different ceramic capacitors (somehow I thought only about general differences between ceramic/electrolytic/tantalum types), but now that I think about it, it makes sense. Thanks.

Baluncore said:
The solution is actually in the layout, by eliminating the loop currents flowing in the distant ground connection. The greater the area of the loop, the more EMI is generated, and the more noise is picked up. The signal wire loop area makes a loop antenna. That problem is typical of the “open” "rats nest" wiring forced by breadboards.

Thanks, another thing to consider in the future. I plan to move the clock to the PCB, I have to think what to do about these wires though. I like the idea of a design in which separate modules (Arduino, RTC, 5V SMPS) stick out - makes explaining how it works easy, but the wires looks clumsy. Now I know they not only look clumsy, they pose a potential problem. Perhaps keeping them as short as possible and hiding them behind the Arduino will make it a bit better.
 
  • #24
Borek said:
Sorry guys, I have checked with the board and the GND and VCC are reversed on the schematics (that is, pin is all the time connected to the GND through the resistor, and switch when pressed connects it directly to VCC). ...

No, that's still not right. You need to make sure you know what you have there.

If I swap GND & Vcc on your schematic, that just keeps the input pin grounded all the time, the switch connects the resistor between Vcc & GND, but that has no effect on the input pin that the device sees. It's still grounded.

Follow what was provided earlier. Pull up Resistor connected to Vcc, other side of the Resistor connected to input pin, switch connected to input pin, other side of switch connected to ground.

A 1K versus a 10K or the built in pull up in the chip will provide better noise immunity, as was said above (The 1K being best if I wasn't clear here).
OK, so it is to deal with the element non-ideality. I didn't know there will be a large difference between different ceramic capacitors (somehow I thought only about general differences between ceramic/electrolytic/tantalum types), but now that I think about it, it makes sense. Thanks.

Yes, mainly a smaller ceramic will be used in parallel with an electrolytic or tantalum. For this application a 0.1uF ceramic will have low ESR and L. Keep it there if you decide you need a large cap also, but I don't think you will, and it's probably best to not use large values.
 
  • #25
NTL2009 said:
If I swap GND & Vcc on your schematic, that just keeps the input pin grounded all the time, the switch connects the resistor between Vcc & GND, but that has no effect on the input pin that the device sees. It's still grounded.

Sigh. You are right. Can't believe I made so many mistakes with so trivial thing :mad:

That's my original drawing from copying the circuit from the breadboard yesterday.

img037.png


It was not a matter of GND/VCC being switched, rather the pin was connected on another side of the switch. That meant it was grounded through the R1 all the time (so LOW) an pressing the button connected it directly to VCC making it HIGH.
 
  • #26
NTL2009 said:
Yes, mainly a smaller ceramic will be used in parallel with an electrolytic or tantalum.

I think that's what I wrote I in my post (#13). I know why we use ceramic ones in parallel to electrolytic, what I was not sure about was why to use several ceramic in parallel.
 
  • #27
It's often the seemingly trivial things that bite us, they seem too trivial to require much thought, and there you go!

So that schematic should work as intended. I don't know if it is important, but the way that lewando showed earlier is the more standard way of doing this. Which you could accomplish now by switching Vcc and GND on that latest drawing.

https://www.physicsforums.com/threads/noise-induced-in-a-wire.895815/#post-5640704

I think the idea of the conventional 'pull up to Vcc, switch to ground' arrangement is so that the potentially long wire to the switch doesn't pick up noise and have spikes that could take the input pin above Vcc. Generally, inputs do not like being taken above Vcc, or below ground. But reversing the set up just means you could spike below ground. Not sure if that is better or not, but that is how it seems to be done, and there is probably a reason, like ground more stable than Vcc?
 

1. What causes noise in a wire for a Nixie clock?

Noise in a wire for a Nixie clock can be caused by electromagnetic interference (EMI) from nearby electronic devices, poor wiring connections, or ground loops.

2. How can I identify the source of noise in my wire?

To identify the source of noise in your wire, you can use an oscilloscope or a spectrum analyzer. These tools can help you visualize the noise and determine its frequency and amplitude, which can give clues to its source.

3. What are some effective ways to reduce noise in a wire for a Nixie clock?

Some effective ways to reduce noise in a wire for a Nixie clock include using shielded cables, adding ferrite beads or chokes, improving grounding, and separating the wire from other electronic devices.

4. Can I eliminate noise completely from my wire?

While it is possible to reduce noise significantly, it is nearly impossible to eliminate it completely. Some noise is inherent in electronic circuits and can never be completely eliminated.

5. Are there any other factors that can contribute to noise in a wire for a Nixie clock?

Yes, other factors that can contribute to noise in a wire for a Nixie clock include the voltage and current levels, the quality of components used, and the design of the circuit. It is important to consider these factors when trying to reduce noise in a wire.

Similar threads

Replies
11
Views
2K
Replies
26
Views
2K
Replies
19
Views
2K
Replies
6
Views
2K
Replies
3
Views
2K
  • Electrical Engineering
Replies
3
Views
1K
  • Electrical Engineering
Replies
15
Views
3K
  • Electrical Engineering
Replies
6
Views
4K
  • DIY Projects
Replies
20
Views
2K
Back
Top