I have a robot with external charging contacts and a docking station with exposed pads this robot has to drive into to start charging. When trying to dock and charge I seem to get a lot GND bounce, which in turn corrupts the SPI communication. I assume this is due to arcing contacts: SPI SCK signal corruption

I have already tried using a time-delayed relay to add a second or so of delay between the docking itself and the connection of the V+ and GND to the battery pins and an RC snubber. So far nothing has helped. What is the industry standard for dealing with this?

I do not know the component values by heart, but here's some necessary info: - 5τ of the RC on the transistor base is about 1 second - The voltage divider converts the Vsup to 12V for my Digital input.

Here's the schematic, please don't pay attention to the component values, I don't know them by heart:


simulate this circuit – Schematic created using CircuitLab

PS: I assume that the REAL best practice here would be to make the dock intelligent and let it detect when the bot is properly docked, this is something I wish to add in the future, but at this point it is not an option.

  • \$\begingroup\$ You could try adding some sort of hot-swap controller or inrush current limiter. Can you post a schematic of your RC snubber? Another option if you are not pushing the limits of your SPI bus (and you control both sides of the SPI communication) is to add some kind of error correction code. A simple "repeat each message 3 times" could work. There are others with much less overhead though. \$\endgroup\$
    – Justin
    Sep 3, 2019 at 15:12
  • \$\begingroup\$ I am not sure what you are doing. A 1 sec delay does not match up with the waveform where you have noise whilst communicating. Are you trying to communicate, not knowing if the connect is present? \$\endgroup\$
    – Oldfart
    Sep 3, 2019 at 15:23
  • 1
    \$\begingroup\$ Need a schematic of your the comm and charging setup. Many times it is from parasitics or EMI. \$\endgroup\$
    – Voltage Spike
    Sep 3, 2019 at 15:24
  • 2
    \$\begingroup\$ Unless this is SPI communication over charging contacts, it seems like your real problem is that you do not have sufficient independence of the logic signals and their power supply from the raw battery bus voltage. \$\endgroup\$ Sep 3, 2019 at 15:26
  • \$\begingroup\$ if you wish, provide a diagram of your power wiring, and where you have energy storage capacitors and regulators; your "ground" wiring will be important to understand. \$\endgroup\$ Sep 3, 2019 at 17:24


Your Answer

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