Main Site Documentation

Keep pins off during reboot


#1

How can I make sure IO pins are always off during reboot? there are some that come on by default during reboot and this is a bad thing for my project.


#2

They don’t so much come on as much as “float” they are neither on or off… just in a state somewhere inbetween.

You can pull the pin low with a 10k resistor to ground, this will keep it low unless you pull it up by “turning it on”.


#3

Perfect. Thanks!


#4

May I suggest putting pulldown resistors on a future revision of the board ?
I mean why keeping pins in a floating/unknown state when you can easily set them low (or high) ?

I understand that on some board it means adding a lot of resistors, though :think:


#5

Check the chip docs, I think most of the I/O pins are pulled down until the chip initializes. On other chips I know there are exceptions on some types of multi-purpose pins. It might also be that the internal pull-down is not strong enough for the noise generated by what ever the pins are connected to during power up.


#6

[quote]I understand that on some board it means adding a lot of resistors, though
[/quote]

And this would probably raise costs. I believe that it’s a better idea to manually add them. People who need it can add a resistor, people who don’t need it don’t have to :slight_smile:


#7

I have to admit that I’ve never understood that principle : leave pins in “floating state” :think:

What is the reason behind this ? Cost of internal/external pull-down (up) resistors ? Other ?

I think it is better to know the initial state of a pin. Really, I don’t understand that :wall:


#8

Very simple…no one knows what you will connect to the pin. So, if the pin is output and low on power up, this may cause problems in your design since this can’t be changed. Now, if the pin is input on power up, then you can pull it up or down depending on what you like.

There is a little problem, unconnected input pins can generate a lot of noise that is bad for the system. So, you will need to add a resistor to every single unconnected pin!

Now, the nice processors we use on FEZ have built in pull up/down resistors. They default to pull up on power up. This is good because you do not have to worry about floating pins. Finally, you may need for a pin to be pulled low not high on power up. This can easily be solved by adding 1K resistor