4
\$\begingroup\$

My ribbon cable assemblies are creating intermittent short circuits that cause my Atmega328p microprocessor to spontaneously reset.

The setup: 60-conductor .05 ribbon cable made by 3M (long ago when prices were more reasonable than today), separated to use 34 of the conductors and trimmed to length with sharp scissors. 34-position IDC connectors made by Marvic International designed to terminate .05 ribbon cable. Connectors crimped onto ends of cables using a Hilitand-style crimping tool (including the yellow boat that holds the connector). Cable folded over connector and strain relief applied. Inserted into 34-position PCB header made by On Shore Technology, hand soldered onto PCB made by ExpressPCB. I can't think of anything else that might be relevant to the problem.

The problem occurs when I move the cable even slightly. It occurs even when only one end of the cable is connected to a header and even when only that end is terminated. The problem does NOT occur when I remove the cable from the header and wiggle the header or flex the board. I've done what I can to make sure that the conductors at the ends of the cable aren't shorting (cautery with a lighter, scraping with a razor blade, making the cable end flush with the IDC connector). I've made and remade the cable assembly several times. I can't see any glitches in the power supply to the board that are visible on my oscilloscope, but I think the microprocessor must be detecting a brown-out condition because I don't know why else it would be resetting.

  1. Photo attached IDC connector

  2. I haven't measured a short circuit. I've inferred that it must be the problem because merely flexing the cable provokes the problem. I don't have a way to measure capacitance, but the signals being put on the lines are in the kilohertz range. As I said, I closed the IDC connector with a standard tool, and (which I didn't mention) verified continuity of all the conductors.

  3. A floating reset pin was an inspired guess. I have it hard-wired to pin 10 on an Arduino Uno to facilitate burning hardware. It also has a 10K pull-up resistor attached, though. So probably not this cause. The problem occurs with cables about 15 inches and 36 inches long. I don't know what to do to check for EM interference.

  4. The problem occurs even when the other end of the cable isn't attached to anything. The signals on the lines are square waves in the low kilohertz range.

  5. I used rosin-core solder without separate flux to solder components to the board.

  6. I don't know the cause of the reset. The fuses are programmed so that the brown-out voltage is around 2 V; the supply voltage is 5 V with a commercial (NAEMATEK?) power supply and the watchdog timer is disabled. I think I can rule out the timer in any case because sometimes the resets occur in very rapid succession. One of the timers is in use by the Arduino OS for controlling the serial port; I don't know if another timer might be running without my knowledge.

FURTHER UPDATE: Instead of a ribbon cable, I attached 34 jumpers to the header. Lo, and behold, I can provoke the resets by wiggling those jumpers. That suggests that my problem lies in the way the header is connected to the board. Instead of tying some of the header pins to interior layers for power and ground, perhaps I should have used surface traces?jumpers replacing ribbon cable

EVEN FURTHER UPDATE: I slowed the signals down to 1 Hz, hoping to eliminate any RF interference. No joy.

\$\endgroup\$
12
  • 2
    \$\begingroup\$ Have you actually measured a short circuit with a meter? Have you ruled out inter-cable capacitance? Data sheet links are likely required. What tool did you use for closing the IDC connector? \$\endgroup\$
    – Andy aka
    Commented Sep 26, 2022 at 12:32
  • 2
    \$\begingroup\$ If you have a floating reset pin and some sharply falling waveform right next to it, it can bring reset active. Any device nearby can also conduct or radiate electromagnetic interference. Even missing bypass caps cause problems. How long is the cable? \$\endgroup\$
    – Justme
    Commented Sep 26, 2022 at 12:36
  • 1
    \$\begingroup\$ I've seen where "no-clean" flux could be conductive, rendering rework necessary. There are a lot of variables to this problem - photos and oscilloscope captures could help. \$\endgroup\$
    – rdtsc
    Commented Sep 26, 2022 at 12:50
  • 1
    \$\begingroup\$ What's the reset cause? Power-on, low voltage detect, watchdog, clock failure? \$\endgroup\$
    – Lundin
    Commented Sep 26, 2022 at 12:55
  • 1
    \$\begingroup\$ Try to narrow down the set of wires causing the problem. Magic aside, the problem could be in electrical interference (low probability as there're no high currents), something shorts (means bad soldering - use microscope to examine - from solder side and from connector side - ideally moving plastic up to see the solder joints), or just a defect in the PCB (to identify for it only x-ray will help). If you have the project and PCB design analyze it to see where is the highest probability of tracks being shorted near the connector joints. \$\endgroup\$
    – Anonymous
    Commented Sep 26, 2022 at 15:43

1 Answer 1

1
\$\begingroup\$

You might want to remove the top portion of the ribbon connector and examine how the pins have pierced the ribbon cable. I sometimes find a similar problem when the ribbon cable was installed crooked and the pins are not exactly centered on the conductors.

If this has indeed happened, you can carefully peel the ribbon from the pins (starting at one end), cut the affected portion of the cable off, then reinstalling the connector.

I find that one can reuse the ribbon connectors several times (2 or 3), at least for quality connectors.

\$\endgroup\$
1
  • 1
    \$\begingroup\$ Mr. Reid: That was another inspired suggestion, but it didn't yield fruit (all the conductors were pierced as they should be, and no two adjacent wires were shorted). BUT I tried cutting the cable off as a prelude to taking off the locking strip. I couldn't reproduce my problem even with fairly severe jiggling of the cable. That leaves inter-wire capacitance or a cable defect as the culprit. I'll see if I can find a low-capacitance ribbon cable at an affordable price. \$\endgroup\$ Commented Sep 26, 2022 at 17:40

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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