Arduino Booting Surge, Quick Question.

Hi there,

I’m using a shift register with my arduino, and when it receives power (turns on) sometimes all the outputs of the shift register stay on for a second or two. This isn’t good for me, so I’m wondering if attaching a 10k pull down resistor to each of the Digital Outs of the arduino would fix this.

That will probably solve your problem. MCU pins are generally inputs on reset, and can float high or low momentarily, until they are configured in the program.

Assuming you are using a '595, you might want to pull the reset line low with a 10K - 100K resistor to force reset at power-on. Hook it up to a 'duino pin and pull it high when you are ready to use.

Also, I’ve found that it’s also a good idea to use 1K resistors in series with the input, clock and latch lines to prevent overdraw. I was regularly blowing my SRs until I did that. As long as you are at it, you could pull those lines high with 100K - 470K resistors to keep them in a deterministic state though any visual glitches will probably be fleeting.

Wow thanks for the quick response guys.

I would never have thought of overdraw. I’ll add them to my schematic.

Is this overdraw related to why the latch pin has a cap on it in the arduino shift tutorial?

http://www.arduino.cc/en/Tutorial/ShiftOut

edit: sorry I was just reading it and realized how stupid I am, it says right in the tutorial about how OE or MR can be hooked to the arduino and controlled to stop my problem. I’m assuming OE would be much better as I can just stop anything going out and clear the registers via the program. I’m also assuming that a 100k to hold it high would help ?