I am using the Parallax Propeller to start and stop timers for an auto racing timing system. Out of 250 cars there were timing issues with about 10 or so. It was very random and hard to diagnose. I knew that somehow the input pins were somehow reading high and causing timers to start and stop. I also knew that it was very quick because one chip polling via a loop didn’t show the pin was high and another chip polling at 12.5ns detected it. After creating a pin test program and using a scope I found the problem. When switching on, a well pump pressure switch caused the pin to read high. It wasn’t every time either. (Although the scope was showing the interference every time). The pump was cutting on and off about every 5 minutes. About 75% of the time when the relay clicked on it caused the pin to read high. The scope was showing upwards of 2.4 volts. This is enough to make the pin read high. I am not switching the relay via the microcontroller. The relay is in a separate room in the building but still causing interference into my timing system.

I’m very inexperienced but I have a good knowledge of electronics. This high voltage stuff (the pump is powered with 220VAC) is not my thing though. The power supply for the microcontroller is connected in the same electrical panel as the well pump. I have tried using a 12 volt battery instead. No success. I have tried using capacitors on the power supply without success either. When checking the pressure switch I found that the 220 ground wasn’t connected. After connecting the ground it seemed as if it helped, but it still showed reading high about one time in 40 minutes with the well pump switching on and off about every 5. So I think connecting the ground helped but didn’t solve the problem.

Like I said I’m inexperienced, and don’t really know where to start. I have thought about taking a start capacitor off of a 220 air compressor and putting that on the load on the pressure switch. Would this help? Any other ideas on how to fix this problem?


Without a block diagram showing the orientation of emitter noise cables and sensor affect signal cables, I expect you have a CM (common mode) unbalanced signal crosstalk issue.

The common solutions in general are:

  1. Isolation: Reducing cable proximity and orientation to reduce mutual coupling.
  2. Shielding using twisted pair or STP cables for all external cables.
  3. Filtering with snubbers for arc suppression of pump relay and RC caps and/or Ferrite beads to shunt noise ingress.
    • Consider all noise is in AM or SW band and monitor pump start/stop with radio on a quiet channel for static noise pulse to hear it. (e.g. 550~1MHz AM)
    • Ferrite Chokes on cable designed for >50MHz may or may not work.
    • 100pF on 10K impedance helps for glitches T < 1us.
  4. Suppression: Eliminate peak AC voltage switching inductive motor arcs using 30A ZCS Triac driver or SSR module to pump motor to start on zero voltage and shut off on zero current. Usually, 1 in 5 random start/stops will be near the peak sine which corresponds to your error rate now with Gnd connected.
    • If you want to try a snubber on pump relay, consider 500V film cap and ~50 Ohm 2W in-series 10nF Y-rated film cap across the relay and snubber on coil as well.
    • Try to keep AC cable far away from sensor cables and at right angles if close.
  5. Grounding: Also use Earth bonded ground for CPU card 0V to bypass floating ground noise (CM Noise) to earth gnd.
    • You may choose a 10nF ceramic or film cap or hardwired braid wire to earth gnd.

One or more of these methods may work in your situation until more data from you.

| improve this answer | |

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.