"hot-pluggable" design considerations

Go To Last Post
6 posts / 0 new
Author
Message
#1
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

What precautions should be followed when attaching circuits to AVR inputs pins while the AVR is powered?

I will be connecting other digital devices to the AVR, and I'd like to make it safe for the user to connect and disconnect them without having to turn off power beforehand. The peripheral devices will be things like other microcontrollers, CMOS logic chips and just simple phototransistors, and they will get they power from the AVR board.

Is there any danger of CMOS latchup either on the AVR side or on the peripheral side? Is there any extra protection I can add to guard against ESD? Are they any special connectors which will help in this regard?

Thanks!

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

well....

I guess using optocouplers on the connectors would ease things a bit, and I would certainly use ZIF connectors, which you can find in the molex mouser catalog

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

well....

I guess using optocouplers on the connectors would ease things a bit, and I would certainly use ZIF connectors, which you can find in the molex mouser catalog.

I haven't attempted what you are talking about, so mine may not be a valid suggestion at all.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

All the things you mention are a potential problem. Series resistors can help to avoid latchup and you can add ESD rated protection diodes on both sides. The main issue to consider is that on a connector with multiple pins - you can't guarantee which ones connect first (unless it is designed with longer gnd pins that connect first) - look at a SD card.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

hmm I wonder if optocouplers would help, since you will be powering your peripherals from your main board.

Also I think you will have a challenge in software, since those peripherals probably need some form of initialization.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

if the devices/circuits you are working on could send out a unique code when powered up after connection, you could set up a handler in code to do the required initializations